Squads
A squad is several assistants sharing one call, with explicit handoffs. A triage assistant answers, identifies intent, and hands off to billing or support — each with its own prompt, voice and tools, none of them carrying the others' baggage.
API
Full parameters and responses: squad reference.
GET /api/v1/squads
POST /api/v1/squads
GET /api/v1/squads/{id}
PATCH /api/v1/squads/{id}
DELETE /api/v1/squads/{id}
POST /api/v1/squads/{id}/publish
GET /api/v1/squads/{id}/snapshot
GET /api/v1/squads/{id}/validate
POST /api/v1/squads/{id}/resolve-handoffAs a file
yaml
name: Front desk
members:
- assistant: Triage
isDefault: true
handoffTo: [Billing, Support]
- assistant: Billing
handoffDescription: Invoices, payments, refunds.
- assistant: Support
handoffDescription: Technical problems with an existing order.Exactly one member is isDefault — it answers the call. callagent validate rejects a squad with two, and one that names an assistant no file declares.
Handoff context
A handoff carries the conversation so far plus any variables the previous assistant set, so the caller is not asked their order number twice. The handoff itself appears in the call timeline as handoff.started / handoff.completed.