En test spiller én samtale i tekst: en simulert innringer spiller scenario, agenten svarer fra utkastet sitt (instruksjoner, første melding og kunnskap), og en dommer vurderer samtalen mot success_criteria. Skriv tester for samtalene som betyr noe, kjør dem etter hver endring, og publiser når de består.
curl https://evasay.com/api/v1/voice/agents/AGENT_ID/tests \
-X POST \
-H "Authorization: Bearer sk-your-key" \
-H "Content-Type: application/json" \
-d '{
"name": "Move a booking",
"scenario": "A regular customer wants to move Friday 3 pm to Saturday morning.",
"success_criteria": "Offers Saturday times and confirms the new time and the customer'"'"'s name.",
"max_turns": 8
}'
POST /agents/{id}/test-runs kjører alle agentens tester, eller dem i test_ids, og svarer med én kjøring per test (status: "running"). Spør GET /test-runs/{id} til status er passed, failed eller error; da har kjøringen transcript og dommerens reason (på engelsk, eller på kinesisk med reason_language: "zh"). Hver kjøring koster Credits, som vises ved testene i dashbordet; kjøringene stopper ved den første saldoen ikke kan betale for, og not_started viser resten. En kjøring som ikke kan fullføres, refunderes. Tester sjekker hva agenten sier, ikke stemmen eller timingen, og kaller ikke funksjonene: forhåndsvis dem med POST /tools/{id}/test. En agent har opptil 30 tester; PATCH og DELETE /agents/{id}/tests/{test_id} endrer eller fjerner en.
I tillegg til hele samtaler (type: "simulation", standard) kan en test sjekke ett enkelt svar. type: "next_reply" tar chat_history, samtalen før som slutter med innringeren ([{role, text}], der role er caller eller agent), og success_criteria for agentens neste svar. type: "tool_call" tar chat_history og expected_tool {name, arguments, match}: agenten skal kalle name (en av funksjonene sine, eller end_call, transfer_call, handoff_to_agent) med arguments, sammenlignet nøyaktig (tekst trimmet, store og små bokstaver ignorert) eller med match: "judge" etter betydning; andre argumenter ignoreres. En kjørings transcript viser de kalte funksjonene i tool_calls.
POST /agents/{id}/tests/generate foreslår tester ut fra agentens utkast: instruksjoner, kunnskap og funksjoner. Det tar count (1–10, standard 5), types, focus (hva som skal dekkes) og language (en eller zh, for navn og kriterier), koster Credits som én kjøring og svarer med utkast du ser over og sender til POST /agents/{id}/tests; med save: true lagres de.