|Fin 67c9dbbdd8 将闪退提示中的FAQ网址修改为对应语言的||2 days ago|
|.github||2 months ago|
|Bark||2 days ago|
|Bark.xcodeproj||5 days ago|
|Bark.xcworkspace||5 years ago|
|BarkTests||1 year ago|
|Common||1 month ago|
|Controller||5 days ago|
|Model||6 months ago|
|NotificationServiceExtension||6 months ago|
|Sounds||2 years ago|
|View||1 week ago|
|docs||1 month ago|
|fastlane||2 years ago|
|notificationContentExtension||1 year ago|
|.gitignore||5 years ago|
|Gemfile||2 years ago|
|LICENSE||5 years ago|
|Podfile||5 days ago|
|Podfile.lock||5 days ago|
|README.en.md||1 month ago|
|README.md||1 month ago|
Bark is an open-source push notifications app that respects your privacy. You can host your own server, or use the free public service, to send real-time alerts to your iPhone. Everything stays between you and your server (plus Apple). Bark supports webhooks and a simple HTTP API.
This repository contains the source code for the iOS app. For the backend, bark-server is written in Go, and supports Docker and serverless functions.
Bark is switching to to API v2, which supports webhooks. See API_V2.md.
The Bark app supports both API v1 and v2, but the UI currently only showcases v1. API v1 supports both HTTP GET or POST requests with the following format.
API v1 also supports optional query strings.
//Automatically copy the body text of a notification (iOS 14.4 and below) https://api.day.app/key/body?automaticallyCopy=1
//Specify the badge count on the app icon https://api.day.app/key/body?badge=3
//Specify clipboard content when copying https://api.day.app/key/body?copy=1234
//Let iOS sort notifications by groups https://api.day.app/key/body?group=groupName
//Display a custom icon on a notification (iOS 15 and above) https://api.day.app/key/body?icon=http://day.app/assets/images/avatar.jpg
//Archive a notification if 1, prevent archiving if 0, default settings will apply if unset https://api.day.app/key/body?isArchive=1
//Set importance and delivery timing of a notification //active (default): presents the notification immediately, lights up the screen, and can play a sound //timeSensitive: similar to active, but can break through system controls such as Notification Summary and Focus //passive: adds the notification to the notification list without lighting up the screen or playing a sound https://api.day.app/key/body?level=timeSensitive
//Select an alert sound for a notification //Available sounds are located in the 'Sounds' folder and can be previewed in the app https://api.day.app/key/body?sound=alarm
//Open an URL by clicking on a notification https://api.day.app/key/body?automaticallyCopy=1
Try restarting your device.
Try restarting your device. Sometimes Apple’s notification extension (UNNotificationServiceExtension) fails to run. Consequently Bark can’t excute the code to do so.
Since iOS 14.5, Apple has tightened clipboard security, and copying is no longer possible without user intervention. You can pull down, long press or open the notification to trigger the auto copy function, or use the system popup button to copy.
There aren’t any limitations. However, if you make a massive amount (> 100,000) of bad requests (e.g., 500 or 404 resulted from bad formatting), your IP will be banned.
Bark will open on the same tab it was closed on. Close Bark on the Message History tab.
Bark supports GET and POST requests with the same set of parameters. If you want to use webhooks with JSON, you must use API v2. See API_V2.md.
You need to use URL encoding to convert the special chracters, or the Bark server might not be able to properly interprete the request. Production-level libraries usually handle special characters automatically.
This is how your notification reaches you with Bark: Sender → Bark Server → Apple Push Notification Service → Your iPhone → Bark Client The Bark server and client are the two attack surfaces that we control. You can mitigate the risks by:
Make sure the Bark app has not been tampered.
Bark uses GitHub Actions to build and publish itself to the App Store. You can verify whether the ‘run_id’ in the app matches the one on GitHub to ensure the app was built from its original codebase.
You can also find build configurations, version and build numbers in the run log. The version and build numbers must be unique to be accepted by the App Store. Therefore you can verify whether the version and build numbers of your app match the ones in the run log.
Push from Chrome Extension: Bark-Chrome-Extension
Push from Web with scheduled tasks: Bark Assisatant
Push from Windows: BarkHelper
Push from CLI: bark-cli
Bark for Wox: Wox.Plugin.Bark
Python for Bark: barknotificator