API の紹介
SpacePost API は、Resend API と互換性のある JSON REST API です。エンドポイントの完全な一覧は、OpenAPI 仕様から生成された API リファレンスをご覧ください。
ベース URL
Section titled “ベース URL”https://api.spacepost.devパスはルート直下です(/emails、/domains など)。/v1 プレフィックスも使えます。https://api.spacepost.dev/v1/emails は同じエンドポイントです。クライアントの都合のよい方を使ってください。
すべてのリクエストで、API キーをベアラートークンとして送信します。
curl https://api.spacepost.dev/emails -H "Authorization: Bearer sp_live_YOUR_API_KEY"キーは sp_live_ で始まります。full_access キーはすべてのエンドポイントを使え、sending_access キーはメールの送信のみ可能で、1 つのドメインに限定することもできます。セキュリティと API キーをご覧ください。
| 問題 | レスポンス |
|---|---|
Authorization ヘッダーがない |
401 missing_api_key |
存在しない、無効化された、または形式が不正なキー(Resend の re_ キーを含む) |
403 invalid_api_key |
送信以外のエンドポイントでの sending_access キー |
401 restricted_api_key |
Content-Type: application/jsonで JSON を送信します。不正な JSON は422 validation_errorを返します。- フィールドは
snake_caseです(reply_to、scheduled_at)。利便性のため、送信時にはreplyToとscheduledAtも受け付けます。 - ID は UUIDv7 の文字列で、作成日時順に並びます。これがページネーションの仕組みです。
- タイムスタンプは UTC の ISO 8601 形式です(
2026-10-23T14:02:09.512Z)。 - リクエストに含まれる未知のフィールドは無視されます。
成功したレスポンスは、ステータス 200 の JSON です。リソースには、その種類を示す object フィールドがあります("email"、"domain" など)。一覧は { "object": "list", "has_more": false, "data": [] } の形式です。
エラーは、常に同じ形式です。
{ "statusCode": 422, "name": "validation_error", "message": "`to`: Invalid email address" }すべての name については、エラーをご覧ください。
POST /emails と POST /emails/batch は Idempotency-Key ヘッダー(1 〜 256 文字、24 時間保持)を受け付けます。同じキーと同じボディなら、再送せずに最初のレスポンスが返ります。冪等キーをご覧ください。
チームごとに 1 秒あたり 10 リクエスト(Scale は 25)で、ratelimit-* ヘッダーで返されます。レート制限をご覧ください。
バージョニング
Section titled “バージョニング”この API は Resend の現行の形式に従っており、日付付きのバージョンは使いません。既存のエンドポイントには後方互換性のある変更(任意フィールドの追加、レスポンスへのフィールド追加、新しいイベントタイプやエラー名)だけを加えます。クライアントは未知のフィールドを無視し、未知のエラー名も処理できるように作成してください。互換性を損なう変更は、新しいパスのプレフィックスで提供し、事前に変更履歴でお知らせします。
API は、API エクスプローラーから呼び出せるように、緩やかな CORS ヘッダーを返しますが、本物のキーを使ってブラウザから呼び出すことは絶対にしないでください。キーはサーバーに置くものです。