From 5e3865b6454d65bf80ac5e5216ef48d5dd5a4ea6 Mon Sep 17 00:00:00 2001 From: Lauris Skraucis Date: Mon, 7 Oct 2024 08:54:36 +0200 Subject: [PATCH] docs: v2 mintlify update (#16961) --- docs/api-reference/v2/openapi.json | 3671 +++++++++++++++++++++------- 1 file changed, 2771 insertions(+), 900 deletions(-) diff --git a/docs/api-reference/v2/openapi.json b/docs/api-reference/v2/openapi.json index 1920c1dee1..33fd491050 100644 --- a/docs/api-reference/v2/openapi.json +++ b/docs/api-reference/v2/openapi.json @@ -27,7 +27,9 @@ } } }, - "tags": ["Platform / Cal Provider"] + "tags": [ + "Platform / Cal Provider" + ] } }, "/v2/provider/{clientId}/access-token": { @@ -56,7 +58,9 @@ } } }, - "tags": ["Platform / Cal Provider"] + "tags": [ + "Platform / Cal Provider" + ] } }, "/v2/gcal/oauth/auth-url": { @@ -85,7 +89,9 @@ } } }, - "tags": ["Platform / Google Calendar"] + "tags": [ + "Platform / Google Calendar" + ] } }, "/v2/gcal/oauth/save": { @@ -122,7 +128,9 @@ } } }, - "tags": ["Platform / Google Calendar"] + "tags": [ + "Platform / Google Calendar" + ] } }, "/v2/gcal/check": { @@ -142,7 +150,9 @@ } } }, - "tags": ["Platform / Google Calendar"] + "tags": [ + "Platform / Google Calendar" + ] } }, "/v2/oauth-clients/{clientId}/users": { @@ -181,7 +191,9 @@ } } }, - "tags": ["Platform / Managed Users"] + "tags": [ + "Platform / Managed Users" + ] }, "post": { "operationId": "OAuthClientUsersController_createUser", @@ -218,7 +230,9 @@ } } }, - "tags": ["Platform / Managed Users"] + "tags": [ + "Platform / Managed Users" + ] } }, "/v2/oauth-clients/{clientId}/users/{userId}": { @@ -255,7 +269,9 @@ } } }, - "tags": ["Platform / Managed Users"] + "tags": [ + "Platform / Managed Users" + ] }, "patch": { "operationId": "OAuthClientUsersController_updateUser", @@ -300,7 +316,9 @@ } } }, - "tags": ["Platform / Managed Users"] + "tags": [ + "Platform / Managed Users" + ] }, "delete": { "operationId": "OAuthClientUsersController_deleteUser", @@ -335,7 +353,9 @@ } } }, - "tags": ["Platform / Managed Users"] + "tags": [ + "Platform / Managed Users" + ] } }, "/v2/oauth-clients/{clientId}/users/{userId}/force-refresh": { @@ -372,7 +392,9 @@ } } }, - "tags": ["Platform / Managed Users"] + "tags": [ + "Platform / Managed Users" + ] } }, "/v2/oauth-clients/{clientId}/webhooks": { @@ -411,7 +433,9 @@ } } }, - "tags": ["Platform / Webhooks"] + "tags": [ + "Platform / Webhooks" + ] }, "get": { "operationId": "OAuthClientWebhooksController_getOAuthClientWebhooks", @@ -458,7 +482,9 @@ } } }, - "tags": ["Platform / Webhooks"] + "tags": [ + "Platform / Webhooks" + ] }, "delete": { "operationId": "OAuthClientWebhooksController_deleteAllOAuthClientWebhooks", @@ -485,7 +511,9 @@ } } }, - "tags": ["Platform / Webhooks"] + "tags": [ + "Platform / Webhooks" + ] } }, "/v2/oauth-clients/{clientId}/webhooks/{webhookId}": { @@ -524,7 +552,9 @@ } } }, - "tags": ["Platform / Webhooks"] + "tags": [ + "Platform / Webhooks" + ] }, "get": { "operationId": "OAuthClientWebhooksController_getOAuthClientWebhook", @@ -542,7 +572,9 @@ } } }, - "tags": ["Platform / Webhooks"] + "tags": [ + "Platform / Webhooks" + ] }, "delete": { "operationId": "OAuthClientWebhooksController_deleteOAuthClientWebhook", @@ -560,7 +592,9 @@ } } }, - "tags": ["Platform / Webhooks"] + "tags": [ + "Platform / Webhooks" + ] } }, "/v2/organizations/{orgId}/attributes": { @@ -609,7 +643,9 @@ } } }, - "tags": ["Orgs / Attributes"] + "tags": [ + "Orgs / Attributes" + ] }, "post": { "operationId": "OrganizationsAttributesController_createOrganizationAttribute", @@ -646,7 +682,9 @@ } } }, - "tags": ["Orgs / Attributes"] + "tags": [ + "Orgs / Attributes" + ] } }, "/v2/organizations/{orgId}/attributes/{attributeId}": { @@ -683,7 +721,9 @@ } } }, - "tags": ["Orgs / Attributes"] + "tags": [ + "Orgs / Attributes" + ] }, "patch": { "operationId": "OrganizationsAttributesController_updateOrganizationAttribute", @@ -728,7 +768,9 @@ } } }, - "tags": ["Orgs / Attributes"] + "tags": [ + "Orgs / Attributes" + ] }, "delete": { "operationId": "OrganizationsAttributesController_deleteOrganizationAttribute", @@ -763,7 +805,9 @@ } } }, - "tags": ["Orgs / Attributes"] + "tags": [ + "Orgs / Attributes" + ] } }, "/v2/organizations/{orgId}/attributes/{attributeId}/options": { @@ -810,7 +854,9 @@ } } }, - "tags": ["Orgs / Attributes / Options"] + "tags": [ + "Orgs / Attributes / Options" + ] }, "get": { "operationId": "OrganizationsOptionsAttributesController_getOrganizationAttributeOptions", @@ -845,7 +891,9 @@ } } }, - "tags": ["Orgs / Attributes / Options"] + "tags": [ + "Orgs / Attributes / Options" + ] } }, "/v2/organizations/{orgId}/attributes/{attributeId}/options/{optionId}": { @@ -890,7 +938,9 @@ } } }, - "tags": ["Orgs / Attributes / Options"] + "tags": [ + "Orgs / Attributes / Options" + ] }, "patch": { "operationId": "OrganizationsOptionsAttributesController_updateOrganizationAttributeOption", @@ -943,7 +993,9 @@ } } }, - "tags": ["Orgs / Attributes / Options"] + "tags": [ + "Orgs / Attributes / Options" + ] } }, "/v2/organizations/{orgId}/attributes/options/{userId}": { @@ -990,7 +1042,9 @@ } } }, - "tags": ["Orgs / Attributes / Options"] + "tags": [ + "Orgs / Attributes / Options" + ] }, "get": { "operationId": "OrganizationsOptionsAttributesController_getOrganizationAttributeOptionsForUser", @@ -1025,7 +1079,9 @@ } } }, - "tags": ["Orgs / Attributes / Options"] + "tags": [ + "Orgs / Attributes / Options" + ] } }, "/v2/organizations/{orgId}/attributes/options/{userId}/{attributeOptionId}": { @@ -1070,7 +1126,9 @@ } } }, - "tags": ["Orgs / Attributes / Options"] + "tags": [ + "Orgs / Attributes / Options" + ] } }, "/v2/organizations/{orgId}/teams/{teamId}/event-types": { @@ -1117,7 +1175,9 @@ } } }, - "tags": ["Orgs / Event Types"] + "tags": [ + "Orgs / Event Types" + ] }, "get": { "operationId": "OrganizationsEventTypesController_getTeamEventTypes", @@ -1133,7 +1193,7 @@ }, { "name": "eventSlug", - "required": true, + "required": false, "in": "query", "description": "Slug of team event type to return.", "schema": { @@ -1153,7 +1213,9 @@ } } }, - "tags": ["Orgs / Event Types"] + "tags": [ + "Orgs / Event Types" + ] } }, "/v2/organizations/{orgId}/teams/{teamId}/event-types/{eventTypeId}": { @@ -1190,7 +1252,9 @@ } } }, - "tags": ["Orgs / Event Types"] + "tags": [ + "Orgs / Event Types" + ] }, "patch": { "operationId": "OrganizationsEventTypesController_updateTeamEventType", @@ -1235,7 +1299,9 @@ } } }, - "tags": ["Orgs / Event Types"] + "tags": [ + "Orgs / Event Types" + ] }, "delete": { "operationId": "OrganizationsEventTypesController_deleteTeamEventType", @@ -1270,7 +1336,9 @@ } } }, - "tags": ["Orgs / Event Types"] + "tags": [ + "Orgs / Event Types" + ] } }, "/v2/organizations/{orgId}/teams/{teamId}/event-types/{eventTypeId}/create-phone-call": { @@ -1317,7 +1385,9 @@ } } }, - "tags": ["Orgs / Event Types"] + "tags": [ + "Orgs / Event Types" + ] } }, "/v2/organizations/{orgId}/teams/event-types": { @@ -1366,7 +1436,9 @@ } } }, - "tags": ["Orgs / Event Types"] + "tags": [ + "Orgs / Event Types" + ] } }, "/v2/organizations/{orgId}/memberships": { @@ -1415,7 +1487,9 @@ } } }, - "tags": ["Orgs / Memberships"] + "tags": [ + "Orgs / Memberships" + ] }, "post": { "operationId": "OrganizationsMembershipsController_createMembership", @@ -1452,7 +1526,9 @@ } } }, - "tags": ["Orgs / Memberships"] + "tags": [ + "Orgs / Memberships" + ] } }, "/v2/organizations/{orgId}/memberships/{membershipId}": { @@ -1489,7 +1565,9 @@ } } }, - "tags": ["Orgs / Memberships"] + "tags": [ + "Orgs / Memberships" + ] }, "delete": { "operationId": "OrganizationsMembershipsController_deleteMembership", @@ -1524,7 +1602,9 @@ } } }, - "tags": ["Orgs / Memberships"] + "tags": [ + "Orgs / Memberships" + ] }, "patch": { "operationId": "OrganizationsMembershipsController_updateMembership", @@ -1569,7 +1649,9 @@ } } }, - "tags": ["Orgs / Memberships"] + "tags": [ + "Orgs / Memberships" + ] } }, "/v2/organizations/{orgId}/schedules": { @@ -1618,7 +1700,9 @@ } } }, - "tags": ["Orgs / Schedules"] + "tags": [ + "Orgs / Schedules" + ] } }, "/v2/organizations/{orgId}/users/{userId}/schedules": { @@ -1657,7 +1741,10 @@ } } }, - "tags": ["Orgs / Schedules", "Orgs / Users / Schedules"] + "tags": [ + "Orgs / Schedules", + "Orgs / Users / Schedules" + ] }, "get": { "operationId": "OrganizationsSchedulesController_getUserSchedules", @@ -1684,7 +1771,10 @@ } } }, - "tags": ["Orgs / Schedules", "Orgs / Users / Schedules"] + "tags": [ + "Orgs / Schedules", + "Orgs / Users / Schedules" + ] } }, "/v2/organizations/{orgId}/users/{userId}/schedules/{scheduleId}": { @@ -1721,7 +1811,10 @@ } } }, - "tags": ["Orgs / Schedules", "Orgs / Users / Schedules"] + "tags": [ + "Orgs / Schedules", + "Orgs / Users / Schedules" + ] }, "patch": { "operationId": "OrganizationsSchedulesController_updateUserSchedule", @@ -1766,7 +1859,10 @@ } } }, - "tags": ["Orgs / Schedules", "Orgs / Users / Schedules"] + "tags": [ + "Orgs / Schedules", + "Orgs / Users / Schedules" + ] }, "delete": { "operationId": "OrganizationsSchedulesController_deleteUserSchedule", @@ -1801,7 +1897,10 @@ } } }, - "tags": ["Orgs / Schedules", "Orgs / Users / Schedules"] + "tags": [ + "Orgs / Schedules", + "Orgs / Users / Schedules" + ] } }, "/v2/organizations/{orgId}/teams": { @@ -1850,7 +1949,10 @@ } } }, - "tags": ["Orgs / Teams", "Teams"] + "tags": [ + "Orgs / Teams", + "Teams" + ] }, "post": { "operationId": "OrganizationsTeamsController_createTeam", @@ -1895,7 +1997,9 @@ } } }, - "tags": ["Orgs / Teams"] + "tags": [ + "Orgs / Teams" + ] } }, "/v2/organizations/{orgId}/teams/me": { @@ -1944,7 +2048,9 @@ } } }, - "tags": ["Orgs / Teams"] + "tags": [ + "Orgs / Teams" + ] } }, "/v2/organizations/{orgId}/teams/{teamId}": { @@ -1964,7 +2070,9 @@ } } }, - "tags": ["Orgs / Teams"] + "tags": [ + "Orgs / Teams" + ] }, "delete": { "operationId": "OrganizationsTeamsController_deleteTeam", @@ -1999,7 +2107,9 @@ } } }, - "tags": ["Orgs / Teams"] + "tags": [ + "Orgs / Teams" + ] }, "patch": { "operationId": "OrganizationsTeamsController_updateTeam", @@ -2044,7 +2154,9 @@ } } }, - "tags": ["Orgs / Teams"] + "tags": [ + "Orgs / Teams" + ] } }, "/v2/organizations/{orgId}/teams/{teamId}/memberships": { @@ -2101,7 +2213,9 @@ } } }, - "tags": ["Orgs / Teams / Memberships"] + "tags": [ + "Orgs / Teams / Memberships" + ] }, "post": { "operationId": "OrganizationsTeamsMembershipsController_createOrgTeamMembership", @@ -2146,7 +2260,9 @@ } } }, - "tags": ["Orgs / Teams / Memberships"] + "tags": [ + "Orgs / Teams / Memberships" + ] } }, "/v2/organizations/{orgId}/teams/{teamId}/memberships/{membershipId}": { @@ -2191,7 +2307,9 @@ } } }, - "tags": ["Orgs / Teams / Memberships"] + "tags": [ + "Orgs / Teams / Memberships" + ] }, "delete": { "operationId": "OrganizationsTeamsMembershipsController_deleteOrgTeamMembership", @@ -2234,7 +2352,9 @@ } } }, - "tags": ["Orgs / Teams / Memberships"] + "tags": [ + "Orgs / Teams / Memberships" + ] }, "patch": { "operationId": "OrganizationsTeamsMembershipsController_updateOrgTeamMembership", @@ -2287,7 +2407,9 @@ } } }, - "tags": ["Orgs / Teams / Memberships"] + "tags": [ + "Orgs / Teams / Memberships" + ] } }, "/v2/organizations/{orgId}/users": { @@ -2348,7 +2470,9 @@ } } }, - "tags": ["Orgs / Users"] + "tags": [ + "Orgs / Users" + ] }, "post": { "operationId": "OrganizationsUsersController_createOrganizationUser", @@ -2385,7 +2509,9 @@ } } }, - "tags": ["Orgs / Users"] + "tags": [ + "Orgs / Users" + ] } }, "/v2/organizations/{orgId}/users/{userId}": { @@ -2432,7 +2558,9 @@ } } }, - "tags": ["Orgs / Users"] + "tags": [ + "Orgs / Users" + ] }, "delete": { "operationId": "OrganizationsUsersController_deleteOrganizationUser", @@ -2467,7 +2595,9 @@ } } }, - "tags": ["Orgs / Users"] + "tags": [ + "Orgs / Users" + ] } }, "/v2/organizations/{orgId}/webhooks": { @@ -2516,7 +2646,9 @@ } } }, - "tags": ["Orgs / Webhooks"] + "tags": [ + "Orgs / Webhooks" + ] }, "post": { "operationId": "OrganizationsWebhooksController_createOrganizationWebhook", @@ -2553,7 +2685,9 @@ } } }, - "tags": ["Orgs / Webhooks"] + "tags": [ + "Orgs / Webhooks" + ] } }, "/v2/organizations/{orgId}/webhooks/{webhookId}": { @@ -2582,7 +2716,9 @@ } } }, - "tags": ["Orgs / Webhooks"] + "tags": [ + "Orgs / Webhooks" + ] }, "delete": { "operationId": "OrganizationsWebhooksController_deleteWebhook", @@ -2609,7 +2745,9 @@ } } }, - "tags": ["Orgs / Webhooks"] + "tags": [ + "Orgs / Webhooks" + ] }, "patch": { "operationId": "OrganizationsWebhooksController_updateOrgWebhook", @@ -2646,7 +2784,9 @@ } } }, - "tags": ["Orgs / Webhooks"] + "tags": [ + "Orgs / Webhooks" + ] } }, "/v2/bookings": { @@ -2698,7 +2838,9 @@ } } }, - "tags": ["Bookings"] + "tags": [ + "Bookings" + ] }, "get": { "operationId": "BookingsController_2024_08_13_getBookings", @@ -2723,7 +2865,13 @@ "type": "array", "items": { "type": "string", - "enum": ["upcoming", "recurring", "past", "cancelled", "unconfirmed"] + "enum": [ + "upcoming", + "recurring", + "past", + "cancelled", + "unconfirmed" + ] } } }, @@ -2814,7 +2962,10 @@ "description": "Sort results by their start time in ascending or descending order.", "example": "?sortStart=asc OR ?sortStart=desc", "schema": { - "enum": ["asc", "desc"], + "enum": [ + "asc", + "desc" + ], "type": "string" } }, @@ -2825,7 +2976,10 @@ "description": "Sort results by their end time in ascending or descending order.", "example": "?sortEnd=asc OR ?sortEnd=desc", "schema": { - "enum": ["asc", "desc"], + "enum": [ + "asc", + "desc" + ], "type": "string" } }, @@ -2836,7 +2990,10 @@ "description": "Sort results by their creation time (when booking was made) in ascending or descending order.", "example": "?sortEnd=asc OR ?sortEnd=desc", "schema": { - "enum": ["asc", "desc"], + "enum": [ + "asc", + "desc" + ], "type": "string" } }, @@ -2882,7 +3039,9 @@ } } }, - "tags": ["Bookings"] + "tags": [ + "Bookings" + ] } }, "/v2/bookings/{bookingUid}": { @@ -2921,7 +3080,9 @@ } } }, - "tags": ["Bookings"] + "tags": [ + "Bookings" + ] } }, "/v2/bookings/{bookingUid}/reschedule": { @@ -2970,7 +3131,9 @@ } } }, - "tags": ["Bookings"] + "tags": [ + "Bookings" + ] } }, "/v2/bookings/{bookingUid}/cancel": { @@ -3018,7 +3181,9 @@ } } }, - "tags": ["Bookings"] + "tags": [ + "Bookings" + ] } }, "/v2/bookings/{bookingUid}/mark-absent": { @@ -3075,7 +3240,9 @@ } } }, - "tags": ["Bookings"] + "tags": [ + "Bookings" + ] } }, "/v2/calendars/ics-feed/save": { @@ -3105,7 +3272,9 @@ } } }, - "tags": ["Calendars"] + "tags": [ + "Calendars" + ] } }, "/v2/calendars/ics-feed/check": { @@ -3125,7 +3294,9 @@ } } }, - "tags": ["Calendars"] + "tags": [ + "Calendars" + ] } }, "/v2/calendars/busy-times": { @@ -3169,7 +3340,9 @@ } } }, - "tags": ["Calendars"] + "tags": [ + "Calendars" + ] } }, "/v2/calendars": { @@ -3189,7 +3362,9 @@ } } }, - "tags": ["Calendars"] + "tags": [ + "Calendars" + ] } }, "/v2/calendars/{calendar}/connect": { @@ -3226,7 +3401,9 @@ } } }, - "tags": ["Calendars"] + "tags": [ + "Calendars" + ] } }, "/v2/calendars/{calendar}/save": { @@ -3264,7 +3441,9 @@ "description": "" } }, - "tags": ["Calendars"] + "tags": [ + "Calendars" + ] } }, "/v2/calendars/{calendar}/credentials": { @@ -3286,7 +3465,9 @@ "description": "" } }, - "tags": ["Calendars"] + "tags": [ + "Calendars" + ] } }, "/v2/calendars/{calendar}/check": { @@ -3315,7 +3496,9 @@ } } }, - "tags": ["Calendars"] + "tags": [ + "Calendars" + ] } }, "/v2/calendars/{calendar}/disconnect": { @@ -3354,7 +3537,9 @@ } } }, - "tags": ["Calendars"] + "tags": [ + "Calendars" + ] } }, "/v2/destination-calendars": { @@ -3384,7 +3569,9 @@ } } }, - "tags": ["Destination Calendars"] + "tags": [ + "Destination Calendars" + ] } }, "/v2/event-types": { @@ -3433,7 +3620,9 @@ } } }, - "tags": ["Event Types"] + "tags": [ + "Event Types" + ] }, "get": { "operationId": "EventTypesController_2024_06_14_getEventTypes", @@ -3450,7 +3639,7 @@ }, { "name": "username", - "required": true, + "required": false, "in": "query", "description": "The username of the user to get event types for. If only username provided will get all event types.", "schema": { @@ -3459,7 +3648,7 @@ }, { "name": "eventSlug", - "required": true, + "required": false, "in": "query", "description": "Slug of event type to return. Notably, if eventSlug is provided then username must be provided too, because multiple users can have event with same slug.", "schema": { @@ -3468,7 +3657,7 @@ }, { "name": "usernames", - "required": true, + "required": false, "in": "query", "description": "Get dynamic event type for multiple usernames separated by comma. e.g `usernames=alice,bob`", "schema": { @@ -3488,7 +3677,9 @@ } } }, - "tags": ["Event Types"] + "tags": [ + "Event Types" + ] } }, "/v2/event-types/{eventTypeId}": { @@ -3535,7 +3726,9 @@ } } }, - "tags": ["Event Types"] + "tags": [ + "Event Types" + ] }, "patch": { "operationId": "EventTypesController_2024_06_14_updateEventType", @@ -3590,7 +3783,9 @@ } } }, - "tags": ["Event Types"] + "tags": [ + "Event Types" + ] }, "delete": { "operationId": "EventTypesController_2024_06_14_deleteEventType", @@ -3635,7 +3830,9 @@ } } }, - "tags": ["Event Types"] + "tags": [ + "Event Types" + ] } }, "/v2/event-types/{eventTypeId}/webhooks": { @@ -3674,7 +3871,9 @@ } } }, - "tags": ["Event Types / Webhooks"] + "tags": [ + "Event Types / Webhooks" + ] }, "get": { "operationId": "EventTypeWebhooksController_getEventTypeWebhooks", @@ -3721,7 +3920,9 @@ } } }, - "tags": ["Event Types / Webhooks"] + "tags": [ + "Event Types / Webhooks" + ] }, "delete": { "operationId": "EventTypeWebhooksController_deleteAllEventTypeWebhooks", @@ -3748,7 +3949,9 @@ } } }, - "tags": ["Event Types / Webhooks"] + "tags": [ + "Event Types / Webhooks" + ] } }, "/v2/event-types/{eventTypeId}/webhooks/{webhookId}": { @@ -3787,7 +3990,9 @@ } } }, - "tags": ["Event Types / Webhooks"] + "tags": [ + "Event Types / Webhooks" + ] }, "get": { "operationId": "EventTypeWebhooksController_getEventTypeWebhook", @@ -3805,7 +4010,9 @@ } } }, - "tags": ["Event Types / Webhooks"] + "tags": [ + "Event Types / Webhooks" + ] }, "delete": { "operationId": "EventTypeWebhooksController_deleteEventTypeWebhook", @@ -3823,7 +4030,9 @@ } } }, - "tags": ["Event Types / Webhooks"] + "tags": [ + "Event Types / Webhooks" + ] } }, "/health": { @@ -3842,7 +4051,9 @@ } } }, - "tags": ["Health - development only"] + "tags": [ + "Health - development only" + ] } }, "/v2/me": { @@ -3862,7 +4073,9 @@ } } }, - "tags": ["Me"] + "tags": [ + "Me" + ] }, "patch": { "operationId": "MeController_updateMe", @@ -3890,193 +4103,9 @@ } } }, - "tags": ["Me"] - } - }, - "/v2/oauth-clients": { - "post": { - "operationId": "OAuthClientsController_createOAuthClient", - "summary": "", - "description": "⚠️ First, this endpoint requires `Cookie: next-auth.session-token=eyJhbGciOiJ` header. Log into Cal web app using owner of organization that was created after visiting `/settings/organizations/new`, refresh swagger docs, and the cookie will be added to requests automatically to pass the NextAuthGuard.\nSecond, make sure that the logged in user has organizationId set to pass the OrganizationRolesGuard guard.", - "parameters": [], - "requestBody": { - "required": true, - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/CreateOAuthClientInput" - } - } - } - }, - "responses": { - "201": { - "description": "Create an OAuth client", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/CreateOAuthClientResponseDto" - } - } - } - } - }, - "tags": ["OAuth - development only"] - }, - "get": { - "operationId": "OAuthClientsController_getOAuthClients", - "summary": "", - "description": "⚠️ First, this endpoint requires `Cookie: next-auth.session-token=eyJhbGciOiJ` header. Log into Cal web app using owner of organization that was created after visiting `/settings/organizations/new`, refresh swagger docs, and the cookie will be added to requests automatically to pass the NextAuthGuard.\nSecond, make sure that the logged in user has organizationId set to pass the OrganizationRolesGuard guard.", - "parameters": [], - "responses": { - "200": { - "description": "", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/GetOAuthClientsResponseDto" - } - } - } - } - }, - "tags": ["OAuth - development only"] - } - }, - "/v2/oauth-clients/{clientId}": { - "get": { - "operationId": "OAuthClientsController_getOAuthClientById", - "summary": "", - "description": "⚠️ First, this endpoint requires `Cookie: next-auth.session-token=eyJhbGciOiJ` header. Log into Cal web app using owner of organization that was created after visiting `/settings/organizations/new`, refresh swagger docs, and the cookie will be added to requests automatically to pass the NextAuthGuard.\nSecond, make sure that the logged in user has organizationId set to pass the OrganizationRolesGuard guard.", - "parameters": [ - { - "name": "clientId", - "required": true, - "in": "path", - "schema": { - "type": "string" - } - } - ], - "responses": { - "200": { - "description": "", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/GetOAuthClientResponseDto" - } - } - } - } - }, - "tags": ["OAuth - development only"] - }, - "patch": { - "operationId": "OAuthClientsController_updateOAuthClient", - "summary": "", - "description": "⚠️ First, this endpoint requires `Cookie: next-auth.session-token=eyJhbGciOiJ` header. Log into Cal web app using owner of organization that was created after visiting `/settings/organizations/new`, refresh swagger docs, and the cookie will be added to requests automatically to pass the NextAuthGuard.\nSecond, make sure that the logged in user has organizationId set to pass the OrganizationRolesGuard guard.", - "parameters": [ - { - "name": "clientId", - "required": true, - "in": "path", - "schema": { - "type": "string" - } - } - ], - "requestBody": { - "required": true, - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/UpdateOAuthClientInput" - } - } - } - }, - "responses": { - "200": { - "description": "", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/GetOAuthClientResponseDto" - } - } - } - } - }, - "tags": ["OAuth - development only"] - }, - "delete": { - "operationId": "OAuthClientsController_deleteOAuthClient", - "summary": "", - "description": "⚠️ First, this endpoint requires `Cookie: next-auth.session-token=eyJhbGciOiJ` header. Log into Cal web app using owner of organization that was created after visiting `/settings/organizations/new`, refresh swagger docs, and the cookie will be added to requests automatically to pass the NextAuthGuard.\nSecond, make sure that the logged in user has organizationId set to pass the OrganizationRolesGuard guard.", - "parameters": [ - { - "name": "clientId", - "required": true, - "in": "path", - "schema": { - "type": "string" - } - } - ], - "responses": { - "200": { - "description": "", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/GetOAuthClientResponseDto" - } - } - } - } - }, - "tags": ["OAuth - development only"] - } - }, - "/v2/oauth-clients/{clientId}/managed-users": { - "get": { - "operationId": "OAuthClientsController_getOAuthClientManagedUsersById", - "summary": "", - "description": "⚠️ First, this endpoint requires `Cookie: next-auth.session-token=eyJhbGciOiJ` header. Log into Cal web app using owner of organization that was created after visiting `/settings/organizations/new`, refresh swagger docs, and the cookie will be added to requests automatically to pass the NextAuthGuard.\nSecond, make sure that the logged in user has organizationId set to pass the OrganizationRolesGuard guard.", - "parameters": [ - { - "name": "clientId", - "required": true, - "in": "path", - "schema": { - "type": "string" - } - }, - { - "name": "limit", - "required": false, - "in": "query", - "description": "The number of items to return", - "example": 10, - "schema": { - "type": "number" - } - } - ], - "responses": { - "200": { - "description": "", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/GetManagedUsersOutput" - } - } - } - } - }, - "tags": ["OAuth - development only"] + "tags": [ + "Me" + ] } }, "/v2/oauth/{clientId}/authorize": { @@ -4112,7 +4141,9 @@ "description": "Bad request if the OAuth client is not found, if the redirect URI is invalid, or if the user has already authorized the client." } }, - "tags": ["OAuth - development only"] + "tags": [ + "OAuth" + ] } }, "/v2/oauth/{clientId}/exchange": { @@ -4163,7 +4194,9 @@ "description": "Bad request if the authorization code is missing, invalid, or if the client ID and secret do not match." } }, - "tags": ["OAuth - development only"] + "tags": [ + "OAuth" + ] } }, "/v2/oauth/{clientId}/refresh": { @@ -4182,6 +4215,7 @@ "name": "x-cal-secret-key", "required": true, "in": "header", + "description": "OAuth client secret key.", "schema": { "type": "string" } @@ -4209,7 +4243,208 @@ } } }, - "tags": ["OAuth - development only"] + "tags": [ + "OAuth", + "Managed users" + ] + } + }, + "/v2/oauth-clients": { + "post": { + "operationId": "OAuthClientsController_createOAuthClient", + "summary": "", + "description": "⚠️ First, this endpoint requires `Cookie: next-auth.session-token=eyJhbGciOiJ` header. Log into Cal web app using owner of organization that was created after visiting `/settings/organizations/new`, refresh swagger docs, and the cookie will be added to requests automatically to pass the NextAuthGuard.\nSecond, make sure that the logged in user has organizationId set to pass the OrganizationRolesGuard guard.", + "parameters": [], + "requestBody": { + "required": true, + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/CreateOAuthClientInput" + } + } + } + }, + "responses": { + "201": { + "description": "Create an OAuth client", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/CreateOAuthClientResponseDto" + } + } + } + } + }, + "tags": [ + "OAuth - development only" + ] + }, + "get": { + "operationId": "OAuthClientsController_getOAuthClients", + "summary": "", + "description": "⚠️ First, this endpoint requires `Cookie: next-auth.session-token=eyJhbGciOiJ` header. Log into Cal web app using owner of organization that was created after visiting `/settings/organizations/new`, refresh swagger docs, and the cookie will be added to requests automatically to pass the NextAuthGuard.\nSecond, make sure that the logged in user has organizationId set to pass the OrganizationRolesGuard guard.", + "parameters": [], + "responses": { + "200": { + "description": "", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/GetOAuthClientsResponseDto" + } + } + } + } + }, + "tags": [ + "OAuth - development only" + ] + } + }, + "/v2/oauth-clients/{clientId}": { + "get": { + "operationId": "OAuthClientsController_getOAuthClientById", + "summary": "", + "description": "⚠️ First, this endpoint requires `Cookie: next-auth.session-token=eyJhbGciOiJ` header. Log into Cal web app using owner of organization that was created after visiting `/settings/organizations/new`, refresh swagger docs, and the cookie will be added to requests automatically to pass the NextAuthGuard.\nSecond, make sure that the logged in user has organizationId set to pass the OrganizationRolesGuard guard.", + "parameters": [ + { + "name": "clientId", + "required": true, + "in": "path", + "schema": { + "type": "string" + } + } + ], + "responses": { + "200": { + "description": "", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/GetOAuthClientResponseDto" + } + } + } + } + }, + "tags": [ + "OAuth - development only" + ] + }, + "patch": { + "operationId": "OAuthClientsController_updateOAuthClient", + "summary": "", + "description": "⚠️ First, this endpoint requires `Cookie: next-auth.session-token=eyJhbGciOiJ` header. Log into Cal web app using owner of organization that was created after visiting `/settings/organizations/new`, refresh swagger docs, and the cookie will be added to requests automatically to pass the NextAuthGuard.\nSecond, make sure that the logged in user has organizationId set to pass the OrganizationRolesGuard guard.", + "parameters": [ + { + "name": "clientId", + "required": true, + "in": "path", + "schema": { + "type": "string" + } + } + ], + "requestBody": { + "required": true, + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/UpdateOAuthClientInput" + } + } + } + }, + "responses": { + "200": { + "description": "", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/GetOAuthClientResponseDto" + } + } + } + } + }, + "tags": [ + "OAuth - development only" + ] + }, + "delete": { + "operationId": "OAuthClientsController_deleteOAuthClient", + "summary": "", + "description": "⚠️ First, this endpoint requires `Cookie: next-auth.session-token=eyJhbGciOiJ` header. Log into Cal web app using owner of organization that was created after visiting `/settings/organizations/new`, refresh swagger docs, and the cookie will be added to requests automatically to pass the NextAuthGuard.\nSecond, make sure that the logged in user has organizationId set to pass the OrganizationRolesGuard guard.", + "parameters": [ + { + "name": "clientId", + "required": true, + "in": "path", + "schema": { + "type": "string" + } + } + ], + "responses": { + "200": { + "description": "", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/GetOAuthClientResponseDto" + } + } + } + } + }, + "tags": [ + "OAuth - development only" + ] + } + }, + "/v2/oauth-clients/{clientId}/managed-users": { + "get": { + "operationId": "OAuthClientsController_getOAuthClientManagedUsersById", + "summary": "", + "description": "⚠️ First, this endpoint requires `Cookie: next-auth.session-token=eyJhbGciOiJ` header. Log into Cal web app using owner of organization that was created after visiting `/settings/organizations/new`, refresh swagger docs, and the cookie will be added to requests automatically to pass the NextAuthGuard.\nSecond, make sure that the logged in user has organizationId set to pass the OrganizationRolesGuard guard.", + "parameters": [ + { + "name": "clientId", + "required": true, + "in": "path", + "schema": { + "type": "string" + } + }, + { + "name": "limit", + "required": false, + "in": "query", + "description": "The number of items to return", + "example": 10, + "schema": { + "type": "number" + } + } + ], + "responses": { + "200": { + "description": "", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/GetManagedUsersOutput" + } + } + } + } + }, + "tags": [ + "OAuth - development only" + ] } }, "/v2/schedules": { @@ -4259,7 +4494,9 @@ } } }, - "tags": ["Schedules"] + "tags": [ + "Schedules" + ] }, "get": { "operationId": "SchedulesController_2024_06_11_getSchedules", @@ -4297,7 +4534,9 @@ } } }, - "tags": ["Schedules"] + "tags": [ + "Schedules" + ] } }, "/v2/schedules/default": { @@ -4337,7 +4576,9 @@ } } }, - "tags": ["Schedules"] + "tags": [ + "Schedules" + ] } }, "/v2/schedules/{scheduleId}": { @@ -4384,7 +4625,9 @@ } } }, - "tags": ["Schedules"] + "tags": [ + "Schedules" + ] }, "patch": { "operationId": "SchedulesController_2024_06_11_updateSchedule", @@ -4439,7 +4682,9 @@ } } }, - "tags": ["Schedules"] + "tags": [ + "Schedules" + ] }, "delete": { "operationId": "SchedulesController_2024_06_11_deleteSchedule", @@ -4484,7 +4729,9 @@ } } }, - "tags": ["Schedules"] + "tags": [ + "Schedules" + ] } }, "/v2/selected-calendars": { @@ -4514,7 +4761,9 @@ } } }, - "tags": ["Selected Calendars"] + "tags": [ + "Selected Calendars" + ] }, "delete": { "operationId": "SelectedCalendarsController_removeSelectedCalendar", @@ -4557,7 +4806,9 @@ } } }, - "tags": ["Selected Calendars"] + "tags": [ + "Selected Calendars" + ] } }, "/v2/slots/reserve": { @@ -4577,57 +4828,209 @@ }, "responses": { "201": { - "description": "", + "description": "Successful response returning uid of reserved slot.", "content": { "application/json": { "schema": { - "type": "object" + "type": "object", + "properties": { + "status": { + "type": "string", + "example": "success" + }, + "data": { + "type": "object", + "properties": { + "uid": { + "type": "string", + "example": "e2a7bcf9-cc7b-40a0-80d3-657d391775a6" + } + } + } + } } } } } }, - "tags": ["Slots"] + "tags": [ + "Slots" + ] } }, "/v2/slots/selected-slot": { "delete": { "operationId": "SlotsController_deleteSelectedSlot", "summary": "Delete a selected slot", - "parameters": [], + "parameters": [ + { + "name": "uid", + "required": true, + "in": "query", + "description": "Unique identifier for the slot to be removed.", + "example": "e2a7bcf9-cc7b-40a0-80d3-657d391775a6", + "schema": { + "type": "string" + } + } + ], "responses": { "200": { - "description": "", + "description": "Response deleting reserved slot by uid.", "content": { "application/json": { "schema": { - "type": "object" + "type": "object", + "properties": { + "status": { + "type": "string", + "example": "success" + } + } } } } } }, - "tags": ["Slots"] + "tags": [ + "Slots" + ] } }, "/v2/slots/available": { "get": { "operationId": "SlotsController_getAvailableSlots", "summary": "Get available slots", - "parameters": [], + "parameters": [ + { + "name": "startTime", + "required": true, + "in": "query", + "description": "Start date string starting from which to fetch slots in UTC timezone.", + "example": "2022-06-14T00:00:00.000Z", + "schema": { + "type": "string" + } + }, + { + "name": "endTime", + "required": true, + "in": "query", + "description": "End date string until which to fetch slots in UTC timezone.", + "example": "2022-06-14T23:59:59.999Z", + "schema": { + "type": "string" + } + }, + { + "name": "eventTypeId", + "required": true, + "in": "query", + "description": "Event Type ID for which slots are being fetched.", + "example": 100, + "schema": { + "type": "number" + } + }, + { + "name": "eventTypeSlug", + "required": true, + "in": "query", + "description": "Slug of the event type for which slots are being fetched.", + "schema": { + "type": "string" + } + }, + { + "name": "usernameList", + "required": true, + "in": "query", + "description": "Only for dynamic events - list of usernames for which slots are being fetched.", + "schema": { + "type": "array", + "items": { + "type": "string" + } + } + }, + { + "name": "duration", + "required": true, + "in": "query", + "description": "Only for dynamic events - length of returned slots.", + "schema": { + "type": "number" + } + } + ], "responses": { "200": { - "description": "", + "description": "Available time slots retrieved successfully", "content": { "application/json": { "schema": { - "type": "object" + "type": "object", + "properties": { + "status": { + "type": "string", + "example": "success" + }, + "data": { + "type": "object", + "properties": { + "slots": { + "type": "object", + "additionalProperties": { + "type": "array", + "items": { + "type": "object", + "properties": { + "time": { + "type": "string", + "format": "date-time", + "example": "2024-09-25T08:00:00.000Z" + } + } + } + } + } + } + } + }, + "example": { + "status": "success", + "data": { + "slots": { + "2024-09-25": [ + { + "time": "2024-09-25T08:00:00.000Z" + }, + { + "time": "2024-09-25T08:15:00.000Z" + } + ], + "2024-09-26": [ + { + "time": "2024-09-26T08:00:00.000Z" + }, + { + "time": "2024-09-26T08:15:00.000Z" + }, + { + "time": "2024-09-26T08:30:00.000Z" + } + ] + } + } + } } } } } }, - "tags": ["Slots"] + "tags": [ + "Slots" + ] } }, "/v2/stripe/connect": { @@ -4656,7 +5059,9 @@ } } }, - "tags": ["Stripe"] + "tags": [ + "Stripe" + ] } }, "/v2/stripe/save": { @@ -4693,7 +5098,9 @@ } } }, - "tags": ["Stripe"] + "tags": [ + "Stripe" + ] } }, "/v2/stripe/check": { @@ -4713,7 +5120,9 @@ } } }, - "tags": ["Stripe"] + "tags": [ + "Stripe" + ] } }, "/v2/timezones": { @@ -4733,7 +5142,9 @@ } } }, - "tags": ["Timezones"] + "tags": [ + "Timezones" + ] } }, "/v2/webhooks": { @@ -4763,7 +5174,9 @@ } } }, - "tags": ["Webhooks"] + "tags": [ + "Webhooks" + ] }, "get": { "operationId": "WebhooksController_getWebhooks", @@ -4802,7 +5215,9 @@ } } }, - "tags": ["Webhooks"] + "tags": [ + "Webhooks" + ] } }, "/v2/webhooks/{webhookId}": { @@ -4841,7 +5256,9 @@ } } }, - "tags": ["Webhooks"] + "tags": [ + "Webhooks" + ] }, "get": { "operationId": "WebhooksController_getWebhook", @@ -4859,7 +5276,9 @@ } } }, - "tags": ["Webhooks"] + "tags": [ + "Webhooks" + ] }, "delete": { "operationId": "WebhooksController_deleteWebhook", @@ -4886,7 +5305,9 @@ } } }, - "tags": ["Webhooks"] + "tags": [ + "Webhooks" + ] } } }, @@ -5010,7 +5431,10 @@ "status": { "type": "string", "example": "success", - "enum": ["success", "error"] + "enum": [ + "success", + "error" + ] }, "data": { "type": "array", @@ -5019,7 +5443,10 @@ } } }, - "required": ["status", "data"] + "required": [ + "status", + "data" + ] }, "CreateManagedUserInput": { "type": "object", @@ -5035,14 +5462,25 @@ }, "timeFormat": { "type": "number", - "enum": [12, 24], + "enum": [ + 12, + 24 + ], "example": 12, "description": "Must be a number 12 or 24" }, "weekStart": { "type": "string", "example": "Monday", - "enum": ["Monday", "Tuesday", "Wednesday", "Thursday", "Friday", "Saturday", "Sunday"] + "enum": [ + "Monday", + "Tuesday", + "Wednesday", + "Thursday", + "Friday", + "Saturday", + "Sunday" + ] }, "timeZone": { "type": "string", @@ -5098,7 +5536,10 @@ "example": "en" } }, - "required": ["email", "name"] + "required": [ + "email", + "name" + ] }, "CreateManagedUserData": { "type": "object", @@ -5116,7 +5557,12 @@ "type": "number" } }, - "required": ["user", "accessToken", "refreshToken", "accessTokenExpiresAt"] + "required": [ + "user", + "accessToken", + "refreshToken", + "accessTokenExpiresAt" + ] }, "CreateManagedUserOutput": { "type": "object", @@ -5124,13 +5570,19 @@ "status": { "type": "string", "example": "success", - "enum": ["success", "error"] + "enum": [ + "success", + "error" + ] }, "data": { "$ref": "#/components/schemas/CreateManagedUserData" } }, - "required": ["status", "data"] + "required": [ + "status", + "data" + ] }, "GetManagedUserOutput": { "type": "object", @@ -5138,26 +5590,43 @@ "status": { "type": "string", "example": "success", - "enum": ["success", "error"] + "enum": [ + "success", + "error" + ] }, "data": { "$ref": "#/components/schemas/ManagedUserOutput" } }, - "required": ["status", "data"] + "required": [ + "status", + "data" + ] }, "UpdateManagedUserInput": { "type": "object", "properties": { "timeFormat": { "type": "number", - "enum": [12, 24], + "enum": [ + 12, + 24 + ], "example": 12, "description": "Must be 12 or 24" }, "weekStart": { "type": "string", - "enum": ["Monday", "Tuesday", "Wednesday", "Thursday", "Friday", "Saturday", "Sunday"], + "enum": [ + "Monday", + "Tuesday", + "Wednesday", + "Thursday", + "Friday", + "Saturday", + "Sunday" + ], "example": "Monday" }, "locale": { @@ -5237,7 +5706,11 @@ "type": "number" } }, - "required": ["accessToken", "refreshToken", "accessTokenExpiresAt"] + "required": [ + "accessToken", + "refreshToken", + "accessTokenExpiresAt" + ] }, "KeysResponseDto": { "type": "object", @@ -5245,13 +5718,19 @@ "status": { "type": "string", "example": "success", - "enum": ["success", "error"] + "enum": [ + "success", + "error" + ] }, "data": { "$ref": "#/components/schemas/KeysDto" } }, - "required": ["status", "data"] + "required": [ + "status", + "data" + ] }, "CreateOAuthClientInput": { "type": "object", @@ -5269,14 +5748,20 @@ "example": "eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJuYW1lIjoib2F1dGgtY2xpZW50Iiwi" } }, - "required": ["clientId", "clientSecret"] + "required": [ + "clientId", + "clientSecret" + ] }, "CreateOAuthClientResponseDto": { "type": "object", "properties": { "status": { "type": "string", - "enum": ["success", "error"], + "enum": [ + "success", + "error" + ], "example": "success" }, "data": { @@ -5291,7 +5776,10 @@ ] } }, - "required": ["status", "data"] + "required": [ + "status", + "data" + ] }, "PlatformOAuthClientDto": { "type": "object", @@ -5318,7 +5806,9 @@ "example": "https://example.com/logo.png" }, "redirectUris": { - "example": ["https://example.com/callback"], + "example": [ + "https://example.com/callback" + ], "type": "array", "items": { "type": "string" @@ -5334,7 +5824,15 @@ "example": "2024-03-23T08:33:21.851Z" } }, - "required": ["id", "name", "secret", "permissions", "redirectUris", "organizationId", "createdAt"] + "required": [ + "id", + "name", + "secret", + "permissions", + "redirectUris", + "organizationId", + "createdAt" + ] }, "GetOAuthClientsResponseDto": { "type": "object", @@ -5342,7 +5840,10 @@ "status": { "type": "string", "example": "success", - "enum": ["success", "error"] + "enum": [ + "success", + "error" + ] }, "data": { "type": "array", @@ -5351,7 +5852,10 @@ } } }, - "required": ["status", "data"] + "required": [ + "status", + "data" + ] }, "GetOAuthClientResponseDto": { "type": "object", @@ -5359,13 +5863,19 @@ "status": { "type": "string", "example": "success", - "enum": ["success", "error"] + "enum": [ + "success", + "error" + ] }, "data": { "$ref": "#/components/schemas/PlatformOAuthClientDto" } }, - "required": ["status", "data"] + "required": [ + "status", + "data" + ] }, "UpdateOAuthClientInput": { "type": "object", @@ -5404,7 +5914,9 @@ "type": "string" } }, - "required": ["redirectUri"] + "required": [ + "redirectUri" + ] }, "ExchangeAuthorizationCodeInput": { "type": "object", @@ -5413,16 +5925,21 @@ "type": "string" } }, - "required": ["clientSecret"] + "required": [ + "clientSecret" + ] }, "RefreshTokenInput": { "type": "object", "properties": { "refreshToken": { - "type": "string" + "type": "string", + "description": "Managed user's refresh token." } }, - "required": ["refreshToken"] + "required": [ + "refreshToken" + ] }, "AddressLocation_2024_06_14": { "type": "object", @@ -5440,7 +5957,11 @@ "type": "boolean" } }, - "required": ["type", "address", "public"] + "required": [ + "type", + "address", + "public" + ] }, "LinkLocation_2024_06_14": { "type": "object", @@ -5458,7 +5979,11 @@ "type": "boolean" } }, - "required": ["type", "link", "public"] + "required": [ + "type", + "link", + "public" + ] }, "IntegrationLocation_2024_06_14": { "type": "object", @@ -5471,10 +5996,15 @@ "integration": { "type": "string", "example": "cal-video", - "enum": ["cal-video"] + "enum": [ + "cal-video" + ] } }, - "required": ["type", "integration"] + "required": [ + "type", + "integration" + ] }, "PhoneLocation_2024_06_14": { "type": "object", @@ -5492,7 +6022,11 @@ "type": "boolean" } }, - "required": ["type", "phone", "public"] + "required": [ + "type", + "phone", + "public" + ] }, "PhoneFieldInput_2024_06_14": { "type": "object", @@ -5517,7 +6051,13 @@ "type": "string" } }, - "required": ["type", "slug", "label", "required", "placeholder"] + "required": [ + "type", + "slug", + "label", + "required", + "placeholder" + ] }, "AddressFieldInput_2024_06_14": { "type": "object", @@ -5544,7 +6084,13 @@ "example": "e.g., 1234 Main St" } }, - "required": ["type", "slug", "label", "required", "placeholder"] + "required": [ + "type", + "slug", + "label", + "required", + "placeholder" + ] }, "TextFieldInput_2024_06_14": { "type": "object", @@ -5571,7 +6117,13 @@ "example": "e.g., Enter text here" } }, - "required": ["type", "slug", "label", "required", "placeholder"] + "required": [ + "type", + "slug", + "label", + "required", + "placeholder" + ] }, "NumberFieldInput_2024_06_14": { "type": "object", @@ -5598,7 +6150,13 @@ "example": "e.g., 100" } }, - "required": ["type", "slug", "label", "required", "placeholder"] + "required": [ + "type", + "slug", + "label", + "required", + "placeholder" + ] }, "TextAreaFieldInput_2024_06_14": { "type": "object", @@ -5625,7 +6183,13 @@ "example": "e.g., Detailed description here..." } }, - "required": ["type", "slug", "label", "required", "placeholder"] + "required": [ + "type", + "slug", + "label", + "required", + "placeholder" + ] }, "SelectFieldInput_2024_06_14": { "type": "object", @@ -5652,14 +6216,24 @@ "example": "Select..." }, "options": { - "example": ["Option 1", "Option 2"], + "example": [ + "Option 1", + "Option 2" + ], "type": "array", "items": { "type": "string" } } }, - "required": ["type", "slug", "label", "required", "placeholder", "options"] + "required": [ + "type", + "slug", + "label", + "required", + "placeholder", + "options" + ] }, "MultiSelectFieldInput_2024_06_14": { "type": "object", @@ -5682,14 +6256,23 @@ "type": "boolean" }, "options": { - "example": ["Option 1", "Option 2"], + "example": [ + "Option 1", + "Option 2" + ], "type": "array", "items": { "type": "string" } } }, - "required": ["type", "slug", "label", "required", "options"] + "required": [ + "type", + "slug", + "label", + "required", + "options" + ] }, "MultiEmailFieldInput_2024_06_14": { "type": "object", @@ -5716,7 +6299,13 @@ "example": "e.g., example@example.com" } }, - "required": ["type", "slug", "label", "required", "placeholder"] + "required": [ + "type", + "slug", + "label", + "required", + "placeholder" + ] }, "CheckboxGroupFieldInput_2024_06_14": { "type": "object", @@ -5739,14 +6328,23 @@ "type": "boolean" }, "options": { - "example": ["Checkbox 1", "Checkbox 2"], + "example": [ + "Checkbox 1", + "Checkbox 2" + ], "type": "array", "items": { "type": "string" } } }, - "required": ["type", "slug", "label", "required", "options"] + "required": [ + "type", + "slug", + "label", + "required", + "options" + ] }, "RadioGroupFieldInput_2024_06_14": { "type": "object", @@ -5769,14 +6367,23 @@ "type": "boolean" }, "options": { - "example": ["Radio 1", "Radio 2"], + "example": [ + "Radio 1", + "Radio 2" + ], "type": "array", "items": { "type": "string" } } }, - "required": ["type", "slug", "label", "required", "options"] + "required": [ + "type", + "slug", + "label", + "required", + "options" + ] }, "BooleanFieldInput_2024_06_14": { "type": "object", @@ -5799,14 +6406,23 @@ "type": "boolean" } }, - "required": ["type", "slug", "label", "required"] + "required": [ + "type", + "slug", + "label", + "required" + ] }, "BusinessDaysWindow_2024_06_14": { "type": "object", "properties": { "type": { "type": "string", - "enum": ["businessDays", "calendarDays", "range"], + "enum": [ + "businessDays", + "calendarDays", + "range" + ], "description": "Whether the window should be business days, calendar days or a range of dates" }, "value": { @@ -5820,14 +6436,21 @@ "description": "If true, the window will be rolling aka from the moment that someone is trying to book this event. Otherwise it will be specified amount of days from the current date." } }, - "required": ["type", "value", "rolling"] + "required": [ + "type", + "value" + ] }, "CalendarDaysWindow_2024_06_14": { "type": "object", "properties": { "type": { "type": "string", - "enum": ["businessDays", "calendarDays", "range"], + "enum": [ + "businessDays", + "calendarDays", + "range" + ], "description": "Whether the window should be business days, calendar days or a range of dates" }, "value": { @@ -5841,18 +6464,28 @@ "description": "If true, the window will be rolling aka from the moment that someone is trying to book this event. Otherwise it will be specified amount of days from the current date." } }, - "required": ["type", "value", "rolling"] + "required": [ + "type", + "value" + ] }, "RangeWindow_2024_06_14": { "type": "object", "properties": { "type": { "type": "string", - "enum": ["businessDays", "calendarDays", "range"], + "enum": [ + "businessDays", + "calendarDays", + "range" + ], "description": "Whether the window should be business days, calendar days or a range of dates" }, "value": { - "example": ["2030-09-05", "2030-09-09"], + "example": [ + "2030-09-05", + "2030-09-09" + ], "description": "Date range for when this event can be booked.", "type": "array", "items": { @@ -5860,7 +6493,231 @@ } } }, - "required": ["type", "value"] + "required": [ + "type", + "value" + ] + }, + "BaseBookingLimitsCount_2024_06_14": { + "type": "object", + "properties": { + "day": { + "type": "number", + "description": "The number of bookings per day", + "example": 1 + }, + "week": { + "type": "number", + "description": "The number of bookings per week", + "example": 2 + }, + "month": { + "type": "number", + "description": "The number of bookings per month", + "example": 3 + }, + "year": { + "type": "number", + "description": "The number of bookings per year", + "example": 4 + } + } + }, + "Disabled_2024_06_14": { + "type": "object", + "properties": { + "disabled": { + "type": "boolean", + "description": "Indicates if the option is disabled", + "example": true, + "default": false + } + }, + "required": [ + "disabled" + ] + }, + "BaseBookingLimitsDuration_2024_06_14": { + "type": "object", + "properties": { + "day": { + "type": "number", + "description": "The duration of bookings per day (must be a multiple of 15)", + "example": 60 + }, + "week": { + "type": "number", + "description": "The duration of bookings per week (must be a multiple of 15)", + "example": 120 + }, + "month": { + "type": "number", + "description": "The duration of bookings per month (must be a multiple of 15)", + "example": 180 + }, + "year": { + "type": "number", + "description": "The duration of bookings per year (must be a multiple of 15)", + "example": 240 + } + } + }, + "Recurrence_2024_06_14": { + "type": "object", + "properties": { + "interval": { + "type": "number", + "example": 10, + "description": "Repeats every {count} week | month | year" + }, + "occurrences": { + "type": "number", + "example": 10, + "description": "Repeats for a maximum of {count} events" + }, + "frequency": { + "type": "string", + "enum": [ + "yearly", + "monthly", + "weekly" + ] + } + }, + "required": [ + "interval", + "occurrences", + "frequency" + ] + }, + "NoticeThreshold_2024_06_14": { + "type": "object", + "properties": { + "unit": { + "type": "string", + "description": "The unit of time for the notice threshold (e.g., minutes, hours)", + "example": "minutes" + }, + "count": { + "type": "number", + "description": "The time value for the notice threshold", + "example": 30 + } + }, + "required": [ + "unit", + "count" + ] + }, + "BaseConfirmationPolicy_2024_06_14": { + "type": "object", + "properties": { + "type": { + "type": "string", + "description": "The policy that determines when confirmation is required", + "example": "always" + }, + "noticeThreshold": { + "description": "The notice threshold required before confirmation is needed. Required when type is 'time'.", + "allOf": [ + { + "$ref": "#/components/schemas/NoticeThreshold_2024_06_14" + } + ] + } + }, + "required": [ + "type" + ] + }, + "Seats_2024_06_14": { + "type": "object", + "properties": { + "seatsPerTimeSlot": { + "type": "number", + "description": "Number of seats available per time slot", + "example": 4 + }, + "showAttendeeInfo": { + "type": "boolean", + "description": "Show attendee information to other guests", + "example": true + }, + "showAvailabilityCount": { + "type": "boolean", + "description": "Display the count of available seats", + "example": true + } + }, + "required": [ + "seatsPerTimeSlot", + "showAttendeeInfo", + "showAvailabilityCount" + ] + }, + "BookerLayouts_2024_06_14": { + "type": "object", + "properties": { + "defaultLayout": { + "type": "string", + "enum": [ + "month", + "week", + "column" + ] + }, + "enabledLayouts": { + "type": "array", + "items": { + "type": "string", + "enum": [ + "month", + "week", + "column" + ] + } + } + }, + "required": [ + "defaultLayout", + "enabledLayouts" + ] + }, + "EventTypeColor_2024_06_14": { + "type": "object", + "properties": { + "lightThemeHex": { + "type": "string", + "description": "Color used for event types in light theme", + "example": "#292929" + }, + "darkThemeHex": { + "type": "string", + "description": "Color used for event types in dark theme", + "example": "#fafafa" + } + }, + "required": [ + "lightThemeHex", + "darkThemeHex" + ] + }, + "DestinationCalendar_2024_06_14": { + "type": "object", + "properties": { + "integration": { + "type": "string", + "description": "The integration type of the destination calendar. Refer to the /api/v2/calendars endpoint to retrieve the integration type of your connected calendars." + }, + "externalId": { + "type": "string", + "description": "The external ID of the destination calendar. Refer to the /api/v2/calendars endpoint to retrieve the external IDs of your connected calendars." + } + }, + "required": [ + "integration", + "externalId" + ] }, "CreateEventTypeInput_2024_06_14": { "type": "object", @@ -5967,63 +6824,124 @@ "description": "If you want that this event has different schedule than user's default one you can specify it here." }, "bookingLimitsCount": { - "type": "object", - "description": "Limit how many times this event can be booked" + "description": "Limit how many times this event can be booked", + "oneOf": [ + { + "$ref": "#/components/schemas/BaseBookingLimitsCount_2024_06_14" + }, + { + "$ref": "#/components/schemas/Disabled_2024_06_14" + } + ] }, "onlyShowFirstAvailableSlot": { "type": "boolean", "description": "This will limit your availability for this event type to one slot per day, scheduled at the earliest available time." }, "bookingLimitsDuration": { - "type": "object", - "description": "Limit total amount of time that this event can be booked" + "description": "Limit total amount of time that this event can be booked", + "oneOf": [ + { + "$ref": "#/components/schemas/BaseBookingLimitsDuration_2024_06_14" + }, + { + "$ref": "#/components/schemas/Disabled_2024_06_14" + } + ] }, "bookingWindow": { - "type": "array", "description": "Limit how far in the future this event can be booked", - "items": { - "oneOf": [ - { - "$ref": "#/components/schemas/BusinessDaysWindow_2024_06_14" - }, - { - "$ref": "#/components/schemas/CalendarDaysWindow_2024_06_14" - }, - { - "$ref": "#/components/schemas/RangeWindow_2024_06_14" - } - ] - } + "oneOf": [ + { + "$ref": "#/components/schemas/BusinessDaysWindow_2024_06_14" + }, + { + "$ref": "#/components/schemas/CalendarDaysWindow_2024_06_14" + }, + { + "$ref": "#/components/schemas/RangeWindow_2024_06_14" + }, + { + "$ref": "#/components/schemas/Disabled_2024_06_14" + } + ] }, "offsetStart": { "type": "number", "description": "Offset timeslots shown to bookers by a specified number of minutes" }, + "bookerLayouts": { + "description": "Should booker have week, month or column view. Specify default layout and enabled layouts user can pick.", + "allOf": [ + { + "$ref": "#/components/schemas/BookerLayouts_2024_06_14" + } + ] + }, + "confirmationPolicy": { + "description": "Specify how the booking needs to be manually confirmed before it is pushed to the integrations and a confirmation mail is sent.", + "oneOf": [ + { + "$ref": "#/components/schemas/BaseConfirmationPolicy_2024_06_14" + }, + { + "$ref": "#/components/schemas/Disabled_2024_06_14" + } + ] + }, + "recurrence": { + "description": "Create a recurring event type.", + "oneOf": [ + { + "$ref": "#/components/schemas/Recurrence_2024_06_14" + }, + { + "$ref": "#/components/schemas/Disabled_2024_06_14" + } + ] + }, + "requiresBookerEmailVerification": { + "type": "boolean" + }, + "hideCalendarNotes": { + "type": "boolean" + }, + "lockTimeZoneToggleOnBookingPage": { + "type": "boolean" + }, + "color": { + "$ref": "#/components/schemas/EventTypeColor_2024_06_14" + }, + "seats": { + "description": "Create an event type with multiple seats.", + "oneOf": [ + { + "$ref": "#/components/schemas/Seats_2024_06_14" + }, + { + "$ref": "#/components/schemas/Disabled_2024_06_14" + } + ] + }, "customName": { "type": "string", "description": "Customizable event name with valid variables: \n {Event type title}, {Organiser}, {Scheduler}, {Location}, {Organiser first name}, \n {Scheduler first name}, {Scheduler last name}, {Event duration}, {LOCATION}, \n {HOST/ATTENDEE}, {HOST}, {ATTENDEE}, {USER}", "example": "{Event type title} between {Organiser} and {Scheduler}" + }, + "destinationCalendar": { + "$ref": "#/components/schemas/DestinationCalendar_2024_06_14" + }, + "useDestinationCalendarEmail": { + "type": "boolean" + }, + "hideCalendarEventDetails": { + "type": "boolean" } }, "required": [ "lengthInMinutes", "title", - "slug", - "description", - "locations", - "bookingFields", - "disableGuests", - "slotInterval", - "minimumBookingNotice", - "beforeEventBuffer", - "afterEventBuffer", - "scheduleId", - "bookingLimitsCount", - "onlyShowFirstAvailableSlot", - "bookingLimitsDuration", - "bookingWindow", - "offsetStart", - "customName" + "slug" ] }, "EmailDefaultFieldOutput_2024_06_14": { @@ -6047,7 +6965,12 @@ "type": "boolean" } }, - "required": ["isDefault", "slug", "type", "required"] + "required": [ + "isDefault", + "slug", + "type", + "required" + ] }, "NameDefaultFieldOutput_2024_06_14": { "type": "object", @@ -6070,7 +6993,12 @@ "type": "boolean" } }, - "required": ["isDefault", "slug", "type", "required"] + "required": [ + "isDefault", + "slug", + "type", + "required" + ] }, "LocationDefaultFieldOutput_2024_06_14": { "type": "object", @@ -6093,7 +7021,12 @@ "type": "boolean" } }, - "required": ["isDefault", "slug", "type", "required"] + "required": [ + "isDefault", + "slug", + "type", + "required" + ] }, "RescheduleReasonDefaultFieldOutput_2024_06_14": { "type": "object", @@ -6116,7 +7049,12 @@ "type": "boolean" } }, - "required": ["isDefault", "slug", "type", "required"] + "required": [ + "isDefault", + "slug", + "type", + "required" + ] }, "TitleDefaultFieldOutput_2024_06_14": { "type": "object", @@ -6139,7 +7077,12 @@ "type": "boolean" } }, - "required": ["isDefault", "slug", "type", "required"] + "required": [ + "isDefault", + "slug", + "type", + "required" + ] }, "NotesDefaultFieldOutput_2024_06_14": { "type": "object", @@ -6162,7 +7105,12 @@ "type": "boolean" } }, - "required": ["isDefault", "slug", "type", "required"] + "required": [ + "isDefault", + "slug", + "type", + "required" + ] }, "GuestsDefaultFieldOutput_2024_06_14": { "type": "object", @@ -6185,7 +7133,12 @@ "type": "boolean" } }, - "required": ["isDefault", "slug", "type", "required"] + "required": [ + "isDefault", + "slug", + "type", + "required" + ] }, "AddressFieldOutput_2024_06_14": { "type": "object", @@ -6231,7 +7184,13 @@ "example": false } }, - "required": ["type", "slug", "label", "required", "isDefault"] + "required": [ + "type", + "slug", + "label", + "required", + "isDefault" + ] }, "BooleanFieldOutput_2024_06_14": { "type": "object", @@ -6273,7 +7232,13 @@ "example": false } }, - "required": ["type", "slug", "label", "required", "isDefault"] + "required": [ + "type", + "slug", + "label", + "required", + "isDefault" + ] }, "CheckboxGroupFieldOutput_2024_06_14": { "type": "object", @@ -6309,7 +7274,10 @@ "type": "boolean" }, "options": { - "example": ["Checkbox 1", "Checkbox 2"], + "example": [ + "Checkbox 1", + "Checkbox 2" + ], "type": "array", "items": { "type": "string" @@ -6322,7 +7290,14 @@ "example": false } }, - "required": ["type", "slug", "label", "required", "options", "isDefault"] + "required": [ + "type", + "slug", + "label", + "required", + "options", + "isDefault" + ] }, "MultiEmailFieldOutput_2024_06_14": { "type": "object", @@ -6368,7 +7343,13 @@ "example": false } }, - "required": ["type", "slug", "label", "required", "isDefault"] + "required": [ + "type", + "slug", + "label", + "required", + "isDefault" + ] }, "MultiSelectFieldOutput_2024_06_14": { "type": "object", @@ -6404,7 +7385,10 @@ "type": "boolean" }, "options": { - "example": ["Option 1", "Option 2"], + "example": [ + "Option 1", + "Option 2" + ], "type": "array", "items": { "type": "string" @@ -6417,7 +7401,14 @@ "example": false } }, - "required": ["type", "slug", "label", "required", "options", "isDefault"] + "required": [ + "type", + "slug", + "label", + "required", + "options", + "isDefault" + ] }, "NumberFieldOutput_2024_06_14": { "type": "object", @@ -6463,7 +7454,13 @@ "example": false } }, - "required": ["type", "slug", "label", "required", "isDefault"] + "required": [ + "type", + "slug", + "label", + "required", + "isDefault" + ] }, "PhoneFieldOutput_2024_06_14": { "type": "object", @@ -6507,7 +7504,13 @@ "example": false } }, - "required": ["type", "slug", "label", "required", "isDefault"] + "required": [ + "type", + "slug", + "label", + "required", + "isDefault" + ] }, "RadioGroupFieldOutput_2024_06_14": { "type": "object", @@ -6543,7 +7546,10 @@ "type": "boolean" }, "options": { - "example": ["Radio 1", "Radio 2"], + "example": [ + "Radio 1", + "Radio 2" + ], "type": "array", "items": { "type": "string" @@ -6556,7 +7562,14 @@ "example": false } }, - "required": ["type", "slug", "label", "required", "options", "isDefault"] + "required": [ + "type", + "slug", + "label", + "required", + "options", + "isDefault" + ] }, "SelectFieldOutput_2024_06_14": { "type": "object", @@ -6596,7 +7609,10 @@ "example": "Select..." }, "options": { - "example": ["Option 1", "Option 2"], + "example": [ + "Option 1", + "Option 2" + ], "type": "array", "items": { "type": "string" @@ -6609,7 +7625,14 @@ "example": false } }, - "required": ["type", "slug", "label", "required", "options", "isDefault"] + "required": [ + "type", + "slug", + "label", + "required", + "options", + "isDefault" + ] }, "TextAreaFieldOutput_2024_06_14": { "type": "object", @@ -6655,7 +7678,13 @@ "example": false } }, - "required": ["type", "slug", "label", "required", "isDefault"] + "required": [ + "type", + "slug", + "label", + "required", + "isDefault" + ] }, "TextFieldOutput_2024_06_14": { "type": "object", @@ -6701,95 +7730,13 @@ "example": false } }, - "required": ["type", "slug", "label", "required", "isDefault"] - }, - "BaseBookingLimitsDuration_2024_06_14": { - "type": "object", - "properties": { - "day": { - "type": "number", - "minimum": 15, - "description": "The duration of bookings per day (must be a multiple of 15)", - "example": 60 - }, - "week": { - "type": "number", - "minimum": 15, - "description": "The duration of bookings per week (must be a multiple of 15)", - "example": 120 - }, - "month": { - "type": "number", - "minimum": 15, - "description": "The duration of bookings per month (must be a multiple of 15)", - "example": 180 - }, - "year": { - "type": "number", - "minimum": 15, - "description": "The duration of bookings per year (must be a multiple of 15)", - "example": 240 - }, - "disabled": { - "type": "boolean", - "default": false - } - } - }, - "BookerLayouts_2024_06_14": { - "type": "object", - "properties": {} - }, - "EventTypeColor_2024_06_14": { - "type": "object", - "properties": { - "lightThemeHex": { - "type": "string", - "description": "Color used for event types in light theme", - "example": "#292929" - }, - "darkThemeHex": { - "type": "string", - "description": "Color used for event types in dark theme", - "example": "#fafafa" - } - }, - "required": ["lightThemeHex", "darkThemeHex"] - }, - "Seats_2024_06_14": { - "type": "object", - "properties": { - "seatsPerTimeSlot": { - "type": "number", - "description": "Number of seats available per time slot", - "example": 4 - }, - "showAttendeeInfo": { - "type": "boolean", - "description": "Show attendee information to other guests", - "example": true - }, - "showAvailabilityCount": { - "type": "boolean", - "description": "Display the count of available seats", - "example": true - } - }, - "required": ["seatsPerTimeSlot", "showAttendeeInfo", "showAvailabilityCount"] - }, - "DestinationCalendar_2024_06_14": { - "type": "object", - "properties": { - "integration": { - "type": "string", - "description": "The integration type of the destination calendar. Refer to the /api/v2/calendars endpoint to retrieve the integration type of your connected calendars." - }, - "externalId": { - "type": "string", - "description": "The external ID of the destination calendar. Refer to the /api/v2/calendars endpoint to retrieve the external IDs of your connected calendars." - } - }, - "required": ["integration", "externalId"] + "required": [ + "type", + "slug", + "label", + "required", + "isDefault" + ] }, "EventTypeOutput_2024_06_14": { "type": "object", @@ -7002,6 +7949,9 @@ "useDestinationCalendarEmail": { "type": "boolean" }, + "hideCalendarEventDetails": { + "type": "boolean" + }, "ownerId": { "type": "number", "example": 10 @@ -7051,6 +8001,7 @@ "customName", "destinationCalendar", "useDestinationCalendarEmail", + "hideCalendarEventDetails", "ownerId", "users" ] @@ -7060,21 +8011,30 @@ "properties": { "status": { "type": "string", - "enum": ["success", "error"], + "enum": [ + "success", + "error" + ], "example": "success" }, "data": { "$ref": "#/components/schemas/EventTypeOutput_2024_06_14" } }, - "required": ["status", "data"] + "required": [ + "status", + "data" + ] }, "GetEventTypeOutput_2024_06_14": { "type": "object", "properties": { "status": { "type": "string", - "enum": ["success", "error"], + "enum": [ + "success", + "error" + ], "example": "success" }, "data": { @@ -7086,14 +8046,20 @@ ] } }, - "required": ["status", "data"] + "required": [ + "status", + "data" + ] }, "GetEventTypesOutput_2024_06_14": { "type": "object", "properties": { "status": { "type": "string", - "enum": ["success", "error"], + "enum": [ + "success", + "error" + ], "example": "success" }, "data": { @@ -7103,7 +8069,10 @@ } } }, - "required": ["status", "data"] + "required": [ + "status", + "data" + ] }, "UpdateEventTypeInput_2024_06_14": { "type": "object", @@ -7210,78 +8179,140 @@ "description": "If you want that this event has different schedule than user's default one you can specify it here." }, "bookingLimitsCount": { - "type": "object", - "description": "Limit how many times this event can be booked" + "description": "Limit how many times this event can be booked", + "oneOf": [ + { + "$ref": "#/components/schemas/BaseBookingLimitsCount_2024_06_14" + }, + { + "$ref": "#/components/schemas/Disabled_2024_06_14" + } + ] }, "onlyShowFirstAvailableSlot": { "type": "boolean", "description": "This will limit your availability for this event type to one slot per day, scheduled at the earliest available time." }, "bookingLimitsDuration": { - "type": "object", - "description": "Limit total amount of time that this event can be booked" + "description": "Limit total amount of time that this event can be booked", + "oneOf": [ + { + "$ref": "#/components/schemas/BaseBookingLimitsDuration_2024_06_14" + }, + { + "$ref": "#/components/schemas/Disabled_2024_06_14" + } + ] }, "bookingWindow": { - "type": "array", "description": "Limit how far in the future this event can be booked", - "items": { - "oneOf": [ - { - "$ref": "#/components/schemas/BusinessDaysWindow_2024_06_14" - }, - { - "$ref": "#/components/schemas/CalendarDaysWindow_2024_06_14" - }, - { - "$ref": "#/components/schemas/RangeWindow_2024_06_14" - } - ] - } + "oneOf": [ + { + "$ref": "#/components/schemas/BusinessDaysWindow_2024_06_14" + }, + { + "$ref": "#/components/schemas/CalendarDaysWindow_2024_06_14" + }, + { + "$ref": "#/components/schemas/RangeWindow_2024_06_14" + }, + { + "$ref": "#/components/schemas/Disabled_2024_06_14" + } + ] }, "offsetStart": { "type": "number", "description": "Offset timeslots shown to bookers by a specified number of minutes" }, + "bookerLayouts": { + "description": "Should booker have week, month or column view. Specify default layout and enabled layouts user can pick.", + "allOf": [ + { + "$ref": "#/components/schemas/BookerLayouts_2024_06_14" + } + ] + }, + "confirmationPolicy": { + "description": "Specify how the booking needs to be manually confirmed before it is pushed to the integrations and a confirmation mail is sent.", + "oneOf": [ + { + "$ref": "#/components/schemas/BaseConfirmationPolicy_2024_06_14" + }, + { + "$ref": "#/components/schemas/Disabled_2024_06_14" + } + ] + }, + "recurrence": { + "description": "Create a recurring event type.", + "oneOf": [ + { + "$ref": "#/components/schemas/Recurrence_2024_06_14" + }, + { + "$ref": "#/components/schemas/Disabled_2024_06_14" + } + ] + }, + "requiresBookerEmailVerification": { + "type": "boolean" + }, + "hideCalendarNotes": { + "type": "boolean" + }, + "lockTimeZoneToggleOnBookingPage": { + "type": "boolean" + }, + "color": { + "$ref": "#/components/schemas/EventTypeColor_2024_06_14" + }, + "seats": { + "description": "Create an event type with multiple seats.", + "oneOf": [ + { + "$ref": "#/components/schemas/Seats_2024_06_14" + }, + { + "$ref": "#/components/schemas/Disabled_2024_06_14" + } + ] + }, "customName": { "type": "string", "description": "Customizable event name with valid variables: \n {Event type title}, {Organiser}, {Scheduler}, {Location}, {Organiser first name}, \n {Scheduler first name}, {Scheduler last name}, {Event duration}, {LOCATION}, \n {HOST/ATTENDEE}, {HOST}, {ATTENDEE}, {USER}", "example": "{Event type title} between {Organiser} and {Scheduler}" + }, + "destinationCalendar": { + "$ref": "#/components/schemas/DestinationCalendar_2024_06_14" + }, + "useDestinationCalendarEmail": { + "type": "boolean" + }, + "hideCalendarEventDetails": { + "type": "boolean" } - }, - "required": [ - "lengthInMinutes", - "title", - "slug", - "description", - "locations", - "bookingFields", - "disableGuests", - "slotInterval", - "minimumBookingNotice", - "beforeEventBuffer", - "afterEventBuffer", - "scheduleId", - "bookingLimitsCount", - "onlyShowFirstAvailableSlot", - "bookingLimitsDuration", - "bookingWindow", - "offsetStart", - "customName" - ] + } }, "UpdateEventTypeOutput_2024_06_14": { "type": "object", "properties": { "status": { "type": "string", - "enum": ["success", "error"], + "enum": [ + "success", + "error" + ], "example": "success" }, "data": { "$ref": "#/components/schemas/EventTypeOutput_2024_06_14" } }, - "required": ["status", "data"] + "required": [ + "status", + "data" + ] }, "DeleteData_2024_06_14": { "type": "object", @@ -7302,21 +8333,32 @@ "type": "string" } }, - "required": ["id", "lengthInMinutes", "title", "slug"] + "required": [ + "id", + "lengthInMinutes", + "title", + "slug" + ] }, "DeleteEventTypeOutput_2024_06_14": { "type": "object", "properties": { "status": { "type": "string", - "enum": ["success", "error"], + "enum": [ + "success", + "error" + ], "example": "success" }, "data": { "$ref": "#/components/schemas/DeleteData_2024_06_14" } }, - "required": ["status", "data"] + "required": [ + "status", + "data" + ] }, "SelectedCalendarsInputDto": { "type": "object", @@ -7331,7 +8373,11 @@ "type": "number" } }, - "required": ["integration", "externalId", "credentialId"] + "required": [ + "integration", + "externalId", + "credentialId" + ] }, "SelectedCalendarOutputDto": { "type": "object", @@ -7350,7 +8396,12 @@ "nullable": true } }, - "required": ["userId", "integration", "externalId", "credentialId"] + "required": [ + "userId", + "integration", + "externalId", + "credentialId" + ] }, "SelectedCalendarOutputResponseDto": { "type": "object", @@ -7358,13 +8409,19 @@ "status": { "type": "string", "example": "success", - "enum": ["success", "error"] + "enum": [ + "success", + "error" + ] }, "data": { "$ref": "#/components/schemas/SelectedCalendarOutputDto" } }, - "required": ["status", "data"] + "required": [ + "status", + "data" + ] }, "OrgTeamOutputDto": { "type": "object", @@ -7437,7 +8494,10 @@ "default": "Sunday" } }, - "required": ["id", "name"] + "required": [ + "id", + "name" + ] }, "OrgTeamsOutputResponseDto": { "type": "object", @@ -7445,7 +8505,10 @@ "status": { "type": "string", "example": "success", - "enum": ["success", "error"] + "enum": [ + "success", + "error" + ] }, "data": { "type": "array", @@ -7454,7 +8517,10 @@ } } }, - "required": ["status", "data"] + "required": [ + "status", + "data" + ] }, "OrgMeTeamsOutputResponseDto": { "type": "object", @@ -7462,7 +8528,10 @@ "status": { "type": "string", "example": "success", - "enum": ["success", "error"] + "enum": [ + "success", + "error" + ] }, "data": { "type": "array", @@ -7471,7 +8540,10 @@ } } }, - "required": ["status", "data"] + "required": [ + "status", + "data" + ] }, "OrgTeamOutputResponseDto": { "type": "object", @@ -7479,13 +8551,19 @@ "status": { "type": "string", "example": "success", - "enum": ["success", "error"] + "enum": [ + "success", + "error" + ] }, "data": { "$ref": "#/components/schemas/OrgTeamOutputDto" } }, - "required": ["status", "data"] + "required": [ + "status", + "data" + ] }, "UpdateOrgTeamDto": { "type": "object", @@ -7619,15 +8697,28 @@ "default": true } }, - "required": ["name"] + "required": [ + "name" + ] }, "ScheduleAvailabilityInput_2024_06_11": { "type": "object", "properties": { "days": { "type": "string", - "enum": ["Monday", "Tuesday", "Wednesday", "Thursday", "Friday", "Saturday", "Sunday"], - "example": ["Monday", "Tuesday"], + "enum": [ + "Monday", + "Tuesday", + "Wednesday", + "Thursday", + "Friday", + "Saturday", + "Sunday" + ], + "example": [ + "Monday", + "Tuesday" + ], "description": "Array of days when schedule is active." }, "startTime": { @@ -7643,7 +8734,11 @@ "description": "endTime must be a valid time in format HH:MM e.g. 15:00" } }, - "required": ["days", "startTime", "endTime"] + "required": [ + "days", + "startTime", + "endTime" + ] }, "ScheduleOverrideInput_2024_06_11": { "type": "object", @@ -7665,7 +8760,11 @@ "description": "endTime must be a valid time in format HH:MM e.g. 13:00" } }, - "required": ["date", "startTime", "endTime"] + "required": [ + "date", + "startTime", + "endTime" + ] }, "ScheduleOutput_2024_06_11": { "type": "object", @@ -7689,12 +8788,18 @@ "availability": { "example": [ { - "days": ["Monday", "Tuesday"], + "days": [ + "Monday", + "Tuesday" + ], "startTime": "17:00", "endTime": "19:00" }, { - "days": ["Wednesday", "Thursday"], + "days": [ + "Wednesday", + "Thursday" + ], "startTime": "16:00", "endTime": "20:00" } @@ -7722,7 +8827,15 @@ } } }, - "required": ["id", "ownerId", "name", "timeZone", "availability", "isDefault", "overrides"] + "required": [ + "id", + "ownerId", + "name", + "timeZone", + "availability", + "isDefault", + "overrides" + ] }, "GetSchedulesOutput_2024_06_11": { "type": "object", @@ -7730,7 +8843,10 @@ "status": { "type": "string", "example": "success", - "enum": ["success", "error"] + "enum": [ + "success", + "error" + ] }, "data": { "type": "array", @@ -7742,7 +8858,10 @@ "type": "object" } }, - "required": ["status", "data"] + "required": [ + "status", + "data" + ] }, "CreateScheduleInput_2024_06_11": { "type": "object", @@ -7760,12 +8879,18 @@ "description": "Each object contains days and times when the user is available. If not passed, the default availability is Monday to Friday from 09:00 to 17:00.", "example": [ { - "days": ["Monday", "Tuesday"], + "days": [ + "Monday", + "Tuesday" + ], "startTime": "17:00", "endTime": "19:00" }, { - "days": ["Wednesday", "Thursday"], + "days": [ + "Wednesday", + "Thursday" + ], "startTime": "16:00", "endTime": "20:00" } @@ -7795,7 +8920,11 @@ } } }, - "required": ["name", "timeZone", "isDefault"] + "required": [ + "name", + "timeZone", + "isDefault" + ] }, "CreateScheduleOutput_2024_06_11": { "type": "object", @@ -7803,13 +8932,19 @@ "status": { "type": "string", "example": "success", - "enum": ["success", "error"] + "enum": [ + "success", + "error" + ] }, "data": { "$ref": "#/components/schemas/ScheduleOutput_2024_06_11" } }, - "required": ["status", "data"] + "required": [ + "status", + "data" + ] }, "GetScheduleOutput_2024_06_11": { "type": "object", @@ -7817,7 +8952,10 @@ "status": { "type": "string", "example": "success", - "enum": ["success", "error"] + "enum": [ + "success", + "error" + ] }, "data": { "nullable": true, @@ -7831,7 +8969,10 @@ "type": "object" } }, - "required": ["status", "data"] + "required": [ + "status", + "data" + ] }, "UpdateScheduleInput_2024_06_11": { "type": "object", @@ -7847,7 +8988,10 @@ "availability": { "example": [ { - "days": ["Monday", "Tuesday"], + "days": [ + "Monday", + "Tuesday" + ], "startTime": "09:00", "endTime": "10:00" } @@ -7882,7 +9026,10 @@ "status": { "type": "string", "example": "success", - "enum": ["success", "error"] + "enum": [ + "success", + "error" + ] }, "data": { "$ref": "#/components/schemas/ScheduleOutput_2024_06_11" @@ -7891,7 +9038,10 @@ "type": "object" } }, - "required": ["status", "data"] + "required": [ + "status", + "data" + ] }, "DeleteScheduleOutput_2024_06_11": { "type": "object", @@ -7899,10 +9049,15 @@ "status": { "type": "string", "example": "success", - "enum": ["success", "error"] + "enum": [ + "success", + "error" + ] } }, - "required": ["status"] + "required": [ + "status" + ] }, "GetUserOutput": { "type": "object", @@ -8030,7 +9185,14 @@ "example": 1 } }, - "required": ["id", "email", "timeZone", "weekStart", "hideBranding", "createdDate"] + "required": [ + "id", + "email", + "timeZone", + "weekStart", + "hideBranding", + "createdDate" + ] }, "GetOrganizationUsersOutput": { "type": "object", @@ -8038,7 +9200,10 @@ "status": { "type": "string", "example": "success", - "enum": ["success", "error"] + "enum": [ + "success", + "error" + ] }, "data": { "type": "array", @@ -8047,7 +9212,10 @@ } } }, - "required": ["status", "data"] + "required": [ + "status", + "data" + ] }, "CreateOrganizationUserInput": { "type": "object", @@ -8131,7 +9299,11 @@ "default": true } }, - "required": ["email", "organizationRole", "autoAccept"] + "required": [ + "email", + "organizationRole", + "autoAccept" + ] }, "GetOrganizationUserOutput": { "type": "object", @@ -8139,13 +9311,19 @@ "status": { "type": "string", "example": "success", - "enum": ["success", "error"] + "enum": [ + "success", + "error" + ] }, "data": { "$ref": "#/components/schemas/GetUserOutput" } }, - "required": ["status", "data"] + "required": [ + "status", + "data" + ] }, "UpdateOrganizationUserInput": { "type": "object", @@ -8156,7 +9334,11 @@ "properties": { "role": { "type": "string", - "enum": ["MEMBER", "OWNER", "ADMIN"] + "enum": [ + "MEMBER", + "OWNER", + "ADMIN" + ] }, "id": { "type": "number" @@ -8174,7 +9356,13 @@ "type": "boolean" } }, - "required": ["role", "id", "userId", "teamId", "accepted"] + "required": [ + "role", + "id", + "userId", + "teamId", + "accepted" + ] }, "GetAllOrgMemberships": { "type": "object", @@ -8182,13 +9370,19 @@ "status": { "type": "string", "example": "success", - "enum": ["success", "error"] + "enum": [ + "success", + "error" + ] }, "data": { "$ref": "#/components/schemas/OrgMembershipOutputDto" } }, - "required": ["status", "data"] + "required": [ + "status", + "data" + ] }, "CreateOrgMembershipDto": { "type": "object", @@ -8196,7 +9390,11 @@ "role": { "type": "string", "default": "MEMBER", - "enum": ["MEMBER", "OWNER", "ADMIN"] + "enum": [ + "MEMBER", + "OWNER", + "ADMIN" + ] }, "userId": { "type": "number" @@ -8210,7 +9408,10 @@ "default": false } }, - "required": ["role", "userId"] + "required": [ + "role", + "userId" + ] }, "CreateOrgMembershipOutput": { "type": "object", @@ -8218,13 +9419,19 @@ "status": { "type": "string", "example": "success", - "enum": ["success", "error"] + "enum": [ + "success", + "error" + ] }, "data": { "$ref": "#/components/schemas/OrgMembershipOutputDto" } }, - "required": ["status", "data"] + "required": [ + "status", + "data" + ] }, "GetOrgMembership": { "type": "object", @@ -8232,13 +9439,19 @@ "status": { "type": "string", "example": "success", - "enum": ["success", "error"] + "enum": [ + "success", + "error" + ] }, "data": { "$ref": "#/components/schemas/OrgMembershipOutputDto" } }, - "required": ["status", "data"] + "required": [ + "status", + "data" + ] }, "DeleteOrgMembership": { "type": "object", @@ -8246,13 +9459,19 @@ "status": { "type": "string", "example": "success", - "enum": ["success", "error"] + "enum": [ + "success", + "error" + ] }, "data": { "$ref": "#/components/schemas/OrgMembershipOutputDto" } }, - "required": ["status", "data"] + "required": [ + "status", + "data" + ] }, "UpdateOrgMembershipDto": { "type": "object", @@ -8260,7 +9479,11 @@ "role": { "type": "string", "default": "MEMBER", - "enum": ["MEMBER", "OWNER", "ADMIN"] + "enum": [ + "MEMBER", + "OWNER", + "ADMIN" + ] }, "accepted": { "type": "boolean", @@ -8278,13 +9501,45 @@ "status": { "type": "string", "example": "success", - "enum": ["success", "error"] + "enum": [ + "success", + "error" + ] }, "data": { "$ref": "#/components/schemas/OrgMembershipOutputDto" } }, - "required": ["status", "data"] + "required": [ + "status", + "data" + ] + }, + "Host": { + "type": "object", + "properties": { + "userId": { + "type": "number", + "description": "Which user is the host of this event" + }, + "mandatory": { + "type": "boolean", + "description": "Only relevant for round robin event types. If true then the user must attend round robin event always." + }, + "priority": { + "type": "string", + "enum": [ + "lowest", + "low", + "medium", + "high", + "highest" + ] + } + }, + "required": [ + "userId" + ] }, "CreateTeamEventTypeInput_2024_06_14": { "type": "object", @@ -8391,50 +9646,126 @@ "description": "If you want that this event has different schedule than user's default one you can specify it here." }, "bookingLimitsCount": { - "type": "object", - "description": "Limit how many times this event can be booked" + "description": "Limit how many times this event can be booked", + "oneOf": [ + { + "$ref": "#/components/schemas/BaseBookingLimitsCount_2024_06_14" + }, + { + "$ref": "#/components/schemas/Disabled_2024_06_14" + } + ] }, "onlyShowFirstAvailableSlot": { "type": "boolean", "description": "This will limit your availability for this event type to one slot per day, scheduled at the earliest available time." }, "bookingLimitsDuration": { - "type": "object", - "description": "Limit total amount of time that this event can be booked" + "description": "Limit total amount of time that this event can be booked", + "oneOf": [ + { + "$ref": "#/components/schemas/BaseBookingLimitsDuration_2024_06_14" + }, + { + "$ref": "#/components/schemas/Disabled_2024_06_14" + } + ] }, "bookingWindow": { - "type": "array", "description": "Limit how far in the future this event can be booked", - "items": { - "oneOf": [ - { - "$ref": "#/components/schemas/BusinessDaysWindow_2024_06_14" - }, - { - "$ref": "#/components/schemas/CalendarDaysWindow_2024_06_14" - }, - { - "$ref": "#/components/schemas/RangeWindow_2024_06_14" - } - ] - } + "oneOf": [ + { + "$ref": "#/components/schemas/BusinessDaysWindow_2024_06_14" + }, + { + "$ref": "#/components/schemas/CalendarDaysWindow_2024_06_14" + }, + { + "$ref": "#/components/schemas/RangeWindow_2024_06_14" + }, + { + "$ref": "#/components/schemas/Disabled_2024_06_14" + } + ] }, "offsetStart": { "type": "number", "description": "Offset timeslots shown to bookers by a specified number of minutes" }, + "bookerLayouts": { + "description": "Should booker have week, month or column view. Specify default layout and enabled layouts user can pick.", + "allOf": [ + { + "$ref": "#/components/schemas/BookerLayouts_2024_06_14" + } + ] + }, + "confirmationPolicy": { + "description": "Specify how the booking needs to be manually confirmed before it is pushed to the integrations and a confirmation mail is sent.", + "oneOf": [ + { + "$ref": "#/components/schemas/BaseConfirmationPolicy_2024_06_14" + }, + { + "$ref": "#/components/schemas/Disabled_2024_06_14" + } + ] + }, + "recurrence": { + "description": "Create a recurring event type.", + "oneOf": [ + { + "$ref": "#/components/schemas/Recurrence_2024_06_14" + }, + { + "$ref": "#/components/schemas/Disabled_2024_06_14" + } + ] + }, + "requiresBookerEmailVerification": { + "type": "boolean" + }, + "hideCalendarNotes": { + "type": "boolean" + }, + "lockTimeZoneToggleOnBookingPage": { + "type": "boolean" + }, + "color": { + "$ref": "#/components/schemas/EventTypeColor_2024_06_14" + }, + "seats": { + "description": "Create an event type with multiple seats.", + "oneOf": [ + { + "$ref": "#/components/schemas/Seats_2024_06_14" + }, + { + "$ref": "#/components/schemas/Disabled_2024_06_14" + } + ] + }, "customName": { "type": "string", "description": "Customizable event name with valid variables: \n {Event type title}, {Organiser}, {Scheduler}, {Location}, {Organiser first name}, \n {Scheduler first name}, {Scheduler last name}, {Event duration}, {LOCATION}, \n {HOST/ATTENDEE}, {HOST}, {ATTENDEE}, {USER}", "example": "{Event type title} between {Organiser} and {Scheduler}" }, + "destinationCalendar": { + "$ref": "#/components/schemas/DestinationCalendar_2024_06_14" + }, + "useDestinationCalendarEmail": { + "type": "boolean" + }, + "hideCalendarEventDetails": { + "type": "boolean" + }, "schedulingType": { "type": "object" }, "hosts": { "type": "array", "items": { - "type": "string" + "$ref": "#/components/schemas/Host" } }, "assignAllTeamMembers": { @@ -8446,24 +9777,8 @@ "lengthInMinutes", "title", "slug", - "description", - "locations", - "bookingFields", - "disableGuests", - "slotInterval", - "minimumBookingNotice", - "beforeEventBuffer", - "afterEventBuffer", - "scheduleId", - "bookingLimitsCount", - "onlyShowFirstAvailableSlot", - "bookingLimitsDuration", - "bookingWindow", - "offsetStart", - "customName", "schedulingType", - "hosts", - "assignAllTeamMembers" + "hosts" ] }, "CreateTeamEventTypeOutput": { @@ -8472,7 +9787,10 @@ "status": { "type": "string", "example": "success", - "enum": ["success", "error"] + "enum": [ + "success", + "error" + ] }, "data": { "oneOf": [ @@ -8488,31 +9806,10 @@ ] } }, - "required": ["status", "data"] - }, - "Recurrence_2024_06_14": { - "type": "object", - "properties": { - "interval": { - "type": "number", - "example": 10, - "description": "Repeats every {count} week | month | year" - }, - "occurrences": { - "type": "number", - "example": 10, - "description": "Repeats for a maximum of {count} events" - }, - "frequency": { - "enum": ["yearly", "monthly", "weekly"], - "type": "string" - }, - "disabled": { - "type": "boolean", - "default": false - } - }, - "required": ["interval", "occurrences", "frequency"] + "required": [ + "status", + "data" + ] }, "TeamEventTypeResponseHost": { "type": "object", @@ -8529,14 +9826,23 @@ "priority": { "type": "string", "default": "medium", - "enum": ["lowest", "low", "medium", "high", "highest"] + "enum": [ + "lowest", + "low", + "medium", + "high", + "highest" + ] }, "name": { "type": "string", "example": "John Doe" } }, - "required": ["userId", "name"] + "required": [ + "userId", + "name" + ] }, "TeamEventTypeOutput_2024_06_14": { "type": "object", @@ -8791,7 +10097,11 @@ "schedulingType": { "type": "string", "nullable": true, - "enum": ["ROUND_ROBIN", "COLLECTIVE", "MANAGED"] + "enum": [ + "ROUND_ROBIN", + "COLLECTIVE", + "MANAGED" + ] } }, "required": [ @@ -8822,13 +10132,19 @@ "status": { "type": "string", "example": "success", - "enum": ["success", "error"] + "enum": [ + "success", + "error" + ] }, "data": { "$ref": "#/components/schemas/TeamEventTypeOutput_2024_06_14" } }, - "required": ["status", "data"] + "required": [ + "status", + "data" + ] }, "CreatePhoneCallInput": { "type": "object", @@ -8854,7 +10170,10 @@ }, "templateType": { "default": "CUSTOM_TEMPLATE", - "enum": ["CHECK_IN_APPOINTMENT", "CUSTOM_TEMPLATE"], + "enum": [ + "CHECK_IN_APPOINTMENT", + "CUSTOM_TEMPLATE" + ], "type": "string", "description": "Template type" }, @@ -8883,7 +10202,13 @@ "description": "General prompt" } }, - "required": ["yourPhoneNumber", "numberToCall", "calApiKey", "enabled", "templateType"] + "required": [ + "yourPhoneNumber", + "numberToCall", + "calApiKey", + "enabled", + "templateType" + ] }, "Data": { "type": "object", @@ -8895,7 +10220,10 @@ "type": "string" } }, - "required": ["callId", "agentId"] + "required": [ + "callId", + "agentId" + ] }, "CreatePhoneCallOutput": { "type": "object", @@ -8903,13 +10231,19 @@ "status": { "type": "string", "example": "success", - "enum": ["success", "error"] + "enum": [ + "success", + "error" + ] }, "data": { "$ref": "#/components/schemas/Data" } }, - "required": ["status", "data"] + "required": [ + "status", + "data" + ] }, "GetTeamEventTypesOutput": { "type": "object", @@ -8917,7 +10251,10 @@ "status": { "type": "string", "example": "success", - "enum": ["success", "error"] + "enum": [ + "success", + "error" + ] }, "data": { "type": "array", @@ -8926,7 +10263,10 @@ } } }, - "required": ["status", "data"] + "required": [ + "status", + "data" + ] }, "UpdateTeamEventTypeInput_2024_06_14": { "type": "object", @@ -9033,76 +10373,130 @@ "description": "If you want that this event has different schedule than user's default one you can specify it here." }, "bookingLimitsCount": { - "type": "object", - "description": "Limit how many times this event can be booked" + "description": "Limit how many times this event can be booked", + "oneOf": [ + { + "$ref": "#/components/schemas/BaseBookingLimitsCount_2024_06_14" + }, + { + "$ref": "#/components/schemas/Disabled_2024_06_14" + } + ] }, "onlyShowFirstAvailableSlot": { "type": "boolean", "description": "This will limit your availability for this event type to one slot per day, scheduled at the earliest available time." }, "bookingLimitsDuration": { - "type": "object", - "description": "Limit total amount of time that this event can be booked" + "description": "Limit total amount of time that this event can be booked", + "oneOf": [ + { + "$ref": "#/components/schemas/BaseBookingLimitsDuration_2024_06_14" + }, + { + "$ref": "#/components/schemas/Disabled_2024_06_14" + } + ] }, "bookingWindow": { - "type": "array", "description": "Limit how far in the future this event can be booked", - "items": { - "oneOf": [ - { - "$ref": "#/components/schemas/BusinessDaysWindow_2024_06_14" - }, - { - "$ref": "#/components/schemas/CalendarDaysWindow_2024_06_14" - }, - { - "$ref": "#/components/schemas/RangeWindow_2024_06_14" - } - ] - } + "oneOf": [ + { + "$ref": "#/components/schemas/BusinessDaysWindow_2024_06_14" + }, + { + "$ref": "#/components/schemas/CalendarDaysWindow_2024_06_14" + }, + { + "$ref": "#/components/schemas/RangeWindow_2024_06_14" + }, + { + "$ref": "#/components/schemas/Disabled_2024_06_14" + } + ] }, "offsetStart": { "type": "number", "description": "Offset timeslots shown to bookers by a specified number of minutes" }, + "bookerLayouts": { + "description": "Should booker have week, month or column view. Specify default layout and enabled layouts user can pick.", + "allOf": [ + { + "$ref": "#/components/schemas/BookerLayouts_2024_06_14" + } + ] + }, + "confirmationPolicy": { + "description": "Specify how the booking needs to be manually confirmed before it is pushed to the integrations and a confirmation mail is sent.", + "oneOf": [ + { + "$ref": "#/components/schemas/BaseConfirmationPolicy_2024_06_14" + }, + { + "$ref": "#/components/schemas/Disabled_2024_06_14" + } + ] + }, + "recurrence": { + "description": "Create a recurring event type.", + "oneOf": [ + { + "$ref": "#/components/schemas/Recurrence_2024_06_14" + }, + { + "$ref": "#/components/schemas/Disabled_2024_06_14" + } + ] + }, + "requiresBookerEmailVerification": { + "type": "boolean" + }, + "hideCalendarNotes": { + "type": "boolean" + }, + "lockTimeZoneToggleOnBookingPage": { + "type": "boolean" + }, + "color": { + "$ref": "#/components/schemas/EventTypeColor_2024_06_14" + }, + "seats": { + "description": "Create an event type with multiple seats.", + "oneOf": [ + { + "$ref": "#/components/schemas/Seats_2024_06_14" + }, + { + "$ref": "#/components/schemas/Disabled_2024_06_14" + } + ] + }, "customName": { "type": "string", "description": "Customizable event name with valid variables: \n {Event type title}, {Organiser}, {Scheduler}, {Location}, {Organiser first name}, \n {Scheduler first name}, {Scheduler last name}, {Event duration}, {LOCATION}, \n {HOST/ATTENDEE}, {HOST}, {ATTENDEE}, {USER}", "example": "{Event type title} between {Organiser} and {Scheduler}" }, + "destinationCalendar": { + "$ref": "#/components/schemas/DestinationCalendar_2024_06_14" + }, + "useDestinationCalendarEmail": { + "type": "boolean" + }, + "hideCalendarEventDetails": { + "type": "boolean" + }, "hosts": { "type": "array", "items": { - "type": "string" + "$ref": "#/components/schemas/Host" } }, "assignAllTeamMembers": { "type": "boolean", "description": "If true, all current and future team members will be assigned to this event type" } - }, - "required": [ - "lengthInMinutes", - "title", - "slug", - "description", - "locations", - "bookingFields", - "disableGuests", - "slotInterval", - "minimumBookingNotice", - "beforeEventBuffer", - "afterEventBuffer", - "scheduleId", - "bookingLimitsCount", - "onlyShowFirstAvailableSlot", - "bookingLimitsDuration", - "bookingWindow", - "offsetStart", - "customName", - "hosts", - "assignAllTeamMembers" - ] + } }, "UpdateTeamEventTypeOutput": { "type": "object", @@ -9110,7 +10504,10 @@ "status": { "type": "string", "example": "success", - "enum": ["success", "error"] + "enum": [ + "success", + "error" + ] }, "data": { "oneOf": [ @@ -9126,7 +10523,10 @@ ] } }, - "required": ["status", "data"] + "required": [ + "status", + "data" + ] }, "DeleteTeamEventTypeOutput": { "type": "object", @@ -9134,20 +10534,30 @@ "status": { "type": "string", "example": "success", - "enum": ["success", "error"] + "enum": [ + "success", + "error" + ] }, "data": { "type": "object" } }, - "required": ["status", "data"] + "required": [ + "status", + "data" + ] }, "OrgTeamMembershipOutputDto": { "type": "object", "properties": { "role": { "type": "string", - "enum": ["MEMBER", "OWNER", "ADMIN"] + "enum": [ + "MEMBER", + "OWNER", + "ADMIN" + ] }, "id": { "type": "number" @@ -9165,7 +10575,13 @@ "type": "boolean" } }, - "required": ["role", "id", "userId", "teamId", "accepted"] + "required": [ + "role", + "id", + "userId", + "teamId", + "accepted" + ] }, "OrgTeamMembershipsOutputResponseDto": { "type": "object", @@ -9173,7 +10589,10 @@ "status": { "type": "string", "example": "success", - "enum": ["success", "error"] + "enum": [ + "success", + "error" + ] }, "data": { "type": "array", @@ -9182,7 +10601,10 @@ } } }, - "required": ["status", "data"] + "required": [ + "status", + "data" + ] }, "OrgTeamMembershipOutputResponseDto": { "type": "object", @@ -9190,13 +10612,19 @@ "status": { "type": "string", "example": "success", - "enum": ["success", "error"] + "enum": [ + "success", + "error" + ] }, "data": { "$ref": "#/components/schemas/OrgTeamMembershipOutputDto" } }, - "required": ["status", "data"] + "required": [ + "status", + "data" + ] }, "UpdateOrgTeamMembershipDto": { "type": "object", @@ -9204,7 +10632,11 @@ "role": { "type": "string", "default": "MEMBER", - "enum": ["MEMBER", "OWNER", "ADMIN"] + "enum": [ + "MEMBER", + "OWNER", + "ADMIN" + ] }, "accepted": { "type": "boolean", @@ -9222,7 +10654,11 @@ "role": { "type": "string", "default": "MEMBER", - "enum": ["MEMBER", "OWNER", "ADMIN"] + "enum": [ + "MEMBER", + "OWNER", + "ADMIN" + ] }, "userId": { "type": "number" @@ -9236,7 +10672,10 @@ "default": false } }, - "required": ["role", "userId"] + "required": [ + "role", + "userId" + ] }, "Attribute": { "type": "object", @@ -9254,7 +10693,12 @@ "type": { "type": "string", "description": "The type of the attribute", - "enum": ["TEXT", "NUMBER", "SINGLE_SELECT", "MULTI_SELECT"] + "enum": [ + "TEXT", + "NUMBER", + "SINGLE_SELECT", + "MULTI_SELECT" + ] }, "name": { "type": "string", @@ -9277,7 +10721,14 @@ "example": true } }, - "required": ["id", "teamId", "type", "name", "slug", "enabled"] + "required": [ + "id", + "teamId", + "type", + "name", + "slug", + "enabled" + ] }, "GetOrganizationAttributesOutput": { "type": "object", @@ -9285,7 +10736,10 @@ "status": { "type": "string", "example": "success", - "enum": ["success", "error"] + "enum": [ + "success", + "error" + ] }, "data": { "type": "array", @@ -9294,7 +10748,10 @@ } } }, - "required": ["status", "data"] + "required": [ + "status", + "data" + ] }, "GetSingleAttributeOutput": { "type": "object", @@ -9302,7 +10759,10 @@ "status": { "type": "string", "example": "success", - "enum": ["success", "error"] + "enum": [ + "success", + "error" + ] }, "data": { "nullable": true, @@ -9313,7 +10773,10 @@ ] } }, - "required": ["status", "data"] + "required": [ + "status", + "data" + ] }, "CreateOrganizationAttributeOptionInput": { "type": "object", @@ -9325,7 +10788,10 @@ "type": "string" } }, - "required": ["value", "slug"] + "required": [ + "value", + "slug" + ] }, "CreateOrganizationAttributeInput": { "type": "object", @@ -9349,7 +10815,12 @@ "type": "boolean" } }, - "required": ["name", "slug", "type", "options"] + "required": [ + "name", + "slug", + "type", + "options" + ] }, "CreateOrganizationAttributesOutput": { "type": "object", @@ -9357,13 +10828,19 @@ "status": { "type": "string", "example": "success", - "enum": ["success", "error"] + "enum": [ + "success", + "error" + ] }, "data": { "$ref": "#/components/schemas/Attribute" } }, - "required": ["status", "data"] + "required": [ + "status", + "data" + ] }, "UpdateOrganizationAttributeInput": { "type": "object", @@ -9388,13 +10865,19 @@ "status": { "type": "string", "example": "success", - "enum": ["success", "error"] + "enum": [ + "success", + "error" + ] }, "data": { "$ref": "#/components/schemas/Attribute" } }, - "required": ["status", "data"] + "required": [ + "status", + "data" + ] }, "DeleteOrganizationAttributesOutput": { "type": "object", @@ -9402,13 +10885,19 @@ "status": { "type": "string", "example": "success", - "enum": ["success", "error"] + "enum": [ + "success", + "error" + ] }, "data": { "$ref": "#/components/schemas/Attribute" } }, - "required": ["status", "data"] + "required": [ + "status", + "data" + ] }, "OptionOutput": { "type": "object", @@ -9434,7 +10923,12 @@ "example": "option-slug" } }, - "required": ["id", "attributeId", "value", "slug"] + "required": [ + "id", + "attributeId", + "value", + "slug" + ] }, "CreateAttributeOptionOutput": { "type": "object", @@ -9442,13 +10936,19 @@ "status": { "type": "string", "example": "success", - "enum": ["success", "error"] + "enum": [ + "success", + "error" + ] }, "data": { "$ref": "#/components/schemas/OptionOutput" } }, - "required": ["status", "data"] + "required": [ + "status", + "data" + ] }, "DeleteAttributeOptionOutput": { "type": "object", @@ -9456,13 +10956,19 @@ "status": { "type": "string", "example": "success", - "enum": ["success", "error"] + "enum": [ + "success", + "error" + ] }, "data": { "$ref": "#/components/schemas/OptionOutput" } }, - "required": ["status", "data"] + "required": [ + "status", + "data" + ] }, "UpdateOrganizationAttributeOptionInput": { "type": "object", @@ -9481,13 +10987,19 @@ "status": { "type": "string", "example": "success", - "enum": ["success", "error"] + "enum": [ + "success", + "error" + ] }, "data": { "$ref": "#/components/schemas/OptionOutput" } }, - "required": ["status", "data"] + "required": [ + "status", + "data" + ] }, "GetAllAttributeOptionOutput": { "type": "object", @@ -9495,7 +11007,10 @@ "status": { "type": "string", "example": "success", - "enum": ["success", "error"] + "enum": [ + "success", + "error" + ] }, "data": { "type": "array", @@ -9504,7 +11019,10 @@ } } }, - "required": ["status", "data"] + "required": [ + "status", + "data" + ] }, "AssignOrganizationAttributeOptionToUserInput": { "type": "object", @@ -9519,7 +11037,9 @@ "type": "string" } }, - "required": ["attributeId"] + "required": [ + "attributeId" + ] }, "AssignOptionUserOutputData": { "type": "object", @@ -9537,7 +11057,11 @@ "description": "The value of the option" } }, - "required": ["id", "memberId", "attributeOptionId"] + "required": [ + "id", + "memberId", + "attributeOptionId" + ] }, "AssignOptionUserOutput": { "type": "object", @@ -9545,13 +11069,19 @@ "status": { "type": "string", "example": "success", - "enum": ["success", "error"] + "enum": [ + "success", + "error" + ] }, "data": { "$ref": "#/components/schemas/AssignOptionUserOutputData" } }, - "required": ["status", "data"] + "required": [ + "status", + "data" + ] }, "UnassignOptionUserOutput": { "type": "object", @@ -9559,13 +11089,19 @@ "status": { "type": "string", "example": "success", - "enum": ["success", "error"] + "enum": [ + "success", + "error" + ] }, "data": { "$ref": "#/components/schemas/AssignOptionUserOutputData" } }, - "required": ["status", "data"] + "required": [ + "status", + "data" + ] }, "GetOptionUserOutputData": { "type": "object", @@ -9587,7 +11123,12 @@ "description": "The slug of the option" } }, - "required": ["id", "attributeId", "value", "slug"] + "required": [ + "id", + "attributeId", + "value", + "slug" + ] }, "GetOptionUserOutput": { "type": "object", @@ -9595,7 +11136,10 @@ "status": { "type": "string", "example": "success", - "enum": ["success", "error"] + "enum": [ + "success", + "error" + ] }, "data": { "type": "array", @@ -9604,7 +11148,10 @@ } } }, - "required": ["status", "data"] + "required": [ + "status", + "data" + ] }, "TeamWebhookOutputDto": { "type": "object", @@ -9636,7 +11183,14 @@ "type": "string" } }, - "required": ["payloadTemplate", "teamId", "id", "triggers", "subscriberUrl", "active"] + "required": [ + "payloadTemplate", + "teamId", + "id", + "triggers", + "subscriberUrl", + "active" + ] }, "TeamWebhooksOutputResponseDto": { "type": "object", @@ -9644,7 +11198,10 @@ "status": { "type": "string", "example": "success", - "enum": ["success", "error"] + "enum": [ + "success", + "error" + ] }, "data": { "type": "array", @@ -9653,7 +11210,10 @@ } } }, - "required": ["status", "data"] + "required": [ + "status", + "data" + ] }, "CreateWebhookInputDto": { "type": "object", @@ -9703,7 +11263,11 @@ "type": "string" } }, - "required": ["triggers", "active", "subscriberUrl"] + "required": [ + "triggers", + "active", + "subscriberUrl" + ] }, "TeamWebhookOutputResponseDto": { "type": "object", @@ -9711,13 +11275,19 @@ "status": { "type": "string", "example": "success", - "enum": ["success", "error"] + "enum": [ + "success", + "error" + ] }, "data": { "$ref": "#/components/schemas/TeamWebhookOutputDto" } }, - "required": ["status", "data"] + "required": [ + "status", + "data" + ] }, "UpdateWebhookInputDto": { "type": "object", @@ -9775,7 +11345,9 @@ "type": "string" } }, - "required": ["authUrl"] + "required": [ + "authUrl" + ] }, "StripConnectOutputResponseDto": { "type": "object", @@ -9783,13 +11355,19 @@ "status": { "type": "string", "example": "success", - "enum": ["success", "error"] + "enum": [ + "success", + "error" + ] }, "data": { "$ref": "#/components/schemas/StripConnectOutputDto" } }, - "required": ["status", "data"] + "required": [ + "status", + "data" + ] }, "StripCredentialsSaveOutputResponseDto": { "type": "object", @@ -9798,7 +11376,9 @@ "type": "string" } }, - "required": ["url"] + "required": [ + "url" + ] }, "StripCredentialsCheckOutputResponseDto": { "type": "object", @@ -9808,7 +11388,9 @@ "example": "success" } }, - "required": ["status"] + "required": [ + "status" + ] }, "GetDefaultScheduleOutput_2024_06_11": { "type": "object", @@ -9816,13 +11398,19 @@ "status": { "type": "string", "example": "success", - "enum": ["success", "error"] + "enum": [ + "success", + "error" + ] }, "data": { "$ref": "#/components/schemas/ScheduleOutput_2024_06_11" } }, - "required": ["status", "data"] + "required": [ + "status", + "data" + ] }, "AuthUrlData": { "type": "object", @@ -9831,7 +11419,9 @@ "type": "string" } }, - "required": ["authUrl"] + "required": [ + "authUrl" + ] }, "GcalAuthUrlOutput": { "type": "object", @@ -9839,13 +11429,19 @@ "status": { "type": "string", "example": "success", - "enum": ["success", "error"] + "enum": [ + "success", + "error" + ] }, "data": { "$ref": "#/components/schemas/AuthUrlData" } }, - "required": ["status", "data"] + "required": [ + "status", + "data" + ] }, "GcalSaveRedirectOutput": { "type": "object", @@ -9854,7 +11450,9 @@ "type": "string" } }, - "required": ["url"] + "required": [ + "url" + ] }, "GcalCheckOutput": { "type": "object", @@ -9862,10 +11460,15 @@ "status": { "type": "string", "example": "success", - "enum": ["success", "error"] + "enum": [ + "success", + "error" + ] } }, - "required": ["status"] + "required": [ + "status" + ] }, "ProviderVerifyClientData": { "type": "object", @@ -9880,7 +11483,11 @@ "type": "string" } }, - "required": ["clientId", "organizationId", "name"] + "required": [ + "clientId", + "organizationId", + "name" + ] }, "ProviderVerifyClientOutput": { "type": "object", @@ -9888,13 +11495,19 @@ "status": { "type": "string", "example": "success", - "enum": ["success", "error"] + "enum": [ + "success", + "error" + ] }, "data": { "$ref": "#/components/schemas/ProviderVerifyClientData" } }, - "required": ["status", "data"] + "required": [ + "status", + "data" + ] }, "ProviderVerifyAccessTokenOutput": { "type": "object", @@ -9902,10 +11515,15 @@ "status": { "type": "string", "example": "success", - "enum": ["success", "error"] + "enum": [ + "success", + "error" + ] } }, - "required": ["status"] + "required": [ + "status" + ] }, "MeOrgOutput": { "type": "object", @@ -9917,7 +11535,10 @@ "type": "number" } }, - "required": ["isPlatform", "id"] + "required": [ + "isPlatform", + "id" + ] }, "MeOutput": { "type": "object", @@ -9969,13 +11590,19 @@ "status": { "type": "string", "example": "success", - "enum": ["success", "error"] + "enum": [ + "success", + "error" + ] }, "data": { "$ref": "#/components/schemas/MeOutput" } }, - "required": ["status", "data"] + "required": [ + "status", + "data" + ] }, "UpdateMeOutput": { "type": "object", @@ -9983,20 +11610,29 @@ "status": { "type": "string", "example": "success", - "enum": ["success", "error"] + "enum": [ + "success", + "error" + ] }, "data": { "$ref": "#/components/schemas/MeOutput" } }, - "required": ["status", "data"] + "required": [ + "status", + "data" + ] }, "CreateIcsFeedInputDto": { "type": "object", "properties": { "urls": { "type": "array", - "example": ["https://cal.com/ics/feed.ics", "http://cal.com/ics/feed.ics"], + "example": [ + "https://cal.com/ics/feed.ics", + "http://cal.com/ics/feed.ics" + ], "description": "An array of ICS URLs", "items": { "type": "string", @@ -10010,7 +11646,9 @@ "description": "Whether to allowing writing to the calendar or not" } }, - "required": ["urls"] + "required": [ + "urls" + ] }, "CreateIcsFeedOutput": { "type": "object", @@ -10050,7 +11688,14 @@ "description": "Whether the calendar credentials are valid or not" } }, - "required": ["id", "type", "userId", "teamId", "appId", "invalid"] + "required": [ + "id", + "type", + "userId", + "teamId", + "appId", + "invalid" + ] }, "CreateIcsFeedOutputResponseDto": { "type": "object", @@ -10058,13 +11703,19 @@ "status": { "type": "string", "example": "success", - "enum": ["success", "error"] + "enum": [ + "success", + "error" + ] }, "data": { "$ref": "#/components/schemas/CreateIcsFeedOutput" } }, - "required": ["status", "data"] + "required": [ + "status", + "data" + ] }, "BusyTimesOutput": { "type": "object", @@ -10082,7 +11733,10 @@ "nullable": true } }, - "required": ["start", "end"] + "required": [ + "start", + "end" + ] }, "GetBusyTimesOutput": { "type": "object", @@ -10090,7 +11744,10 @@ "status": { "type": "string", "example": "success", - "enum": ["success", "error"] + "enum": [ + "success", + "error" + ] }, "data": { "type": "array", @@ -10099,7 +11756,10 @@ } } }, - "required": ["status", "data"] + "required": [ + "status", + "data" + ] }, "Integration": { "type": "object", @@ -10204,7 +11864,13 @@ "type": "number" } }, - "required": ["externalId", "primary", "readOnly", "isSelected", "credentialId"] + "required": [ + "externalId", + "primary", + "readOnly", + "isSelected", + "credentialId" + ] }, "Calendar": { "type": "object", @@ -10235,7 +11901,12 @@ "type": "number" } }, - "required": ["externalId", "readOnly", "isSelected", "credentialId"] + "required": [ + "externalId", + "readOnly", + "isSelected", + "credentialId" + ] }, "ConnectedCalendar": { "type": "object", @@ -10256,7 +11927,10 @@ } } }, - "required": ["integration", "credentialId"] + "required": [ + "integration", + "credentialId" + ] }, "DestinationCalendar": { "type": "object", @@ -10326,7 +12000,10 @@ "$ref": "#/components/schemas/DestinationCalendar" } }, - "required": ["connectedCalendars", "destinationCalendar"] + "required": [ + "connectedCalendars", + "destinationCalendar" + ] }, "ConnectedCalendarsOutput": { "type": "object", @@ -10334,13 +12011,19 @@ "status": { "type": "string", "example": "success", - "enum": ["success", "error"] + "enum": [ + "success", + "error" + ] }, "data": { "$ref": "#/components/schemas/ConnectedCalendarsData" } }, - "required": ["status", "data"] + "required": [ + "status", + "data" + ] }, "DeleteCalendarCredentialsInputBodyDto": { "type": "object", @@ -10351,7 +12034,9 @@ "description": "Credential ID of the calendar to delete, as returned by the /calendars endpoint" } }, - "required": ["id"] + "required": [ + "id" + ] }, "DeletedCalendarCredentialsOutputDto": { "type": "object", @@ -10379,7 +12064,14 @@ "nullable": true } }, - "required": ["id", "type", "userId", "teamId", "appId", "invalid"] + "required": [ + "id", + "type", + "userId", + "teamId", + "appId", + "invalid" + ] }, "DeletedCalendarCredentialsOutputResponseDto": { "type": "object", @@ -10387,13 +12079,19 @@ "status": { "type": "string", "example": "success", - "enum": ["success", "error"] + "enum": [ + "success", + "error" + ] }, "data": { "$ref": "#/components/schemas/DeletedCalendarCredentialsOutputDto" } }, - "required": ["status", "data"] + "required": [ + "status", + "data" + ] }, "Attendee": { "type": "object", @@ -10464,7 +12162,11 @@ "default": "en" } }, - "required": ["name", "email", "timeZone"] + "required": [ + "name", + "email", + "timeZone" + ] }, "CreateBookingInput_2024_08_13": { "type": "object", @@ -10489,7 +12191,10 @@ }, "guests": { "description": "An optional list of guest emails attending the event.", - "example": ["guest1@example.com", "guest2@example.com"], + "example": [ + "guest1@example.com", + "guest2@example.com" + ], "type": "array", "items": { "type": "string" @@ -10508,7 +12213,11 @@ } } }, - "required": ["start", "eventTypeId", "attendee"] + "required": [ + "start", + "eventTypeId", + "attendee" + ] }, "CreateInstantBookingInput_2024_08_13": { "type": "object", @@ -10533,7 +12242,10 @@ }, "guests": { "description": "An optional list of guest emails attending the event.", - "example": ["guest1@example.com", "guest2@example.com"], + "example": [ + "guest1@example.com", + "guest2@example.com" + ], "type": "array", "items": { "type": "string" @@ -10557,7 +12269,12 @@ "example": true } }, - "required": ["start", "eventTypeId", "attendee", "instant"] + "required": [ + "start", + "eventTypeId", + "attendee", + "instant" + ] }, "CreateRecurringBookingInput_2024_08_13": { "type": "object", @@ -10582,7 +12299,10 @@ }, "guests": { "description": "An optional list of guest emails attending the event.", - "example": ["guest1@example.com", "guest2@example.com"], + "example": [ + "guest1@example.com", + "guest2@example.com" + ], "type": "array", "items": { "type": "string" @@ -10601,25 +12321,11 @@ } } }, - "required": ["start", "eventTypeId", "attendee"] - }, - "Host": { - "type": "object", - "properties": { - "id": { - "type": "number", - "example": 1 - }, - "name": { - "type": "string", - "example": "Jane Doe" - }, - "timeZone": { - "type": "string", - "example": "America/Los_Angeles" - } - }, - "required": ["id", "name", "timeZone"] + "required": [ + "start", + "eventTypeId", + "attendee" + ] }, "BookingOutput_2024_08_13": { "type": "object", @@ -10640,7 +12346,13 @@ }, "status": { "type": "string", - "enum": ["cancelled", "accepted", "rejected", "pending", "rescheduled"], + "enum": [ + "cancelled", + "accepted", + "rejected", + "pending", + "rescheduled" + ], "example": "accepted" }, "cancellationReason": { @@ -10678,7 +12390,10 @@ } }, "guests": { - "example": ["guest1@example.com", "guest2@example.com"], + "example": [ + "guest1@example.com", + "guest2@example.com" + ], "type": "array", "items": { "type": "string" @@ -10725,7 +12440,12 @@ }, "status": { "type": "string", - "enum": ["cancelled", "accepted", "rejected", "pending"], + "enum": [ + "cancelled", + "accepted", + "rejected", + "pending" + ], "example": "pending" }, "cancellationReason": { @@ -10767,7 +12487,10 @@ } }, "guests": { - "example": ["guest3@example.com", "guest4@example.com"], + "example": [ + "guest3@example.com", + "guest4@example.com" + ], "type": "array", "items": { "type": "string" @@ -10802,7 +12525,10 @@ "status": { "type": "string", "example": "success", - "enum": ["success", "error"] + "enum": [ + "success", + "error" + ] }, "data": { "oneOf": [ @@ -10819,7 +12545,10 @@ "description": "Booking data, which can be either a BookingOutput object or an array of RecurringBookingOutput objects" } }, - "required": ["status", "data"] + "required": [ + "status", + "data" + ] }, "GetBookingOutput_2024_08_13": { "type": "object", @@ -10827,7 +12556,10 @@ "status": { "type": "string", "example": "success", - "enum": ["success", "error"] + "enum": [ + "success", + "error" + ] }, "data": { "oneOf": [ @@ -10847,7 +12579,10 @@ "description": "Booking data, which can be either a BookingOutput object, a RecurringBookingOutput object, or an array of RecurringBookingOutput objects" } }, - "required": ["status", "data"] + "required": [ + "status", + "data" + ] }, "GetBookingsOutput_2024_08_13": { "type": "object", @@ -10855,7 +12590,10 @@ "status": { "type": "string", "example": "success", - "enum": ["success", "error"] + "enum": [ + "success", + "error" + ] }, "data": { "type": "array", @@ -10872,7 +12610,10 @@ "description": "Array of booking data, which can contain either BookingOutput objects or RecurringBookingOutput objects" } }, - "required": ["status", "data"] + "required": [ + "status", + "data" + ] }, "RescheduleBookingInput_2024_08_13": { "type": "object", @@ -10888,7 +12629,9 @@ "description": "Reason for rescheduling the booking" } }, - "required": ["start"] + "required": [ + "start" + ] }, "RescheduleBookingOutput_2024_08_13": { "type": "object", @@ -10896,7 +12639,10 @@ "status": { "type": "string", "example": "success", - "enum": ["success", "error"] + "enum": [ + "success", + "error" + ] }, "data": { "oneOf": [ @@ -10910,7 +12656,10 @@ "description": "Booking data, which can be either a BookingOutput object or a RecurringBookingOutput object" } }, - "required": ["status", "data"] + "required": [ + "status", + "data" + ] }, "CancelBookingInput_2024_08_13": { "type": "object", @@ -10920,7 +12669,9 @@ "example": "User requested cancellation" } }, - "required": ["cancellationReason"] + "required": [ + "cancellationReason" + ] }, "CancelBookingOutput_2024_08_13": { "type": "object", @@ -10928,7 +12679,10 @@ "status": { "type": "string", "example": "success", - "enum": ["success", "error"] + "enum": [ + "success", + "error" + ] }, "data": { "oneOf": [ @@ -10948,7 +12702,10 @@ "description": "Booking data, which can be either a BookingOutput object, a RecurringBookingOutput object, or an array of RecurringBookingOutput objects" } }, - "required": ["status", "data"] + "required": [ + "status", + "data" + ] }, "MarkAbsentBookingInput_2024_08_13": { "type": "object", @@ -10972,7 +12729,9 @@ } } }, - "required": ["attendees"] + "required": [ + "attendees" + ] }, "MarkAbsentBookingOutput_2024_08_13": { "type": "object", @@ -10980,7 +12739,10 @@ "status": { "type": "string", "example": "success", - "enum": ["success", "error"] + "enum": [ + "success", + "error" + ] }, "data": { "oneOf": [ @@ -10994,11 +12756,39 @@ "description": "Booking data, which can be either a BookingOutput object or a RecurringBookingOutput object" } }, - "required": ["status", "data"] + "required": [ + "status", + "data" + ] }, "ReserveSlotInput": { "type": "object", - "properties": {} + "properties": { + "eventTypeId": { + "type": "number", + "description": "Event Type ID for which timeslot is being reserved.", + "example": 100 + }, + "slotUtcStartDate": { + "type": "string", + "description": "Start date of the slot in UTC timezone.", + "example": "2022-06-14T00:00:00.000Z" + }, + "slotUtcEndDate": { + "type": "string", + "description": "End date of the slot in UTC timezone.", + "example": "2022-06-14T00:30:00.000Z" + }, + "bookingUid": { + "type": "string", + "description": "Optional but only for events with seats. Used to retrieve booking of a seated event." + } + }, + "required": [ + "eventTypeId", + "slotUtcStartDate", + "slotUtcEndDate" + ] }, "UserWebhookOutputDto": { "type": "object", @@ -11030,7 +12820,14 @@ "type": "string" } }, - "required": ["payloadTemplate", "userId", "id", "triggers", "subscriberUrl", "active"] + "required": [ + "payloadTemplate", + "userId", + "id", + "triggers", + "subscriberUrl", + "active" + ] }, "UserWebhookOutputResponseDto": { "type": "object", @@ -11038,13 +12835,19 @@ "status": { "type": "string", "example": "success", - "enum": ["success", "error"] + "enum": [ + "success", + "error" + ] }, "data": { "$ref": "#/components/schemas/UserWebhookOutputDto" } }, - "required": ["status", "data"] + "required": [ + "status", + "data" + ] }, "UserWebhooksOutputResponseDto": { "type": "object", @@ -11052,7 +12855,10 @@ "status": { "type": "string", "example": "success", - "enum": ["success", "error"] + "enum": [ + "success", + "error" + ] }, "data": { "type": "array", @@ -11061,7 +12867,10 @@ } } }, - "required": ["status", "data"] + "required": [ + "status", + "data" + ] }, "EventTypeWebhookOutputDto": { "type": "object", @@ -11093,7 +12902,14 @@ "type": "string" } }, - "required": ["payloadTemplate", "eventTypeId", "id", "triggers", "subscriberUrl", "active"] + "required": [ + "payloadTemplate", + "eventTypeId", + "id", + "triggers", + "subscriberUrl", + "active" + ] }, "EventTypeWebhookOutputResponseDto": { "type": "object", @@ -11101,13 +12917,19 @@ "status": { "type": "string", "example": "success", - "enum": ["success", "error"] + "enum": [ + "success", + "error" + ] }, "data": { "$ref": "#/components/schemas/EventTypeWebhookOutputDto" } }, - "required": ["status", "data"] + "required": [ + "status", + "data" + ] }, "EventTypeWebhooksOutputResponseDto": { "type": "object", @@ -11115,7 +12937,10 @@ "status": { "type": "string", "example": "success", - "enum": ["success", "error"] + "enum": [ + "success", + "error" + ] }, "data": { "type": "array", @@ -11124,7 +12949,10 @@ } } }, - "required": ["status", "data"] + "required": [ + "status", + "data" + ] }, "DeleteManyWebhooksOutputResponseDto": { "type": "object", @@ -11132,13 +12960,19 @@ "status": { "type": "string", "example": "success", - "enum": ["success", "error"] + "enum": [ + "success", + "error" + ] }, "data": { "type": "string" } }, - "required": ["status", "data"] + "required": [ + "status", + "data" + ] }, "OAuthClientWebhookOutputDto": { "type": "object", @@ -11170,7 +13004,14 @@ "type": "string" } }, - "required": ["payloadTemplate", "oAuthClientId", "id", "triggers", "subscriberUrl", "active"] + "required": [ + "payloadTemplate", + "oAuthClientId", + "id", + "triggers", + "subscriberUrl", + "active" + ] }, "OAuthClientWebhookOutputResponseDto": { "type": "object", @@ -11178,13 +13019,19 @@ "status": { "type": "string", "example": "success", - "enum": ["success", "error"] + "enum": [ + "success", + "error" + ] }, "data": { "$ref": "#/components/schemas/OAuthClientWebhookOutputDto" } }, - "required": ["status", "data"] + "required": [ + "status", + "data" + ] }, "OAuthClientWebhooksOutputResponseDto": { "type": "object", @@ -11192,7 +13039,10 @@ "status": { "type": "string", "example": "success", - "enum": ["success", "error"] + "enum": [ + "success", + "error" + ] }, "data": { "type": "array", @@ -11201,7 +13051,10 @@ } } }, - "required": ["status", "data"] + "required": [ + "status", + "data" + ] }, "DestinationCalendarsInputBodyDto": { "type": "object", @@ -11210,7 +13063,11 @@ "type": "string", "example": "apple_calendar", "description": "The calendar service you want to integrate, as returned by the /calendars endpoint", - "enum": ["apple_calendar", "google_calendar", "office365_calendar"] + "enum": [ + "apple_calendar", + "google_calendar", + "office365_calendar" + ] }, "externalId": { "type": "string", @@ -11218,7 +13075,10 @@ "description": "Unique identifier used to represent the specfic calendar, as returned by the /calendars endpoint" } }, - "required": ["integration", "externalId"] + "required": [ + "integration", + "externalId" + ] }, "DestinationCalendarsOutputDto": { "type": "object", @@ -11237,7 +13097,12 @@ "nullable": true } }, - "required": ["userId", "integration", "externalId", "credentialId"] + "required": [ + "userId", + "integration", + "externalId", + "credentialId" + ] }, "DestinationCalendarsOutputResponseDto": { "type": "object", @@ -11245,13 +13110,19 @@ "status": { "type": "string", "example": "success", - "enum": ["success", "error"] + "enum": [ + "success", + "error" + ] }, "data": { "$ref": "#/components/schemas/DestinationCalendarsOutputDto" } }, - "required": ["status", "data"] + "required": [ + "status", + "data" + ] } } }