Basics
Title, body, subtitle, and interruption level — the minimum payload for a push notification.


Fields
| Field | Type | Required | Description |
|---|---|---|---|
title | string | Yes | Notification title shown in bold on the banner and lock screen |
body | string | Yes | Body text shown under the title |
subtitle | string | No | Optional subtitle shown between the title and body |
level | string | No | Interruption level. One of passive, active (default), or time-sensitive. Controls iOS interruption behavior. |
push | boolean | No | If true (default), sends an APNs push to all of the user's devices. Set false to store in the inbox only. |
Interruption levels
| Level | Behavior |
|---|---|
passive | Silent — no sound, no banner, no vibration. Lands directly in Notification Center. |
active | Default behavior — banner, sound, lock screen. |
time-sensitive | Bypasses Focus modes (other than Do Not Disturb) and stays on the lock screen for an hour. Use sparingly — Apple may rate-limit apps that overuse it. |
Info
By default, every notification is delivered as an APNs push to the user's devices. Set push: false to store it in the inbox only.
Example
Send a basic notification
curl -X POST https://api.pushward.app/notifications \
-H "Authorization: Bearer hlk_YOUR_TOKEN" \
-H "Content-Type: application/json" \
-d '{
"title": "Hello from PushWard",
"subtitle": "Your first notification",
"body": "This is a basic push notification.",
"level": "active"
}'