Tickets and escalation
Hand a conversation to a human without leaving your agent.
Create a ticket
Send the transcript so the human picking it up has the full context. Urgency drives routing and SLA.
curl -X POST https://app.humaner.io/api/v1/intelligence/create-ticket \
-H "Authorization: Bearer hm_live_xxxxxxxx" \
-H "Content-Type: application/json" \
-d '{
"agentId": "YOUR_AGENT_PUBLIC_ID",
"visitorEmail": "alex@example.com",
"subject": "Refund request",
"transcript": [
{ "role": "user", "content": "I was charged twice" },
{ "role": "assistant", "content": "I can open a ticket for that." }
]
}'Detecting escalation
If you would rather not write your own frustration heuristics, POST the message to /api/v1/intelligence/escalation. It returns a signal you can act on. This call is not billable.
curl -X POST https://app.humaner.io/api/v1/intelligence/escalation \
-H "Authorization: Bearer hm_live_xxxxxxxx" \
-H "Content-Type: application/json" \
-d '{
"agentId": "YOUR_AGENT_PUBLIC_ID",
"conversationHistory": [
{ "role": "user", "content": "This is the third time I am asking" }
]
}'Where tickets land
Tickets arrive in Desk with routing, urgency, and SLA tiers. Your team replies there. Escalation policies are configured under Agent → Escalation.
Helpdesk
3 open
Refund request — order #4521
Cannot access billing portal
Room modification July 12
Refund request — order #4521
mediumCustomer asked about return policy for order #4521. Agent could not verify purchase date from live data.
Transcript
“Can I still return this? I bought it three weeks ago.”