Invite Callback BETA

Required plan: Starter

Description #

Once a Smart Invite has been created and sent to the recipient you will be able to receive notifications relating to it. These notifications will be sent as HTTP POST requests to the callback_url specified when the Smart Invite was created.

Example callback #

POST {CALLBACK_URL_PATH} HTTP/1.1
Host: {CALLBACK_URL_HOST}
Content-Type: application/json; charset=utf-8
Cronofy-HMAC-SHA256: {Base64(HmacSHA256(body_bytes, CLIENT_SECRET))}

{
  "notification": {
    "type": "smart_invite",
  },
  "smart_invite": {
    "smart_invite_id": "example_id",
    "callback_url": "http://www.example.com",
    "recipient": {
      "email": "example@example.com",
      "status": "tentative",
      "comment": "example comment",
      "proposal": {
        "start": {
          "time": "2024-07-27T23:00:00+02:00",
          "tzid": "Europe/Paris"
        },
        "end": {
          "time": "2024-07-27T23:00:00+02:00",
          "tzid": "Europe/Paris"
        }
      }
    },
    "reply": {
      "email": "example@example.com",
      "status": "tentative",
      "comment": "example comment",
      "proposal": {
        "start": {
          "time": "2024-07-27T23:00:00+02:00",
          "tzid": "Europe/Paris"
        },
        "end": {
          "time": "2024-07-27T23:00:00+02:00",
          "tzid": "Europe/Paris"
        }
      }
    }
  }
}

Response parameters #

notification.type  #

The type of notification the notification is for.

smart_invite.smart_invite_id  #

The smart_invite_id which this notification refers to.

smart_invite.callback_url  #

The URL within your application that Cronofy will send notifications to about user interactions with the Smart Invite.

smart_invite.recipient.email  #

The email address of the recipient for the Smart Invite.

smart_invite.recipient.status  #

The current status of the recipient. Can be one of:

  • pending have not received any response from the recipient
  • accepted the recipient has accepted the invitation
  • tentative the recipient has tentatively accepted the invitation
  • declined the recipient has declined the invitation
smart_invite.recipient.comment  #

Any comments provided along with the reply.

smart_invite.recipient.proposal  #

Details of the counter proposal received as a reply

smart_invite.recipient.proposal.start  #

The proposed start for the event an object with two attributes, time and tzid:

{
  "time": "2024-07-27T23:00:00+02:00",
  "tzid": "Europe/Paris"
}

The time attribute is the Time or Date by which the event ends. This will be provided with an offset matching that of the corresponding tzid.

The tzid attribute specifies a String representing a known time zone identifier from the IANA Time Zone Database.

Common examples are:

  • Etc/UTC
  • Europe/Paris
  • America/Chicago
smart_invite.recipient.proposal.end  #

The proposed end for the event an object with two attributes, time and tzid:

{
  "time": "2024-07-27T23:00:00+02:00",
  "tzid": "Europe/Paris"
}

The time attribute is the Time or Date by which the event ends. This will be provided with an offset matching that of the corresponding tzid.

The tzid attribute specifies a String representing a known time zone identifier from the IANA Time Zone Database.

Common examples are:

  • Etc/UTC
  • Europe/Paris
  • America/Chicago
reply.email  #

The email address of the reply for the Smart Invite.

reply.status  #

The current status of the reply. Can be one of:

  • pending have not received any response from the reply
  • accepted the reply has accepted the invitation
  • tentative the reply has tentatively accepted the invitation
  • declined the reply has declined the invitation
reply.comment  #

Any comments provided along with the reply.

reply.proposal  #

Details of the counter proposal received as a reply

reply.proposal.start  #

The proposed start for the event an object with two attributes, time and tzid:

{
  "time": "2024-07-27T23:00:00+02:00",
  "tzid": "Europe/Paris"
}

The time attribute is the Time or Date by which the event ends. This will be provided with an offset matching that of the corresponding tzid.

The tzid attribute specifies a String representing a known time zone identifier from the IANA Time Zone Database.

Common examples are:

  • Etc/UTC
  • Europe/Paris
  • America/Chicago
reply.proposal.end  #

The proposed end for the event an object with two attributes, time and tzid:

{
  "time": "2024-07-27T23:00:00+02:00",
  "tzid": "Europe/Paris"
}

The time attribute is the Time or Date by which the event ends. This will be provided with an offset matching that of the corresponding tzid.

The tzid attribute specifies a String representing a known time zone identifier from the IANA Time Zone Database.

Common examples are:

  • Etc/UTC
  • Europe/Paris
  • America/Chicago