CHR API-GATEWAY Static data
Create a cron job that runs at night and downloads static information returned by the
Destionations list, Hotel facilities,
Hotel room facilities, Transport list,
Hotel list, Package list, Circuit list
endpoints.
Destinations list
Request info
Item |
Description |
URL |
/v1/destinations |
Type |
GET |
GET params
Item |
Possible values |
Explanation |
_includes |
images |
includes solicited data |
Response
Item |
Description |
id |
the id of the destination |
parent_id |
the id of the parent |
name |
name of the destination |
type |
type of the destination |
city_code |
IATA city code |
is_active |
1 is active, 0 is not active |
description |
the description of the destination |
_includes.images.data |
list of destinations images |
_includes.images.data.id |
image id |
_includes.images.data.name |
image name |
_includes.images.data.file |
list image files at requested dimensions |
_includes.images.data.order |
image order |
_includes.images.data.is_main |
main image |
_includes.images.data.is_active |
1 is active, 0 is not active |
_includes.images.data.description |
image description |
Example
Request
curl --request GET \
--url 'URL/v1/destinations?_includes=images' \
--header 'Authorization: Bearer TOKEN'
Response
{
"data": [
{
"id": 404,
"parent_id": 0,
"name": "Afrika",
"type": "continent",
"city_code": null,
"is_active": 1,
"description": "",
"created_at": "2019-07-23T12:49:25+03:00",
"updated_at": "2019-07-23T12:49:25+03:00",
"_includes": {
"images": {
"data": [
{
"id": 13,
"destination_id": 42,
"name": "",
"file": {
"400X0": "URL/X3PYwXEI6lPWnL4LeiY-UXP4vV8=\/fit-in\/400x0\/\/storage\/geography\/bali-895.jpg"
},
"order": 0,
"is_main": false,
"is_active": true,
"description": "",
"created_at": "2019-08-05T23:16:09+03:00",
"updated_at": "2019-08-05T23:16:09+03:00"
},
{
"id": 14,
"destination_id": 42,
"name": "",
"file": {
"400X0": "URL/aJeQQZON7FXmhoG6gA-kWZj0NFw=\/fit-in\/400x0\/\/storage\/geography\/bali-561.jpg"
},
"order": 0,
"is_main": true,
"is_active": true,
"description": "",
"created_at": "2019-08-05T23:16:09+03:00",
"updated_at": "2019-08-05T23:16:09+03:00"
}
],
"instance": "destination_image"
}
}
}
],
"links": {
"first": "URL/v1\/destinations?_includes=images%2Cparent_destination&_page=1",
"last": "URL/v1\/destinations?_includes=images%2Cparent_destination&_page=16",
"prev": null,
"next": "URL/v1\/destinations?_includes=images%2Cparent_destination&_page=2"
},
"meta": {
"current_page": 1,
"from": 1,
"last_page": 16,
"path": "URL/v1\/destinations",
"per_page": 10,
"to": 10,
"total": 156
}
}
Transport list
Request info
Item |
Description |
URL |
/v1/transports |
Type |
GET |
Response
Item |
Description |
id |
the id for the transport method |
name |
name |
is_bus |
true or false |
is_flight |
true or false |
Example
Request
curl --request GET \
--url URL/v1/transports \
--header 'Authorization: Bearer TOKEN'
Response
{
"data": [
{
"id": 1,
"name": "Individual",
"is_bus": false,
"is_flight": false,
"created_at": "2019-04-19T20:19:18+03:00",
"updated_at": "2019-04-19T20:19:18+03:00"
},
{
"id": 2,
"name": "Autocar",
"is_bus": true,
"is_flight": false,
"created_at": "2019-04-19T20:19:18+03:00",
"updated_at": "2019-04-19T20:19:18+03:00"
},
{
"id": 3,
"name": "Avion",
"is_bus": false,
"is_flight": true,
"created_at": "2019-04-19T20:19:18+03:00",
"updated_at": "2019-04-19T20:19:18+03:00"
}
],
"links": {
"first": "URL/v1\/transports?_page=1",
"last": "URL/v1\/transports?_page=1",
"prev": null,
"next": null
},
"meta": {
"current_page": 1,
"from": 1,
"last_page": 1,
"path": "URL/v1\/transports",
"per_page": 10,
"to": 3,
"total": 3
}
}
Meal plan labels
Request info
Item |
Description |
URL |
/v1/meal-plan-labels |
Type |
GET |
Response
Item |
Description |
id |
the id for the meal plan label |
name |
label name |
Example
Request
curl --request GET \
--url URL/v1/meal-plan-labels \
--header 'Authorization: Bearer TOKEN'
Response
{
"data": [
{
"id": 205,
"name": "3 Breakfast + 4 All inclusive",
"slug": "3-breakfast-4-all-inclusive",
"created_at": "2019-06-25T01:12:38+03:00",
"updated_at": "2019-06-25T01:12:38+03:00"
},
{
"id": 283,
"name": "3 nopti mic dejun\/ 5 nopti pensiune completa",
"slug": "3-nopti-mic-dejun-5-nopti-pensiune-completa",
"created_at": "2019-10-08T05:28:02+03:00",
"updated_at": "2019-10-08T05:28:02+03:00"
}
],
"links": {
"first": "URL/v1\/meal-plan-labels?_page=1",
"last": "URL/v1\/meal-plan-labels?_page=16",
"prev": null,
"next": "URL/v1\/meal-plan-labels?_page=2"
},
"meta": {
"current_page": 1,
"from": 1,
"last_page": 16,
"path": "URL/v1\/meal-plan-labels",
"per_page": 10,
"to": 10,
"total": 160
}
}
Detailed description labels
Request info
Item |
Description |
URL |
/v1/detailed-description-labels |
Type |
GET |
Response
Item |
Description |
id |
the id for the transport method |
name |
name |
Example
Request
curl --request GET \
--url URL/v1/detailed-description-labels \
--header 'Authorization: Bearer TOKEN'
Response
{
"data": [
{
"id": 279,
"name": "Activitati si sporturi",
"slug": "activitati-si-sporturi",
"created_at": "2019-05-30T22:31:41+03:00",
"updated_at": "2019-05-30T22:31:41+03:00"
}
],
"links": {
"first": "URL/v1\/detailed-description-labels?_page=1",
"last": "URL/v1\/detailed-description-labels?_page=16",
"prev": null,
"next": "URL/v1\/detailed-description-labels?_page=2"
},
"meta": {
"current_page": 1,
"from": 1,
"last_page": 16,
"path": "URL/v1\/detailed-description-labels",
"per_page": 10,
"to": 10,
"total": 160
}
}
Hotel facilities
Request info
Item |
Description |
URL |
/v1/hotel-facilities |
Type |
GET |
Response
Item |
Description |
id |
the id for the hotel facility |
name |
name |
file |
Icon file |
Example
Request
curl --request GET \
--url 'URL/v1/hotel-facilities' \
--header 'Authorization: Bearer TOKEN'
Response
{
"data": [
{
"id": 1056,
"name": "Bath tub",
"file": [],
"slug": "bath-tub",
"created_at": "2021-02-01T20:34:49+02:00",
"updated_at": "2021-02-01T20:34:49+02:00"
},
{
"id": 2356,
"name": " Bathrobe",
"file": [],
"slug": "bathrobe",
"created_at": "2021-02-02T23:16:23+02:00",
"updated_at": "2021-02-02T23:16:23+02:00"
},
{
"id": 640,
"name": "Bathrobes ",
"file": [],
"slug": "bathrobes",
"created_at": "2021-02-01T20:34:18+02:00",
"updated_at": "2021-02-07T20:40:52+02:00"
},
{
"id": 577,
"name": "Bathroom",
"file": [],
"slug": "bathroom",
"created_at": "2021-02-01T20:34:17+02:00",
"updated_at": "2021-02-01T20:34:17+02:00"
},
{
"id": 1780,
"name": " Bathroom amenities",
"file": [],
"slug": "bathroom-amenities",
"created_at": "2021-02-01T20:36:27+02:00",
"updated_at": "2021-02-01T20:36:27+02:00"
},
{
"id": 1603,
"name": " Bathroom scale ",
"file": [],
"slug": "bathroom-scale",
"created_at": "2021-02-01T20:36:01+02:00",
"updated_at": "2021-02-01T20:36:01+02:00"
},
{
"id": 643,
"name": "Bathtub",
"file": [],
"slug": "bathtub",
"created_at": "2021-02-01T20:34:19+02:00",
"updated_at": "2021-02-01T20:34:19+02:00"
},
{
"id": 1053,
"name": "Bathtub only ",
"file": [],
"slug": "bathtub-only",
"created_at": "2021-02-01T20:34:49+02:00",
"updated_at": "2021-02-02T20:40:41+02:00"
},
{
"id": 645,
"name": "Bathtub or shower ",
"file": [],
"slug": "bathtub-or-shower",
"created_at": "2021-02-01T20:34:19+02:00",
"updated_at": "2021-02-02T20:46:04+02:00"
},
{
"id": 485,
"name": "Baza de tratament",
"file": [],
"slug": "baza-de-tratament",
"created_at": "2020-12-21T14:34:19+02:00",
"updated_at": "2020-12-21T14:34:19+02:00"
}
],
"links": {
"first": "URL/v1\/hotel-facilities?_page=1",
"last": "URL/v1\/hotel-facilities?_page=241",
"prev": "URL/v1\/hotel-facilities?_page=24",
"next": "URL/v1\/hotel-facilities?_page=26"
},
"meta": {
"current_page": 25,
"from": 241,
"last_page": 241,
"path": "URL/v1\/hotel-facilities",
"per_page": 10,
"to": 250,
"total": 2409
}
}
Hotel room facilities
Request info
Item |
Description |
URL |
/v1/hotel-room-facilities |
Type |
GET |
Response
Item |
Description |
id |
the id for the hotel room facility |
name |
name |
file |
Icon file |
Example
Request
curl --request GET \
--url URL/v1/hotel-room-facilities \
--header 'Authorization: Bearer TOKEN'
Response
{
"data": [
{
"id": 45,
"name": "acces la internet",
"slug": "acces-la-internet",
"file": [],
"created_at": "2019-08-06T11:46:36+03:00",
"updated_at": "2019-08-06T11:46:36+03:00"
},
{
"id": 39,
"name": "Aer conditionat",
"slug": "aer-conditionat",
"file": {
"16X0": "URL/VKFcbtZ2bTyBh4rCsfq2oShA3jk=\/fit-in\/16x0\/\/storage\/hotel_room_facilities\/aer-conditionat-474.png"
},
"created_at": "2019-05-30T22:26:08+03:00",
"updated_at": "2019-05-30T22:26:08+03:00"
},
{
"id": 33,
"name": "Aer conditionat in camera",
"slug": "aer-conditionat-in-camera",
"file": {
"16X0": "URL/IXWJTLwprmUVMCDfbqT9kemqYr0=\/fit-in\/16x0\/\/storage\/hotel_room_facilities\/aer-conditionat-in-camera-296.png"
},
"created_at": "2019-05-30T22:24:24+03:00",
"updated_at": "2019-05-30T22:24:24+03:00"
},
{
"id": 55,
"name": "aer condiționat (reglabil individual)",
"slug": "aer-conditionat-reglabil-individual",
"file": [],
"created_at": "2019-08-06T11:56:54+03:00",
"updated_at": "2019-08-06T11:56:54+03:00"
},
{
"id": 47,
"name": "aer condiționat (reglat central)",
"slug": "aer-conditionat-reglat-central",
"file": [],
"created_at": "2019-08-06T11:46:36+03:00",
"updated_at": "2019-08-06T11:46:36+03:00"
},
{
"id": 49,
"name": "aparat de preparare ceai\/cafea",
"slug": "aparat-de-preparare-ceaicafea",
"file": [],
"created_at": "2019-08-06T11:46:36+03:00",
"updated_at": "2019-08-06T11:46:36+03:00"
},
{
"id": 43,
"name": "baie",
"slug": "baie",
"file": [],
"created_at": "2019-08-06T11:46:36+03:00",
"updated_at": "2019-08-06T11:46:36+03:00"
},
{
"id": 35,
"name": "Balcon \/ terasa",
"slug": "balcon-terasa",
"file": {
"16X0": "URL/INLZkv5bCkHUMqTj8lGo9_LZkpg=\/fit-in\/16x0\/\/storage\/hotel_room_facilities\/balcon-terasa-289.png"
},
"created_at": "2019-05-30T22:24:30+03:00",
"updated_at": "2019-05-30T22:24:30+03:00"
},
{
"id": 58,
"name": "bideu",
"slug": "bideu",
"file": [],
"created_at": "2019-08-06T16:36:41+03:00",
"updated_at": "2019-08-06T16:36:41+03:00"
},
{
"id": 50,
"name": "cadă de baie",
"slug": "cada-de-baie",
"file": [],
"created_at": "2019-08-06T11:56:53+03:00",
"updated_at": "2019-08-06T11:56:53+03:00"
}
],
"links": {
"first": "URL/v1\/hotel-room-facilities?_page=1",
"last": "URL/v1\/hotel-room-facilities?_page=4",
"prev": null,
"next": "URL/v1\/hotel-room-facilities?_page=2"
},
"meta": {
"current_page": 1,
"from": 1,
"last_page": 4,
"path": "URL/v1\/hotel-room-facilities",
"per_page": 10,
"to": 10,
"total": 39
}
}
Hotel list
Request info
Item |
Description |
URL |
/v1/hotels |
Type |
GET |
GET params
Item |
Possible values |
Explanation |
_includes |
facilities, room_facilities, detailed_descriptions, images, room_categories.images, room_categories.label, tags, themes |
includes solicited data |
is_active |
0 or 1 |
filter by active hotels |
is_visible |
0 or 1 |
filter by visible hotels |
Response
Item |
Description |
id |
the id of the hotel |
is_active |
true/false |
is_visible |
true/false |
location_id |
destination id see Destinations list |
name |
hotel name |
code |
hotel code |
description |
hotel description |
short_description |
hotel short_description |
stars |
hotel stars |
stars_description |
hotel stars description |
external_score |
hotel external score |
external_score_source |
hotel external score (booking or tripadvisor) |
address |
hotel address |
zip |
hotel zip code |
phone |
hotel phone |
fax |
hotel fax |
url |
hotel url |
latitude |
hotel latitude |
longitude |
hotel longitude |
property_type |
hotel property type |
_includes.images.data |
list of destinations images |
_includes.images.data.id |
image id |
_includes.images.data.name |
image name |
_includes.images.data.file |
list image files at requested dimensions |
_includes.images.data.order |
image order |
_includes.images.data.is_main |
main image |
_includes.images.data.is_active |
1 is active, 0 is not active |
_includes.images.data.description |
image description |
_includes.facilities.data.id |
hotel facility id |
_includes.facilities.data.name |
hotel facility name |
_includes.facilities.data.file |
hotel facility icon |
_includes.room_facilities.data.id |
hotel facility id |
_includes.room_facilities.data.name |
hotel facility name |
_includes.room_facilities.data.file |
hotel facility icon |
_includes.room_categories |
hotel room list |
_includes.room_categories.data.id |
hotel room id |
_includes.room_categories.data.description |
hotel room description |
_includes.room_categories.data._includes.images |
hotel room image list |
_includes.room_categories.data._includes.images.id |
hotel room image id |
_includes.room_categories.data._includes.images.name |
hotel room image name |
_includes.room_categories.data._includes.images.file |
hotel room image file |
_includes.room_categories.data._includes.label.name |
hotel room name |
_includes.detailed_descriptions |
list detailed descriptions |
_includes.detailed_descriptions.id |
detailed description id |
_includes.detailed_descriptions.label_id |
detailed description label id see Detailed description labels |
_includes.detailed_descriptions.text |
detailed description text |
_includes.detailed_descriptions.type |
detailed description type |
_includes.detailed_descriptions.order |
detailed description order |
_includes.tags |
tags list |
_includes.tags.name |
tag name |
_includes.themes |
themes list |
_includes.themes.name |
themes name |
Example
Request
curl --request GET \
--url 'URL/v1/hotels?_includes=facilities%2Croom_facilities%2Cdetailed_descriptions%2Cimages%2Croom_categories.images%2Croom_categories.label%2Ctags%2Cthemes' \
--header 'Authorization: Bearer TOKEN'
Response
{
"data": [
{
"id": 52000,
"is_active": true,
"is_visible": true,
"location_id": 28,
"name": "Sentido Reef Oasis Senses Resort",
"code": "SENSSH",
"description": "",
"short_description": "",
"stars": "5.0",
"stars_description": "",
"external_score": null,
"external_score_source": null,
"address": "Marine Sporting Club Road, 46619, Egipt",
"zip": null,
"phone": "20 69 3662111",
"fax": null,
"url": "https:\/\/www.reefoasisresorts.com\/sentido-reef-oasis-senses-aqua-park-resort",
"latitude": null,
"longitude": null,
"property_type": null,
"created_at": "2021-04-08T10:39:24+03:00",
"updated_at": "2021-06-01T21:30:27+03:00",
"_includes": {
"facilities": {
"data": [
{
"id": 97,
"name": "Transfer aeroport",
"file": {
"16X0": "URL/TmXWi5iQ0hwaPfTcFQrTdUiZe70=\/fit-in\/16x0\/\/storage\/hotel_facilities\/transfer-aeroport-216.png"
},
"slug": "transfer-aeroport",
"created_at": "2019-05-30T22:24:36+03:00",
"updated_at": "2019-05-30T22:24:36+03:00"
}
],
"instance": "hotel_facility"
},
"room_facilities": {
"data": [
{
"id": 30,
"name": "Uscator de par",
"slug": "uscator-de-par",
"file": {
"16X0": "URL/VGEvLVgKOOG53P1888gzEGc2aRw=\/fit-in\/16x0\/\/storage\/hotel_room_facilities\/uscator-de-par-381.png"
},
"created_at": "2019-05-30T22:24:23+03:00",
"updated_at": "2019-05-30T22:24:23+03:00"
}
],
"instance": "hotel_room_facility"
},
"detailed_descriptions": {
"data": [
{
"id": 35119,
"hotel_id": 14012,
"label_id": 249,
"text": "<p>● Rezervarile efectuate in perioada de first minute\/early booking nu permit modificari de nume sau anulari. Reducerile se aplica doar la pachetul de baza, acestea nu se aplica la taxe sau suplimente.<\/p>\r\n",
"type": "hotel",
"order": 5,
"created_at": "2019-05-30T22:41:35+03:00",
"updated_at": "2019-05-30T22:41:35+03:00"
}
],
"instance": "hotel_detailed_description"
},
"images": {
"data": [
{
"id": 711213,
"hotel_id": 52000,
"name": "Sentido Reef Oasis Senses Resort",
"description": "",
"file": {
"400X0": "URL/YOXJJh0KwKFoubdu4v7Hlxkm5DI=\/fit-in\/400x0\/\/storage\/hotels\/sentido-reef-oasis-senses-resort-950.jpg"
},
"order": 15,
"is_active": true,
"is_main": false,
"created_at": "2021-05-27T21:30:27+03:00",
"updated_at": "2021-05-27T21:30:27+03:00"
}
],
"instance": "hotel_image"
},
"room_categories": {
"data": [
{
"id": 346929,
"hotel_id": 52000,
"name": "Family Room Pool",
"label_id": 71743,
"description": "",
"slug": null,
"created_at": "2021-04-08T10:39:24+03:00",
"updated_at": "2021-04-08T10:39:24+03:00",
"_includes": {
"images": {
"data": [
{
"id": 615,
"hotel_room_category_id": 37090,
"name": "Regina Mare Double",
"file": {
"400X0": "URL/dnlwLCTGzkHehUIEhNpnyQFyAso=\/fit-in\/400x0\/\/storage\/hotels\/regina-mare-20.jpg"
},
"created_at": "2019-05-30T22:41:37+03:00",
"updated_at": "2019-05-30T22:41:37+03:00"
}
],
"instance": "hotel_room_category_image"
},
"label": {
"data": {
"id": 71743,
"name": "Family Room Pool",
"slug": "family-room-pool",
"created_at": "2021-01-28T21:57:23+02:00",
"updated_at": "2021-01-28T21:57:23+02:00"
},
"instance": "hotel_room_label"
}
}
}
],
"instance": "hotel_room_category"
},
"tags": {
"data": [
{
"id": 13,
"name": "ski bulgaria",
"slug": "ski-bulgaria"
}
],
"instance": "tag"
},
"themes": {
"data": [
{
"id": 35,
"name": "Plaja",
"slug": "plaja"
}
],
"instance": "hotel_theme"
}
}
}
],
"links": {
"first": "URL/v1\/hotels?_includes=facilities%2Croom_facilities%2Cdetailed_descriptions.label%2Cimages%2Croom_categories.images%2Croom_categories.label%2Ctags%2Cthemes&_page=1",
"last": "URL/v1\/hotels?_includes=facilities%2Croom_facilities%2Cdetailed_descriptions.label%2Cimages%2Croom_categories.images%2Croom_categories.label%2Ctags%2Cthemes&_page=497",
"prev": null,
"next": "URL/v1\/hotels?_includes=facilities%2Croom_facilities%2Cdetailed_descriptions.label%2Cimages%2Croom_categories.images%2Croom_categories.label%2Ctags%2Cthemes&_page=2"
},
"meta": {
"current_page": 1,
"from": 1,
"last_page": 497,
"path": "URL/v1\/hotels",
"per_page": 10,
"to": 10,
"total": 4970
}
}
Package list
Request info
Item |
Description |
URL |
/v1/packages |
Type |
GET |
GET params
Item |
Possible values |
Explanation |
_includes |
departure_dates, departure_points.departure_dates, detailed_descriptions, tags, images |
includes solicited data |
is_active |
0 or 1 |
filter by active packages |
is_visible |
0 or 1 |
filter by visible packages |
Response
Item |
Description |
id |
the id of the hotel |
is_active |
true/false |
is_visible |
true/false |
transport_id |
transport id see Transport list |
location_id |
destination id see Destinations list |
duration |
package duration |
hotel_id |
hotel id see Hotel list |
name |
package name |
description |
package description |
outbound_transport_duration |
transport duration |
_includes.departure_dates |
individual transportation departure dates |
_includes.departure_dates.data.date |
departure date |
_includes.departure_points |
point of departures for package |
_includes.departure_points.data.geography_id |
departure id see Destinations list |
_includes.departure_points.data._includes.departure_dates.data.date |
departure date |
_includes.detailed_descriptions |
detailed descriptions |
_includes.detailed_descriptions.id |
detailed description id |
_includes.detailed_descriptions.label_id |
detailed description label id see Detailed description labels |
_includes.detailed_descriptions.text |
detailed description text |
_includes.detailed_descriptions.type |
detailed description type |
_includes.detailed_descriptions.order |
detailed description order |
_includes.tags |
tags list |
_includes.tags.name |
tag name |
_includes.images.data |
list of destinations images |
_includes.images.data.id |
image id |
_includes.images.data.name |
image name |
_includes.images.data.file |
list image files at requested dimensions |
_includes.images.data.order |
image order |
_includes.images.data.is_main |
main image |
_includes.images.data.is_active |
1 is active, 0 is not active |
_includes.images.data.description |
image description |
Example
Request
curl --request GET \
--url 'URL/v1/packages?_includes=departure_dates%2Cdeparture_points.departure_dates%2Cdetailed_descriptions%2Ctags%2Cimages%2Cdocuments&is_active=1' \
--header 'Authorization: Bearer TOKEN'
Response
{
"data": [
{
"id": 77122,
"is_active": true,
"is_visible": true,
"transport_id": 3,
"location_id": 2606,
"duration": 7,
"hotel_id": 13379,
"name": "Vincci Nozha Beach - Charter avion Tunisia (Bucuresti) 2021",
"slug": null,
"description": "",
"outbound_transport_duration": 0,
"created_at": "2020-03-25T23:32:11+02:00",
"updated_at": "2021-06-14T11:46:09+03:00",
"_includes": {
"departure_dates": {
"data": [
{
"id": 2728184,
"package_id": 81522,
"date": "2021-06-03"
}
],
"instance": "package_departure_date"
},
"departure_points": {
"data": [
{
"id": 122650,
"package_id": 77122,
"geography_id": 189,
"created_at": "2020-03-25T23:32:11+02:00",
"updated_at": "2020-03-25T23:32:11+02:00",
"_includes": {
"departure_dates": {
"data": [
{
"id": 2360364,
"departure_point_id": 122650,
"date": "2021-09-01",
"created_at": "2020-03-25T23:32:11+02:00",
"updated_at": "2020-03-25T23:32:11+02:00"
}
],
"instance": "package_departure_point_departure_date"
}
}
}
],
"instance": "package_departure_point"
},
"detailed_descriptions": {
"data": [
{
"id": 181224,
"package_id": 77122,
"label_id": 342,
"text": "Transport charter avion;\r\nCazare 7 nopti;\r\nMasa in functie de hotelul ales;\r\nTaxa aeroport;\r\nTransfer aeroport - hotel - aeroport;\r\nAsistenta turistica;\r\n",
"type": "offer",
"order": 0,
"created_at": "2020-03-25T23:32:11+02:00",
"updated_at": "2020-10-30T23:39:03+02:00"
}
],
"instance": "package_detailed_description"
},
"tags": {
"data": [
{
"id": 3,
"name": "Dubai",
"slug": "dubai",
"created_at": "2019-07-03T12:11:27+03:00",
"updated_at": "2019-07-03T12:11:27+03:00"
}
],
"instance": "tag"
},
"images": {
"data": [
{
"id": 4,
"package_id": 48933,
"name": "Ladonia Hotels Adakule - Charter Autocar Kusadasi 2020",
"file": {
"400X0": "URL/qjy0BXxMtLDjNWHtHADRpYa_yhU=\/fit-in\/400x0\/\/storage\/packages\/1.jpg"
},
"order": 0,
"is_active": true,
"is_main": true,
"description": "",
"created_at": "2019-11-15T15:39:21+02:00",
"updated_at": "2019-11-15T15:39:21+02:00"
}
],
"instance": "package_image"
}
}
}
],
"links": {
"first": "URL/v1\/packages?_includes=departure_dates%2Cdeparture_points.departure_dates%2Cdetailed_descriptions%2Cprice_sets%2Ctags%2Cimages%2Cdocuments&is_active=1&_page=1",
"last": "URL/v1\/packages?_includes=departure_dates%2Cdeparture_points.departure_dates%2Cdetailed_descriptions%2Cprice_sets%2Ctags%2Cimages%2Cdocuments&is_active=1&_page=1616",
"prev": null,
"next": "URL/v1\/packages?_includes=departure_dates%2Cdeparture_points.departure_dates%2Cdetailed_descriptions%2Cprice_sets%2Ctags%2Cimages%2Cdocuments&is_active=1&_page=2"
},
"meta": {
"current_page": 1,
"from": 1,
"last_page": 1616,
"path": "URL/v1\/packages",
"per_page": 10,
"to": 10,
"total": 16159
}
}
Circuit list
Request info
Item |
Description |
URL |
/v1/circuits |
Type |
GET |
GET params
Item |
Possible values |
Explanation |
_includes |
departure_points.departure_dates, detailed_descriptions, tags, images, itinerary |
includes solicited data |
is_active |
0 or 1 |
filter by active packages |
is_visible |
0 or 1 |
filter by visible packages |
Response
Item |
Description |
id |
the id of the hotel |
is_active |
true/false |
is_visible |
true/false |
transport_id |
transport id see Transport list |
location_id |
destination id see Destinations list |
duration |
package duration |
hotel_id |
hotel id see Hotel list |
name |
package name |
description |
package description |
outbound_transport_duration |
transport duration |
_includes.departure_points |
point of departures for package |
_includes.departure_points.data.geography_id |
departure id see Destinations list |
_includes.departure_points.data._includes.departure_dates.data.date |
departure date |
_includes.detailed_descriptions |
detailed descriptions |
_includes.detailed_descriptions.id |
detailed description id |
_includes.detailed_descriptions.label_id |
detailed description label id see Detailed description labels |
_includes.detailed_descriptions.text |
detailed description text |
_includes.detailed_descriptions.type |
detailed description type |
_includes.detailed_descriptions.order |
detailed description order |
_includes.tags |
tags list |
_includes.tags.name |
tag name |
_includes.images.data |
list of destinations images |
_includes.images.data.id |
image id |
_includes.images.data.name |
image name |
_includes.images.data.file |
list image files at requested dimensions |
_includes.images.data.order |
image order |
_includes.images.data.is_main |
main image |
_includes.images.data.is_active |
1 is active, 0 is not active |
_includes.images.data.description |
image description |
_includes.itinerary |
itinerary list |
_includes.itinerary.data.name |
itinerary name |
_includes.itinerary.data.description |
itinerary description |
_includes.itinerary.data.departure_latitude |
itinerary departure latitude |
_includes.itinerary.data.departure_longitude |
itinerary departure longitude |
_includes.itinerary.data.arrival_latitude |
itinerary arrival latitude |
_includes.itinerary.data.arrival_longitude |
itinerary arrival longitude |
_includes.itinerary.data.order |
itinerary order |
Example
Request
curl --request GET \
--url 'URL/v1/circuits?_includes=departure_points.departure_dates%2Cdetailed_descriptions%2Ctags%2Cimages%2Citinerary&is_active=1' \
--header 'Authorization: Bearer TOKEN'
Response
{
"data": [
{
"id": 802,
"is_active": true,
"is_visible": true,
"transport_id": 3,
"location_id": 391,
"duration": 10,
"hotel_id": 12932,
"name": "Tunisia – Esente si savori de dincolo de Mediterana - avion 2021",
"description": "<p class=\"ql-align-center\">Tunis – Cartagina – Sidi Bousaid – Dougga – Bulla Regia – El Kef – Makthar - Kairouan<\/p><p class=\"ql-align-center\">Mides – Tamerza - Chebika - Tozeur - Douz – Matmata - El Jem – Sousse- Nabeul – Kerkouane<\/p>",
"outbound_transport_duration": 0,
"_includes": {
"departure_points": {
"data": [
{
"id": 5435,
"circuit_id": 802,
"geography_id": 189,
"_includes": {
"departure_dates": {
"data": [
{
"id": 25911,
"departure_point_id": 5435,
"date": "2021-10-13"
}
],
"instance": "circuit_departure_point_departure_date"
}
}
}
],
"instance": "circuit_departure_point"
},
"detailed_descriptions": {
"data": [
{
"id": 5028,
"circuit_id": 802,
"label_id": 252,
"text": "<p>1. Medinat Alzyahra – Cina traditionala si spectacol de sunete si lumini 40 €/pers<\/p>",
"type": "offer",
"order": 7
}
],
"instance": "circuit_detailed_description"
},
"tags": {
"data": [],
"instance": "tag"
},
"images": {
"data": [
{
"id": 11863,
"circuit_id": 802,
"name": "Tunisia – Esente si savori de dincolo de Mediterana Avion 26 Aprilie 2020",
"file": {
"400X0": "URL/IL46a14bSVCskwyDfeVO3GUVFDE=\/fit-in\/400x0\/\/storage\/circuits\/1tunisia-tunis-view-of-traditional-architectures-from-a-medina-terrace-shutterstock-260214500_1.jpg"
},
"order": 0,
"is_active": true,
"is_main": false,
"description": ""
}
],
"instance": "circuit_image"
},
"itinerary": {
"data": [
{
"id": 7195,
"circuit_id": 802,
"name": "Ziua 1. Bucuresti – Tunis - Hammamet",
"description": "<p>Calatoria noastra incepe din aeroportul Otopeni de unde ne imbarcam pentru zborul cu escala spre Tunis, capitala si cel mai mare oras al Tunisiei. Mostenirea culturala antica si influentele ulterioare aduse prin colonizari au dat orasului un caracter fermecator, foarte bogat si complex, ce ti se destainuie la fiecare pas. In functie de ora aterizarii, vom incerca sa incepem explorarea inca din prima zi, vizitand vechea Medina, partea istorica a orasului, cu arhitectura veche fascinanta, mii de comercianti si plina de arome imbietoare. Seara ne cazam in Hammamet. Cina la hotel.<\/p>",
"departure_latitude": null,
"departure_longitude": null,
"arrival_latitude": null,
"arrival_longitude": null,
"order": 0
}
],
"instance": "circuit_itinerary"
}
}
}
],
"links": {
"first": "URL/v1\/circuits?_includes=departure_dates%2Cdeparture_points.departure_dates%2Cdetailed_descriptions%2Ctags%2Cimages%2Cdocuments%2Citinerary.images&is_active=1&_page=1",
"last": "URL/v1\/circuits?_includes=departure_dates%2Cdeparture_points.departure_dates%2Cdetailed_descriptions%2Ctags%2Cimages%2Cdocuments%2Citinerary.images&is_active=1&_page=19",
"prev": null,
"next": "URL/v1\/circuits?_includes=departure_dates%2Cdeparture_points.departure_dates%2Cdetailed_descriptions%2Ctags%2Cimages%2Cdocuments%2Citinerary.images&is_active=1&_page=2"
},
"meta": {
"current_page": 1,
"from": 1,
"last_page": 19,
"path": "URL/v1\/circuits",
"per_page": 10,
"to": 10,
"total": 184
}
}