Send push notifications to iOS devices via the Bark app. The Bark key is stored in ~/.bark/key.
Key file: ~/.bark/key (plain text, just the key string).
If the file doesn't exist or is empty, ask the user for their Bark key and write it to ~/.bark/key.
https://api.day.app/~/.bark/key), body textSend a simple notification:
GET https://api.day.app/{key}/{body}
Send with title:
GET https://api.day.app/{key}/{title}/{body}
Send with title and subtitle:
GET https://api.day.app/{key}/{title}/{subtitle}/{body}
Use POST + --data-urlencode for plain text, newlines, and special characters:
KEY=$(cat ~/.bark/key)
curl -s -X POST "https://api.day.app/$KEY" \
-d "title=Notification Title" \
--data-urlencode "body=First line
Second line
Third line"
Notes:
-d "title=..." and --data-urlencode "body=..." to separate title and body\n as a string)--data-urlencode auto URL-encodes, no manual handling needed for Chinese or special chars-d "body=multiline content" — newlines won't be preserved in form-data| Param | Description |
|---|---|
| ------- | ------------- |
title | Notification title, slightly larger than body |
subtitle | Subtitle |
body | Notification body, use \n for line breaks |
url | URL to open when notification is tapped |
group | Message group for grouping notifications |
icon | Push icon (iOS 15+) |
sound | Notification sound, e.g. alarm, birdsong |
level | active (default, lights up screen immediately) / timeSensitive (shows during Focus mode) / passive (adds to list without lighting screen) |
criticalAlert | true to play sound even in Do Not Disturb (use with caution) |
~/.bark/key~/.bark/keyKey stored in ~/.bark/key: yourkey
Title: Meeting Reminder
Body: Team sync at 3pm tomorrow
curl -s -X POST "https://api.day.app/yourkey" \
-d "title=Meeting Reminder" \
--data-urlencode "body=Team sync at 3pm tomorrow"
api.day.app; Bark also supports self-hosted serverslevel=critical), the device will play sound even in Do Not Disturbcall=1 parameter is used共 1 个版本