Skip to content

Quickstart

Sign up at app.sendsignal.dev, then create an API key under Platform → API Keys. Keys look like ss_ followed by 48 hex characters and are shown once; store yours somewhere safe. Keys can have full access or be scoped to sending only.

While your team is in test mode (the default for new teams), you can send from an unverified domain to try things out. Before production traffic, verify a domain.

Authenticate every request with your API key as a bearer token:

Terminal window
curl https://api.sendsignal.dev/emails \
-H "Authorization: Bearer ss_..." \
-H "Content-Type: application/json" \
-d '{
"from": "Acme <hi@acme.com>",
"to": "user@example.com",
"subject": "Hello",
"html": "<p>Hi</p>"
}'

The API responds immediately with the email object (status: "queued"); delivery happens asynchronously and every state change becomes an event you can receive by webhook or the live SSE stream.

Already have an app that speaks SMTP? Point it at the SMTP relay instead: same pipeline, no code changes.

Open the console’s Activity view to watch delivery events live, or fetch them from the API:

Terminal window
curl https://api.sendsignal.dev/emails/{id}/events \
-H "Authorization: Bearer ss_..."