Reference

The REST API.

Thin wrappers over the same functions the dashboard calls, so a behavior cannot exist in one and not the other. Base URL https://app.getsendframe.com/api/v1. GET /api/v1 returns this route table as JSON.

Authentication and scopes

API keys and nothing else: Authorization: Bearer sf_live_…. A dashboard session never works on the API, and a key never works on the dashboard. Keys are minted at Settings → API keys and shown once.

Conventions

Errors

Every refusal is JSON with an error code and, where there is something to do, a message saying what. Render the message rather than mapping the code to your own copy; it is kept in step with what the server actually did.

Retries and idempotency

Both send routes accept an optional idempotencyKey (8–255 characters, yours to choose). The same key replays the original send — 200 with replayed: true instead of 201 — and also finishes a send that was interrupted partway through emailing. Reusing a key for a different request is a 409. KEYS STOP DEDUPLICATING AFTER 24 HOURS.

Artifacts

Shares

Recipients