Skip to main content
Updates the current user’s agent availability status. This lets customers and teammates know whether you are available to handle conversations. Method: PATCH URL: /api/v1/team/status
Status changes are broadcast in real time to all agents in your business via Socket.IO on the agent_status_changed event. Other agents’ dashboards update immediately without requiring a page refresh.

Headers

HeaderValue
AuthorizationBearer
Content-Typeapplication/json

Body

status
string
required
Your new availability status. Must be one of:
  • live — you are online and available for conversations
  • away — you are online but temporarily unavailable
  • offline — you are not available

Response

status
string
required
The status value that was saved.

Example

curl --request PATCH \
  --url https://api.pingback.live/api/v1/team/status \
  --header 'Authorization: Bearer {token}' \
  --header 'Content-Type: application/json' \
  --data '{ "status": "live" }'

Response example

{ "status": "live" }

Get pending handoffs

Method: GET URL: /api/v1/team/pending-handoffs Returns all conversations that have been flagged for human handoff by the Theo AI agent. Use this endpoint to build a handoff queue in your dashboard or trigger alerts for your team.

Headers

HeaderValue
AuthorizationBearer

Response

The endpoint returns an array of conversation objects awaiting human attention.
id
string
required
UUID of the conversation.
customer_id
string
UUID of the customer who initiated the conversation.
handoff_reason
string
The reason the AI flagged this conversation for human handoff (e.g., "complex_issue", "user_requested").
status
string
required
Current status of the conversation. One of: open, pending, closed.
created_at
string
required
ISO 8601 timestamp of when the conversation was created.

Example

curl --request GET \
  --url https://api.pingback.live/api/v1/team/pending-handoffs \
  --header 'Authorization: Bearer {token}'

Response example

[
  {
    "id": "c3d4e5f6-a7b8-9012-cdef-123456789012",
    "customer_id": "d4e5f6a7-b8c9-0123-defa-234567890123",
    "handoff_reason": "User requested to speak with a human",
    "status": "open",
    "created_at": "2024-01-20T14:05:00Z"
  }
]

Errors

StatusMeaning
400Invalid status value or user does not belong to a business
401Unauthorized — missing or invalid token
404Not a valid team member