Skip to main content
POST
Poll Agent Onboarding

Overview

No authentication is required for this endpoint. Call it with the device_code from /v1/agent/onboarding/start, waiting at least the returned interval seconds between calls. See Connect your AI agent for the full flow.
This endpoint has two independent 429 responses: SLOW_DOWN when you poll faster than the per-device interval, and TOO_MANY_REQUESTS from the per-IP rate limit (600 requests per minute per IP, since a hosting platform’s shared egress address can carry many bots), which carries a Retry-After header instead of interval.

Body Parameters

string
required
The device_code returned by /v1/agent/onboarding/start.

Response

object
Current state of the flow.
string
One of pending, approved, expired.
number
Present when status is pending. Minimum seconds to wait before polling again.
number
Present when status is pending. Seconds remaining before the codes expire.
string
Present only when status is approved. A dedicated API key for the org, returned exactly once.
string
Present when status is approved. The org the key belongs to.
string
Present when status is approved. The number provisioned for this org.
object
Present when status is approved. The org’s Agent Phone Plan subscription. The same object is returned by GET /billing/agent_phone (as data) and by GET /v1/me (as plan).
string
Internal plan identifier, agent_phone_basic.
string
Human-readable plan name, Agent Phone Plan.
string
Subscription status, active.
string
The number provisioned for this org’s Agent Phone Plan.
number
Maximum concurrent calls, 1.
number
Maximum call length in minutes, 60.
array
Country codes calls, transfers, and SMS are allowed to, ["US", "CA"].
string
ISO 8601 timestamp for the end of the current billing period.
string
Present when status is approved, if a client_name was given to /start.
null | array
null unless polling too fast.
An expired status covers both an expired code and a device_code that was never valid. The two aren’t distinguished, so don’t rely on this response to debug a mistyped code, start over with a new /start call instead.

Docs for agents: llms.txt