Create a new session - creates availability for a specific startTime. Sessions can be created only for INVENTORY mode products.
Example:

{
    "productCode": "PF6B25",
    "startTime": "2014-11-07T22:00:00Z",
    "seats": "12",
    "priceOptions": [
       {
         "price": 90,
         "label": "Adult"
       }
     ]
}
The endTime, if not specified, will be calculated based on selected product default duration, and the current product price options will be used (if not specified). Does not support resources yet
Example of a full day session:
{
    "productCode": "PF6B25",
    "startTimeLocal": "2018-11-07 00:00:00",
    "endTimeLocal": "2018-11-08 00:00:00",
    "seats": "42",
    "allDay": true
}

Response is the newly created Session

Request

POST https://api.rezdy.com/v1/availability

Request body

The request body takes a complete SessionCreateRequest resource, containing the following writable properties:

{
    "allDay": "boolean",
    "endTime": "date-time",
    "endTimeLocal": "string",
    "priceOptions": [
        {
            "id": "int64",
            "label": "string",
            "maxQuantity": "int32",
            "minQuantity": "int32",
            "price": "float",
            "priceGroupType": "string",
            "productCode": "string",
            "seatsUsed": "int32"
        }
    ],
    "productCode": "string",
    "seats": "int32",
    "startTime": "date-time",
    "startTimeLocal": "string"
}

Properties

Name Type Description Additional
allDay boolean

If true, this session lasts all day and no time should be shown to customers. Technically the session will be from midnight to midnight.

Optional
endTime date-time

End time of this session. Used to show the customer how long that tour will last

Optional
endTimeLocal string

End time of this session in supplier's local timezone. Used to show the customer how long that tour will last

Optional
priceOptions[] array

List of price options attached to this session. Most of the time they'll match the product's price options, but they can be used to change the price of specific dates/times (I.e. high/low season, weekday/weekend, etc.)

Optional
priceOptions[].id int64 Optional
priceOptions[].label string

Label for this price (I.e. "Adult", "Child")

Optional
priceOptions[].maxQuantity int32

Max booking quantity for the product price option. Can be specified, if the price option is fixed or a grouptype. For a successful booking of the product, the number of participants for this price option have to be lesser or equal than this value.

Optional
priceOptions[].minQuantity int32

Min booking quantity for the product price option. Can be specified, if the price option is fixed or a group type. For a successful booking of the product, the number of participants for this price option have to be greater or equal than this value.

Optional
priceOptions[].price float

Price amount (I.e. "200.00")

Optional
priceOptions[].priceGroupType string

If this price is for a group, is the price for the whole group (TOTAL) or per quantity (EACH)

Possible values are:

  • EACH
  • TOTAL
Optional
priceOptions[].productCode string

Product code to which the price options belongs to. Since Rezdy introduced shared availability option for products, the product sessions can contain price overrides for all of the products, which share the sessions. Therefore it is necessary to filer only the price options matching the chosen product code on the client side, when processing /availability service responses.

Optional
priceOptions[].seatsUsed int32

How many seats one quantity of this price willuse. Used for availability calculations. For example 1 quantity of "Family of 4" will use 4 seats.

Optional
productCode string

Rezdy unique productCode linked to this session

Required
seats int32

Total number of seats for this session. Does not change after a booking is made

Required
startTime date-time

Start Time of this session. This time should be used when showing customers the booking date/time. It should be sent in BookingItem.startTime when making new bookings

Optional
startTimeLocal string

Start Time of this session in supplier's local timezone. This time should be used when showing customers the booking date/time. It should be sent in BookingItem.startTimeLocal when making new bookings

Optional

Response

The following HTTP status codes may be returned, optionally with a response resource.

Status code Description Resource
200 OK

successful operation

ResponseSession

Explore this API

apiKey Enter your API Key to try this call
body

session data. Should only contain productCode, startTime and seats, optionally priceOptions, if you wish to override the default product price

Request Content-Type
Response Content-Type
Try it out!