Frihet REST API
Programmatic access to invoices, clients, expenses, products, and quotes. Built for integrations that scale.
Built for developers
PATCH partial updates
Update only the fields you need. Zod-validated partial schemas ensure data integrity.
Search & filter
Full-text search with ?q= parameter. Per-resource field mapping for precise results.
Batch operations
Create up to 50 resources in a single request. HTTP 207 multi-status responses.
Idempotency keys
Safely retry requests with Idempotency-Key header. 24-hour TTL, Firestore-backed.
Rate limit headers
X-RateLimit-Limit, Remaining, and Reset headers on every response. Plan accordingly.
OpenAPI 3.1 spec
Machine-readable spec at /openapi.yaml. 16 paths, 18 schemas. Generate SDKs automatically.
Intelligence endpoints
Business context, monthly summaries, and quarterly tax data via /context, /monthly, /quarterly.
VeriFactu-safe delete
Soft delete for non-draft invoices and quotes. Full audit trail for Spanish tax compliance.
Endpoints
| Method | Path |
|---|---|
| GET | /v1/invoices |
| POST | /v1/invoices |
| PATCH | /v1/invoices/:id |
| DELETE | /v1/invoices/:id |
| POST | /v1/invoices/batch |
| GET | /v1/clients |
| POST | /v1/clients |
| GET | /v1/expenses |
| POST | /v1/expenses |
| GET | /v1/products |
| GET | /v1/quotes |
| GET | /v1/context |
| GET | /v1/monthly |
| GET | /v1/quarterly |
| GET | /openapi.yaml |
Code examples
curl https://api.frihet.io/v1/invoices \ -H "Authorization: Bearer fri_..." \ -H "Content-Type: application/json"
Authentication
Generate API keys from Settings > API in your Frihet dashboard. Include your key as a Bearer token in the Authorization header.
Authorization: Bearer fri_...
Start integrating today
API access included in all plans. Your API key is ready in Settings.
Start Free