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 €&#x2F;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
    }
}