> ## Documentation Index
> Fetch the complete documentation index at: https://docs.nekt.com/llms.txt
> Use this file to discover all available pages before exploring further.

# Calendly as a data source

> Bring data from Calendly to Nekt.

Calendly is a scheduling automation platform that helps individuals and businesses manage meetings and appointments. It provides tools for setting up event types, sharing booking links, and tracking scheduled events and invitees.

<img height="50" src="https://mintlify.s3.us-west-1.amazonaws.com/nekt/assets/logo/logo-calendly.png" />

## Configuring Calendly as a Source

In the [Sources](https://app.nekt.ai/sources) tab, click on the "Add source" button located on the top right of your screen. Then, select the Calendly option from the list of connectors.

Click **Next** and you'll be prompted to add your access.

### 1. Add account access

You'll need a Calendly Personal Access Token to connect. To generate one:

1. Log in to your [Calendly account](https://calendly.com)
2. Go to **Integrations & Apps** > **API & Webhooks**
3. Click **Generate New Token** and copy the token

The following configurations are available:

* **Personal Access Token**: Your Calendly Personal Access Token for authentication.

* **Start Date**: (Optional) The earliest date from which events will be synced. If not provided, all events will be synced.

Once you're done, click **Next**.

### 2. Select streams

Choose which data streams you want to sync. For faster extractions, select only the streams that are relevant to your analysis.

> Tip: The stream can be found more easily by typing its name.

Select the streams and click **Next**.

### 3. Configure data streams

Customize how you want your data to appear in your catalog. Select the desired layer where the data will be placed, a folder to organize it inside the layer, a name for each table and the type of sync.

* **Layer**: choose between the existing layers on your catalog.
* **Folder**: a folder can be created inside the selected layer to group all tables.
* **Table name**: we suggest a name, but feel free to customize it. You can add a **prefix** to all tables at once.
* **Sync Type**: choose between INCREMENTAL and FULL\_TABLE.

Once you are done configuring, click **Next**.

### 4. Configure data source

Describe your data source for easy identification within your organization.

To define your [Trigger](https://docs.nekt.com/runs/scheduling-and-triggers), consider how often you want data to be extracted from this source.

Once you are ready, click **Next** to finalize the setup.

### 5. Check your new source

You can view your new source on the [Sources](https://app.nekt.ai/sources) page. If needed, manually trigger the source extraction by clicking on the arrow button. Once executed, your data will appear in your Catalog.

<Warning>For you to be able to see it on your [Catalog](https://app.nekt.ai/catalog), you need at least one successful source run.</Warning>

# Streams and Fields

Below you'll find all available data streams from Calendly and their corresponding fields:

<AccordionGroup>
  <Accordion title="Scheduled Events">
    All scheduled meetings and events in your Calendly organization.

    **Key Fields:**

    * `uri` - Unique identifier for the event
    * `name` - Name of the event
    * `status` - Status of the event (active, canceled)
    * `start_time` - Start time of the event
    * `end_time` - End time of the event
    * `event_type` - URI of the event type
    * `location` - Location details (JSON)
    * `created_at` - When the event was created
    * `updated_at` - When the event was last updated

    **Invitee Counters:**

    * `invitees_counter_total` - Total number of invitees
    * `invitees_counter_active` - Number of active invitees
    * `invitees_counter_limit` - Maximum number of invitees

    **Additional Fields:**

    * `event_memberships` - Host memberships (JSON)
    * `event_guests` - Guest list (JSON)
    * `calendar_event` - Calendar event details (JSON)
    * `meeting_notes_plain` - Meeting notes in plain text
    * `meeting_notes_html` - Meeting notes in HTML
    * `cancellation_reason` - Reason for cancellation
    * `cancellation_canceled_by` - Who canceled the event
  </Accordion>

  <Accordion title="Event Invitees">
    Invitees for each scheduled event (child stream of Scheduled Events).

    **Key Fields:**

    * `uri` - Unique identifier for the invitee
    * `email` - Invitee's email address
    * `name` - Invitee's full name
    * `first_name` - Invitee's first name
    * `last_name` - Invitee's last name
    * `status` - Invitee status (active, canceled)
    * `timezone` - Invitee's timezone
    * `created_at` - When the invitee was created
    * `updated_at` - When the invitee was last updated

    **Scheduling Details:**

    * `questions_and_answers` - Responses to scheduling questions (JSON)
    * `tracking` - UTM and tracking parameters (JSON)
    * `rescheduled` - Whether the invitee rescheduled
    * `cancel_url` - URL to cancel the event
    * `reschedule_url` - URL to reschedule the event
    * `scheduled_event_uri` - URI of the parent scheduled event

    **Additional Fields:**

    * `text_reminder_number` - Phone number for text reminders
    * `old_invitee` - Previous invitee URI (if rescheduled)
    * `new_invitee` - New invitee URI (if rescheduled)
    * `routing_form_submission` - Routing form submission details (JSON)
    * `payment` - Payment information (JSON)
    * `no_show` - No-show status details (JSON)
  </Accordion>

  <Accordion title="Event Types">
    Event types configured in your Calendly organization.

    **Key Fields:**

    * `uri` - Unique identifier for the event type
    * `name` - Name of the event type
    * `active` - Whether the event type is active
    * `slug` - URL-friendly slug
    * `scheduling_url` - Public scheduling URL
    * `duration` - Duration in minutes
    * `kind` - Event kind (solo, group)
    * `type` - Event type (StandardEventType, AdhocEventType)
    * `created_at` - When the event type was created
    * `updated_at` - When the event type was last updated

    **Appearance & Settings:**

    * `color` - Display color
    * `description_plain` - Description in plain text
    * `description_html` - Description in HTML
    * `internal_note` - Internal notes
    * `secret` - Whether the event type is secret
    * `admin_managed` - Whether the event type is admin-managed
    * `pooling_type` - Pooling type for round-robin events
    * `custom_questions` - Custom scheduling questions (JSON)
    * `profile` - Profile information (JSON)
  </Accordion>

  <Accordion title="Organization Memberships">
    Members of your Calendly organization.

    **Key Fields:**

    * `uri` - Unique identifier for the membership
    * `role` - Role in the organization (admin, user, owner)
    * `organization` - Organization URI
    * `created_at` - When the membership was created
    * `updated_at` - When the membership was last updated

    **User Details:**

    * `user_uri` - User's unique identifier
    * `user_name` - User's display name
    * `user_slug` - User's URL slug
    * `user_email` - User's email address
    * `user_timezone` - User's timezone
    * `user_avatar_url` - User's avatar URL
    * `user_created_at` - When the user was created
    * `user_updated_at` - When the user was last updated
  </Accordion>
</AccordionGroup>
