API Reference

Base URL: https://api.pushtower.com/v1

All requests require an Authorization: Bearer YOUR_API_KEY header.

Send a Notification

POST /v1/push
FieldTypeRequiredDescription
channelstringyesChannel ID or name
titlestringyesNotification title
bodystringnoNotification body text
soundstringnoSound name (default: default)
prioritystringnolow, normal, or high
dataobjectnoCustom payload data
encryptedbooleannoEnable E2E encryption

Example

curl -X POST https://api.pushtower.com/v1/push \
  -H "Content-Type: application/json" \
  -H "Authorization: Bearer YOUR_API_KEY" \
  -d '{
    "channel": "server-alerts",
    "title": "Deploy Complete",
    "body": "v2.4.1 is now live on production",
    "priority": "high"
  }'

Response

{
  "id": "ntf_abc123",
  "status": "delivered",
  "delivered_at": "2026-04-09T12:00:00Z"
}

Live Activities

POST /v1/live-activity

Start or update a Live Activity on the user’s lock screen. See Live Activities for details.

Channels

GET    /v1/channels          # List channels
POST   /v1/channels          # Create channel
GET    /v1/channels/:id      # Get channel
PATCH  /v1/channels/:id      # Update channel
DELETE /v1/channels/:id      # Delete channel

Devices

GET    /v1/devices            # List registered devices
DELETE /v1/devices/:id        # Remove a device

Rate Limits

All API endpoints are rate-limited to 100 requests per minute per API key. The response headers include: