This reference is for client developers and integrators. After reading it, you can find the local API base URL, response format, auth headers, resource endpoints, session endpoints, and artifact endpoints.
Only password session cookies and CSRF are supported. Business requests need the df_session cookie from login; unsafe methods also need X-CSRF-Token from the df_csrf cookie:
X-CSRF-Token: <token_from_df_csrf_cookie>
Web v1 does not expose workspace switching; custom integrations should use the workspace bound to the login session unless they manage workspace routing themselves. /api/v1/* and POST /api/copilotkit must share the same session, or sessions, resources, files, artifacts, and run events can appear under different users.
Permanently delete a session and its conversation, runs, artifacts, and child branches.
GET
/api/v1/sessions/:sessionId/conversation
Read authoritative server conversation history. Supports limit.
GET
/api/v1/sessions/:sessionId/checkpoints
List persisted context checkpoints. Supports limit.
GET
/api/v1/sessions/:sessionId/trace-dag
Read the semantic run/step/tool/output graph. Supports limit.
POST
/api/v1/sessions/:sessionId/branches
Create a persistent branch from an ended run or checkpoint. Body: { "runId": "..." } or { "checkpointId": "..." }.
GET
/api/v1/checkpoints/:checkpointId
Read checkpoint metadata.
GET
/api/v1/checkpoints/:checkpointId/context-package
Read checkpoint metadata and its context snapshot.
Session APIs restore history for Web/TUI, display titles, read tool-call pairings, and support re-asking from checkpoints. The conversation response includes messages, runEventRefs, toolCalls, and may include checkpoints, branch, and branches. Each checkpoint is derived from existing run, message, and run-event records and includes runId, status, message position bounds, event seq bounds, start/finish times, and optional error text; it marks the recoverable history boundary for one run. Branch sessions reference parent history up to the fork checkpoint instead of copying messages, so reading a branch returns the visible parent prefix plus the branch's own messages.
These routes proxy a compatible Data Link or DataGraph MCP resource configured in the current workspace. They do not provide an embedded graph service.
Method
Path
Purpose
GET
/api/v1/datalink/servers
List compatible configured servers.
GET
/api/v1/datalink/:serverId/graph
Read and normalize the workspace graph.
POST
/api/v1/datalink/:serverId/explore
Explore the graph from a natural-language query.
POST
/api/v1/datalink/:serverId/tables
Add a table source through the configured service.
DELETE
/api/v1/datalink/:serverId/tables/:tableId
Remove a table through the configured service.
POST
/api/v1/datalink/:serverId/rebuild
Rebuild the external graph.
/api/v1/datagraph/* is accepted as an alias for /api/v1/datalink/*.