Push notification features for iOS & Android apps

One dashboard and one REST API to register devices, send notifications and calls, and track results on both platforms.

iOS

iOS push notifications via Apple APNs

TingPush connects directly to the Apple Push Notification service over HTTP/2 with a token-based .p8 auth key. One key works for every app in your Apple Developer account and never expires yearly like a .p12 certificate.

  • Separate sandbox (Xcode builds) and production (TestFlight, App Store) environments
  • Image attachments, sounds, badges, thread-id, categories, interruption levels
  • Silent push (content-available) for background data sync
  • A “Test” button confirms your Team ID, Key ID and Bundle ID before you go live

What you need

APNs key
A .p8 file from Apple Developer → Keys
Team ID
10 characters, on the Membership page
Key ID
Shown next to the key you created
Bundle ID
For example com.company.app

Android

Android push notifications via Firebase Cloud Messaging

Built on the FCM HTTP v1 API – the version Google recommends after retiring the legacy API. Just upload your service account JSON; TingPush fetches and refreshes access tokens for you.

  • Notification messages and data messages
  • Channel ID, small icon, accent color, big picture
  • High priority for urgent messages, TTL and collapse keys
  • Android 13+ ready (POST_NOTIFICATIONS permission) through the SDK

What you need

Service account
Firebase Console → Project settings → Service accounts → Generate new private key
google-services.json
Added to your Android app as usual

Calls

Incoming call notifications (VoIP push, CallKit)

Build voice and video calling like WhatsApp or Messenger: the phone rings with the native call screen even when the app is fully closed.

  • iOS: VoIP push via PushKit with the CallKit screen; reuses your .p8 key, no separate VoIP certificate
  • Android: high-priority data message showing a full-screen ringing UI
  • Calls expire after the ring timeout, so stale calls are never delivered
  • Send “call ended” when the caller hangs up or the call is answered elsewhere

Great for

  • Chat and social apps
  • Telehealth
  • Call centers and customer support
  • Smart doorbells and cameras

Targeting

Reach exactly the right users

Attach an External ID (your own user ID) and tags to each device, then send by any combination.

All users

Announcements, promotions and maintenance notices to every active device.

By user

Reach every device of one or more users by External ID – users with several phones get them all.

By tag

Filter by tags such as city=hanoi or plan=vip, and combine conditions.

By device / token

Send a test to your own device, or send straight to existing push tokens.

For developers

OneSignal-compatible REST API

The send API accepts the same structure as OneSignal's Create notification: headings, contents, data, include_aliases, filters… Any backend language works – all you need is HTTP.

  • Public App ID for the mobile app, secret API Key for the backend
  • Rotate API keys at any time
  • Per-notification success and failure counts
curl
curl -X POST https://api.your-domain.com/notifications \
  -H "Authorization: Key psk_…" \
  -H "Content-Type: application/json" \
  -d '{
    "app_id": "8f2c…e41a",
    "filters": [{ "field": "tag", "key": "plan",
                  "relation": "=", "value": "vip" }],
    "headings": { "en": "A special offer for you" },
    "contents": { "en": "30% off today only" }
  }'

SDK

SDKs for Flutter, React Native, iOS, Android, .NET MAUI

The SDKs handle permissions, tokens, device registration, user and tag assignment, notifications and call screens. Each platform has a step-by-step guide in the dashboard.

SwiftiOS 13+
KotlinAndroid 6+
FlutteriOS & Android
React NativeiOS & Android
.NET MAUIiOS & Android

Monitoring

Delivery history and device management

  • Success rate, error counts and sample errors from Apple/Google for each notification
  • Inspect the original request and resend in one click
  • Tokens from uninstalled apps or expired tokens are deactivated automatically
  • Search, filter, enable/disable and test-send to individual devices

Security

Security and data ownership

  • APNs/FCM keys encrypted at rest
  • API keys stored only as SHA-256 hashes, compared in constant time
  • Email OTP verification at sign-up
  • On-premise edition: data stays in your own SQL Server

Ready to send your first notification?

Create a project, upload your APNs / FCM keys, install the SDK and send. No credit card required.