UCPA Public API
Read-only REST + feeds ovenpå UCPA's rejsedatabase. Ingen autentificering. Rate limit 60 req/min/IP. Cache 15 min.
Endpoints
/api/public/ucpa/healthStatus og source-info.
/api/public/ucpa/destinationsAlle destinationer med trip-count. Params: activity, season, country, q, limit, offset.
/api/public/ucpa/tripsSøg rejser. Params: destination, transport, transport_from, activity, season, from_date, to_date, min_price, max_price, min_days, max_days, skidage, age_group, level, q, sort (price_asc|price_desc|date_asc|date_desc|destination_asc), limit (max 250), offset.
/api/public/ucpa/trips/cheapestKortere svar sorteret price_asc. Samme params som /trips.
/api/public/ucpa/trips/{trip_id}Én rejse ud fra rejse_id.
/api/public/ucpa/ai/searchAI-venligt kort format med summary-linje. Max limit 50.
/api/public/feeds/ucpa/trips.jsonFuldt JSON-feed. Understøtter ETag / If-None-Match.
/api/public/feeds/ucpa/trips.xmlFuldt XML-feed. Understøtter ETag / If-None-Match.
Response-eksempel
{
"meta": {
"count": 1,
"limit": 50,
"offset": 0,
"generated_at": "2026-07-05T10:00:00Z",
"source": "ucpa_mcp_database"
},
"results": [
{
"trip_id": "ABC123",
"destination": "Val Thorens",
"country": "France",
"season": "winter",
"departure_date": "2027-04-03",
"days": 8,
"ski_days": 7,
"transport": "Kør selv",
"transport_from": null,
"accommodation": "Résidence 3*",
"room_type": "4-personers",
"price": 4899,
"currency": "DKK",
"course_name": "Val Thorens — Happy Winter",
"activity": "Ski",
"age_group": "18-35",
"level": null,
"url": "https://ucpa.dk/kursus/val-thorens-happy-abc123",
"iresa_id": "ABC123",
"product_code": "VTH-HW"
}
]
}Error codes
INVALID_QUERY— 400. Ugyldig eller ukendt query parameter.NOT_FOUND— 404. Ressource findes ikke.RATE_LIMITED— 429. Retry-After header angiver ventetid.API_DISABLED— 503. Endpoint slået fra af admin.INTERNAL_ERROR— 500. Server-fejl.
Tilladt brug
Rejsesøgning, prissammenligning, destination discovery, AI-retrieval. Ingen persondata, ingen bookingdata på kundeniveau.