Public API · no dashboard access needed
Send inbound messages into Tindel's triage loop.
POST a sender, subject, and message body to the public ingestion endpoint. Tindel classifies the message as reply, escalate, or junk and returns the triage result immediately.
POST
/api/ingestContent-Typeapplication/json · requiredAcceptapplication/json · optionalDo not add an Authorization header. This endpoint is intentionally public for inbound integrations.
Request body
Three fields, each a non-empty string.
The sender, subject, and body are the complete ingestion contract. Preserve the original message text in body so the classifier has the context it needs.
Quickstart
Copy, replace the origin, and send.
The example uses a placeholder hostname. Replace your-tindel-origin.example with the deployed origin shown above.
curl -X POST 'https://your-tindel-origin.example/api/ingest' \
-H 'content-type: application/json' \
-d '{
"from": "[email protected]",
"subject": "Question about my order",
"body": "Hi, could you tell me when order #1842 will ship?"
}'Responses
A result you can route immediately.
A successful request returns 201 Created after Tindel classifies and stores the ticket. The response includes the ticket id plus the model's caller-facing triage result.
classification is one of reply, escalate, or junk. draft, channel, notes, reasoning, and confidence may be null or omitted when unavailable.{
"id": "cmj8q2n4f0001q2x0k3m8p7ab",
"classification": "reply",
"draft": "Hi! Order #1842 is scheduled to ship tomorrow.",
"channel": "email",
"notes": null,
"reasoning": "Routine order-status question with enough context to answer.",
"confidence": 0.96
}{
"errors": {
"from": "From is required",
"subject": "Subject is required",
"body": "Body is required"
}
}{
"error": "Internal Server Error"
}Cross-origin requests
Preflight is already handled.
Browser clients posting from another origin may send an OPTIONS preflight first. Tindel answers with 204 No Content, allows POST, OPTIONS, accepts the content-type request header, and returns permissive CORS headers on both preflight and POST responses.
OPTIONS /api/ingest
204 · no response body