Integrate Understify into your applications with our RESTful API. Build decision workflows with simple HTTP requests.
Get started in minutes. All you need is an API key from your settings page.
curl -X POST https://www.understify.com/api/v1/documents/upload \ -H "Authorization: Bearer YOUR_API_KEY" \ -F "file=@document.pdf"
Secure API access with bearer token authentication
All API requests require authentication using an API key. Include your API key in the Authorization header using the Bearer token format:
Authorization: Bearer YOUR_API_KEYGet Your API Key
API keys are available for Pro, Team, and Business plans. Create and manage your keys from the API settings page in your dashboard.
All API requests should be made to this base URL
https://www.understify.com/api/v1Complete reference for all available endpoints
/documents/uploadUpload a document for AI analysis. Supports PDF, images (PNG, JPG, JPEG), and other common formats. The document will be processed asynchronously.
Content-Type: multipart/form-data Form Data: - file: (required) The document file to upload
{
"id": "doc_123456",
"title": "document.pdf",
"status": "processing",
"file_type": "pdf",
"file_size": 1024000,
"created_at": "2024-01-15T10:30:00Z"
}curl -X POST https://www.understify.com/api/v1/documents/upload \ -H "Authorization: Bearer YOUR_API_KEY" \ -F "file=@document.pdf"
/documentsList all your documents with pagination support. Filter by status and file type.
page - Page number (default: 1)limit - Items per page (default: 50, max: 100)status - Filter by status (ready, processing, pending, failed)file_type - Filter by file type (pdf, image, other){
"documents": [
{
"id": "doc_123456",
"title": "document.pdf",
"status": "ready",
"file_type": "pdf",
"file_size": 1024000,
"created_at": "2024-01-15T10:30:00Z",
"has_analysis": true
}
],
"pagination": {
"page": 1,
"limit": 50,
"total": 100,
"totalPages": 2
}
}curl -X GET "https://www.understify.com/api/v1/documents?page=1&limit=50&status=ready" \ -H "Authorization: Bearer YOUR_API_KEY"
/documents/:idRetrieve detailed information about a specific document, including analysis results if available.
id - The document ID (required){
"id": "doc_123456",
"title": "document.pdf",
"status": "ready",
"file_type": "pdf",
"file_size": 1024000,
"created_at": "2024-01-15T10:30:00Z",
"analysis": {
"status": "complete",
"summary": "Document summary...",
"key_points": ["Point 1", "Point 2"],
"insights": [
{
"heading": "Key Insight",
"content": "Detailed insight content..."
}
]
}
}curl -X GET "https://www.understify.com/api/v1/documents/doc_123456" \ -H "Authorization: Bearer YOUR_API_KEY"
/documents/:id/qaAsk questions about a document and get AI-powered answers based on the document content and analysis.
id - The document ID (required){
"question": "What are the key terms in this contract?"
}{
"answer": "The key terms include...",
"confidence": 0.95,
"sources": ["Section 2.1", "Section 3.4"]
}curl -X POST "https://www.understify.com/api/v1/documents/doc_123456/qa" \
-H "Authorization: Bearer YOUR_API_KEY" \
-H "Content-Type: application/json" \
-d '{"question": "What are the key terms?"}'API rate limits are based on your subscription plan
Rate limits help ensure fair usage and system stability. Limits are applied per API key and reset monthly.
100 requests/month
1,000 requests/month
5,000 requests/month
Unlimited
Rate Limit Headers
All API responses include rate limit information in headers: X-RateLimit-Limit, X-RateLimit-Remaining, and X-RateLimit-Reset.
Standard error response format for all API endpoints
All errors follow a consistent format with appropriate HTTP status codes:
{
"error": "Error message describing what went wrong"
}400 - Bad Request401 - Unauthorized403 - Forbidden404 - Not Found429 - Too Many Requests500 - Internal Server Error