Documentation Index
Fetch the complete documentation index at: https://docs.davinci-app.com/llms.txt
Use this file to discover all available pages before exploring further.
Overview
The Davinci Programmatic API lets scripts, CI jobs, reporting tools, and AI systems inspect Davinci project data. The API is organized around a small set of public v2 endpoints documented in the API Reference. The current public API sections are:- General — API metadata and health checks.
- Projects — project metadata, trees, objects, attached files, and file downloads.
Getting Started
Create a personal access token, then pass it as a bearer token in theAuthorization header:
Personal Access Tokens
Programmatic API access uses user-owned personal access tokens. Tokens identify the user who created them, inherit that user’s project permissions, can be scoped, and can be revoked from account settings. Project read endpoints require theprojects:read scope. See Personal Access Tokens for token creation, expiration, rate limit, and format details.
Store tokens in environment variables or a secret manager. Do not commit tokens to source control, paste them into shared logs, or embed them in client-side code.
Scopes
Scopes limit what a token can do. The currently implemented public API scope is:projects:read— read accessible project metadata, project trees, object payloads, attached file metadata, and file downloads.
Branches
Project data endpoints that read model contents support abranch query parameter. If omitted, SDK calls default to main.
Use branch names when you need to inspect project data outside the main branch, such as a review branch or integration branch.
File Downloads
Most successful API responses return JSON envelopes. File downloads are different: successful download responses return raw file bytes with content headers such asContent-Type, Content-Disposition, and Content-Length.
Errors
JSON errors use a consistent envelope:MISSING_AUTH, INVALID_API_KEY, INSUFFICIENT_SCOPES, PROJECT_NOT_FOUND, OBJECT_NOT_FOUND, FILE_NOT_FOUND, RATE_LIMITED, PROJECT_NOT_READY, and SERVICE_UNAVAILABLE.
Rate Limits
Personal access tokens have per-key request limits. When a token exceeds its limit, the API returns429 RATE_LIMITED and includes a Retry-After header with the number of seconds to wait before retrying.