Search tours
Overview
Search available tours and activities with localized content and prices in your chosen currency. Supports free-text or geo search, plus filtering by date, language, price, category, rating, duration, and tour flags.
When to Use
- Search results - Populate a tours listing or map view
- Destination pages - Show activities available in a city or region
- Category browsing - Filter tours by type, duration, or rating
What You Get
- Tour listings - Titles, descriptions, images, and ratings
- Localized content - Names and descriptions in the requested language
- Prices - Amounts in the requested currency
Quick Start
Required: language, currency
Search (pick one): textSearch, or location[latitude]/location[longitude]/location[radiusKm]
Filters: dateRange[from]/dateRange[to], languages, price[min]/price[max], categories, rating[min]/rating[max], duration[min]/duration[max], flags
Sort: sort[field]/sort[direction]
Pagination: pagination[limit]/pagination[offset]
Returns a paginated list of matching tours.
Error codes
Product-operation codes are listed below. Shared authentication/access/rate-limit middleware can return common codes such as 401, 40301 or 4290. HTTP status and error code are separate; do not parse message text.
| Code | Meaning |
|---|---|
| 71001 | invalid experience request |
| 71002 | experience not found |
| 71003 | experiences provider request failed |
| 71004 | experiences provider request timed out |
| 71005 | experience request is unauthorized |
| 71006 | experience request is forbidden |
| 71007 | experiences service is temporarily unavailable |
| 71099 | failed to retrieve experiences |
Request
- Base URLhttps://api.liteapi.travel/v3.0
- URLhttps://api.liteapi.travel/v3.0/experiences/tours
- AuthAPI key in header X-API-Key
Query parameters
ISO language code for localized content
ISO 4217 currency code for prices
Free-text search term (location name, tour title, etc). Mutually exclusive with location[latitude]/location[longitude].
Geo filter latitude. Must be sent together with location[longitude] and location[radiusKm]. Mutually exclusive with textSearch.
Geo filter longitude. Must be sent together with location[latitude] and location[radiusKm].
Geo filter radius in kilometers around location[latitude]/location[longitude].
Only return tours offered on or after this date (YYYY-MM-DD).
Only return tours offered on or before this date (YYYY-MM-DD).
Filter to tours conducted in one or more of these ISO language codes (repeat the param per value, e.g. languages=en&languages=fr). Distinct from the required language param, which only controls localized content on the response.
Minimum partner-facing selling price, in the requested currency. Bounds are interpreted using the same cent rounding as the returned price.
Maximum partner-facing selling price, in the requested currency. Bounds are interpreted using the same cent rounding as the returned price.
Filter to one or more category ids (repeat the param per value, e.g. categories=1&categories=2). See the category id/name pairs returned on each tour.
Minimum overall tour rating (0-5).
Maximum overall tour rating (0-5).
Minimum tour duration in minutes.
Maximum tour duration in minutes.
Filter to tours matching one or more of these properties (repeat the param per value, e.g. flags=wheelchair&flags=pick-up).
Field to sort results by. popularity returns an internal recommended ranking and ignores sort[direction].
Sort direction. Ignored when sort[field]=popularity.
Maximum number of tours to return.
Number of tours to skip, for pagination.
Response
List of tours
Example response
{
"data": {
"meta": {
"totalCount": 102845,
"limit": 20
},
"tours": [
{
"id": 903304,
"title": "Skip-the-line morning tour",
"description": "A guided morning tour with skip-the-line access.",
"placeDetails": "Meet at the main entrance.",
"additionalInfo": "Not wheelchair accessible.",
"itemsToBring": [
"Comfortable shoes"
],
"notAllowedItems": [
"Large backpacks"
],
"badges": [
"likely_to_sell_out"
],
"hasPickUp": true,
"overallRating": 4.7,
"numberOfRatings": 1523,
"highlights": [
"Skip the line",
"Expert local guide"
],
"included": "Entry ticket, guided tour",
"excluded": "Hotel pickup, gratuities",
"pictures": [
{
"id": 1,
"url": "https://cdn.example.com/tour-903304-1.jpg",
"verified": true
}
],
"coordinates": {
"lat": 48.8584,
"long": 2.2945
},
"price": {
"amount": 45.5,
"currency": "EUR",
"dealSummary": {
"originalPrice": 56.9,
"currency": "EUR",
"percentage": 20
}
},
"categories": [
{
"id": 12,
"name": "Sightseeing"
}
],
"locations": [
{
"id": 1,
"type": "city",
"name": "Paris",
"city": "Paris",
"country": "FR",
"coordinates": {
"lat": 48.8584,
"long": 2.2945
}
}
],
"availableLanguages": [
"en",
"fr"
],
"translationLanguages": [
"en",
"fr",
"es"
],
"guideType": "live_guide",
"mobileVoucher": true,
"activityType": "tour",
"partnerBusinessCategory": "attraction",
"priceDescription": "per person",
"sourceUrl": "https://provider.example.com/tour/903304",
"durations": [
{
"value": 2,
"unit": "hours"
}
],
"openingHours": [
{
"from": "09:00",
"to": "18:00"
}
],
"cancellationPolicy": {
"cancellable": true,
"description": "Free cancellation up to 24 hours before the experience starts",
"cancellationFeeUnitFeeUnit": "percent",
"cancellationFeeUnitFeeValue": 100,
"cancellationFeeUnitOffsetMin": 1440,
"refundable": true
},
"notSuitableFor": "Guests with mobility impairments"
}
]
}
}Changes
No recorded changes to this operation across all 1 revision of this API.