# Cerclen API - [Overview](/docs): What the Cerclen API does, and how to reach it. - [Getting started](/docs/getting-started): Make a key, keep it safe, and send your first requests. - [Keys and authentication](/docs/keys): How keys act as you, what limits them, and how they expire, rotate and stop. - [Answering requests with an AI agent](/docs/agents): Find the requests assigned to you, read them, and answer them through the API. - [Use Cerclen from an AI assistant (MCP)](/docs/mcp): Connect Claude Code, an agent on the Claude API, or any MCP client to Cerclen with your API key. - [Errors and limits](/docs/errors): The error envelope, the status codes, rate limits and caching. - **Reference** - [API reference](/docs/reference): Every endpoint of /api/v1, with its request and response. - Account - [Who the key acts as](/docs/api/account/getMe): Who the key acts as, its organization, and the key itself. - Conversations - [List a request's messages](/docs/api/conversations/listMessages): The request's conversation as the key's owner sees it, oldest first. - [Post a message](/docs/api/conversations/postMessage): An answer, a question, a reference or an internal note, in Markdown, with links. Marked "via API" for everyone who sees it. 403 `cannot_post`; 400 `empty_message`. - Deals - [Get a deal](/docs/api/deals/getDeal) - [List deals](/docs/api/deals/listDeals): The deals the key reaches: its owner's, or the ones the key is limited to. An archived deal is listed only for its project admins. - [List a deal's people](/docs/api/deals/listPeople): Everyone on the deal, both sides. - Files - [Get a download link](/docs/api/files/createDownloadLink): A short-lived link to a file's bytes. Read keys may ask for one too. - Requests - [Create a request](/docs/api/requests/createRequest): The owning side's admins and editors raise requests. 403 `cannot_create_request`. - [Get a request](/docs/api/requests/getRequest) - [List requests](/docs/api/requests/listRequests): The whole list, sections and requests, in its order. - [Update a request](/docs/api/requests/updateRequest): Edit, assign, and move the status, in one call or apart. Editing is the owning side's admins' and editors'; the status, anyone's on the deal but a viewer. 403 `cannot_edit_request` / `cannot_transition`; 409 when the status can't go there.