- Document Conversion — Convert PDFs, DOCX files, and images to clean Markdown
- Data Extraction — Use custom extractors to pull structured data from documents
Base URL
All API requests should be made to:Quick Start
Convert a Document to Markdown
Run an Extractor
API Endpoints
Documents
Extractors
Request Format
Authentication
All requests require a Bearer token in the Authorization header:Content Types
- File uploads:
multipart/form-data - JSON requests:
application/json
Response Format
All responses are JSON. Successful responses include the requested data:Error Handling
The API uses standard HTTP status codes:
Error responses include details:
Processing Flow
Document processing is asynchronous:- Upload — Submit your document via
POST /documentsorPOST /e/{slug} - Queue — Document enters the processing queue (
PENDING) - Process — Document is being converted or extracted (
PROCESSING) - Complete — Results are ready for download (
COMPLETED)
GET /documents/{id} to check status, or provide a callback_url to receive webhook notifications.
Webhooks
Provide acallback_url when creating a document to receive a POST notification when processing completes:
Rate Limits
API requests are rate-limited based on your plan. If you exceed the limit, requests return429 Too Many Requests. Wait and retry with exponential backoff.
Support
- Email: support@doctly.ai
- GitHub: github.com/doctly/doctly/issues

