Question

API: how to get invitee details from "List Events" request

  • 2 November 2023
  • 2 replies
  • 331 views

TL:DR:

In the List Events HTTP response (GET /scheduled_events):

  1. Is there a way to include a list of invitees (with the user_email field) like the array of objects in “event_guests”: [ ] and “event_memberships”: [ ]?
  2. If not, shouldn’t each event’s object include the event’s uuid to fetch further details?

_____________________________________________________________

Hi there,

I need to fetch a detailed list of events happening on a specific date, but I noticed the List Events http response does not include a list of invitees, and assuming it is not possible to get a populated array of invitees with details (like the invitee’s email) with a single request, I thought to instead chain multiple requests:

  1. Request List Events (GET /scheduled_events)
  2. Extract each event´s uuid from the response and send an individual /scheduled_events/{uuid} request for each event to get invitee’s mails.

But event uuids are also not in the ‘List Events’ response, and the only way I see to fetch those specific individual events is to extract the id from the even link string of each event’s “uri:” field, which makes me feel like I must be doing something wrong (also, the event uuid in the uri appears in a “scheduled_events/xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx” format and not something like “scheduled_events/GBGBDCAADAEDCRZ2” as in the examples in the documentation).

Any idea of the best way to proceed? Ideally I’d prefer to be able to fetch all the info in a single request, but if not possible I feel like there has to be a more convenient way of extracting event uuids.

 

Cheers!


This topic has been closed for comments

2 replies

Hi there! Happy to answer this for you.

 

The URI of the event is included in the payload as shown here: https://developer.calendly.com/api-docs/2d5ed9bbd2952-list-events

You can then obtain the UUID of the event from the very end of the URI.

 

In regards to the format of these values in the URI:

​https://api.calendly.com/organizations/012345678901234567890

 

Let me know if you have other questions! 

Hi @cendub,

 

You are correct, we don’t include an array of Invitees in the Event payload. A (group) Event can have very many Invitees, whereas there’s a hard limit on having only 10 guests. That’s why you need to fetch a collection of Invitees for each Event separately.

 

If you already have an Event URI, you don’t actually need to parse it out and extract the UUID part in order to build a URI for its Invitees collection. Simply append /invitees to the Event URI. For example, if the Event URI is https://api.calendly.com/scheduled_events/cdeba4c3-5adb-477d-8972-7317836eb40d, then its Invitees collection would be https://api.calendly.com/scheduled_events/cdeba4c3-5adb-477d-8972-7317836eb40d/invitees

In code it would look something like this:

const response = await fetch(event.uri + '/invitees');

Regarding the format of the UUID inside the URI, you may run into different styles of identifiers that look like GBGBDCAADAEDCRZ2 or cdeba4c3-5adb-477d-8972-7317836eb40d. Both can be valid and you shouldn’t make assumptions about the identifier format as it’s an internal implementation detail that may change. You shouldn’t need to operate on UUIDs directly anyway, though.

Hope this helps! Feel free to follow up with additional questions.