## Autentikasi Pelajari cara mendapatkan dan menggunakan kunci API ## Mendapatkan Kunci API Sebelum menggunakan API, Anda harus mendapatkan kunci API. Anda dapat membuat kunci API di halaman profil. ### Menggunakan Kunci API Tambahkan kunci API Anda ke header permintaan untuk semua permintaan API: [Code (bash)] X-API-Key: YOUR_API_KEY [/Code] ### Catatan Penting - Simpan kunci API Anda dengan aman dan jangan bagikan di tempat publik - Kunci API memiliki izin yang sama dengan akun Anda, gunakan dengan hati-hati - Jika kunci API Anda dikompromikan, segera buat yang baru di halaman profil Anda --- ## API Email Membuat dan mengelola email ## Mengambil Domain yang Tersedia Mengambil semua domain email yang tersedia dalam sistem. ### Permintaan [Code (bash)] GET /api/email/domains [/Code] ### Contoh Permintaan [Code (bash)] curl https://chat-tempmail.com/api/email/domains \ -H "X-API-Key: YOUR_API_KEY" [/Code] ### Parameter Respons Parameter | Tipe | Deskripsi ----------- | ------ | ----------- domains | array | Daftar domain email yang tersedia ### Contoh Respons [Code (json)] { "domains": [ "chat-tempmail.com", "example.com", "other-domain.com" ] } [/Code] ## Membuat Email Membuat alamat email sementara baru. ### Permintaan [Code (bash)] POST /api/emails/generate [/Code] ### Parameter Permintaan Parameter | Tipe | Diperlukan | Deskripsi ----------- | ------ | ------------ | ----------- name | string | Ya | Awalan email expiryTime | number | Ya | Waktu kadaluarsa (milidetik)
Nilai yang tersedia:
- 3600000 (1 jam)
- 86400000 (1 hari)
- 259200000 (3 hari)
- 0 (permanen) domain | string | Ya | Domain email ### Contoh Permintaan [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] ### Parameter Respons Parameter | Tipe | Deskripsi ----------- | ------ | ----------- id | string | Pengenal unik email (format UUID) email | string | Alamat email yang dibuat (alamat email lengkap) ### Contoh Respons [Code (json)] { "id": "c2c4f894-c672-4d5b-a918-abca95aff1f7", "email": "test@chat-tempmail.com" } [/Code] ## Mengambil Daftar Email Mengambil semua alamat email di bawah akun Anda. ### Permintaan [Code (bash)] GET /api/emails [/Code] ### Parameter Permintaan Parameter | Tipe | Diperlukan | Deskripsi ----------- | ------ | ------------ | ----------- cursor | string | Tidak | Kursor paginasi, ambil nextCursor dari respons sebelumnya ### Contoh Permintaan [Code (bash)] curl https://chat-tempmail.com/api/emails \ -H "X-API-Key: YOUR_API_KEY" [/Code] ### Parameter Respons Parameter | Tipe | Deskripsi ----------- | ------ | ----------- emails | array | Daftar email (maks. 20 elemen per permintaan) nextCursor | string | Kursor halaman berikutnya untuk data lebih lanjut total | number | Total jumlah email ### Objek Email dalam Array emails Parameter | Tipe | Deskripsi ----------- | ------ | ----------- id | string | Pengenal unik email (format UUID) address | string | Alamat email (alamat email lengkap) userId | string | ID pengguna pemilik email (format UUID) createdAt | string | Waktu pembuatan email (format ISO 8601) expiresAt | string | Waktu kadaluarsa email (format ISO 8601) ### Contoh Respons [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] ## Menghapus Email Menghapus alamat email yang ditentukan. ### Permintaan [Code (bash)] DELETE /api/emails/{emailId} [/Code] ### Parameter Permintaan Parameter | Tipe | Diperlukan | Deskripsi ----------- | ------ | ------------ | ----------- emailId | string | Ya | ID email (parameter path) ### Contoh Permintaan [Code (bash)] curl -X DELETE "https://chat-tempmail.com/api/emails/99fadf12-6826-490a-9c6c-b0b528d4a8e0" \ -H "X-API-Key: YOUR_API_KEY" [/Code] ### Parameter Respons Parameter | Tipe | Deskripsi ----------- | ------ | ----------- success | boolean | Apakah penghapusan berhasil ### Contoh Respons [Code (json)] { "success": true } [/Code] --- ## API Pesan Mengelola pesan ## Mengambil Daftar Pesan Mengambil semua pesan dalam alamat email yang ditentukan. ### Permintaan [Code (bash)] GET /api/emails/{emailId} [/Code] ### Parameter Permintaan Parameter | Tipe | Diperlukan | Deskripsi ----------- | ------ | ------------ | ----------- emailId | string | Ya | ID email (parameter path) cursor | string | Tidak | Kursor paginasi (parameter query), ambil nextCursor dari respons sebelumnya ### Contoh Permintaan [Code (bash)] curl "https://chat-tempmail.com/api/emails/c2c4f894-c672-4d5b-a918-abca95aff1f7" \ -H "X-API-Key: YOUR_API_KEY" [/Code] ### Parameter Respons Parameter | Tipe | Deskripsi ----------- | ------ | ----------- messages | array | Daftar pesan (maks. 20 elemen per permintaan) nextCursor | string | Kursor halaman berikutnya untuk data lebih lanjut total | number | Total jumlah pesan ### Objek Pesan dalam Array messages Parameter | Tipe | Deskripsi ----------- | ------ | ----------- id | string | Pengenal unik pesan (format UUID) from_address | string | Alamat pengirim subject | string | Subjek pesan received_at | number | Waktu penerimaan (timestamp Unix dalam milidetik) ### Contoh Respons [Code (json)] { "messages": [ { "id": "fd13a8df-1465-4fbc-a612-ca7311c31ff2", "from_address": "sender1@example.com", "subject": "Pesan Test 1 - xJOK2h", "received_at": 1745224245084 } ], "nextCursor": "eyJ0aW1lc3RhbXAiOjE3NDUxNTU4NDUwODQsImlkIjoiNjNmNzFlODYtOGE1NC00ZDQ0LTk5ZWYtN2QzNTBhMTQ4M2JiIn0=", "total": 50 } [/Code] ## Mengambil Detail Pesan Mengambil konten detail dari pesan yang ditentukan. ### Permintaan [Code (bash)] GET /api/emails/{emailId}/{messageId} [/Code] ### Parameter Permintaan Parameter | Tipe | Diperlukan | Deskripsi ----------- | ------ | ------------ | ----------- emailId | string | Ya | ID email (parameter path) messageId | string | Ya | ID pesan (parameter path) ### Contoh Permintaan [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] ### Parameter Respons Parameter | Tipe | Deskripsi ----------- | ------ | ----------- message | object | Detail pesan ### Bidang Objek message Parameter | Tipe | Deskripsi ----------- | ------ | ----------- id | string | Pengenal unik pesan (format UUID) from_address | string | Alamat pengirim subject | string | Subjek pesan content | string | Pesan sebagai konten teks biasa html | string | Pesan sebagai konten HTML (bisa kosong) received_at | number | Waktu penerimaan (timestamp Unix dalam milidetik) ### Contoh Respons [Code (json)] { "message": { "id": "fd13a8df-1465-4fbc-a612-ca7311c31ff2", "from_address": "sender1@example.com", "subject": "Pesan Test 1 - xJOK2h", "content": "Pesan Test 1\n\nIni adalah konten dari Pesan Test 1.\n\nHormat kami,\nPengirim 1", "html": "
\n

Pesan Test 1

\n
", "received_at": 1745224245084 } } [/Code] ## Menghapus Pesan Menghapus pesan yang ditentukan. ### Permintaan [Code (bash)] DELETE /api/emails/{emailId}/{messageId} [/Code] ### Parameter Permintaan Parameter | Tipe | Diperlukan | Deskripsi ----------- | ------ | ------------ | ----------- emailId | string | Ya | ID email (parameter path) messageId | string | Ya | ID pesan (parameter path) ### Contoh Permintaan [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] ### Parameter Respons Parameter | Tipe | Deskripsi ----------- | ------ | ----------- success | boolean | Apakah penghapusan berhasil ### Contoh Respons [Code (json)] { "success": true } [/Code] --- ## Webhook Push Konfigurasi webhook untuk menerima notifikasi push pesan ## Mengambil Konfigurasi Webhook Mengambil informasi konfigurasi webhook saat ini. ### Permintaan [Code (bash)] GET /api/webhook [/Code] ### Contoh Permintaan [Code (bash)] curl https://chat-tempmail.com/api/webhook \ -H "X-API-Key: YOUR_API_KEY" [/Code] ### Parameter Respons Parameter | Tipe | Deskripsi ----------- | ------ | ----------- url | string | Alamat URL webhook (bisa string kosong) enabled | boolean | Apakah webhook diaktifkan ### Contoh Respons [Code (json)] { "url": "https://your-server.com/webhook", "enabled": true } [/Code] ## Mengkonfigurasi Webhook Mengatur atau memperbarui konfigurasi webhook. ### Permintaan [Code (bash)] POST /api/webhook [/Code] ### Parameter Permintaan Parameter | Tipe | Diperlukan | Deskripsi ----------- | ------ | ------------ | ----------- url | string | Ya | Alamat URL webhook (harus URL HTTP/HTTPS yang valid) enabled | boolean | Ya | Apakah webhook harus diaktifkan ### Contoh Permintaan [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] ### Parameter Respons Parameter | Tipe | Deskripsi ----------- | ------ | ----------- success | boolean | Apakah konfigurasi berhasil ### Contoh Respons [Code (json)] { "success": true } [/Code] ## Event Webhook Ketika pesan baru tiba, sistem akan mengirim permintaan POST ke URL yang Anda konfigurasi. ### Format Data yang Diterima Header Permintaan: - Content-Type: application/json - X-Webhook-Event: new_message ### Data Push Webhook Parameter | Tipe | Deskripsi ----------- | ------ | ----------- emailId | string | ID email yang menerima pesan (format UUID) messageId | string | ID pesan baru (format UUID) fromAddress | string | Alamat pengirim subject | string | Subjek pesan content | string | Pesan sebagai konten teks biasa html | string | Pesan sebagai konten HTML (bisa kosong) receivedAt | string | Waktu penerimaan pesan (format ISO 8601) toAddress | string | Alamat email yang menerima pesan ### Contoh Data Push [Code (json)] { "emailId": "c2c4f894-c672-4d5b-a918-abca95aff1f7", "messageId": "fd13a8df-1465-4fbc-a612-ca7311c31ff2", "fromAddress": "sender@example.com", "subject": "Pesan Test", "content": "Pesan sebagai konten teks biasa", "html": "
Pesan sebagai konten HTML
", "receivedAt": "2025-01-21T08:30:45.084Z", "toAddress": "test@chat-tempmail.com" } [/Code] ### Persyaratan Respons Server Anda harus mengembalikan kode status 2xx untuk menunjukkan penerimaan yang berhasil. Jika kode status non-2xx dikembalikan, sistem mungkin mencoba mengirim ulang. Respons yang Disarankan: [Code (json)] HTTP/1.1 200 OK Content-Type: application/json { "received": true } [/Code] ### Catatan Penting - Pastikan URL webhook Anda dapat diakses - Disarankan untuk memverifikasi integritas data push di sisi server Anda - Sistem mengirim push webhook segera ketika pesan tiba - Jika push gagal, sistem mungkin mencoba lagi, jadi pastikan antarmuka Anda idempotent ---