Availability API - query_periods

We've recently updated our Availability API to support query_periods as well as available_periods as a root attribute.

A new-style example API query looks like this:

{
  "participants": [
    {
      "members": [
        { "sub": "acc_567236000909002" },
        { "sub": "acc_678347111010113" }
      ],
      "required": "all"
    }
  ],
  "required_duration": { "minutes": 60 },
  "query_periods": [
    {
      "start": "2020-06-17T09:00:00Z",
      "end": "2020-06-17T18:00:00Z"
    },
    {
      "start": "2020-06-18T09:00:00Z",
      "end": "2020-06-18T18:00:00Z"
    }
  ]
}

After working with the API for a few years now and discussing with customers, we concluded that the term available_periods wasn't expressing the intent of the syntax explicitly enough. query_periods is a far clear description of the purpose of that parameter at that level in the query structure. We recommend using query_periods going forward.

This change will also be supported in anywhere an availability query is used, eg: Real Time Scheduling, Sequenced Availability and UI Elements like the Availability Viewer and Slot Picker.

We will continue to support available_periods so no existing implementations need to change.

Naming remains, as ever, one of the hard problems. However, not one to shy away from when we recognize the need to change.

See the updated Availability API documentation for more details.