Documentation Index
Fetch the complete documentation index at: https://messages.dev/docs/llms.txt
Use this file to discover all available pages before exploring further.
1. Create an account & get your API key
Sign up at app.messages.dev, then go to API Keys in the sidebar and click Create Key. Copy the key. It starts withsk_live_ and is only shown once.
2. Activate your sandbox
Go to the Lines page in your dashboard. You’ll see a sandbox card with a QR code and an activation code. Scan the QR code with your phone (it opens a pre-filled text message) or manually text the code to the sandbox number. Once your message is received, your sandbox is activated and your phone number is paired. You get 50 free messages per day.The sandbox is a shared iMessage line for testing. For production use, set up a dedicated line.
3. Install the SDK (optional)
The SDK is optional. You can use any HTTP client or
curl instead. All examples below show both.4. Send a message
Every message is sent from a line. If you activated the sandbox, use the sandbox line handle and your paired phone number. You can find your line handle on the Lines page in the dashboard.5. Receive messages
Local development: use the CLI
The fastest way to receive messages while you’re building is themessages-dev CLI. It streams events from your account and POSTs
them at a local URL with the same HMAC headers production webhooks use, so
you can develop and test your handler without ngrok, a public URL, or a
registered webhook.
Install the CLI and authenticate, then:
MESSAGES_LISTEN_SECRET=….
Prefer the standard webhook path? Expose your local server with
ngrok, Cloudflare Tunnel, or any tunnel of your
choice and register a real webhook pointing at the public URL. The
handler code below is identical either way. See
Receive Messages for the full breakdown.
Production: register a webhook
For production, register a webhook so messages.dev delivers events directly to your public URL. The handler code above is unchanged; only the secret and the source of the deliveries differ. See Webhooks for the full event list, payload shapes, and signature verification details.6. List your lines (optional)
If you need to look up your line handles programmatically:Next steps
Send Messages
Delivery tracking and error handling
Receive Messages
Webhooks for real-time message delivery
TypeScript SDK
Full SDK reference: pagination, error handling, types
API Reference
All endpoints