๐Ÿ“ก API Documentation

Integrasikan Sphixmail ke bot, app, atau script menggunakan REST API v1. Semua endpoint membutuhkan API Key dari Admin Panel, kecuali OTP polling.

Buat API Key di Admin Panel โ†’ API Keys, lalu tempel di sini untuk mengaktifkan tombol Try It Out.
Base URL
https://sphixmail.example.com
Autentikasi
/pub/[endpoint]/[apikey]
API key ditempatkan langsung di URL path. Buat key di Admin โ†’ API Keys.
๐ŸŒ Domains
GET /pub/domains/[apikey] List domain aktif โ–ถ
Parameters
ParamTipeDeskripsi
[apikey]pathAPI Key dari Admin Panel
Example Request
curl https://sphixmail.example.com/pub/domains/YOUR_API_KEY
Example Response
{"success":true,"count":2,"domains":[{"domain":"mail.example.com","type":"open","added_at":"2026-01-01T00:00:00Z"}]}
Response
โœ‰ Email
GET /pub/email/[email]/[apikey] Validasi email โ–ถ
Parameters
ParamTipeDeskripsi
[email]pathAlamat email lengkap (URL-encoded)
[apikey]pathAPI Key dari Admin Panel
Example Request
curl https://sphixmail.example.com/pub/email/user%40mail.example.com/YOUR_API_KEY
Example Response
{"success":true,"email":"user@mail.example.com","local":"user","domain":"mail.example.com","message":"Email is valid and ready to use"}
Response
๐Ÿ“ฌ Messages
GET /pub/messages/[email]/[apikey] Ambil semua pesan โ–ถ
Parameters
ParamTipeDeskripsi
[email]pathAlamat email inbox
[apikey]pathAPI Key
limitqueryBatas jumlah pesan (opsional, default: semua)
Example Request
curl "https://sphixmail.example.com/pub/messages/user%40mail.example.com/YOUR_API_KEY?limit=10"
Example Response
{"success":true,"email":"user@mail.example.com","count":1,"messages":[{"id":"msg_123","from":"noreply@github.com","subject":"Verify your email","preview":"Click the link...","body_text":"...","body_html":"...","received_at":"2026-09-10T00:00:00Z"}]}
Response
DELETE /pub/message/[message_id]/[apikey] Hapus pesan โ–ถ
Parameters
ParamTipeDeskripsi
[message_id]pathID pesan (dari endpoint messages)
[apikey]pathAPI Key
Example Request
curl -X DELETE https://sphixmail.example.com/pub/message/msg_abc123/YOUR_API_KEY
Example Response
{"success":true,"message":"Message deleted successfully","deleted_id":"msg_abc123"}
๐Ÿ“Š Stats
GET /pub/stats/[apikey] Statistik sistem โ–ถ
Parameters
ParamTipeDeskripsi
[apikey]pathAPI Key
filtersqueryComma-separated: most_popular_receiver, total_messages, unread_messages, latest_messages (default: semua)
Example Request
curl "https://sphixmail.example.com/pub/stats/YOUR_API_KEY?filters=total_messages,unread_messages"
Response
โšก OTP Long-Polling
GET /pub/inbox/[email]/wait-otp Tunggu OTP masuk ยท Public (no key) โ–ถ
Parameters
ParamTipeDeskripsi
[email]pathAlamat email inbox
timeoutqueryMax detik tunggu (default: 30, max: 60)
subject_containsqueryFilter subject (opsional)
afterqueryHanya ambil pesan setelah message_id ini
Example Request
curl "https://sphixmail.example.com/pub/inbox/user%40mail.example.com/wait-otp?timeout=30&subject_contains=OTP"
Response (found)
{"found":true,"message":{"id":"msg_abc","from":"noreply@service.com","subject":"Your OTP","received_at":"2026-09-10T00:00:00Z"},"otp":"123456"}
Response (timeout)
{"found":false,"message":"Timeout - no email received"}
โ„น OTP diekstrak dengan regex \b\d{4,8}\b dari body. Endpoint ini tidak membutuhkan API key.