メニュー
REST API

API ドキュメント

プログラムから一時メールアドレスの作成・メール取得が可能です。
全エンドポイントは JSON を返します。

Base URL https://tempmail.jp
API Key Authorization: Bearer tmj_xxx
月次上限 Free: 100 / 月 ・ Pro: 10,000 / 月(APIキー使用時)
メールボックス認証 リクエストボディに password を含める
API Key 認証
KEY Authorization: Bearer tmj_your_api_key
APIダッシュボード(Googleログイン必須)でAPIキーを発行できます。外部スクリプト(curl / Python 等)からの利用にはキーが必須です。利用量は月ごとに計測され、上限(Free=100回/月、Pro=10,000回/月)に達すると 429 が返ります。
# Authorization ヘッダーで渡す(推奨)
curl https://tempmail.jp/api/new-address \
  -H "Authorization: Bearer tmj_xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx"

# Authorization ヘッダのみサポート(クエリパラメータは廃止)

# キーなし(外部スクリプト)→ 401
{ "success": false, "error": "API key required. Get one at https://tempmail.jp/dashboard.html" }

# キーが無効 / 無効化済み → 401
{ "success": false, "error": "Invalid or inactive API key" }

# 月次上限超過 → 429
{ "success": false, "error": "Monthly API limit exceeded" }
アドレス操作
GET /api/new-address
新しい一時メールアドレスとパスワードを発行する。プランに応じたドメインが使用可能。
# Free プラン(デフォルト: @tempmail.jp)
curl https://tempmail.jp/api/new-address \
  -H "Authorization: Bearer tmj_xxxx"

# Free プラン: @sutemeado.com を使用
curl "https://tempmail.jp/api/new-address?domain=sutemeado.com" \
  -H "Authorization: Bearer tmj_xxxx"

# Pro プラン専用ドメイン
curl "https://tempmail.jp/api/new-address?domain=sutemail.com" \
  -H "Authorization: Bearer tmj_xxxx"

# レスポンス
{
  "success": true,
  "address": "abc123@sutemeado.com",
  "password": "xyz789pass",
  "domain":  "sutemeado.com"
}
GET /api/domains
利用可能なドメイン一覧とプランごとのアクセス権を取得する
curl https://tempmail.jp/api/domains \
  -H "Authorization: Bearer tmj_xxxx"

# レスポンス
{
  "success": true,
  "currentPlan": "pro",
  "domains": [
    { "domain": "tempmail.jp",    "accessible": true, "requiredPlan": null  },
    { "domain": "sutemeado.com",  "accessible": true, "requiredPlan": null  },
    { "domain": "sutemail.com",   "accessible": true, "requiredPlan": "pro" },
    { "domain": "ai-debate.jp",   "accessible": true, "requiredPlan": "pro" },
    { "domain": "gdte.site",      "accessible": true, "requiredPlan": "pro" }
  ]
}
POST /api/login
アドレスとパスワードでログイン・メール一覧を取得する
# リクエスト
curl -X POST https://tempmail.jp/api/login \
  -H "Content-Type: application/json" \
  -d '{"address":"abc123@tempmail.jp","password":"xyz789pass"}'

# レスポンス
{
  "success": true,
  "address": "abc123@tempmail.jp",
  "mails": [...]
}
PUT /api/address/:address/password
パスワードを変更する
curl -X PUT "https://tempmail.jp/api/address/abc123@tempmail.jp/password" \
  -H "Content-Type: application/json" \
  -d '{"currentPassword":"xyz789pass","newPassword":"newpass123"}'
DELETE /api/address/:address
アドレスを削除する(配下のメールも全削除)
curl -X DELETE "https://tempmail.jp/api/address/abc123@tempmail.jp" \
  -H "Content-Type: application/json" \
  -d '{"password":"xyz789pass"}'
メール操作
POST /api/mailbox/:address
メール一覧を取得する
curl -X POST "https://tempmail.jp/api/mailbox/abc123@tempmail.jp" \
  -H "Content-Type: application/json" \
  -d '{"password":"xyz789pass"}'

# レスポンス
{
  "success": true,
  "mails": [
    {
      "id":         "mail_xxx",
      "from":       "sender@example.com",
      "subject":    "確認コード",
      "body":       "テキスト本文...",
      "receivedAt": 1711234567890,
      "saved":      false
    }
  ]
}
POST /api/mailbox/:address/:mailId
特定のメールの詳細(HTML含む)を取得する
curl -X POST "https://tempmail.jp/api/mailbox/abc123@tempmail.jp/mail_xxx" \
  -H "Content-Type: application/json" \
  -d '{"password":"xyz789pass"}'
POST /api/mailbox/:address/:mailId/save
メールを保存する(自動削除の対象外になり無期限保持)
curl -X POST "https://tempmail.jp/api/mailbox/abc123@tempmail.jp/mail_xxx/save" \
  -H "Content-Type: application/json" \
  -d '{"password":"xyz789pass"}'
POST /api/mailbox/:address/:mailId/unsave
メールの保存を解除する(30日の自動削除対象に戻る)
curl -X POST "https://tempmail.jp/api/mailbox/abc123@tempmail.jp/mail_xxx/unsave" \
  -H "Content-Type: application/json" \
  -d '{"password":"xyz789pass"}'
DELETE /api/mailbox/:address/:mailId
特定のメールを削除する
curl -X DELETE "https://tempmail.jp/api/mailbox/abc123@tempmail.jp/mail_xxx" \
  -H "Content-Type: application/json" \
  -d '{"password":"xyz789pass"}'
DELETE /api/mailbox/:address
メールボックス内のメールを全削除する
curl -X DELETE "https://tempmail.jp/api/mailbox/abc123@tempmail.jp" \
  -H "Content-Type: application/json" \
  -d '{"password":"xyz789pass"}'
ユーティリティ
GET /api/mailbox/:address/otp
最近のメールから OTP(数字の認証コード)を自動抽出する
curl "https://tempmail.jp/api/mailbox/abc123@tempmail.jp/otp?password=xyz789pass&limit=5"

# レスポンス
{
  "success":    true,
  "found":      true,
  "otp":        "123456",
  "mailId":     "mail_xxx",
  "subject":    "確認コードのお知らせ",
  "receivedAt": 1711234567890
}
GET /api/status
サービスの稼働状況を取得する
curl https://tempmail.jp/api/status
POST / DELETE / PUT リクエストでは、Content-Type: application/json ヘッダーとともに、リクエストボディに password フィールドを含めてください。OTP エンドポイントのみクエリパラメータで password を渡します。