Download Voucher Endpoint
Downloads the voucher PDF for a booking item.
- Endpoint:
/api/v1/bookings/{id}/voucher - Method:
GET
:::warning Not available for flights
This endpoint serves KKday activity vouchers only. The {id} it expects is a KKday
booking's internal ID, and it resolves against the KKday booking table — a flight booking
number or ID will not match and the request fails.
For flight documents, use the flight booking's own artefacts instead:
- The
pnr_codefrom Booking Detail, which the customer presents at check-in. - The
booking_detail_linkon the flight item — a signed link to the hosted flight booking page. - The confirmation email sent to
contact_details.emailwhen the booking is created. - The invoice endpoint
/api/v1/bookings/{booking_id}/download/invoice, which works for unified bookings including flights.
This page is included so the route is documented; do not wire it into a flight flow. :::
Headers
| Header | Value | Required | Description |
|---|---|---|---|
Partner-Access-Token | Base64 String | Yes | Your encrypted AES-256 time-sensitive token. |
Authorization | Bearer <token> | Yes | Customer access token from Login. |
Accept | application/pdf | Yes |
Path Parameters
| Parameter | Type | Required | Description |
|---|---|---|---|
id | Integer | Yes | KKday booking ID — not a booking number and not a flight booking. |
Sample Request
GET /api/v1/bookings/48213/voucher
Response
On success the response is a binary PDF download, not JSON:
Content-Type: application/pdf
Content-Disposition: attachment; filename="voucher_48213.pdf"
On failure it falls back to the standard JSON envelope:
{
"result": 0,
"message": "..."
}
Errors
| HTTP | Cause |
|---|---|
401 | Missing or invalid Authorization bearer token. |
200 with "result": 0 | No KKday booking matches the given ID, or voucher generation failed. |
Related
- Booking Detail — for the flight PNR and hosted booking link.