Bookable Events

Today we've enabled our new Bookable Events functionality in Alpha. This allows the creation of events that have a fixed capacity and using them with an Availability query.

Perfect for:

  • Training courses
  • Assessment days
  • Seminars

and many more use cases.

Start by creating an event:

{
  "bookable_event_id": "83hi8qhfiaif",
  "start": "2019-08-20T12:30:00Z",
  "end": "2019-08-20T17:00:00Z",
  "status": "confirmed",
  "registration": {
    "capacity": 5
  }
}

Then add registrations with associated metadata.

{
  "registration_id": "87326",
  "status": "accepted",
  "metadata": {
    "email": "a@company.com",
    "name": "Bill the One",
    "locale": "en-US",
    "zoneinfo": "America/Chicago"
  }
}

And then request availability to discover which events have slots.

{
  "available_bookable_events": [
    {
      "bookable_event_id": "83hi8qhfiaif",
      "start": "2019-08-17T09:00:00Z",
      "end": "2019-08-17T10:00:00Z",
      "registration": {
        "capacity": 5,
        "registered_count": 3
      }
    },
    {
      "bookable_event_id": "jeafugi83gf",
      "start": "2019-08-18T11:00:00Z",
      "end": "2019-08-18T12:00:00Z",
      "registration": {
        "capacity": 5,
        "registered_count": 1
      }
    }
  ]
}

We'll be following up with support for Bookable Events in our UI Elements and Real Time Scheduling features soon.

Review the Bookable Event docs and the extensions to the Availability endpoint.

Application Calendars out of Beta

Application Calendars are now out of Beta and are fully stabilized.

More information on how to use them in Intro to Application Calendars.

Or review the Application Calendar docs.

UI Elements v1.0.0

The release of UI Elements v1.0.0 marks an important transition from prototype to full-fledged product. We have been able to shape the Elements into a robust suite suitable for use in any application environment.

The changes from v0 to v1 are designed to enable a more flexible and customizable set of Elements, as well as providing a solid platform for future expansion. The new config option standardizes many of the more ad-hoc options from early versions, and all style-related options have been moved to the styles option. The callback format has also been amended to support multiple notification types from a single Element, paving the way for richer and deeper integrations.

Find out more in the Upgrade Guide, including the upgrade steps for those using older versions.

SDK updates

Support for Availability Rules was added for Node and Ruby.

The Python package received support for revoking authorization for a profile and general improvements around the handling of tokens.

Thanks to all those that contributed their time to making those updates.

Smart Invites - private events

You can now set Smart Invites as private events in the recipients' calendars.

Just add the event_private attribute to the event object when creating or updating your invite.

{
  ...
  "event": {
    ...
    "event_private": true
  },
  ...
}

Smart Invites docs

Real Time Scheduling - Minimum Notice

You can now specify the minimum notice your users's get before a booking is made through the Real Time Scheduling service.

The minimum_notice parameter allows you to specify the duration in terms of hours and minutes, eg:

{
  ...,
  "minimum_notice": {
    "hours": 4,
    "minutes": 30
  }
}

Availability Rule Selection

A couple of updates regarding Availability Rules.

  1. You can now specify availability_rule_ids in an Availability query
  2. You can list the Availability Rules for an account

Ideal for when you have users operating in different locations or have different profiles of availability based on the type of meeting.

New Availability API Response Formats

You can now choose from three different response formats from our Availability API using the new response_format parameter.

This works in conjunction with start_interval to control the distribution of the periods/slots.

  • periods will generate contiguous available periods that are a minimum length of the required_duration.

  • slots will generate non-overlapping slots with length equal to the required_duration.

  • overlapping_slots will generate slots starting every start_interval irrespective of whether they overlap with length equal to the required_duration.

See the Availability API docs for more information.

Availability Rules and Calendar Sync Elements

We now have UI Elements for managing a user's working hours and calendar sync connections.

Availability Rules

availbility-rules.png

This element provides a really simple way of giving your user's a powerful UI for controlling when they're available for scheduling. This stores the user's rules against the Availability Rules endpoint automatically.

More information

Calendar Sync

calendar-sync.png

An element for showing the current status of all of the user's calendar connections to your application and allowing them to manage them.

More Information

Scheduling API updates

We've moved a series of enhancements to our Scheduling API from Alpha to Beta today.

Availability Rules

Allow the capturing of regular available hours for a person or resource. read more

Available Periods

Allow your application to record fixed time periods when you want to make a user available for scheduling purposes. read more

Availability Buffers

Ensure space is left between bookings when using our Availability API or Real Time Scheduling services. read more

Real Time Scheduling - Redirect

You can now set a configurable redirect url to send the user to once they've completed the online booking process with Real Time Scheduling. read more

Beta features are designed to be used in production. The API is stable, They are being used by live customers. We're in the process of adding them to all of our official SDKs and more closely monitoring activity and performance under load.