Skip to content

Install the Notti SDK (or call the REST API directly) and get your first notification delivered. Follow the sections in order for a first-time setup, or jump to the area you need.

  1. Get Started with Notti: create an App, find your keys, and tour the dashboard
  2. Install SDK: install the React Native or iOS SDK, or register devices directly via REST
  3. Test your integration: verify delivery before going live
  4. Troubleshooting: debug delivery issues

Get Started with Notti ​

Create an App to get its ID and one-time-reveal REST/Client keys - every other call in this section needs those.


Install SDK ​

  • React Native SDK setup - Install, initialize, register devices, and handle notification events in a React Native app.
  • iOS SDK setup - Install the native iOS SDK, initialize it, identify users, and handle notification events, In-App Messages and rich media.
  • Android SDK setup - Install the native Android SDK, initialize it, identify users, and handle notification events, In-App Messages and your own FCM service.

Notti ships three client SDKs today: React Native, native iOS and native Android. Every other platform (web, backend jobs) registers and manages Devices directly against the REST API - there is no separate SDK required, just the Devices API Reference and a Client key.


Test your integration ​

  • Testing Your Integration - There is no sandbox/dry-run mode - register a real test device and verify delivery before going live.

Troubleshooting ​

  • Troubleshooting - Reading Delivery errors, auto-unsubscribe behavior, and common APNs/FCM failure codes.

After setup ​

  • Using the REST APIs - Base URL, authentication per endpoint group, rate limits, and idempotent requests.
  • API Reference - Every endpoint's method, path, auth requirement, request shape, and response shape.

FAQ ​

How do I identify the same person across devices? ​

Set the same external_user_id on every Device that person owns (POST/PATCH /v1/apps/{app_id}/devices). Target that person with target_type: "external_user_ids" on a notification send - Notti delivers to every Device carrying that ID. See the Devices and Notifications API Reference for the exact fields.

Do I need an SDK, or can I call the REST API directly? ​

Either works. The SDKs wrap Device registration and notification-event handling for React Native, native iOS and native Android. Any other client (a web app, a backend job) registers and updates Devices directly with a Client key - there's no functional difference in what Notti does with the Device once it's registered.

How do I send notifications from my server? ​

Use your App's REST key (rk_...) with POST /v1/apps/{app_id}/notifications. Never ship a REST key inside a mobile or web client - use the Client key (ck_...) there instead, scoped to Device registration only. See Using the REST APIs for the full auth model.

Is there a sandbox or test-send mode? ​

No - every send attempts real delivery. See Testing Your Integration for how to safely test against a real device, including the iOS sandbox-vs-production APNs credential setting.

How do I know if a push failed to deliver? ​

Check GET /v1/apps/{app_id}/notifications/{id}/deliveries for a per-device status and last_error, or register a Webhook to get notification.failed / device.invalid events pushed to you instead of polling. See Troubleshooting for what the common errors mean.