{
  "opencollection": "1.0.0",
  "info": {
    "name": "Impala Hotel Booking Bookings API",
    "version": "3.0"
  },
  "request": {
    "auth": {
      "type": "apikey",
      "key": "x-api-key",
      "value": "{{x-api-key}}",
      "placement": "header"
    }
  },
  "items": [
    {
      "info": {
        "name": "Bookings",
        "type": "folder"
      },
      "items": [
        {
          "info": {
            "name": "List all bookings",
            "type": "http"
          },
          "http": {
            "method": "GET",
            "url": "https://sandbox.impala.travel/v1/bookings",
            "params": [
              {
                "name": "start",
                "value": "[object Object]",
                "type": "query",
                "description": "Allows for filtering based on arrival date of the booking in ISO 8601 format (e.g. `2021-12-01`). Available modifiers include less than (`lt`), greater than (`gt`), lower than or equal to (`lte`), greater than or equal to (`gte`) and equal to (`eq`). Usage example: `?start[lte]=2021-12-20&start[gte]=2021-12-10`"
              },
              {
                "name": "end",
                "value": "[object Object]",
                "type": "query",
                "description": "Allows for filtering based on departure date of the booking in ISO 8601 format (e.g. `2021-12-01`). Available modifiers include less than (`lt`), greater than (`gt`), lower than or equal to (`lte`), greater than or equal to (`gte`) and equal to (`eq`). Usage example: `?end[lte]=2021-12-25&end[gte]=2021-12-15`"
              },
              {
                "name": "created",
                "value": "[object Object]",
                "type": "query",
                "description": "Allows for filtering based on creation date and time of the booking in ISO 8601 format (e.g. `2020-11-04T17:37:37Z`) and UTC timezone. Available modifiers include less than (`lt`), greater than (`gt`), lower than or equal to (`lte`), greater than or equal to (`gte`) and equal to (`eq`). Usage example: `?created[lte]=2020-11-04T19:37:37Z&created[gte]=2020-11-04T15:56:37.000Z`"
              },
              {
                "name": "updated",
                "value": "[object Object]",
                "type": "query",
                "description": "Allows for filtering based on the date and time the booking was last updated, in ISO 8601 format (e.g. `2020-11-04T17:37:37Z`) and UTC timezone. Available modifiers include less than (`lt`), greater than (`gt`), lower than or equal to (`lte`), greater than or equal to (`gte`) and equal to (`eq`). Usage example: `?updated[lte]=2020-11-04T19:37:37Z&updated[gte]=2020-11-04T15:56:37.000Z`"
              },
              {
                "name": "size",
                "value": "",
                "type": "query",
                "description": "Pagination size. Defaults to 100 if omitted."
              },
              {
                "name": "offset",
                "value": "",
                "type": "query",
                "description": "Pagination offset. Defaults to 0 if omitted."
              },
              {
                "name": "sortBy",
                "value": "",
                "type": "query",
                "description": "Order in which the results should be sorted. Currently allows you to sort by `createdAt` and `updatedAt`. Specify multiple paramaters by separating with commas"
              }
            ]
          },
          "docs": "Returns a list of all the bookings you've made.\n\nYou can filter the list based on when bookings were created or last updated, as well as their arrival (`start`) and departure (`end`). These date-based filters allow to narrow down the result with modifiers for less than (`lt`), greater than (`gt`), lower than or equal to (`lte`), greater than or equal to (`gte`) and equal to (`eq`).\n\nExample: Adding the query parameters `start[gt]=2021-05-20&updated[lte]=2020-11-20T11:11:00.000Z` would return boo"
        },
        {
          "info": {
            "name": "Create a booking",
            "type": "http"
          },
          "http": {
            "method": "POST",
            "url": "https://sandbox.impala.travel/v1/bookings",
            "body": {
              "type": "json",
              "data": "{}"
            }
          },
          "docs": "Creates a booking for for the rate and dates you specify in the request body.\n\nYou'll need a `roomTypes[].rates[].rateId` that's bookable for those dates, which you can find using the [Retrieve a hotel](https://docs.impala.travel/docs/booking-api/spec/openapi.seller.yaml/paths/~1hotels~1%7BhotelId%7D/get) endpoint.\n\nIf you have provided a credit card on the dashboard then **Impala will send the booking to the hotel immediately**. We'll ensure payment is taken care of before your guest arrives at"
        },
        {
          "info": {
            "name": "Retrieve a booking",
            "type": "http"
          },
          "http": {
            "method": "GET",
            "url": "https://sandbox.impala.travel/v1/bookings/:bookingId",
            "params": [
              {
                "name": "bookingId",
                "value": "",
                "type": "path",
                "description": "The unique identifier of the booking you would like to update."
              }
            ]
          },
          "docs": "Returns all details for the specified booking."
        },
        {
          "info": {
            "name": "Change a booking",
            "type": "http"
          },
          "http": {
            "method": "PUT",
            "url": "https://sandbox.impala.travel/v1/bookings/:bookingId",
            "params": [
              {
                "name": "bookingId",
                "value": "",
                "type": "path",
                "description": "The unique identifier of the booking you would like to update."
              }
            ],
            "body": {
              "type": "json",
              "data": "{}"
            }
          },
          "docs": "<!-- theme: danger -->\n\n> Updates the specified booking with immediate effect. This action might result in a cancellation charge being charged.\n\n> Please note that if you wish to change the contact details associated with a booking, you should use the [Change a Booking's Contact Details](https://docs.impala.travel/docs/booking-api/spec/openapi.seller.yaml/paths/~1bookings~1%7BbookingId%7D~1booking-contact/put) endpoint.\n\nChanges / updates a confirmed booking with the details you provide in the r"
        },
        {
          "info": {
            "name": "Cancel a booking",
            "type": "http"
          },
          "http": {
            "method": "DELETE",
            "url": "https://sandbox.impala.travel/v1/bookings/:bookingId",
            "params": [
              {
                "name": "bookingId",
                "value": "",
                "type": "path",
                "description": "The unique identifier of the booking you would like to update."
              }
            ]
          },
          "docs": "<!-- theme: danger -->\n\n> Cancels the specified booking with immediate effect. This action might result in a cancellation charge being charged.\n\nSubmitting this request means we'll notify the hotel of the cancellation and that they won't expect your guest.\n\nYou can use `GET /bookings/{bookingId}`to see the cancellation policies that apply to a booking at a given point in time. Please note that cancelling a booking will incur a cancellation fee according to the rules that apply at the time of can"
        },
        {
          "info": {
            "name": "Change a booking contact",
            "type": "http"
          },
          "http": {
            "method": "PUT",
            "url": "https://sandbox.impala.travel/v1/bookings/:bookingId/booking-contact",
            "params": [
              {
                "name": "bookingId",
                "value": "",
                "type": "path",
                "description": "The unique identifier of the booking you would like to update."
              }
            ],
            "body": {
              "type": "json",
              "data": "{}"
            }
          },
          "docs": "Updates a confirmed booking with the booking contact details you provide in the request body.\n\nIn addition, we require you to supply a `updateBookingVersionAtTimestamp` field with the `updatedAt` timestamp of the booking. You can find this value by looking up the booking via the [Retrieve a booking](https://docs.impala.travel/docs/booking-api/spec/openapi.seller.yaml/paths/~1bookings~1%7BbookingId%7D/get) endpoint. This is to avoid race conditions where another update might have happened since t"
        }
      ]
    }
  ],
  "bundled": true
}