Create ALPHA

Required plan: Scheduler

Description #

Creates a Scheduler Request using a Cronofy Account.

Authentication is with a client_secret of an Internal Application linked to the Organizational Unit.

Also supports the sub of an Account connected to the Organizational Unit in the Cronofy-Impersonate header.

The host for the resulting meeting is decided in one of three ways.

  1. Specify host in the payload.
{
  "host": {
    "sub": "acc_61815034636bd5c5ce4edd"
  },
  ...
}

This creates a request using the hosts default personal scheduling preferences.

  1. Use the Cronofy-Impersonate header.

Instead of specifying the host in the payload you can authenticate as specific Account and that will be used as the host of the resulting meeting.

  1. Specify a Group Rule.
{
  "scheduler_group_rule": {
    "id": "sgr_5346534636bd5c5ce4edd"
  },
  ...
}

Instead of specifying a host you can specify a Group Rule (scheduler_group_rule) to use in order to resolve the host dynamically.

You can find the id for the Group Rule in the Developer Details section at the foot of the Group Rules page.

URL format #

{data_center_url}/v1/scheduler_requests

Example Request #

POST /v1/scheduler_requests HTTP/1.1
Host: {data_center_url}
Authorization: Bearer {API_KEY}
Content-Type: application/json; charset=utf-8

{
  "host": {
    "sub": "acc_61815034636bd5c5ce4edd"
  },
  "recipients": [
    {
      "email": "doc@evenitron.com",
      "display_name": "Dr Emmet Brown"
    }
  ],
  "event": {
    "summary": "Driving lessons - Marty & Doc"
  }
}

Example Response #

HTTP/1.1 200 OK
Content-Type: application/json; charset=utf-8

{
  "scheduler_request": {
    "scheduler_request_id": "srq_5987234923847923",
    "recipients": [
      {
        "email": "doc@evenitron.com",
        "display_name": "Dr Emmet Brown",
        "select_url": "https://app.cronofy.com/r/234ebnd"
      }
    ]
  }
}

Request Parameters #

data_center_url required

The URL for the data center you want to communicate with. Possible choices are:

  • api-au.cronofy.com - πŸ‡¦πŸ‡Ί Australia
  • api-ca.cronofy.com - πŸ‡¨πŸ‡¦ Canada
  • api-de.cronofy.com - πŸ‡©πŸ‡ͺ Germany
  • api-sg.cronofy.com - πŸ‡ΈπŸ‡¬ Singapore
  • api-uk.cronofy.com - πŸ‡¬πŸ‡§ United Kingdom
  • api.cronofy.com - πŸ‡ΊπŸ‡Έ United States

Find out more about Cronofy's data centers.

host.sub optional  #

A String value representing the sub for the Cronofy Account hosting the resulting event.

The value must represent a member of the Organizational Unit that the Application is linked to.

scheduler_group_rule.id optional  #

A String value representing the id for the Cronofy Group Rule to use for creating the Scheduling Request.

The value must represent a Group Rule from the Organizational Unit that the Application is linked to.

recipients required  #

An Array of recipients. Only one recipient is supported currently.

recipients.email required  #

A String email address of the recipient of the Scheduler Request.

recipients.display_name optional  #

A String value representing the name of the recipient.

event required  #

An object with the details of the event you wish to push into the user’s selected calendar.

event.summary required  #

A String of up to 1024 characters to use as the summary, sometimes referred to as the name, of the event.

Response parameters #

scheduler_request_id  #

Cronofy’s unique idenifier for the Scheduler Request String.

recipients  #

An Array of recipients. Only one recipient is supported currently.

recipients.email  #

A String email address of the recipient of the Scheduler Request.

recipients.display_name  #

A String value representing the name of the recipient.

recipients.select_url  #

A String URL value for the recipient to visit in order to select a slot.