## 認証 APIキーの取得と使用方法について ## APIキーの取得 APIを使用する前に、APIキーを取得する必要があります。プロフィールページでAPIキーを作成できます。 ### APIキーの使用 すべてのAPIリクエストのリクエストヘッダーにAPIキーを含めてください: [Code (bash)] X-API-Key: YOUR_API_KEY [/Code] ### 注意事項 - APIキーは安全に保管し、公開場所で漏洩しないようにしてください - APIキーはあなたのアカウントと同じ権限を持ちますので、慎重に使用してください - APIキーが漏洩した場合は、プロフィールページで即座に新しいキーを再生成してください --- ## メールAPI メールアドレスの作成と管理 ## 利用可能ドメインの取得 システム内のすべての利用可能なメールドメインを取得します。 ### リクエスト [Code (bash)] GET /api/email/domains [/Code] ### リクエスト例 [Code (bash)] curl https://chat-tempmail.com/api/email/domains \ -H "X-API-Key: YOUR_API_KEY" [/Code] ### レスポンスパラメータ パラメータ名 | 型 | 説明 ------------- | ----- | ------ domains | array | 利用可能なメールドメインのリスト ### レスポンス例 [Code (json)] { "domains": [ "chat-tempmail.com", "example.com", "other-domain.com" ] } [/Code] ## メール作成 新しい一時メールアドレスを作成します。 ### リクエスト [Code (bash)] POST /api/emails/generate [/Code] ### リクエストパラメータ パラメータ名 | 型 | 必須 | 説明 ------------- | ----- | ------ | ------ name | string | はい | メールプレフィックス expiryTime | number | はい | 有効期限(ミリ秒)
選択可能な値:
- 3600000 (1時間)
- 86400000 (1日)
- 259200000 (3日)
- 0 (永続) domain | string | はい | メールドメイン ### リクエスト例 [Code (bash)] curl -X POST https://chat-tempmail.com/api/emails/generate \ -H "X-API-Key: YOUR_API_KEY" \ -H "Content-Type: application/json" \ -d '{ "name": "test", "expiryTime": 3600000, "domain": "chat-tempmail.com" }' [/Code] ### レスポンスパラメータ パラメータ名 | 型 | 説明 ------------- | ----- | ------ id | string | メールの一意識別子(UUID形式) email | string | 作成されたメールアドレス(完全なメールアドレス) ### レスポンス例 [Code (json)] { "id": "c2c4f894-c672-4d5b-a918-abca95aff1f7", "email": "test@chat-tempmail.com" } [/Code] ## メールリストの取得 アカウント下のすべてのメールアドレスリストを取得します。 ### リクエスト [Code (bash)] GET /api/emails [/Code] ### リクエストパラメータ パラメータ名 | 型 | 必須 | 説明 ------------- | ----- | ------ | ------ cursor | string | いいえ | ページネーションカーソル、前回のレスポンスからnextCursorを取得 ### リクエスト例 [Code (bash)] curl https://chat-tempmail.com/api/emails \ -H "X-API-Key: YOUR_API_KEY" [/Code] ### レスポンスパラメータ パラメータ名 | 型 | 説明 ------------- | ----- | ------ emails | array | メールリスト(1回あたり最大20件のデータを返す) nextCursor | string | 次のページのカーソル、より多くのデータを取得するため total | number | メール総数 ### emails配列内のメールオブジェクト パラメータ名 | 型 | 説明 ------------- | ----- | ------ id | string | メールの一意識別子(UUID形式) address | string | メールアドレス(完全なメールアドレス) userId | string | メールの所属ユーザーID(UUID形式) createdAt | string | メール作成時刻(ISO 8601形式) expiresAt | string | メール期限切れ時刻(ISO 8601形式) ### レスポンス例 [Code (json)] { "emails": [ { "id": "e4ff5c14-8a72-48c5-bd13-b5347fb944da", "address": "6Tg3VT@chat-tempmail.com", "userId": "bd08008d-e944-44b2-a0d0-67f2b528ee6d", "createdAt": "2025-04-21T08:30:45.084Z", "expiresAt": "2025-04-22T08:30:45.084Z" } ], "nextCursor": "fd13a8df-1465-4fbc-a612-ca7311c31ff2", "total": 20 } [/Code] ## メール削除 指定されたメールアドレスを削除します。 ### リクエスト [Code (bash)] DELETE /api/emails/{emailId} [/Code] ### リクエストパラメータ パラメータ名 | 型 | 必須 | 説明 ------------- | ----- | ------ | ------ emailId | string | はい | メールID(パスパラメータ) ### リクエスト例 [Code (bash)] curl -X DELETE "https://chat-tempmail.com/api/emails/99fadf12-6826-490a-9c6c-b0b528d4a8e0" \ -H "X-API-Key: YOUR_API_KEY" [/Code] ### レスポンスパラメータ パラメータ名 | 型 | 説明 ------------- | ----- | ------ success | boolean | 削除が成功したかどうか ### レスポンス例 [Code (json)] { "success": true } [/Code] --- ## メッセージAPI メッセージの管理 ## メッセージリストの取得 指定されたメールアドレス内のすべてのメッセージリストを取得します。 ### リクエスト [Code (bash)] GET /api/emails/{emailId} [/Code] ### リクエストパラメータ パラメータ名 | 型 | 必須 | 説明 ------------- | ----- | ------ | ------ emailId | string | はい | メールID(パスパラメータ) cursor | string | いいえ | ページネーションカーソル(クエリパラメータ)、前回のレスポンスからnextCursorを取得 ### リクエスト例 [Code (bash)] curl "https://chat-tempmail.com/api/emails/c2c4f894-c672-4d5b-a918-abca95aff1f7" \ -H "X-API-Key: YOUR_API_KEY" [/Code] ### レスポンスパラメータ パラメータ名 | 型 | 説明 ------------- | ----- | ------ messages | array | メッセージリスト(1回あたり最大20件のデータを返す) nextCursor | string | 次のページのカーソル、より多くのデータを取得するため total | number | メッセージ総数 ### messages配列内のメッセージオブジェクト パラメータ名 | 型 | 説明 ------------- | ----- | ------ id | string | メッセージの一意識別子(UUID形式) from_address | string | 送信者アドレス subject | string | メッセージ件名 received_at | number | 受信時刻(Unixタイムスタンプ、ミリ秒) ### レスポンス例 [Code (json)] { "messages": [ { "id": "fd13a8df-1465-4fbc-a612-ca7311c31ff2", "from_address": "sender1@example.com", "subject": "Test Message 1 - xJOK2h", "received_at": 1745224245084 } ], "nextCursor": "eyJ0aW1lc3RhbXAiOjE3NDUxNTU4NDUwODQsImlkIjoiNjNmNzFlODYtOGE1NC00ZDQ0LTk5ZWYtN2QzNTBhMTQ4M2JiIn0=", "total": 50 } [/Code] ## メッセージ詳細の取得 指定されたメッセージの詳細内容を取得します。 ### リクエスト [Code (bash)] GET /api/emails/{emailId}/{messageId} [/Code] ### リクエストパラメータ パラメータ名 | 型 | 必須 | 説明 ------------- | ----- | ------ | ------ emailId | string | はい | メールID(パスパラメータ) messageId | string | はい | メッセージID(パスパラメータ) ### リクエスト例 [Code (bash)] curl "https://chat-tempmail.com/api/emails/99fadf12-6826-490a-9c6c-b0b528d4a8e0/fd13a8df-1465-4fbc-a612-ca7311c31ff2" \ -H "X-API-Key: YOUR_API_KEY" [/Code] ### レスポンスパラメータ パラメータ名 | 型 | 説明 ------------- | ----- | ------ message | object | メッセージ詳細 ### messageオブジェクトのフィールド説明 パラメータ名 | 型 | 説明 ------------- | ----- | ------ id | string | メッセージの一意識別子(UUID形式) from_address | string | 送信者アドレス subject | string | メッセージ件名 content | string | メッセージプレーンテキスト内容 html | string | メッセージHTML内容(空の場合がある) received_at | number | 受信時刻(Unixタイムスタンプ、ミリ秒) ### レスポンス例 [Code (json)] { "message": { "id": "fd13a8df-1465-4fbc-a612-ca7311c31ff2", "from_address": "sender1@example.com", "subject": "Test Message 1 - xJOK2h", "content": "Test Message 1\n\nThis is test message 1 content.\n\nBest regards,\nSender 1", "html": "
\n

Test Message 1

\n
", "received_at": 1745224245084 } } [/Code] ## メッセージ削除 指定されたメッセージを削除します。 ### リクエスト [Code (bash)] DELETE /api/emails/{emailId}/{messageId} [/Code] ### リクエストパラメータ パラメータ名 | 型 | 必須 | 説明 ------------- | ----- | ------ | ------ emailId | string | はい | メールID(パスパラメータ) messageId | string | はい | メッセージID(パスパラメータ) ### リクエスト例 [Code (bash)] curl -X DELETE "https://chat-tempmail.com/api/emails/76d91ae5-822a-4fdd-8701-9de038ec86d7/20e77445-b0c3-4e8b-aa29-762ea423ac15" \ -H "X-API-Key: YOUR_API_KEY" [/Code] ### レスポンスパラメータ パラメータ名 | 型 | 説明 ------------- | ----- | ------ success | boolean | 削除が成功したかどうか ### レスポンス例 [Code (json)] { "success": true } [/Code] --- ## Webhook プッシュ メッセージプッシュ通知を受信するためのwebhookの設定 ## Webhook設定の取得 現在のWebhook設定情報を取得します。 ### リクエスト [Code (bash)] GET /api/webhook [/Code] ### リクエスト例 [Code (bash)] curl https://chat-tempmail.com/api/webhook \ -H "X-API-Key: YOUR_API_KEY" [/Code] ### レスポンスパラメータ パラメータ名 | 型 | 説明 ------------- | ----- | ------ url | string | Webhook URLアドレス(空文字列の場合がある) enabled | boolean | webhookが有効かどうか ### レスポンス例 [Code (json)] { "url": "https://your-server.com/webhook", "enabled": true } [/Code] ## Webhookの設定 Webhook設定を設定または更新します。 ### リクエスト [Code (bash)] POST /api/webhook [/Code] ### リクエストパラメータ パラメータ名 | 型 | 必須 | 説明 ------------- | ----- | ------ | ------ url | string | はい | Webhook URLアドレス(有効なHTTP/HTTPS URLである必要があります) enabled | boolean | はい | webhookを有効にするかどうか ### リクエスト例 [Code (bash)] curl -X POST https://chat-tempmail.com/api/webhook \ -H "X-API-Key: YOUR_API_KEY" \ -H "Content-Type: application/json" \ -d '{ "url": "https://your-server.com/webhook", "enabled": true }' [/Code] ### レスポンスパラメータ パラメータ名 | 型 | 説明 ------------- | ----- | ------ success | boolean | 設定が成功したかどうか ### レスポンス例 [Code (json)] { "success": true } [/Code] ## Webhookイベントの説明 新しいメッセージが到着すると、システムは設定されたURLにPOSTリクエストを送信します。 ### 受信データフォーマット リクエストヘッダー: - Content-Type: application/json - X-Webhook-Event: new_message ### Webhookプッシュデータ パラメータ名 | 型 | 説明 ------------- | ----- | ------ emailId | string | メッセージを受信したメールID(UUID形式) messageId | string | 新しいメッセージのID(UUID形式) fromAddress | string | 送信者アドレス subject | string | メッセージ件名 content | string | メッセージプレーンテキスト内容 html | string | メッセージHTML内容(空の場合がある) receivedAt | string | メッセージ受信時刻(ISO 8601形式) toAddress | string | メッセージを受信したメールアドレス ### プッシュデータ例 [Code (json)] { "emailId": "c2c4f894-c672-4d5b-a918-abca95aff1f7", "messageId": "fd13a8df-1465-4fbc-a612-ca7311c31ff2", "fromAddress": "sender@example.com", "subject": "テストメッセージ", "content": "メッセージプレーンテキスト内容", "html": "
メッセージHTML内容
", "receivedAt": "2025-01-21T08:30:45.084Z", "toAddress": "test@chat-tempmail.com" } [/Code] ### レスポンス要件 サーバーは正常な受信を示すために2xxステータスコードを返す必要があります。2xx以外のステータスコードが返された場合、システムは再送信を試みる可能性があります。 推奨レスポンス: [Code (json)] HTTP/1.1 200 OK Content-Type: application/json { "received": true } [/Code] ### 注意事項 - Webhook URLが正常にアクセス可能であることを確認してください - サーバー側でプッシュデータの完全性を検証することを推奨します - システムはメッセージ到着後、直ちにWebhookプッシュを送信します - プッシュが失敗した場合、システムが再試行する可能性があるため、インターフェースが冪等性を持つことを確認してください ---