API reference
A JSON API over HTTPS. Requests and responses are JSON, every request needs an API key, and every object carries its type in object.
Base URL
Base URL
https://api.129.212.147.181.sslip.ioThe version is in the path: /v1.
Authentication
Send your key as a bearer token, from your server: Authorization: Bearer dg_test_…. Requests from a browser are refused. Test keys (dg_test_) are free and never call a paid model; live keys (dg_live_) are billed. See Authentication and Test vs live.
Conventions
- IDs are prefixed by type and sort by creation time: ses_… sessions, msg_… messages, doc_… documents, tpl_… forms (as a session reports them), req_… requests.
- Session calls name your end user in Docgen-Subject, set from your own login; a session answers only to the subject it was created with. See Subjects.
- Timestamps are RFC 3339 in UTC, like 2026-10-07T10:44:12Z.
- livemode says whether a test or a live key made the object.
- Every POST accepts an Idempotency-Key.
- Sessions, documents and files expire, 7 days after they are created by default. After expires_at, or once deleted, they return 410 Gone; see Data lifetime.
- Errors share one shape with a stable code; see Errors.
Endpoints
Sessions
POST /v1/sessions Start a sessionPOST /v1/sessions/{session}/messages Send a messageGET /v1/sessions/{session} Retrieve a sessionGET /v1/sessions List a subject's sessionsGET /v1/sessions/{session}/messages List messagesGET /v1/sessions/{session}/answers Retrieve the answersPOST /v1/sessions/{session}/close Close a sessionDEL /v1/sessions/{session} Delete a sessionPOST /v1/launch-tokens Exchange a launch code
Documents
POST /v1/documents Create a documentGET /v1/documents/{document} Retrieve a documentGET /v1/documents/{document}/stream Stream eventsGET /files/{token} Download a file