Use case: ticket triage
Problem: incoming support tickets need a team, a priority, and refund detection — human sorting is slow and expensive; full automation risks misroutes.
Jev’s role: the “all three types” showcase. The official Quick start plus the Confidence-gated routing pattern: one request asks everything; confidence sets the automation boundary. This is exactly what the site’s runnable examples implement (JavaScript / Python).
Request design
Section titled “Request design”{ "model": "jev-latest", "state": "Hi, I've been trying to connect my Stripe account for 3 days and the integration keeps failing. I'm losing sales. Please refund my subscription and help ASAP.", "questions": { "department": { "type": "choice", "instructions": "Which team should handle this", "criteria": { "billing": "Payment or subscription issues", "technical": "Bugs or integration problems", "sales": "Pricing or account questions" } }, "frustration": { "type": "score", "instructions": "How frustrated the customer appears", "criteria": ["Calm, just stating facts", "Frustrated but civil", "Very angry, strong language"] }, "asks_refund": { "type": "noul", "instructions": "The customer explicitly requests a refund" } }}Routing rules (all in code)
Section titled “Routing rules (all in code)”// Department: auto-assign when confident, human triage otherwiseconst route = department.confidence >= 0.7 ? `auto-assign to ${department.choice}` : 'route to human triage';
// Refund: asymmetric costs — conservative thresholds, middle band to humansconst refund = asks_refund.noul >= 0.9 ? 'auto ticket' : asks_refund.noul >= 0.5 ? 'human review' : 'no action';
// Frustration: feeds SLA ordering only, never triggers alonepriority = frustration.score >= 1.5 ? 'high' : 'normal';Threshold design points (official Noul guidance plus our advice):
departmentgates on confidence (0.7 to start) — a misroute only costs time, so higher automation is tolerableasks_refunduses the noul probability in three bands — refunds are money; 0.5–0.9 must reach a humanfrustration’s Score only feeds ordering, never triggers actions — single-signal triggers misfire
Why one request instead of three
Section titled “Why one request instead of three”The three questions share one state; batching saves two-thirds of input tokens and round trips (the direct payoff of parallel questions — see Capabilities). Response answers keys mirror the questions one-for-one, so parsing is unambiguous.
Rollout checklist (our advice)
Section titled “Rollout checklist (our advice)”- Run a week of shadow mode: log Jev’s routing next to human sorting, measure agreement
- Calibrate
criteriaper team — only you know where “technical support” ends and “billing” begins - Keep
probabilities/confidencelogs for every automated action — appeals and audits will need them - Watch for PII:
stateleaves your system for the API; sanitize first per your compliance rules
Back to the overview; errors and rate limits: API reference.