Set it up
1
Connect your harness
In Integrations, connect your AI Harness provider (
hermes or openclaw). The escalation
surface stays hidden until at least one harness is connected.2
Create a connector key
Mint a scoped API key for your harness in the dashboard’s Developer page, granting only the
escalations:* scopes it needs (see the connector reference).
A connector key can work conversations but can’t edit your destinations or agents.3
Add a destination
Register where conversations go:
POST /escalation-destinations with your harness’s endpoint_url
and the channels it handles (chat, sms, or both). The response returns a signing secret
(whsec_…) once — store it; your harness verifies webhook signatures with it. The destination
starts unverified.4
Run the handshake test
POST /escalation-destinations/{id}/test opens a sandbox escalation and calls your endpoint.
Your harness must receive → claim → reply → resolve within the window. Only a green run flips
the destination to active; the response reports a step-by-step ledger with a hint on failure.5
Set the agent's escalation policy
PUT /agents/{id}/escalation-policy sets an ordered list of rules — when to escalate and where
to route. Rules match on deterministic conditions (an explicit request for a person, a human
request, business hours, channel, a failed tool or knowledge lookup) and route to an active
destination, an email fallback, or a queue.6
Publish the agent
The policy edits the agent draft. Publish so live phone and
chat traffic use it.
The policy is per agent — two agents in one organization can route to entirely different harness
destinations. Destinations are shared organization-level infrastructure; the policy decides which
agent uses which.
What runs a conversation
Once a destination isactive and a policy rule matches, a live conversation follows this loop:
- Flowyte opens an escalation and sends your harness a signed webhook naming the
channeland a short reason. - Your harness claims the escalation, reads the handoff context (a transcript window plus the escalation reason and any verified identifiers), and starts replying.
- Each reply reaches the customer in their original thread; each customer message is forwarded to your harness. While your harness owns the thread, the Flowyte AI stays silent.
- Your harness ends the conversation — resolve (done), return (hand back to the AI, which resumes on the next customer message), or request a human (routes to your human fallback).
Rules to know
- SMS requires registration. Enabling the
smschannel on a destination requires your organization’s completed A2P 10DLC (TCR) registration — the same registration your inbound SMS number already needs. See SMS. - Plan. Harness conversations are included on Starter and above. Setting up destinations and running the handshake test work on any plan, so you can wire everything up before you upgrade.
- Compliance stays with Flowyte. Opt-out, quiet hours, and consent are enforced on your harness’s replies exactly as they are on the AI’s — a reply to an opted-out recipient is suppressed, and a quiet-hours send is held.
- One owner per thread. A conversation has at most one non-AI owner at a time, so a harness and a human seat can never both hold the same thread.
In the API
The escalation endpoints are in the API Reference. Configuration endpoints (destinations, policy) work on any plan; the runtime endpoints are what your connector uses.
Authenticate every call with
Authorization: Bearer flowyte_sk_…. You can also drive the same
surface over the MCP gateway — the escalation tools map one-to-one onto
these endpoints.
Next: the connector reference for building the harness side.