API Reference¶
Complete technical reference for the Danish Parliament Open Data API (oda.ft.dk).
Overview¶
The Danish Parliament API provides access to comprehensive parliamentary data through a RESTful OData 3.0 interface. This reference covers all available entities, query capabilities, error handling, and performance considerations.
API Endpoints¶
- Base URL:
https://oda.ft.dk/api/ - Protocol: OData 3.0
- Authentication: None required
- Formats: JSON (default), XML
- Rate Limits: Client-side throttling recommended
Entity Categories¶
Core Entities¶
- Sag (Cases) - 96,538+ legislative cases and bills
- Aktør (Actors) - 18,139+ politicians, committees, and organizations
- Afstemning (Voting) - Parliamentary voting sessions
- Stemme (Individual Votes) - Individual voting records
Document Entities¶
- Dokument (Documents) - Parliamentary documents
- Fil (Files) - File downloads and attachments
Meeting Entities¶
- Møde (Meetings) - Parliamentary meetings and sessions
Junction Tables¶
- SagAktør - Case-Actor relationships (23 role types)
- DokumentAktør - Document-Actor relationships (25 role types)
OData Protocol Support¶
- $filter - Query filtering with Danish text support
- $expand - Include related data (2-level maximum)
- $top/$skip - Pagination (100 record limit)
- $orderby - Result sorting
- $select - Field selection for performance
- Unsupported Features - Limitations and workarounds
Error Handling¶
- HTTP Status Codes - 400, 404, 501 response patterns
- Silent Failures - Invalid filters return all data
- Troubleshooting - Diagnostic commands and solutions
Performance¶
- Response Times - 85ms to 2+ second benchmarks
- Query Limits - 100 record hard limit
- Optimization - Best practices for efficient queries
Quick Reference¶
| Parameter | Purpose | Example | Limit |
|---|---|---|---|
$top |
Limit results | $top=50 |
Max 100 |
$skip |
Skip records | $skip=100 |
None |
$filter |
Filter data | $filter=year(opdateringsdato) eq 2025 |
Complex expressions |
$expand |
Include related | $expand=Sagskategori |
2 levels max |
$select |
Choose fields | $select=id,titel |
Any fields |
$orderby |
Sort results | $orderby=opdateringsdato desc |
Any sortable field |
Critical: URL Encoding
Always use %24 instead of $ in URLs. This is the most common developer mistake.
Support¶
- GitHub Issues: Report problems and request features
- Email: folketinget@ft.dk (subject: "Åbne Data")
- Official API: https://oda.ft.dk/