1. Overview
The Partner API lets approved integrations search, price, and book Travolyo's locally managed hotels, activities, and holiday packages over REST/JSON.
- Discover — search inventory by destination and date.
- Inspect — retrieve the selected item and its media.
- Price and book — confirm live availability, prebook, then create an idempotent booking.
Base URL: https://travolyo.com/api/partner/v1 · Support: [email protected]
2. Conventions
| Topic | Rule |
|---|
| Transport | HTTPS/HTTP as configured. Write requests use JSON. |
| Dates | ISO-8601 YYYY-MM-DD; check_out must follow check_in. |
| Money | Prices include a numeric amount and ISO 4217 currency. |
| Response | Every response uses success, data, and optional meta. |
Response envelope{ "success": true, "data": { ... }, "meta": { "total": 12 } }
{ "success": false, "message": "...", "code": "bad_request", "errors": ["..."] }
3. Authentication
Every endpoint requires a Partner API key in the auth-api-key header. Test keys are available from the Partner Portal; Travolyo issues live keys after approval.
curl https://travolyo.com/api/partner/v1/meta/ping \
-H "auth-api-key: your_partner_key"
Missing, expired, or non-partner keys return 401 unauthorized.
4. Integration flow
- Call a product search endpoint.
- Use the item ID to fetch full details.
- Call availability with dates and party size.
- Optionally prebook to lock a quote, then create the booking with an idempotency key.
- Use bookings, credit, and webhooks endpoints to manage the lifecycle.
This API exposes only products configured in this project: hotels, activities, and holiday packages. Rentals are not part of the Partner API.
5. Endpoint reference
Search
| Method | Path | Description |
POST | /api/partner/v1/activities/search | Search a destination for activities on a date |
POST | /api/partner/v1/hotels/search | Search a destination for available hotels (with a "from" price) |
POST | /api/partner/v1/packages/search | Search a destination for holiday packages (with a "from" price) |
Catalog
| Method | Path | Description |
GET | /api/partner/v1/activities/{id} | Activity detail (full content & photos) |
GET | /api/partner/v1/hotels/{id} | Hotel detail (full content, photos & room types) |
GET | /api/partner/v1/packages/{id} | Package detail (itinerary, add-ons, and departures for fixed packages) |
Availability
| Method | Path | Description |
POST | /api/partner/v1/activities/availability | Live activity pricing for a date |
POST | /api/partner/v1/hotels/availability | Live rooms & rates for one hotel |
POST | /api/partner/v1/packages/availability | Priced preview for a package occupancy, departure, and add-ons |
Bookings
| Method | Path | Description |
GET | /api/partner/v1/bookings | List your bookings |
POST | /api/partner/v1/bookings | Create a booking (idempotent) |
POST | /api/partner/v1/bookings/prebook | Validate & price-lock, returns a prebook_token |
GET | /api/partner/v1/bookings/{reference} | Retrieve a booking |
POST | /api/partner/v1/bookings/{reference}/cancel | Cancel a booking (releases credit) |
Webhooks
| Method | Path | Description |
GET | /api/partner/v1/webhooks | List webhook subscriptions |
POST | /api/partner/v1/webhooks | Create a webhook subscription |
DELETE | /api/partner/v1/webhooks/{id} | Delete a webhook subscription |
Meta
| Method | Path | Description |
GET | /api/partner/v1/meta/credit | Remaining settlement credit line |
GET | /api/partner/v1/meta/ping | Auth / health check |