> ## Documentation Index
> Fetch the complete documentation index at: https://developer.communicate.so/llms.txt
> Use this file to discover all available pages before exploring further.

# REST Workflows for Agents

> Use the REST API for agent discovery and support conversations.

Use the OpenAPI document as the authority for request and response schemas:

```text theme={null}
https://app.communicate.so/api/v1/openapi.json
```

Request a scoped access token as shown in [Authentication](/docs/authentication), then export it as `COMMUNICATE_ACCESS_TOKEN`.

## Discover agents

```bash theme={null}
curl https://app.communicate.so/api/v1/agents \
  -H "Authorization: Bearer $COMMUNICATE_ACCESS_TOKEN"
```

Select an agent whose `status` is `active`.

## Ask a question

```bash theme={null}
curl https://app.communicate.so/api/v1/agents/$AGENT_ID/chat \
  -H "Authorization: Bearer $COMMUNICATE_ACCESS_TOKEN" \
  -H "Content-Type: application/json" \
  -d "{\"message\":\"$QUESTION\",\"requestId\":\"$REQUEST_ID\"}"
```

Persist the returned `conversationId` to continue the thread. If `mode` is `human`, hand control back to an operator-facing workflow.
