Derive Booking Url
curl -X POST "https://d1vrh75868.execute-api.us-east-2.amazonaws.com/api/v1/booking-urls" -H "Authorization: Bearer <YOUR_API_KEY>" -H "Content-Type: application/json"Exchange a booking_token from a prior flight-search result for a live third-party booking URL.
Synchronous upstream redirect lookup against Skiplagged; typically returns in 3-6 seconds. Call this lazily — only for offers the user actually intends to book — to avoid paying the upstream cost for the full result set returned by /api/v1/flight-searches.
Request Body required
Section titled “Request Body required ”object
Provide the opaque booking_token string returned with each PriceOffer from a prior flight-search result. Send the value verbatim; do not decode or modify it. Tokens are derived from upstream itinerary identifiers and have a finite freshness window aligned with the originating search (~30 minutes). Expired tokens return 410 with code booking_token_expired; malformed tokens return 400 with code invalid_booking_token.
Example generated
{ "booking_token": "example"}Responses
Section titled “ Responses ”Successful Response
object
object
The third-party booking URL Skiplagged returns for the offer identified by the supplied token. Hand this to the end user as a redirect target; do not parse it for stability — the path, query parameters, and host may change as Skiplagged rotates partner deeplinks.
object
object
object
Example generated
{ "data": { "booking_url": "example" }, "meta": { "cache": { "hit": true, "ttl_seconds": 1 }, "resource": "example", "returned": 1, "request_id": "example", "sources_used": [ "example" ], "total_results": 1, "data_freshness": "2026-04-15T12:00:00Z", "processing_time_ms": 1 }, "warnings": [ { "code": "example", "source": "example", "message": "example" } ]}Validation Error
object
object
object
Example generated
{ "detail": [ { "ctx": {}, "loc": [ "example" ], "msg": "example", "type": "example", "input": "example" } ]}