API reference
Updated 2026-10-01
Try it from here: in the viewer below, paste your agent's token (Agents → your agent → Generar token) into the agentToken auth field and run GET /api/v2/agents/{id}; calls go against the real API.
The full specification is at (OpenAPI 3.1). It is rendered below; you can import it into Postman or Bruno, or generate a client with openapi-generator.
Base: https://www.ghosty.studio. Every route requires Authorization: Bearer () and responds JSON with Cache-Control: no-store.
Map
A complete turn
Attach something already in the account
Download everything: GET /api/v2/me/files?all=1 lists ALL the account's files (documents, conversations and what arrived through your agents' channels), 500 per page with nextCursor; each one has a group (documents | conversations | library). Each file downloads with GET /api/v2/me/files/:id (signed link). ghosty me files export uses it. A database downloads with GET /api/v2/agents/:id/dbs/:db/export (?format=sqlite, the default, or ?format=csv&table=T); only with the person's session, not with gat_.
GET /api/v2/me/files?q=contract (with q, even empty) returns your files: what you uploaded and what's in your personal conversations, never customer or test attachments. Each one has an id, a 15-min url for the thumbnail, and the next page in nextCursor. To send it to the agent you don't upload again: it goes by id.
The agent sees it as archivo:<id> and, in a later turn, fetches it again with its file_get tool (a fresh 15-min link). An id that isn't yours returns 404.
The browser's EventSource doesn't send headers; in Node use eventsource or fetch and read the body. Details of each event in .