Register, add a mailbox, import lists, broadcast, read replies — twenty clicks in the UI, now a handful of HTTP calls. An AI runs the whole chain; your application only says “reach out to this batch of customers”.
Works with any model that can make HTTP calls: GPT, Claude, DeepSeek, Qwen…
POST /agent/registerPOST /agent/sendersPOST /agent/contactsPOST /agent/broadcastGET /agent/tasks/:idPlain language on the left, actual calls on the right — the model assembles them itself.
# 1. Inspect
GET /agent/me
→ 1 sender, 1600 contacts, 2 groups
# 2. Create a draft first
POST /agent/broadcast
{"subject":"Model A-1200 quote",
"content":"Hi… 500 units, 15 days…",
"categories":["Customers-Group 1",
"Customers-Group 2"],
"start":false}
→ campaign_id, recipient_count 1600
# 3. Verify, then start
POST /agent/tasks/6aea…/start
# 4. Poll
GET /agent/tasks/6aea…
→ sent 1600 success 1587 failed 13
opened 412 clicked 63
# 5. Read replies
GET /agent/messages/search?q=price
→ 2 matches with excerpts
One job per endpoint, minimal parameters, and a next hint in the response so nothing has to be guessed.
Registration returns a long-lived token, and you can issue revocable API keys for partners without sharing a password.
QQ, 163, Gmail, Outlook, Alibaba and Tencent enterprise mail, plus MX lookups for custom domains. An address and an app password is all it needs.
800 contacts per group; overflow becomes Group 2, Group 3. Re-imports never duplicate, they just move the address.
Broadcast by group or write to one person — signatures, threading and delivery stats behave identically.
Multiple mailboxes share the load within their own daily limits, with retries and ban isolation.
Search correspondence by keyword or by person, so the model can follow up instead of asking you to dig through an inbox.
Plain HTTP and JSON. No SDK, no private protocol.
# Once: mint a long-lived key
curl -X POST $API/agent/keys -H "Authorization: Bearer $TOKEN" \
-H 'Content-Type: application/json' -d '{"name":"my-app"}'
# Then every send is one request
curl -X POST $API/agent/broadcast \
-H "Authorization: Bearer mmk_xxx" -H 'Content-Type: application/json' \
-d '{"subject":"New release","content":"…","categories":["Customers-Group 1"]}'