> ## 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.

# Errors

> Understand Communicate public API status codes and error bodies.

Workspace agent-discovery and chat errors use a stable `code` for program logic and an `error` string for people. Management endpoints retain their native error envelopes, including Zod validation issues; inspect the operation reference and use HTTP status codes rather than assuming every endpoint returns the chat error shape.

```json theme={null}
{
  "error": "Invalid request body",
  "code": "request_body_invalid",
  "details": [
    {
      "code": "too_big",
      "message": "Message must contain at most 4000 characters",
      "path": "message"
    }
  ]
}
```

| Status | Meaning |
| - | - |
| `400` | Malformed JSON or invalid input |
| `401` | Missing, invalid, expired or revoked credential |
| `403` | Credential lacks a required scope, workspace membership or role permission |
| `402` | Billing is paused or credits are exhausted |
| `404` | Resource is absent or inaccessible to the credential |
| `409` | State, source revision or idempotency conflict |
| `429` | Rate limit exceeded |
| `503` | Agent temporarily unavailable during transfer |
| `500` | Unexpected server failure |

OAuth token errors use the standard `error` field, including `invalid_client`, `invalid_scope`, `invalid_target`, and `unsupported_grant_type`.


This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.