Метод API для получения данных по экскурсиям и турам:
https://experience.tripster.ru/api/partners/<partner_name>/experiences/?price_format=detailed
Получить только обновления:
https://experience.tripster.ru/api/partners/<partner_name>/experiences/?updated_after=YYYY-DD-MM&price_format=detailed
По одной экскурсии или туру:
https://experience.tripster.ru/api/partners/<partner_name>/experiences/<ID>?price_format=detailed
С описанием тура:
https://experience.tripster.ru/api/partners/<partner_name>/experiences/<ID>/?detailed=true&price_format=detailed
Программу тура можно получить другим методом: 12. Описание программы тура
Структура ответа
Пример ответа
results [ { "count": 187, "next": "https://experience.tripster.ru/api/partners/<partner_name>/experiences/?city=3&page=2", "previous": null, "results": [ { "id": 13530, "title": "Монастырь на Казбеке — «высоко над семьею гор»", "tagline": "Побывать в месте, воспетом Пушкиным и ставшим одним из символов Грузии", "url": " ", "type": "group", "format": "experience", "grade": "trip", "movement_type": "car", "schedule_type": "weekly_slots", "instant_booking": true, "status": "active", "is_visible": true, "is_new": false, "type": "group", "instant_booking": true, "child_friendly": true, "max_persons": 20, "duration": 10.0, "meeting_point": { "text": "в районе площади Мейдан" }, "finish_point": { "text": "" }, "price": { "value": 25.0, "currency": "EUR", "currency_rate": 60.0, "price_from": false, "unit_string": "за человека", "value_string": "€25 за человека", "discount": { "value": 0.4, "expiration_date": "2022-09-01", "expiration_text": "еще 11 часов", "original_price": 41.0 } }, "review_count": 463, "rating": 4.78, "popularity": 103170, "city": { "id": 60, "name_ru": "Тбилиси", "name_en": "Tbilisi", "iata": "TBS", "country": { "id": 136, "name_ru": "Грузия", "name_en": "Georgia", "currency": "EUR", "in_obj_phrase": "в Грузии", "across_obj_phrase": "по Грузии", "experience_count": 362, "tours_count": 10, "url": " ", "region": "CIS" }, "experience_count": 270, "in_obj_phrase": "в Тбилиси", "from_obj_phrase": "из Тбилиси", "name_prepositional": "Тбилиси", "url": "https://experience.tripster.ru/experience/Tbilisi/", "image": { "thumbnail": "https://554a875a-71dc-4f5f-b6bf-ae8967f137d5.selcdn.net/photos/e82d4032-68a7-4e2a-8644-35017cc40326.jpg", "cover": "https://554a875a-71dc-4f5f-b6bf-ae8967f137d5.selcdn.net/photos/a2998b43-5585-4347-9fa4-88d9d646b011.jpg" }, "utc_offset": 14400.0, "guides_count": 115, "slug": "Tbilisi" }, "guide": { "id": 136254, "first_name": "Давид", "url": " ", "avatar": { "small": "https://experience-ireland.s3.amazonaws.com/avatar/65484e1c-7312-11e8-b3c5-6e714efd800d.31x31.jpg", "medium": "https://experience-ireland.s3.amazonaws.com/avatar/653e91d8-7312-11e8-b3c5-6e714efd800d.150x150.jpg" }, "rating": 4.68, "review_count": 772, "avg_reaction_delay": null, "links": { "reviews": "https://experience.tripster.ru/api/guides/136254/reviews/" } }, "photos": [ { "thumbnail": "https://experience-ireland.s3.amazonaws.com/thumbs2/07ac3232-852d-11e8-9de2-0ac55974a77a.384x289.jpg", "medium": "https://experience-ireland.s3.amazonaws.com/thumbs2/bd68c2fa-852c-11e8-9de2-0ac55974a77a.800x600.jpg" } ], "links": { "reviews": "https://experience.tripster.ru/api/partners/partner_name/experiences/13530/reviews/", "schedule": "https://experience.tripster.ru/api/partners/partner_name/experiences/13530/schedule/" }, "status": "active" }, "tags": [ { "id": 284, "name": "Обзорные", "experience_count": 70, "url": " " } ], "photos": [ { "thumbnail": "https://554a875a-71dc-4f5f-b6bf-ae8967f137d5.selcdn.net/thumbs2/155afda4-b1b7-11ec-963f-eebfb3b5e7df.384x289.jpeg", "medium": "https://554a875a-71dc-4f5f-b6bf-ae8967f137d5.selcdn.net/thumbs2/157e38f0-b1b7-11ec-963f-eebfb3b5e7df.800x600.jpeg", "type": "default" } ], "links": { "reviews": "https://experience.tripster.ru/api/partner/partner_name/experiences/13530/reviews/", "schedule": "https://experience.tripster.ru/api/partner/partner_name/experiences/13530/schedule/" }, "geo": { "country": [ { "id": 136, "slug": "georgia", "name": "Грузия", "in_obj_phrase": "в Грузии", "from_obj_phrase": "из Грузии", "across_obj_phrase": "по Грузии" } ], "city": [ { "id": 60, "slug": "Tbilisi", "name": "Тбилиси", "in_obj_phrase": "в Тбилиси", "from_obj_phrase": "из Тбилиси", "across_obj_phrase": "по Тбилиси" } ] }, "exp_format": 1 } ... ] }
Описание ответа
Параметр | Описание |
id | ID экскурсии в Трипстере | Число |
status | active для активных экскурсий, в случае запроса с параметром updated_after, могут быть возвращены экскурсии со статусом inactive | Строка |
title | Название экскурсии | Строка |
tagline | Пояснение к названию для вывода в списке экскурсии | Строка |
annotation | Краткое описание экскурсии для вывода на странице экскурсии. Отображается, если передать параметр detailed=true | Строка |
description | Подробное описание экскурсии для вывода на странице экскурсии. Отображается, если передать параметр detailed=true | Строка |
url | Ссылка на страницу экскурсии на Трипстере (прочитайте про правила формирования ссылок) | Строка |
type | Тип экскурсии: private – индивидуальная, group – групповая, tour - авторский тур | Строка |
movement_type | Тип передвижения: foot - Пешком, car - На машине, bicycle - На велосипеде, bus - На автобусе, motorcycle - На мотоцикле, watership - На кораблике, other - Другое | Строка |
schedule_type | Тп расписания: weekly_slots - еженедельные слоты, fixed_slots - фиксированные слоты, weekly_range - еженедельные интервалы | Строка |
instant_booking | Возможно ли моментальное бронирование экскурсии без ожидания подтверждения от гида: true или false | Boolean |
child_friendly | Подходит ли экскурсия детям: true или false | Boolean |
max_persons | Максимальное число участников экскурсии | Число |
duration | Продолжительность экскурсии в часах | Float |
price | Объект с данными о цене экскурсии (посмотрите на картинку с объяснением параметров) | Объект |
price.value | Цена экскурсии | Float |
price.currency | Валюта экскурсии, совпадает с валютой страны | Строка |
price.currency_rate | Курс валюты экскурсии в рублях | Float |
price.price_from | Точная ли цена или это "цена от": false – точная, true – цена "от" | Boolean |
price.unit_string | Тип цены "за человека" или "за экскурсию" | Строка |
price.value_string | Сформированная строка с описанием цены экскурсии, по которой можно проверить понимание остальных параметров | Строка |
price.discount | Объект со скидкой на экскурсию, или null, если скидки нет | Объект |
price.discount.value | Размер скидки, "0.3" значит скидка 30% | Float |
price.discount.expiration_date | Дата окончания действия скидки, скидка предоставляется для всех заказов, сделанных до этой даты | Дата в формате YYYY-MM-DD |
price.discount.expiration_text | Подсказка о скором завершении действии скидки. Например, "еще 3 дня" | Строка |
price.discount.original_price | Оригинальная цена до скидки, чтобы показать ее зачеркнутой | Float |
review_count | Количество отзывов | Число |
rating | Рейтинг экскурсий от 0 до 5 | Float |
popularity | Индекс популярности, его можно использовать для самостоятельной сортировке экскурсий по популярности | Число |
schedule | Объект расписания экскурсии. Отображается, если передать параметр detailed=true | Объект |
schedule.text | Расписание экскурсии "ежедневно в 10:00". Отображается, если передать параметр detailed=true | Строка |
cover_image | Ссылка на фото обложки экскурсии. Отображается, если передать параметр detailed=true | Строка |
meeting_point | Объект с данными о месте встречи | Объект |
meeting_point.text | Строка с описанием места встречи. Может быть пустой строкой "" | Строка |
finish_point | Объект с данными о месте окончания экскурсии | Объект |
finish_point.text | Строка с описанием места окончания экскурсии. Может быть пустой строкой "" | Строка |
city | Объект с данными о городе экскурсии | Объект |
guide | Объект с данными о гиде | Объект |
guide.guide_type | Типа гида: guide - Гид, team - Представитель команды гидов, agency - Представитель агентства | Строка |
tags | Список рубрик, к которым привязана экскурсия в городе | Список |
photos | Список фотографий экскурсии, первая в списке фотография – для использования в листинге экскурсий. Если передать параметр detailed=true, отобразятся все фотографии. Если detailed=false – только первая. | Список |
photos.thumbnail | Ссылка на картинку-превьюшку города размером 384x289px | Строка |
photos.medium | Ссылка на картинку-превьюшку города размером 800x600px | Строка |
links | Объект со ссылками на методы API для экскурсии | Объект |
links.reviews | Ссылка на метод API для получения списка отзывов по экскурсии | Строка |
links.schedule | Ссылка на метод API для получения расписания по экскурсии | Строка |
geo | Объект с информацией о географической привязке экскурсии | Объект |
geo.country | Объект страны | Объект |
geo.city | Объект города | Объект |
schedule | Объект расписания экскурсии | Объект |
schedule.text | Текстовое описание расписания экскурсии | Строка |
pricing_model | Ценовая модель: за человека (per_person), за экскурсию (per_group), “категории билетов” (per_ticket) | Строка |
Расширенный формат цены
Для того, чтобы получить альтернативное описание объекта price, сделайте запрос списка экскурсий с параметром price_format=detailed либо конкретной экскурсии с параметром price_format=detailed.
Описание параметров объекта price в расширенном формате цены
В зависимости от выбранной гидом ценовой модели (человек/группа) будет передаваться параметр per_person или per_group
Параметр | Описание | Тип |
currency | Валюта, в которой указана цена экскурсии | Строка |
currency_rate | Курс валюты экскурсии в рублях | Float |
onsite_payment | Процент стоимости, оплачиваемой на сайте. Значение 0.2 означает, что 20% пользователь оплатит онлайн, а 80% гиду на месте | Float |
В зависимости от выбранной гидом ценовой модели (человек/группа) будет передаваться параметр per_person или per_group | ||
per_person | Объект, содержащий информацию о стоимости экскурсии за человека. Зачастую в объекте передается единственный элемент со стандартной ценой. Но в случае, если стоимость зависит от категории билета, то объект содержит несколько значений для разных категорий (апример, взрослый и детский билет). Цена из первой категории - всегда основная. Список возможных категорий не фиксированный, гид добавляет свои варианты при добавлении экскурсии (id для вариантов эмулируется налету из названия) | Объект |
per_group | Объект с ценой за экскурсию | |
discount | Размер скидки в процентах | Число |
value_string | Сформированная строка с описанием цены экскурсии, по которой можно проверить понимание остальных параметров | Строка |
unit_string | Тип цены "за человека" или "за экскурсию" | Строка |
price_description | Подсказка, описывающая формирование цены | Строка |
total_commission_rate | Суммарная комиссия, включая VAT | Строка |