API Reference

Complete REST API documentation for integrating document intelligence into your applications. Simple, powerful, and developer-friendly.

Base URL

https://api.datlas.eu/v1

Authentication

Secure authentication methods to protect your API calls and data. Choose the method that best fits your application architecture.

API Key

Medium Security

Simple API key authentication for server-to-server calls

Use Case:

Backend integrations, automation scripts

Implementation:

Include in Authorization header as Bearer token

Authorization: Bearer dtls_sk_live_abc123...

OAuth 2.0

High Security

Industry-standard OAuth 2.0 with PKCE for web applications

Use Case:

Web applications, mobile apps, third-party integrations

Implementation:

Authorization code flow with refresh tokens

Authorization: Bearer eyJhbGciOiJSUzI1NiIsInR5cCI6...

JWT Tokens

High Security

Short-lived JWT tokens for enhanced security

Use Case:

Microservices, high-security environments

Implementation:

Request signed JWT tokens with limited scope

Authorization: Bearer eyJ0eXAiOiJKV1QiLCJhbGciOi...

Core API Endpoints

Essential endpoints for document processing, status checking, and account management. All endpoints return JSON responses.

POST
/api/v1/documents

Upload and process a document

Category:

Documents

Authentication:

Required

Rate Limit:

100/minute

Request Example:

{ "document": "base64_encoded_file", "filename": "invoice.pdf", "document_type": "invoice", "metadata": { "customer_id": "12345", "priority": "high" } }

Response Example:

{ "document_id": "doc_abc123", "status": "processing", "created_at": "2025-01-15T10:30:00Z", "estimated_completion": "2025-01-15T10:32:00Z" }
GET
/api/v1/documents/{id}

Retrieve document processing status and results

Category:

Documents

Authentication:

Required

Rate Limit:

1000/minute

Request Example:

GET /api/v1/documents/doc_abc123

Response Example:

{ "document_id": "doc_abc123", "status": "completed", "results": { "invoice_number": "INV-2025-001", "total_amount": 1250.00, "currency": "EUR", "due_date": "2025-02-15", "vendor": "Acme Corp" }, "confidence": 0.98, "processing_time_ms": 2340 }
POST
/api/v1/webhooks

Configure webhook endpoints for processing notifications

Category:

Webhooks

Authentication:

Required

Rate Limit:

10/minute

Request Example:

{ "url": "https://your-app.com/webhook", "events": ["document.completed", "document.failed"], "secret": "your_webhook_secret" }

Response Example:

{ "webhook_id": "wh_xyz789", "url": "https://your-app.com/webhook", "events": ["document.completed", "document.failed"], "created_at": "2025-01-15T10:30:00Z" }
GET
/api/v1/usage

Retrieve current usage statistics and limits

Category:

Account

Authentication:

Required

Rate Limit:

60/hour

Request Example:

GET /api/v1/usage?period=current_month

Response Example:

{ "period": "2025-01", "documents_processed": 1847, "plan_limit": 5000, "overage_documents": 0, "api_calls": 23451, "rate_limit_remaining": 998 }

Official SDKs

Type-safe SDKs for popular programming languages. Handle authentication, error handling, and retries automatically.

JavaScript/TypeScript

v2.1.0

Installation:

npm install @datlas/sdk

Usage Example:

import { DatlasClient } from '@datlas/sdk'; const client = new DatlasClient({ apiKey: 'your_api_key' }); const result = await client.documents.process({ file: documentFile, type: 'invoice' });

Python

v1.8.2

Installation:

pip install datlas-sdk

Usage Example:

from datlas import Client client = Client(api_key='your_api_key') result = client.documents.process( file=open('invoice.pdf', 'rb'), document_type='invoice' )

Java

v1.5.1

Installation:

implementation "com.datlas:datlas-sdk:1.5.1"

Usage Example:

DatlasClient client = new DatlasClient("your_api_key"); DocumentRequest request = DocumentRequest.builder() .file(new File("invoice.pdf")) .documentType("invoice") .build(); DocumentResponse response = client.documents().process(request);

HTTP Status Codes

Standard HTTP status codes returned by the API with specific meanings for different response scenarios.

200

OK

Request successful, response contains requested data

201

Created

Resource created successfully (e.g., document uploaded)

202

Accepted

Request accepted for processing (asynchronous operations)

400

Bad Request

Invalid request format or missing required parameters

401

Unauthorized

Missing or invalid authentication credentials

403

Forbidden

Insufficient permissions for the requested operation

404

Not Found

Requested resource does not exist

429

Too Many Requests

Rate limit exceeded, retry after specified time

500

Internal Server Error

Server error, contact support if persistent

Need API Support?

Our developer support team is here to help with API integration questions, troubleshooting, and optimization guidance.

Interactive Docs

Try API calls directly in the browser with our interactive documentation

Developer Discord

Join our developer community for real-time help and discussions

Priority Support

Get dedicated technical support for complex integrations