diff --git a/apps/api/v2/src/modules/teams/memberships/inputs/get-team-memberships.input.ts b/apps/api/v2/src/modules/teams/memberships/inputs/get-team-memberships.input.ts
index 2b2c08cb30..b817f2134a 100644
--- a/apps/api/v2/src/modules/teams/memberships/inputs/get-team-memberships.input.ts
+++ b/apps/api/v2/src/modules/teams/memberships/inputs/get-team-memberships.input.ts
@@ -1,9 +1,10 @@
-import { GetUsersInput } from "@/modules/users/inputs/get-users.input";
import { ApiPropertyOptional } from "@nestjs/swagger";
import { Transform } from "class-transformer";
import { ArrayMaxSize, ArrayNotEmpty, IsEmail, IsOptional } from "class-validator";
-export class GetTeamMembershipsInput extends GetUsersInput {
+import { SkipTakePagination } from "@calcom/platform-types";
+
+export class GetTeamMembershipsInput extends SkipTakePagination {
@IsOptional()
@Transform(({ value }) => {
if (value == null) return undefined;
diff --git a/docs/api-reference/v2/openapi.json b/docs/api-reference/v2/openapi.json
index 923958492c..063b03d9f3 100644
--- a/docs/api-reference/v2/openapi.json
+++ b/docs/api-reference/v2/openapi.json
@@ -28,8 +28,8 @@
"required": false,
"in": "query",
"description": "The number of items to return",
+ "example": 10,
"schema": {
- "example": 10,
"type": "number"
}
},
@@ -38,8 +38,8 @@
"required": false,
"in": "query",
"description": "The number of items to skip",
+ "example": 0,
"schema": {
- "example": 0,
"type": "number"
}
},
@@ -48,8 +48,8 @@
"required": false,
"in": "query",
"description": "Filter managed users by email. If you want to filter by multiple emails, separate them with a comma.",
+ "example": "?emails=email1@example.com,email2@example.com",
"schema": {
- "example": "?emails=email1@example.com,email2@example.com",
"type": "array",
"items": {
"type": "string"
@@ -431,11 +431,11 @@
"required": false,
"in": "query",
"description": "Maximum number of items to return",
+ "example": 25,
"schema": {
"minimum": 1,
"maximum": 250,
"default": 250,
- "example": 25,
"type": "number"
}
},
@@ -444,10 +444,10 @@
"required": false,
"in": "query",
"description": "Number of items to skip",
+ "example": 0,
"schema": {
"minimum": 0,
"default": 0,
- "example": 0,
"type": "number"
}
}
@@ -634,11 +634,11 @@
"required": false,
"in": "query",
"description": "Maximum number of items to return",
+ "example": 25,
"schema": {
"minimum": 1,
"maximum": 250,
"default": 250,
- "example": 25,
"type": "number"
}
},
@@ -647,10 +647,10 @@
"required": false,
"in": "query",
"description": "Number of items to skip",
+ "example": 0,
"schema": {
"minimum": 0,
"default": 0,
- "example": 0,
"type": "number"
}
}
@@ -1129,8 +1129,8 @@
"required": false,
"in": "query",
"description": "Filter by assigned attribute option ids. ids must be separated by a comma.",
+ "example": "?assignedOptionIds=aaaaaaaa-bbbb-cccc-dddd-eeeeee1eee,aaaaaaaa-bbbb-cccc-dddd-eeeeee2eee",
"schema": {
- "example": "?assignedOptionIds=aaaaaaaa-bbbb-cccc-dddd-eeeeee1eee,aaaaaaaa-bbbb-cccc-dddd-eeeeee2eee",
"type": "array",
"items": {
"type": "string"
@@ -1142,8 +1142,8 @@
"required": false,
"in": "query",
"description": "Filter by teamIds. Team ids must be separated by a comma.",
+ "example": "?teamIds=100,200",
"schema": {
- "example": "?teamIds=100,200",
"type": "array",
"items": {
"type": "number"
@@ -1219,8 +1219,8 @@
"required": false,
"in": "query",
"description": "Filter by assigned attribute option ids. ids must be separated by a comma.",
+ "example": "?assignedOptionIds=aaaaaaaa-bbbb-cccc-dddd-eeeeee1eee,aaaaaaaa-bbbb-cccc-dddd-eeeeee2eee",
"schema": {
- "example": "?assignedOptionIds=aaaaaaaa-bbbb-cccc-dddd-eeeeee1eee,aaaaaaaa-bbbb-cccc-dddd-eeeeee2eee",
"type": "array",
"items": {
"type": "string"
@@ -1232,8 +1232,8 @@
"required": false,
"in": "query",
"description": "Filter by teamIds. Team ids must be separated by a comma.",
+ "example": "?teamIds=100,200",
"schema": {
- "example": "?teamIds=100,200",
"type": "array",
"items": {
"type": "number"
@@ -1447,8 +1447,8 @@
"required": false,
"in": "query",
"description": "Filter bookings by status. If you want to filter by multiple statuses, separate them with a comma.",
+ "example": "?status=upcoming,past",
"schema": {
- "example": "?status=upcoming,past",
"type": "array",
"items": {
"type": "string",
@@ -1461,8 +1461,8 @@
"required": false,
"in": "query",
"description": "Filter bookings by the attendee's email address.",
+ "example": "example@domain.com",
"schema": {
- "example": "example@domain.com",
"type": "string"
}
},
@@ -1471,8 +1471,8 @@
"required": false,
"in": "query",
"description": "Filter bookings by the attendee's name.",
+ "example": "John Doe",
"schema": {
- "example": "John Doe",
"type": "string"
}
},
@@ -1481,8 +1481,8 @@
"required": false,
"in": "query",
"description": "Filter bookings by the booking Uid.",
+ "example": "2NtaeaVcKfpmSZ4CthFdfk",
"schema": {
- "example": "2NtaeaVcKfpmSZ4CthFdfk",
"type": "string"
}
},
@@ -1491,8 +1491,8 @@
"required": false,
"in": "query",
"description": "Filter bookings by event type ids belonging to the user. Event type ids must be separated by a comma.",
+ "example": "?eventTypeIds=100,200",
"schema": {
- "example": "?eventTypeIds=100,200",
"type": "string"
}
},
@@ -1501,8 +1501,8 @@
"required": false,
"in": "query",
"description": "Filter bookings by event type id belonging to the user.",
+ "example": "?eventTypeId=100",
"schema": {
- "example": "?eventTypeId=100",
"type": "string"
}
},
@@ -1511,8 +1511,8 @@
"required": false,
"in": "query",
"description": "Filter bookings by team ids that user is part of. Team ids must be separated by a comma.",
+ "example": "?teamIds=50,60",
"schema": {
- "example": "?teamIds=50,60",
"type": "string"
}
},
@@ -1521,8 +1521,8 @@
"required": false,
"in": "query",
"description": "Filter bookings by team id that user is part of",
+ "example": "?teamId=50",
"schema": {
- "example": "?teamId=50",
"type": "string"
}
},
@@ -1531,8 +1531,8 @@
"required": false,
"in": "query",
"description": "Filter bookings with start after this date string.",
+ "example": "?afterStart=2025-03-07T10:00:00.000Z",
"schema": {
- "example": "?afterStart=2025-03-07T10:00:00.000Z",
"type": "string"
}
},
@@ -1541,8 +1541,8 @@
"required": false,
"in": "query",
"description": "Filter bookings with end before this date string.",
+ "example": "?beforeEnd=2025-03-07T11:00:00.000Z",
"schema": {
- "example": "?beforeEnd=2025-03-07T11:00:00.000Z",
"type": "string"
}
},
@@ -1551,8 +1551,8 @@
"required": false,
"in": "query",
"description": "Filter bookings that have been created after this date string.",
+ "example": "?afterCreatedAt=2025-03-07T10:00:00.000Z",
"schema": {
- "example": "?afterCreatedAt=2025-03-07T10:00:00.000Z",
"type": "string"
}
},
@@ -1561,8 +1561,8 @@
"required": false,
"in": "query",
"description": "Filter bookings that have been created before this date string.",
+ "example": "?beforeCreatedAt=2025-03-14T11:00:00.000Z",
"schema": {
- "example": "?beforeCreatedAt=2025-03-14T11:00:00.000Z",
"type": "string"
}
},
@@ -1571,8 +1571,8 @@
"required": false,
"in": "query",
"description": "Filter bookings that have been updated after this date string.",
+ "example": "?afterUpdatedAt=2025-03-07T10:00:00.000Z",
"schema": {
- "example": "?afterUpdatedAt=2025-03-07T10:00:00.000Z",
"type": "string"
}
},
@@ -1581,8 +1581,8 @@
"required": false,
"in": "query",
"description": "Filter bookings that have been updated before this date string.",
+ "example": "?beforeUpdatedAt=2025-03-14T11:00:00.000Z",
"schema": {
- "example": "?beforeUpdatedAt=2025-03-14T11:00:00.000Z",
"type": "string"
}
},
@@ -1591,8 +1591,8 @@
"required": false,
"in": "query",
"description": "Sort results by their start time in ascending or descending order.",
+ "example": "?sortStart=asc OR ?sortStart=desc",
"schema": {
- "example": "?sortStart=asc OR ?sortStart=desc",
"enum": ["asc", "desc"],
"type": "string"
}
@@ -1602,8 +1602,8 @@
"required": false,
"in": "query",
"description": "Sort results by their end time in ascending or descending order.",
+ "example": "?sortEnd=asc OR ?sortEnd=desc",
"schema": {
- "example": "?sortEnd=asc OR ?sortEnd=desc",
"enum": ["asc", "desc"],
"type": "string"
}
@@ -1613,8 +1613,8 @@
"required": false,
"in": "query",
"description": "Sort results by their creation time (when booking was made) in ascending or descending order.",
+ "example": "?sortCreated=asc OR ?sortCreated=desc",
"schema": {
- "example": "?sortCreated=asc OR ?sortCreated=desc",
"enum": ["asc", "desc"],
"type": "string"
}
@@ -1624,8 +1624,8 @@
"required": false,
"in": "query",
"description": "Sort results by their updated time (for example when booking status changes) in ascending or descending order.",
+ "example": "?sortUpdated=asc OR ?sortUpdated=desc",
"schema": {
- "example": "?sortUpdated=asc OR ?sortUpdated=desc",
"enum": ["asc", "desc"],
"type": "string"
}
@@ -1635,9 +1635,9 @@
"required": false,
"in": "query",
"description": "The number of items to return",
+ "example": 10,
"schema": {
"default": 100,
- "example": 10,
"type": "number"
}
},
@@ -1646,9 +1646,9 @@
"required": false,
"in": "query",
"description": "The number of items to skip",
+ "example": 0,
"schema": {
"default": 0,
- "example": 0,
"type": "number"
}
},
@@ -1657,8 +1657,8 @@
"required": false,
"in": "query",
"description": "Filter bookings by ids of users within your organization.",
+ "example": "?userIds=100,200",
"schema": {
- "example": "?userIds=100,200",
"type": "string"
}
},
@@ -1871,11 +1871,11 @@
"required": false,
"in": "query",
"description": "Maximum number of items to return",
+ "example": 25,
"schema": {
"minimum": 1,
"maximum": 250,
"default": 250,
- "example": 25,
"type": "number"
}
},
@@ -1884,10 +1884,10 @@
"required": false,
"in": "query",
"description": "Number of items to skip",
+ "example": 0,
"schema": {
"minimum": 0,
"default": 0,
- "example": 0,
"type": "number"
}
}
@@ -2283,8 +2283,8 @@
"required": false,
"in": "query",
"description": "Filter by teamIds. Team ids must be separated by a comma.",
+ "example": "?teamIds=100,200",
"schema": {
- "example": "?teamIds=100,200",
"type": "array",
"items": {
"type": "number"
@@ -2473,8 +2473,8 @@
"required": true,
"in": "query",
"description": "\n Time starting from which available slots should be checked.\n \n Must be in UTC timezone as ISO 8601 datestring.\n \n You can pass date without hours which defaults to start of day or specify hours:\n 2024-08-13 (will have hours 00:00:00 aka at very beginning of the date) or you can specify hours manually like 2024-08-13T09:00:00Z\n ",
+ "example": "2050-09-05",
"schema": {
- "example": "2050-09-05",
"type": "string"
}
},
@@ -2483,8 +2483,8 @@
"required": true,
"in": "query",
"description": "\n Time until which available slots should be checked.\n \n Must be in UTC timezone as ISO 8601 datestring.\n \n You can pass date without hours which defaults to end of day or specify hours:\n 2024-08-20 (will have hours 23:59:59 aka at the very end of the date) or you can specify hours manually like 2024-08-20T18:00:00Z",
+ "example": "2050-09-06",
"schema": {
- "example": "2050-09-06",
"type": "string"
}
},
@@ -2493,8 +2493,8 @@
"required": false,
"in": "query",
"description": "Time zone in which the available slots should be returned. Defaults to UTC.",
+ "example": "Europe/Rome",
"schema": {
- "example": "Europe/Rome",
"type": "string"
}
},
@@ -2503,8 +2503,8 @@
"required": false,
"in": "query",
"description": "If event type has multiple possible durations then you can specify the desired duration here. Also, if you are fetching slots for a dynamic event then you can specify the duration her which defaults to 30, meaning that returned slots will be each 30 minutes long.",
+ "example": "60",
"schema": {
- "example": "60",
"type": "number"
}
},
@@ -2513,8 +2513,8 @@
"required": false,
"in": "query",
"description": "Format of slot times in response. Use 'range' to get start and end times.",
+ "example": "range",
"schema": {
- "example": "range",
"enum": ["range", "time"],
"type": "string"
}
@@ -2524,8 +2524,8 @@
"required": false,
"in": "query",
"description": "The unique identifier of the booking being rescheduled. When provided will ensure that the original booking time appears within the returned available slots when rescheduling.",
+ "example": "abc123def456",
"schema": {
- "example": "abc123def456",
"type": "string"
}
},
@@ -2534,8 +2534,8 @@
"required": false,
"in": "query",
"description": "Whether to queue the form response.",
+ "example": true,
"schema": {
- "example": true,
"type": "boolean"
}
}
@@ -2664,11 +2664,11 @@
"required": false,
"in": "query",
"description": "Maximum number of items to return",
+ "example": 25,
"schema": {
"minimum": 1,
"maximum": 250,
"default": 250,
- "example": 25,
"type": "number"
}
},
@@ -2677,10 +2677,10 @@
"required": false,
"in": "query",
"description": "Number of items to skip",
+ "example": 0,
"schema": {
"minimum": 0,
"default": 0,
- "example": 0,
"type": "number"
}
}
@@ -3095,8 +3095,8 @@
"required": false,
"in": "query",
"description": "Filter bookings by status. If you want to filter by multiple statuses, separate them with a comma.",
+ "example": "?status=upcoming,past",
"schema": {
- "example": "?status=upcoming,past",
"type": "array",
"items": {
"type": "string",
@@ -3109,8 +3109,8 @@
"required": false,
"in": "query",
"description": "Filter bookings by the attendee's email address.",
+ "example": "example@domain.com",
"schema": {
- "example": "example@domain.com",
"type": "string"
}
},
@@ -3119,8 +3119,8 @@
"required": false,
"in": "query",
"description": "Filter bookings by the attendee's name.",
+ "example": "John Doe",
"schema": {
- "example": "John Doe",
"type": "string"
}
},
@@ -3129,8 +3129,8 @@
"required": false,
"in": "query",
"description": "Filter bookings by event type ids belonging to the team. Event type ids must be separated by a comma.",
+ "example": "?eventTypeIds=100,200",
"schema": {
- "example": "?eventTypeIds=100,200",
"type": "string"
}
},
@@ -3139,8 +3139,8 @@
"required": false,
"in": "query",
"description": "Filter bookings by event type id belonging to the team.",
+ "example": "?eventTypeId=100",
"schema": {
- "example": "?eventTypeId=100",
"type": "string"
}
},
@@ -3149,8 +3149,8 @@
"required": false,
"in": "query",
"description": "Filter bookings with start after this date string.",
+ "example": "?afterStart=2025-03-07T10:00:00.000Z",
"schema": {
- "example": "?afterStart=2025-03-07T10:00:00.000Z",
"type": "string"
}
},
@@ -3159,8 +3159,8 @@
"required": false,
"in": "query",
"description": "Filter bookings with end before this date string.",
+ "example": "?beforeEnd=2025-03-07T11:00:00.000Z",
"schema": {
- "example": "?beforeEnd=2025-03-07T11:00:00.000Z",
"type": "string"
}
},
@@ -3169,8 +3169,8 @@
"required": false,
"in": "query",
"description": "Sort results by their start time in ascending or descending order.",
+ "example": "?sortStart=asc OR ?sortStart=desc",
"schema": {
- "example": "?sortStart=asc OR ?sortStart=desc",
"enum": ["asc", "desc"],
"type": "string"
}
@@ -3180,8 +3180,8 @@
"required": false,
"in": "query",
"description": "Sort results by their end time in ascending or descending order.",
+ "example": "?sortEnd=asc OR ?sortEnd=desc",
"schema": {
- "example": "?sortEnd=asc OR ?sortEnd=desc",
"enum": ["asc", "desc"],
"type": "string"
}
@@ -3191,8 +3191,8 @@
"required": false,
"in": "query",
"description": "Sort results by their creation time (when booking was made) in ascending or descending order.",
+ "example": "?sortCreated=asc OR ?sortCreated=desc",
"schema": {
- "example": "?sortCreated=asc OR ?sortCreated=desc",
"enum": ["asc", "desc"],
"type": "string"
}
@@ -3202,10 +3202,10 @@
"required": false,
"in": "query",
"description": "The number of items to return",
+ "example": 10,
"schema": {
"minimum": 1,
"maximum": 250,
- "example": 10,
"type": "number"
}
},
@@ -3214,9 +3214,9 @@
"required": false,
"in": "query",
"description": "The number of items to skip",
+ "example": 0,
"schema": {
"minimum": 0,
- "example": 0,
"type": "number"
}
},
@@ -3297,8 +3297,8 @@
"required": false,
"in": "query",
"description": "Filter booking references by type",
+ "example": "google_calendar",
"schema": {
- "example": "google_calendar",
"enum": [
"google_calendar",
"office365_calendar",
@@ -4107,11 +4107,11 @@
"required": false,
"in": "query",
"description": "Maximum number of items to return",
+ "example": 25,
"schema": {
"minimum": 1,
"maximum": 250,
"default": 250,
- "example": 25,
"type": "number"
}
},
@@ -4120,10 +4120,10 @@
"required": false,
"in": "query",
"description": "Number of items to skip",
+ "example": 0,
"schema": {
"minimum": 0,
"default": 0,
- "example": 0,
"type": "number"
}
}
@@ -4538,11 +4538,11 @@
"required": false,
"in": "query",
"description": "Maximum number of items to return",
+ "example": 25,
"schema": {
"minimum": 1,
"maximum": 250,
"default": 250,
- "example": 25,
"type": "number"
}
},
@@ -4551,10 +4551,10 @@
"required": false,
"in": "query",
"description": "Number of items to skip",
+ "example": 0,
"schema": {
"minimum": 0,
"default": 0,
- "example": 0,
"type": "number"
}
}
@@ -5183,8 +5183,8 @@
"required": true,
"in": "query",
"description": "\n Time starting from which available slots should be checked.\n \n Must be in UTC timezone as ISO 8601 datestring.\n \n You can pass date without hours which defaults to start of day or specify hours:\n 2024-08-13 (will have hours 00:00:00 aka at very beginning of the date) or you can specify hours manually like 2024-08-13T09:00:00Z\n ",
+ "example": "2050-09-05",
"schema": {
- "example": "2050-09-05",
"type": "string"
}
},
@@ -5193,8 +5193,8 @@
"required": true,
"in": "query",
"description": "\n Time until which available slots should be checked.\n \n Must be in UTC timezone as ISO 8601 datestring.\n \n You can pass date without hours which defaults to end of day or specify hours:\n 2024-08-20 (will have hours 23:59:59 aka at the very end of the date) or you can specify hours manually like 2024-08-20T18:00:00Z",
+ "example": "2050-09-06",
"schema": {
- "example": "2050-09-06",
"type": "string"
}
},
@@ -5203,8 +5203,8 @@
"required": false,
"in": "query",
"description": "Time zone in which the available slots should be returned. Defaults to UTC.",
+ "example": "Europe/Rome",
"schema": {
- "example": "Europe/Rome",
"type": "string"
}
},
@@ -5213,8 +5213,8 @@
"required": false,
"in": "query",
"description": "If event type has multiple possible durations then you can specify the desired duration here. Also, if you are fetching slots for a dynamic event then you can specify the duration her which defaults to 30, meaning that returned slots will be each 30 minutes long.",
+ "example": "60",
"schema": {
- "example": "60",
"type": "number"
}
},
@@ -5223,8 +5223,8 @@
"required": false,
"in": "query",
"description": "Format of slot times in response. Use 'range' to get start and end times.",
+ "example": "range",
"schema": {
- "example": "range",
"enum": ["range", "time"],
"type": "string"
}
@@ -5234,8 +5234,8 @@
"required": false,
"in": "query",
"description": "The unique identifier of the booking being rescheduled. When provided will ensure that the original booking time appears within the returned available slots when rescheduling.",
+ "example": "abc123def456",
"schema": {
- "example": "abc123def456",
"type": "string"
}
},
@@ -5244,8 +5244,8 @@
"required": false,
"in": "query",
"description": "Whether to queue the form response.",
+ "example": true,
"schema": {
- "example": true,
"type": "boolean"
}
}
@@ -5382,11 +5382,11 @@
"required": false,
"in": "query",
"description": "Maximum number of items to return",
+ "example": 25,
"schema": {
"minimum": 1,
"maximum": 250,
"default": 250,
- "example": 25,
"type": "number"
}
},
@@ -5395,10 +5395,10 @@
"required": false,
"in": "query",
"description": "Number of items to skip",
+ "example": 0,
"schema": {
"minimum": 0,
"default": 0,
- "example": 0,
"type": "number"
}
}
@@ -5678,11 +5678,11 @@
"required": false,
"in": "query",
"description": "Maximum number of items to return",
+ "example": 25,
"schema": {
"minimum": 1,
"maximum": 250,
"default": 250,
- "example": 25,
"type": "number"
}
},
@@ -5691,10 +5691,10 @@
"required": false,
"in": "query",
"description": "Number of items to skip",
+ "example": 0,
"schema": {
"minimum": 0,
"default": 0,
- "example": 0,
"type": "number"
}
}
@@ -5831,11 +5831,11 @@
"required": false,
"in": "query",
"description": "Maximum number of items to return",
+ "example": 25,
"schema": {
"minimum": 1,
"maximum": 250,
"default": 250,
- "example": 25,
"type": "number"
}
},
@@ -5844,10 +5844,10 @@
"required": false,
"in": "query",
"description": "Number of items to skip",
+ "example": 0,
"schema": {
"minimum": 0,
"default": 0,
- "example": 0,
"type": "number"
}
}
@@ -6358,10 +6358,10 @@
"required": false,
"in": "query",
"description": "The number of items to return",
+ "example": 10,
"schema": {
"minimum": 1,
"maximum": 1000,
- "example": 10,
"type": "number"
}
},
@@ -6370,9 +6370,9 @@
"required": false,
"in": "query",
"description": "The number of items to skip",
+ "example": 0,
"schema": {
"minimum": 0,
- "example": 0,
"type": "number"
}
},
@@ -6381,6 +6381,7 @@
"required": false,
"in": "query",
"description": "The email address or an array of email addresses to filter by",
+ "example": ["user1@example.com", "user2@example.com"],
"schema": {
"type": "array",
"items": {
@@ -6393,8 +6394,8 @@
"required": false,
"in": "query",
"description": "Filter by assigned attribute option ids. ids must be separated by a comma.",
+ "example": "?assignedOptionIds=aaaaaaaa-bbbb-cccc-dddd-eeeeee1eee,aaaaaaaa-bbbb-cccc-dddd-eeeeee2eee",
"schema": {
- "example": "?assignedOptionIds=aaaaaaaa-bbbb-cccc-dddd-eeeeee1eee,aaaaaaaa-bbbb-cccc-dddd-eeeeee2eee",
"type": "array",
"items": {
"type": "string"
@@ -6406,9 +6407,9 @@
"required": false,
"in": "query",
"description": "Query operator used to filter assigned options, AND by default.",
+ "example": "NONE",
"schema": {
"default": "AND",
- "example": "NONE",
"enum": ["OR", "AND", "NONE"],
"type": "string"
}
@@ -6418,8 +6419,8 @@
"required": false,
"in": "query",
"description": "Filter by teamIds. Team ids must be separated by a comma.",
+ "example": "?teamIds=100,200",
"schema": {
- "example": "?teamIds=100,200",
"type": "array",
"items": {
"type": "number"
@@ -6687,8 +6688,8 @@
"required": false,
"in": "query",
"description": "Filter bookings by status. If you want to filter by multiple statuses, separate them with a comma.",
+ "example": "?status=upcoming,past",
"schema": {
- "example": "?status=upcoming,past",
"type": "array",
"items": {
"type": "string",
@@ -6701,8 +6702,8 @@
"required": false,
"in": "query",
"description": "Filter bookings by the attendee's email address.",
+ "example": "example@domain.com",
"schema": {
- "example": "example@domain.com",
"type": "string"
}
},
@@ -6711,8 +6712,8 @@
"required": false,
"in": "query",
"description": "Filter bookings by the attendee's name.",
+ "example": "John Doe",
"schema": {
- "example": "John Doe",
"type": "string"
}
},
@@ -6721,8 +6722,8 @@
"required": false,
"in": "query",
"description": "Filter bookings by the booking Uid.",
+ "example": "2NtaeaVcKfpmSZ4CthFdfk",
"schema": {
- "example": "2NtaeaVcKfpmSZ4CthFdfk",
"type": "string"
}
},
@@ -6731,8 +6732,8 @@
"required": false,
"in": "query",
"description": "Filter bookings by event type ids belonging to the user. Event type ids must be separated by a comma.",
+ "example": "?eventTypeIds=100,200",
"schema": {
- "example": "?eventTypeIds=100,200",
"type": "string"
}
},
@@ -6741,8 +6742,8 @@
"required": false,
"in": "query",
"description": "Filter bookings by event type id belonging to the user.",
+ "example": "?eventTypeId=100",
"schema": {
- "example": "?eventTypeId=100",
"type": "string"
}
},
@@ -6751,8 +6752,8 @@
"required": false,
"in": "query",
"description": "Filter bookings by team ids that user is part of. Team ids must be separated by a comma.",
+ "example": "?teamIds=50,60",
"schema": {
- "example": "?teamIds=50,60",
"type": "string"
}
},
@@ -6761,8 +6762,8 @@
"required": false,
"in": "query",
"description": "Filter bookings by team id that user is part of",
+ "example": "?teamId=50",
"schema": {
- "example": "?teamId=50",
"type": "string"
}
},
@@ -6771,8 +6772,8 @@
"required": false,
"in": "query",
"description": "Filter bookings with start after this date string.",
+ "example": "?afterStart=2025-03-07T10:00:00.000Z",
"schema": {
- "example": "?afterStart=2025-03-07T10:00:00.000Z",
"type": "string"
}
},
@@ -6781,8 +6782,8 @@
"required": false,
"in": "query",
"description": "Filter bookings with end before this date string.",
+ "example": "?beforeEnd=2025-03-07T11:00:00.000Z",
"schema": {
- "example": "?beforeEnd=2025-03-07T11:00:00.000Z",
"type": "string"
}
},
@@ -6791,8 +6792,8 @@
"required": false,
"in": "query",
"description": "Filter bookings that have been created after this date string.",
+ "example": "?afterCreatedAt=2025-03-07T10:00:00.000Z",
"schema": {
- "example": "?afterCreatedAt=2025-03-07T10:00:00.000Z",
"type": "string"
}
},
@@ -6801,8 +6802,8 @@
"required": false,
"in": "query",
"description": "Filter bookings that have been created before this date string.",
+ "example": "?beforeCreatedAt=2025-03-14T11:00:00.000Z",
"schema": {
- "example": "?beforeCreatedAt=2025-03-14T11:00:00.000Z",
"type": "string"
}
},
@@ -6811,8 +6812,8 @@
"required": false,
"in": "query",
"description": "Filter bookings that have been updated after this date string.",
+ "example": "?afterUpdatedAt=2025-03-07T10:00:00.000Z",
"schema": {
- "example": "?afterUpdatedAt=2025-03-07T10:00:00.000Z",
"type": "string"
}
},
@@ -6821,8 +6822,8 @@
"required": false,
"in": "query",
"description": "Filter bookings that have been updated before this date string.",
+ "example": "?beforeUpdatedAt=2025-03-14T11:00:00.000Z",
"schema": {
- "example": "?beforeUpdatedAt=2025-03-14T11:00:00.000Z",
"type": "string"
}
},
@@ -6831,8 +6832,8 @@
"required": false,
"in": "query",
"description": "Sort results by their start time in ascending or descending order.",
+ "example": "?sortStart=asc OR ?sortStart=desc",
"schema": {
- "example": "?sortStart=asc OR ?sortStart=desc",
"enum": ["asc", "desc"],
"type": "string"
}
@@ -6842,8 +6843,8 @@
"required": false,
"in": "query",
"description": "Sort results by their end time in ascending or descending order.",
+ "example": "?sortEnd=asc OR ?sortEnd=desc",
"schema": {
- "example": "?sortEnd=asc OR ?sortEnd=desc",
"enum": ["asc", "desc"],
"type": "string"
}
@@ -6853,8 +6854,8 @@
"required": false,
"in": "query",
"description": "Sort results by their creation time (when booking was made) in ascending or descending order.",
+ "example": "?sortCreated=asc OR ?sortCreated=desc",
"schema": {
- "example": "?sortCreated=asc OR ?sortCreated=desc",
"enum": ["asc", "desc"],
"type": "string"
}
@@ -6864,8 +6865,8 @@
"required": false,
"in": "query",
"description": "Sort results by their updated time (for example when booking status changes) in ascending or descending order.",
+ "example": "?sortUpdated=asc OR ?sortUpdated=desc",
"schema": {
- "example": "?sortUpdated=asc OR ?sortUpdated=desc",
"enum": ["asc", "desc"],
"type": "string"
}
@@ -6875,9 +6876,9 @@
"required": false,
"in": "query",
"description": "The number of items to return",
+ "example": 10,
"schema": {
"default": 100,
- "example": 10,
"type": "number"
}
},
@@ -6886,9 +6887,9 @@
"required": false,
"in": "query",
"description": "The number of items to skip",
+ "example": 0,
"schema": {
"default": 0,
- "example": 0,
"type": "number"
}
}
@@ -6946,11 +6947,11 @@
"required": false,
"in": "query",
"description": "Maximum number of items to return",
+ "example": 25,
"schema": {
"minimum": 1,
"maximum": 250,
"default": 250,
- "example": 25,
"type": "number"
}
},
@@ -6959,10 +6960,10 @@
"required": false,
"in": "query",
"description": "Number of items to skip",
+ "example": 0,
"schema": {
"minimum": 0,
"default": 0,
- "example": 0,
"type": "number"
}
},
@@ -6971,8 +6972,8 @@
"required": false,
"in": "query",
"description": "Sort results by their start time in ascending or descending order.",
+ "example": "?sortStart=asc OR ?sortStart=desc",
"schema": {
- "example": "?sortStart=asc OR ?sortStart=desc",
"enum": ["asc", "desc"],
"type": "string"
}
@@ -6982,8 +6983,8 @@
"required": false,
"in": "query",
"description": "Sort results by their end time in ascending or descending order.",
+ "example": "?sortEnd=asc OR ?sortEnd=desc",
"schema": {
- "example": "?sortEnd=asc OR ?sortEnd=desc",
"enum": ["asc", "desc"],
"type": "string"
}
@@ -7213,11 +7214,11 @@
"required": false,
"in": "query",
"description": "Maximum number of items to return",
+ "example": 25,
"schema": {
"minimum": 1,
"maximum": 250,
"default": 250,
- "example": 25,
"type": "number"
}
},
@@ -7226,10 +7227,10 @@
"required": false,
"in": "query",
"description": "Number of items to skip",
+ "example": 0,
"schema": {
"minimum": 0,
"default": 0,
- "example": 0,
"type": "number"
}
},
@@ -7238,8 +7239,8 @@
"required": false,
"in": "query",
"description": "Sort results by their start time in ascending or descending order.",
+ "example": "?sortStart=asc OR ?sortStart=desc",
"schema": {
- "example": "?sortStart=asc OR ?sortStart=desc",
"enum": ["asc", "desc"],
"type": "string"
}
@@ -7249,8 +7250,8 @@
"required": false,
"in": "query",
"description": "Sort results by their end time in ascending or descending order.",
+ "example": "?sortEnd=asc OR ?sortEnd=desc",
"schema": {
- "example": "?sortEnd=asc OR ?sortEnd=desc",
"enum": ["asc", "desc"],
"type": "string"
}
@@ -7260,8 +7261,8 @@
"required": false,
"in": "query",
"description": "Filter ooo entries by the user email address. user must be within your organization.",
+ "example": "example@domain.com",
"schema": {
- "example": "example@domain.com",
"type": "string"
}
}
@@ -7637,11 +7638,11 @@
"required": false,
"in": "query",
"description": "Maximum number of items to return",
+ "example": 25,
"schema": {
"minimum": 1,
"maximum": 250,
"default": 250,
- "example": 25,
"type": "number"
}
},
@@ -7650,10 +7651,10 @@
"required": false,
"in": "query",
"description": "Number of items to skip",
+ "example": 0,
"schema": {
"minimum": 0,
"default": 0,
- "example": 0,
"type": "number"
}
}
@@ -7956,12 +7957,12 @@
"post": {
"operationId": "BookingsController_2024_08_13_createBooking",
"summary": "Create a booking",
- "description": "\n POST /v2/bookings is used to create regular bookings, recurring bookings and instant bookings. The request bodies for all 3 are almost the same except:\n If eventTypeId in the request body is id of a regular event, then regular booking is created.\n\n If it is an id of a recurring event type, then recurring booking is created.\n\n Meaning that the request bodies are equal but the outcome depends on what kind of event type it is with the goal of making it as seamless for developers as possible.\n\n For team event types it is possible to create instant meeting. To do that just pass `\"instant\": true` to the request body.\n\n The start needs to be in UTC aka if the timezone is GMT+2 in Rome and meeting should start at 11, then UTC time should have hours 09:00 aka without time zone.\n\n Finally, there are 2 ways to book an event type belonging to an individual user:\n 1. Provide `eventTypeId` in the request body.\n 2. Provide `eventTypeSlug` and `username` and optionally `organizationSlug` if the user with the username is within an organization.\n\n And 2 ways to book and event type belonging to a team:\n 1. Provide `eventTypeId` in the request body.\n 2. Provide `eventTypeSlug` and `teamSlug` and optionally `organizationSlug` if the team with the teamSlug is within an organization.\n\n If you are creating a seated booking for an event type with 'show attendees' disabled, then to retrieve attendees in the response either set 'show attendees' to true on event type level or\n you have to provide an authentication method of event type owner, host, team admin or owner or org admin or owner.\n ",
+ "description": "\n POST /v2/bookings is used to create regular bookings, recurring bookings and instant bookings. The request bodies for all 3 are almost the same except:\n If eventTypeId in the request body is id of a regular event, then regular booking is created.\n\n If it is an id of a recurring event type, then recurring booking is created.\n\n Meaning that the request bodies are equal but the outcome depends on what kind of event type it is with the goal of making it as seamless for developers as possible.\n\n For team event types it is possible to create instant meeting. To do that just pass `\"instant\": true` to the request body.\n\n The start needs to be in UTC aka if the timezone is GMT+2 in Rome and meeting should start at 11, then UTC time should have hours 09:00 aka without time zone.\n\n Finally, there are 2 ways to book an event type belonging to an individual user:\n 1. Provide `eventTypeId` in the request body.\n 2. Provide `eventTypeSlug` and `username` and optionally `organizationSlug` if the user with the username is within an organization.\n\n And 2 ways to book and event type belonging to a team:\n 1. Provide `eventTypeId` in the request body.\n 2. Provide `eventTypeSlug` and `teamSlug` and optionally `organizationSlug` if the team with the teamSlug is within an organization.\n\n If you are creating a seated booking for an event type with 'show attendees' disabled, then to retrieve attendees in the response either set 'show attendees' to true on event type level or\n you have to provide an authentication method of event type owner, host, team admin or owner or org admin or owner.\n\n Please make sure to pass in the cal-api-version header value as mentioned in the Headers section. Not passing the correct value will default to an older version of this endpoint.\n ",
"parameters": [
{
"name": "cal-api-version",
"in": "header",
- "description": "Must be set to 2024-08-13",
+ "description": "Must be set to 2024-08-13. If not set to this value, the endpoint will default to an older version.",
"required": true,
"schema": {
"type": "string",
@@ -8034,11 +8035,12 @@
"get": {
"operationId": "BookingsController_2024_08_13_getBookings",
"summary": "Get all bookings",
+ "description": "Please make sure to pass in the cal-api-version header value as mentioned in the Headers section. Not passing the correct value will default to an older version of this endpoint.",
"parameters": [
{
"name": "cal-api-version",
"in": "header",
- "description": "Must be set to 2024-08-13",
+ "description": "Must be set to 2024-08-13. If not set to this value, the endpoint will default to an older version.",
"required": true,
"schema": {
"type": "string",
@@ -8050,8 +8052,8 @@
"required": false,
"in": "query",
"description": "Filter bookings by status. If you want to filter by multiple statuses, separate them with a comma.",
+ "example": "?status=upcoming,past",
"schema": {
- "example": "?status=upcoming,past",
"type": "array",
"items": {
"type": "string",
@@ -8064,8 +8066,8 @@
"required": false,
"in": "query",
"description": "Filter bookings by the attendee's email address.",
+ "example": "example@domain.com",
"schema": {
- "example": "example@domain.com",
"type": "string"
}
},
@@ -8074,8 +8076,8 @@
"required": false,
"in": "query",
"description": "Filter bookings by the attendee's name.",
+ "example": "John Doe",
"schema": {
- "example": "John Doe",
"type": "string"
}
},
@@ -8084,8 +8086,8 @@
"required": false,
"in": "query",
"description": "Filter bookings by the booking Uid.",
+ "example": "2NtaeaVcKfpmSZ4CthFdfk",
"schema": {
- "example": "2NtaeaVcKfpmSZ4CthFdfk",
"type": "string"
}
},
@@ -8094,8 +8096,8 @@
"required": false,
"in": "query",
"description": "Filter bookings by event type ids belonging to the user. Event type ids must be separated by a comma.",
+ "example": "?eventTypeIds=100,200",
"schema": {
- "example": "?eventTypeIds=100,200",
"type": "string"
}
},
@@ -8104,8 +8106,8 @@
"required": false,
"in": "query",
"description": "Filter bookings by event type id belonging to the user.",
+ "example": "?eventTypeId=100",
"schema": {
- "example": "?eventTypeId=100",
"type": "string"
}
},
@@ -8114,8 +8116,8 @@
"required": false,
"in": "query",
"description": "Filter bookings by team ids that user is part of. Team ids must be separated by a comma.",
+ "example": "?teamIds=50,60",
"schema": {
- "example": "?teamIds=50,60",
"type": "string"
}
},
@@ -8124,8 +8126,8 @@
"required": false,
"in": "query",
"description": "Filter bookings by team id that user is part of",
+ "example": "?teamId=50",
"schema": {
- "example": "?teamId=50",
"type": "string"
}
},
@@ -8134,8 +8136,8 @@
"required": false,
"in": "query",
"description": "Filter bookings with start after this date string.",
+ "example": "?afterStart=2025-03-07T10:00:00.000Z",
"schema": {
- "example": "?afterStart=2025-03-07T10:00:00.000Z",
"type": "string"
}
},
@@ -8144,8 +8146,8 @@
"required": false,
"in": "query",
"description": "Filter bookings with end before this date string.",
+ "example": "?beforeEnd=2025-03-07T11:00:00.000Z",
"schema": {
- "example": "?beforeEnd=2025-03-07T11:00:00.000Z",
"type": "string"
}
},
@@ -8154,8 +8156,8 @@
"required": false,
"in": "query",
"description": "Filter bookings that have been created after this date string.",
+ "example": "?afterCreatedAt=2025-03-07T10:00:00.000Z",
"schema": {
- "example": "?afterCreatedAt=2025-03-07T10:00:00.000Z",
"type": "string"
}
},
@@ -8164,8 +8166,8 @@
"required": false,
"in": "query",
"description": "Filter bookings that have been created before this date string.",
+ "example": "?beforeCreatedAt=2025-03-14T11:00:00.000Z",
"schema": {
- "example": "?beforeCreatedAt=2025-03-14T11:00:00.000Z",
"type": "string"
}
},
@@ -8174,8 +8176,8 @@
"required": false,
"in": "query",
"description": "Filter bookings that have been updated after this date string.",
+ "example": "?afterUpdatedAt=2025-03-07T10:00:00.000Z",
"schema": {
- "example": "?afterUpdatedAt=2025-03-07T10:00:00.000Z",
"type": "string"
}
},
@@ -8184,8 +8186,8 @@
"required": false,
"in": "query",
"description": "Filter bookings that have been updated before this date string.",
+ "example": "?beforeUpdatedAt=2025-03-14T11:00:00.000Z",
"schema": {
- "example": "?beforeUpdatedAt=2025-03-14T11:00:00.000Z",
"type": "string"
}
},
@@ -8194,8 +8196,8 @@
"required": false,
"in": "query",
"description": "Sort results by their start time in ascending or descending order.",
+ "example": "?sortStart=asc OR ?sortStart=desc",
"schema": {
- "example": "?sortStart=asc OR ?sortStart=desc",
"enum": ["asc", "desc"],
"type": "string"
}
@@ -8205,8 +8207,8 @@
"required": false,
"in": "query",
"description": "Sort results by their end time in ascending or descending order.",
+ "example": "?sortEnd=asc OR ?sortEnd=desc",
"schema": {
- "example": "?sortEnd=asc OR ?sortEnd=desc",
"enum": ["asc", "desc"],
"type": "string"
}
@@ -8216,8 +8218,8 @@
"required": false,
"in": "query",
"description": "Sort results by their creation time (when booking was made) in ascending or descending order.",
+ "example": "?sortCreated=asc OR ?sortCreated=desc",
"schema": {
- "example": "?sortCreated=asc OR ?sortCreated=desc",
"enum": ["asc", "desc"],
"type": "string"
}
@@ -8227,8 +8229,8 @@
"required": false,
"in": "query",
"description": "Sort results by their updated time (for example when booking status changes) in ascending or descending order.",
+ "example": "?sortUpdated=asc OR ?sortUpdated=desc",
"schema": {
- "example": "?sortUpdated=asc OR ?sortUpdated=desc",
"enum": ["asc", "desc"],
"type": "string"
}
@@ -8238,9 +8240,9 @@
"required": false,
"in": "query",
"description": "The number of items to return",
+ "example": 10,
"schema": {
"default": 100,
- "example": 10,
"type": "number"
}
},
@@ -8249,9 +8251,9 @@
"required": false,
"in": "query",
"description": "The number of items to skip",
+ "example": 0,
"schema": {
"default": 0,
- "example": 0,
"type": "number"
}
},
@@ -8284,12 +8286,12 @@
"get": {
"operationId": "BookingsController_2024_08_13_getBooking",
"summary": "Get a booking",
- "description": "`:bookingUid` can be\n\n 1. uid of a normal booking\n\n 2. uid of one of the recurring booking recurrences\n\n 3. uid of recurring booking which will return an array of all recurring booking recurrences (stored as recurringBookingUid on one of the individual recurrences).\n \n If you are fetching a seated booking for an event type with 'show attendees' disabled, then to retrieve attendees in the response either set 'show attendees' to true on event type level or\n you have to provide an authentication method of event type owner, host, team admin or owner or org admin or owner.\n ",
+ "description": "`:bookingUid` can be\n\n 1. uid of a normal booking\n\n 2. uid of one of the recurring booking recurrences\n\n 3. uid of recurring booking which will return an array of all recurring booking recurrences (stored as recurringBookingUid on one of the individual recurrences).\n \n If you are fetching a seated booking for an event type with 'show attendees' disabled, then to retrieve attendees in the response either set 'show attendees' to true on event type level or\n you have to provide an authentication method of event type owner, host, team admin or owner or org admin or owner.\n\n Please make sure to pass in the cal-api-version header value as mentioned in the Headers section. Not passing the correct value will default to an older version of this endpoint.\n ",
"parameters": [
{
"name": "cal-api-version",
"in": "header",
- "description": "Must be set to 2024-08-13",
+ "description": "Must be set to 2024-08-13. If not set to this value, the endpoint will default to an older version.",
"required": true,
"schema": {
"type": "string",
@@ -8351,12 +8353,12 @@
"get": {
"operationId": "BookingsController_2024_08_13_getBookingRecordings",
"summary": "Get all the recordings for the booking",
- "description": "Fetches all the recordings for the booking `:bookingUid`",
+ "description": "Fetches all the recordings for the booking `:bookingUid`\n \n Please make sure to pass in the cal-api-version header value as mentioned in the Headers section. Not passing the correct value will default to an older version of this endpoint.\n ",
"parameters": [
{
"name": "cal-api-version",
"in": "header",
- "description": "Must be set to 2024-08-13",
+ "description": "Must be set to 2024-08-13. If not set to this value, the endpoint will default to an older version.",
"required": true,
"schema": {
"type": "string",
@@ -8391,12 +8393,12 @@
"get": {
"operationId": "BookingsController_2024_08_13_getBookingTranscripts",
"summary": "Get all the transcripts download links for the booking",
- "description": "Fetches all the transcripts download links for the booking `:bookingUid`",
+ "description": "Fetches all the transcripts download links for the booking `:bookingUid`\n \n Please make sure to pass in the cal-api-version header value as mentioned in the Headers section. Not passing the correct value will default to an older version of this endpoint.\n ",
"parameters": [
{
"name": "cal-api-version",
"in": "header",
- "description": "Must be set to 2024-08-13",
+ "description": "Must be set to 2024-08-13. If not set to this value, the endpoint will default to an older version.",
"required": true,
"schema": {
"type": "string",
@@ -8431,12 +8433,12 @@
"post": {
"operationId": "BookingsController_2024_08_13_rescheduleBooking",
"summary": "Reschedule a booking",
- "description": "Reschedule a booking or seated booking",
+ "description": "Reschedule a booking or seated booking\n \n Please make sure to pass in the cal-api-version header value as mentioned in the Headers section. Not passing the correct value will default to an older version of this endpoint.\n ",
"parameters": [
{
"name": "cal-api-version",
"in": "header",
- "description": "Must be set to 2024-08-13",
+ "description": "Must be set to 2024-08-13. If not set to this value, the endpoint will default to an older version.",
"required": true,
"schema": {
"type": "string",
@@ -8516,12 +8518,12 @@
"post": {
"operationId": "BookingsController_2024_08_13_cancelBooking",
"summary": "Cancel a booking",
- "description": ":bookingUid can be :bookingUid of an usual booking, individual recurrence or recurring booking to cancel all recurrences.\n \n \nCancelling seated bookings:\n It is possible to cancel specific seat within a booking as an attendee or all of the seats as the host.\n \n1. As an attendee - provide :bookingUid in the request URL `/bookings/:bookingUid/cancel` and seatUid in the request body `{\"seatUid\": \"123-123-123\"}` . This will remove this particular attendance from the booking.\n \n2. As the host - host can cancel booking for all attendees aka for every seat. Provide :bookingUid in the request URL `/bookings/:bookingUid/cancel` and cancellationReason in the request body `{\"cancellationReason\": \"Will travel\"}` and `Authorization: Bearer token` request header where token is event type owner (host) credential. This will cancel the booking for all attendees.\n \n \nCancelling recurring seated bookings:\n For recurring seated bookings it is not possible to cancel all of them with 1 call\n like with non-seated recurring bookings by providing recurring bookind uid - you have to cancel each recurrence booking by its bookingUid + seatUid.\n \n If you are cancelling a seated booking for an event type with 'show attendees' disabled, then to retrieve attendees in the response either set 'show attendees' to true on event type level or\n you have to provide an authentication method of event type owner, host, team admin or owner or org admin or owner.\n ",
+ "description": ":bookingUid can be :bookingUid of an usual booking, individual recurrence or recurring booking to cancel all recurrences.\n \n \nCancelling seated bookings:\n It is possible to cancel specific seat within a booking as an attendee or all of the seats as the host.\n \n1. As an attendee - provide :bookingUid in the request URL `/bookings/:bookingUid/cancel` and seatUid in the request body `{\"seatUid\": \"123-123-123\"}` . This will remove this particular attendance from the booking.\n \n2. As the host - host can cancel booking for all attendees aka for every seat. Provide :bookingUid in the request URL `/bookings/:bookingUid/cancel` and cancellationReason in the request body `{\"cancellationReason\": \"Will travel\"}` and `Authorization: Bearer token` request header where token is event type owner (host) credential. This will cancel the booking for all attendees.\n \n \nCancelling recurring seated bookings:\n For recurring seated bookings it is not possible to cancel all of them with 1 call\n like with non-seated recurring bookings by providing recurring bookind uid - you have to cancel each recurrence booking by its bookingUid + seatUid.\n \n If you are cancelling a seated booking for an event type with 'show attendees' disabled, then to retrieve attendees in the response either set 'show attendees' to true on event type level or\n you have to provide an authentication method of event type owner, host, team admin or owner or org admin or owner.\n\n Please make sure to pass in the cal-api-version header value as mentioned in the Headers section. Not passing the correct value will default to an older version of this endpoint.\n ",
"parameters": [
{
"name": "cal-api-version",
"in": "header",
- "description": "Must be set to 2024-08-13",
+ "description": "Must be set to 2024-08-13. If not set to this value, the endpoint will default to an older version.",
"required": true,
"schema": {
"type": "string",
@@ -8601,12 +8603,12 @@
"post": {
"operationId": "BookingsController_2024_08_13_markNoShow",
"summary": "Mark a booking absence",
- "description": "The provided authorization header refers to the owner of the booking.",
+ "description": "The provided authorization header refers to the owner of the booking.\n \n Please make sure to pass in the cal-api-version header value as mentioned in the Headers section. Not passing the correct value will default to an older version of this endpoint.\n ",
"parameters": [
{
"name": "cal-api-version",
"in": "header",
- "description": "Must be set to 2024-08-13",
+ "description": "Must be set to 2024-08-13. If not set to this value, the endpoint will default to an older version.",
"required": true,
"schema": {
"type": "string",
@@ -8660,12 +8662,12 @@
"post": {
"operationId": "BookingsController_2024_08_13_reassignBooking",
"summary": "Reassign a booking to auto-selected host",
- "description": "Currently only supports reassigning host for round robin bookings. The provided authorization header refers to the owner of the booking.",
+ "description": "Currently only supports reassigning host for round robin bookings. The provided authorization header refers to the owner of the booking.\n \n Please make sure to pass in the cal-api-version header value as mentioned in the Headers section. Not passing the correct value will default to an older version of this endpoint.\n ",
"parameters": [
{
"name": "cal-api-version",
"in": "header",
- "description": "Must be set to 2024-08-13",
+ "description": "Must be set to 2024-08-13. If not set to this value, the endpoint will default to an older version.",
"required": true,
"schema": {
"type": "string",
@@ -8709,12 +8711,12 @@
"post": {
"operationId": "BookingsController_2024_08_13_reassignBookingToUser",
"summary": "Reassign a booking to a specific host",
- "description": "Currently only supports reassigning host for round robin bookings. The provided authorization header refers to the owner of the booking.",
+ "description": "Currently only supports reassigning host for round robin bookings. The provided authorization header refers to the owner of the booking.\n \n Please make sure to pass in the cal-api-version header value as mentioned in the Headers section. Not passing the correct value will default to an older version of this endpoint.\n ",
"parameters": [
{
"name": "cal-api-version",
"in": "header",
- "description": "Must be set to 2024-08-13",
+ "description": "Must be set to 2024-08-13. If not set to this value, the endpoint will default to an older version.",
"required": true,
"schema": {
"type": "string",
@@ -8776,12 +8778,12 @@
"post": {
"operationId": "BookingsController_2024_08_13_confirmBooking",
"summary": "Confirm a booking",
- "description": "The provided authorization header refers to the owner of the booking.",
+ "description": "The provided authorization header refers to the owner of the booking.\n \n Please make sure to pass in the cal-api-version header value as mentioned in the Headers section. Not passing the correct value will default to an older version of this endpoint.\n ",
"parameters": [
{
"name": "cal-api-version",
"in": "header",
- "description": "Must be set to 2024-08-13",
+ "description": "Must be set to 2024-08-13. If not set to this value, the endpoint will default to an older version.",
"required": true,
"schema": {
"type": "string",
@@ -8825,12 +8827,12 @@
"post": {
"operationId": "BookingsController_2024_08_13_declineBooking",
"summary": "Decline a booking",
- "description": "The provided authorization header refers to the owner of the booking.",
+ "description": "The provided authorization header refers to the owner of the booking.\n \n Please make sure to pass in the cal-api-version header value as mentioned in the Headers section. Not passing the correct value will default to an older version of this endpoint. \n ",
"parameters": [
{
"name": "cal-api-version",
"in": "header",
- "description": "Must be set to 2024-08-13",
+ "description": "Must be set to 2024-08-13. If not set to this value, the endpoint will default to an older version.",
"required": true,
"schema": {
"type": "string",
@@ -8884,12 +8886,12 @@
"get": {
"operationId": "BookingsController_2024_08_13_getCalendarLinks",
"summary": "Get 'Add to Calendar' links for a booking",
- "description": "Retrieve calendar links for a booking that can be used to add the event to various calendar services. Returns links for Google Calendar, Microsoft Office, Microsoft Outlook, and a downloadable ICS file.",
+ "description": "Retrieve calendar links for a booking that can be used to add the event to various calendar services. Returns links for Google Calendar, Microsoft Office, Microsoft Outlook, and a downloadable ICS file.\n \n Please make sure to pass in the cal-api-version header value as mentioned in the Headers section. Not passing the correct value will default to an older version of this endpoint. \n ",
"parameters": [
{
"name": "cal-api-version",
"in": "header",
- "description": "Must be set to 2024-08-13",
+ "description": "Must be set to 2024-08-13. If not set to this value, the endpoint will default to an older version.",
"required": true,
"schema": {
"type": "string",
@@ -8933,11 +8935,12 @@
"get": {
"operationId": "BookingsController_2024_08_13_getBookingReferences",
"summary": "Get booking references",
+ "description": "Please make sure to pass in the cal-api-version header value as mentioned in the Headers section. Not passing the correct value will default to an older version of this endpoint.",
"parameters": [
{
"name": "cal-api-version",
"in": "header",
- "description": "Must be set to 2024-08-13",
+ "description": "Must be set to 2024-08-13. If not set to this value, the endpoint will default to an older version.",
"required": true,
"schema": {
"type": "string",
@@ -8957,8 +8960,8 @@
"required": false,
"in": "query",
"description": "Filter booking references by type",
+ "example": "google_calendar",
"schema": {
- "example": "google_calendar",
"enum": [
"google_calendar",
"office365_calendar",
@@ -9184,8 +9187,8 @@
"required": true,
"in": "query",
"description": "The timezone of the logged in user represented as a string",
+ "example": "America/New_York",
"schema": {
- "example": "America/New_York",
"type": "string"
}
},
@@ -9194,8 +9197,8 @@
"required": false,
"in": "query",
"description": "The starting date for the busy times query",
+ "example": "2023-10-01",
"schema": {
- "example": "2023-10-01",
"type": "string"
}
},
@@ -9204,8 +9207,8 @@
"required": false,
"in": "query",
"description": "The ending date for the busy times query",
+ "example": "2023-10-31",
"schema": {
- "example": "2023-10-31",
"type": "string"
}
},
@@ -9825,11 +9828,12 @@
"post": {
"operationId": "EventTypesController_2024_06_14_createEventType",
"summary": "Create an event type",
+ "description": "Please make sure to pass in the cal-api-version header value as mentioned in the Headers section. Not passing the correct value will default to an older version of this endpoint.",
"parameters": [
{
"name": "cal-api-version",
"in": "header",
- "description": "Must be set to 2024-06-14",
+ "description": "Must be set to 2024-06-14. If not set to this value, the endpoint will default to an older version.",
"required": true,
"schema": {
"type": "string",
@@ -9873,12 +9877,12 @@
"get": {
"operationId": "EventTypesController_2024_06_14_getEventTypes",
"summary": "Get all event types",
- "description": "Hidden event types are returned only if authentication is provided and it belongs to the event type owner.",
+ "description": "Hidden event types are returned only if authentication is provided and it belongs to the event type owner.\n \n Please make sure to pass in the cal-api-version header value as mentioned in the Headers section. Not passing the correct value will default to an older version of this endpoint.\n ",
"parameters": [
{
"name": "cal-api-version",
"in": "header",
- "description": "Must be set to 2024-06-14",
+ "description": "Must be set to 2024-06-14. If not set to this value, the endpoint will default to an older version.",
"required": true,
"schema": {
"type": "string",
@@ -9977,11 +9981,12 @@
"get": {
"operationId": "EventTypesController_2024_06_14_getEventTypeById",
"summary": "Get an event type",
+ "description": "Please make sure to pass in the cal-api-version header value as mentioned in the Headers section. Not passing the correct value will default to an older version of this endpoint.",
"parameters": [
{
"name": "cal-api-version",
"in": "header",
- "description": "Must be set to 2024-06-14",
+ "description": "Must be set to 2024-06-14. If not set to this value, the endpoint will default to an older version.",
"required": true,
"schema": {
"type": "string",
@@ -10023,11 +10028,12 @@
"patch": {
"operationId": "EventTypesController_2024_06_14_updateEventType",
"summary": "Update an event type",
+ "description": "Please make sure to pass in the cal-api-version header value as mentioned in the Headers section. Not passing the correct value will default to an older version of this endpoint.",
"parameters": [
{
"name": "cal-api-version",
"in": "header",
- "description": "Must be set to 2024-06-14",
+ "description": "Must be set to 2024-06-14. If not set to this value, the endpoint will default to an older version.",
"required": true,
"schema": {
"type": "string",
@@ -10079,11 +10085,12 @@
"delete": {
"operationId": "EventTypesController_2024_06_14_deleteEventType",
"summary": "Delete an event type",
+ "description": "Please make sure to pass in the cal-api-version header value as mentioned in the Headers section. Not passing the correct value will default to an older version of this endpoint.",
"parameters": [
{
"name": "cal-api-version",
"in": "header",
- "description": "Must be set to 2024-06-14",
+ "description": "Must be set to 2024-06-14. If not set to this value, the endpoint will default to an older version.",
"required": true,
"schema": {
"type": "string",
@@ -10196,11 +10203,11 @@
"required": false,
"in": "query",
"description": "Maximum number of items to return",
+ "example": 25,
"schema": {
"minimum": 1,
"maximum": 250,
"default": 250,
- "example": 25,
"type": "number"
}
},
@@ -10209,10 +10216,10 @@
"required": false,
"in": "query",
"description": "Number of items to skip",
+ "example": 0,
"schema": {
"minimum": 0,
"default": 0,
- "example": 0,
"type": "number"
}
}
@@ -10649,11 +10656,11 @@
"required": false,
"in": "query",
"description": "Maximum number of items to return",
+ "example": 25,
"schema": {
"minimum": 1,
"maximum": 250,
"default": 250,
- "example": 25,
"type": "number"
}
},
@@ -10662,10 +10669,10 @@
"required": false,
"in": "query",
"description": "Number of items to skip",
+ "example": 0,
"schema": {
"minimum": 0,
"default": 0,
- "example": 0,
"type": "number"
}
},
@@ -10673,9 +10680,9 @@
"name": "slug",
"required": false,
"in": "query",
+ "example": "organization-slug",
"description": "The slug of the managed organization",
"schema": {
- "example": "organization-slug",
"type": "string"
}
},
@@ -10683,9 +10690,9 @@
"name": "metadataKey",
"required": false,
"in": "query",
+ "example": "metadata-key",
"description": "The key of the metadata - it is case sensitive so provide exactly as stored. If you provide it then you must also provide metadataValue",
"schema": {
- "example": "metadata-key",
"type": "string"
}
},
@@ -10693,9 +10700,9 @@
"name": "metadataValue",
"required": false,
"in": "query",
+ "example": "metadata-value",
"description": "The value of the metadata - it is case sensitive so provide exactly as stored. If you provide it then you must also provide metadataKey",
"schema": {
- "example": "metadata-value",
"type": "string"
}
}
@@ -11327,11 +11334,11 @@
"required": false,
"in": "query",
"description": "Maximum number of items to return",
+ "example": 25,
"schema": {
"minimum": 1,
"maximum": 250,
"default": 250,
- "example": 25,
"type": "number"
}
},
@@ -11340,10 +11347,10 @@
"required": false,
"in": "query",
"description": "Number of items to skip",
+ "example": 0,
"schema": {
"minimum": 0,
"default": 0,
- "example": 0,
"type": "number"
}
},
@@ -11390,11 +11397,11 @@
"required": false,
"in": "query",
"description": "Maximum number of items to return",
+ "example": 25,
"schema": {
"minimum": 1,
"maximum": 250,
"default": 250,
- "example": 25,
"type": "number"
}
},
@@ -11403,10 +11410,10 @@
"required": false,
"in": "query",
"description": "Number of items to skip",
+ "example": 0,
"schema": {
"minimum": 0,
"default": 0,
- "example": 0,
"type": "number"
}
},
@@ -11547,8 +11554,8 @@
"required": true,
"in": "query",
"description": "\n Time starting from which available slots should be checked.\n \n Must be in UTC timezone as ISO 8601 datestring.\n \n You can pass date without hours which defaults to start of day or specify hours:\n 2024-08-13 (will have hours 00:00:00 aka at very beginning of the date) or you can specify hours manually like 2024-08-13T09:00:00Z\n ",
+ "example": "2050-09-05",
"schema": {
- "example": "2050-09-05",
"type": "string"
}
},
@@ -11557,8 +11564,8 @@
"required": true,
"in": "query",
"description": "\n Time until which available slots should be checked.\n \n Must be in UTC timezone as ISO 8601 datestring.\n \n You can pass date without hours which defaults to end of day or specify hours:\n 2024-08-20 (will have hours 23:59:59 aka at the very end of the date) or you can specify hours manually like 2024-08-20T18:00:00Z",
+ "example": "2050-09-06",
"schema": {
- "example": "2050-09-06",
"type": "string"
}
},
@@ -11567,8 +11574,8 @@
"required": false,
"in": "query",
"description": "Time zone in which the available slots should be returned. Defaults to UTC.",
+ "example": "Europe/Rome",
"schema": {
- "example": "Europe/Rome",
"type": "string"
}
},
@@ -11577,8 +11584,8 @@
"required": false,
"in": "query",
"description": "If event type has multiple possible durations then you can specify the desired duration here. Also, if you are fetching slots for a dynamic event then you can specify the duration her which defaults to 30, meaning that returned slots will be each 30 minutes long.",
+ "example": "60",
"schema": {
- "example": "60",
"type": "number"
}
},
@@ -11587,8 +11594,8 @@
"required": false,
"in": "query",
"description": "Format of slot times in response. Use 'range' to get start and end times.",
+ "example": "range",
"schema": {
- "example": "range",
"enum": ["range", "time"],
"type": "string"
}
@@ -11598,8 +11605,8 @@
"required": false,
"in": "query",
"description": "The unique identifier of the booking being rescheduled. When provided will ensure that the original booking time appears within the returned available slots when rescheduling.",
+ "example": "abc123def456",
"schema": {
- "example": "abc123def456",
"type": "string"
}
},
@@ -11631,7 +11638,7 @@
"post": {
"operationId": "SchedulesController_2024_06_11_createSchedule",
"summary": "Create a schedule",
- "description": "\n Create a schedule for the authenticated user.\n\n The point of creating schedules is for event types to be available at specific times.\n\n The first goal of schedules is to have a default schedule. If you are platform customer and created managed users, then it is important to note that each managed user should have a default schedule.\n 1. If you passed `timeZone` when creating managed user, then the default schedule from Monday to Friday from 9AM to 5PM will be created with that timezone. The managed user can then change the default schedule via the `AvailabilitySettings` atom.\n 2. If you did not, then we assume you want the user to have this specific schedule right away. You should create a default schedule by specifying\n `\"isDefault\": true` in the request body. Until the user has a default schedule the user can't be booked nor manage their schedule via the AvailabilitySettings atom.\n\n The second goal of schedules is to create another schedule that event types can point to. This is useful for when an event is booked because availability is not checked against the default schedule but instead against that specific schedule.\n After creating a non-default schedule, you can update an event type to point to that schedule via the PATCH `event-types/{eventTypeId}` endpoint.\n\n When specifying start time and end time for each day use the 24 hour format e.g. 08:00, 15:00 etc.\n ",
+ "description": "\n Create a schedule for the authenticated user.\n\n The point of creating schedules is for event types to be available at specific times.\n\n The first goal of schedules is to have a default schedule. If you are platform customer and created managed users, then it is important to note that each managed user should have a default schedule.\n 1. If you passed `timeZone` when creating managed user, then the default schedule from Monday to Friday from 9AM to 5PM will be created with that timezone. The managed user can then change the default schedule via the `AvailabilitySettings` atom.\n 2. If you did not, then we assume you want the user to have this specific schedule right away. You should create a default schedule by specifying\n `\"isDefault\": true` in the request body. Until the user has a default schedule the user can't be booked nor manage their schedule via the AvailabilitySettings atom.\n\n The second goal of schedules is to create another schedule that event types can point to. This is useful for when an event is booked because availability is not checked against the default schedule but instead against that specific schedule.\n After creating a non-default schedule, you can update an event type to point to that schedule via the PATCH `event-types/{eventTypeId}` endpoint.\n\n When specifying start time and end time for each day use the 24 hour format e.g. 08:00, 15:00 etc.\n\n Please make sure to pass in the cal-api-version header value as mentioned in the Headers section. Not passing the correct value will default to an older version of this endpoint.\n ",
"parameters": [
{
"name": "Authorization",
@@ -11645,7 +11652,7 @@
{
"name": "cal-api-version",
"in": "header",
- "description": "Must be set to 2024-06-11",
+ "description": "Must be set to 2024-06-11. If not set to this value, the endpoint will default to an older version.",
"required": true,
"schema": {
"type": "string",
@@ -11680,7 +11687,7 @@
"get": {
"operationId": "SchedulesController_2024_06_11_getSchedules",
"summary": "Get all schedules",
- "description": "Get all schedules of the authenticated user.",
+ "description": "Get all schedules of the authenticated user.\n \n Please make sure to pass in the cal-api-version header value as mentioned in the Headers section. Not passing the correct value will default to an older version of this endpoint.\n ",
"parameters": [
{
"name": "Authorization",
@@ -11694,7 +11701,7 @@
{
"name": "cal-api-version",
"in": "header",
- "description": "Must be set to 2024-06-11",
+ "description": "Must be set to 2024-06-11. If not set to this value, the endpoint will default to an older version.",
"required": true,
"schema": {
"type": "string",
@@ -11721,7 +11728,7 @@
"get": {
"operationId": "SchedulesController_2024_06_11_getDefaultSchedule",
"summary": "Get default schedule",
- "description": "Get the default schedule of the authenticated user.",
+ "description": "Get the default schedule of the authenticated user.\n \n Please make sure to pass in the cal-api-version header value as mentioned in the Headers section. Not passing the correct value will default to an older version of this endpoint.\n ",
"parameters": [
{
"name": "Authorization",
@@ -11735,7 +11742,7 @@
{
"name": "cal-api-version",
"in": "header",
- "description": "Must be set to 2024-06-11",
+ "description": "Must be set to 2024-06-11. If not set to this value, the endpoint will default to an older version.",
"required": true,
"schema": {
"type": "string",
@@ -11762,6 +11769,7 @@
"get": {
"operationId": "SchedulesController_2024_06_11_getSchedule",
"summary": "Get a schedule",
+ "description": "Please make sure to pass in the cal-api-version header value as mentioned in the Headers section. Not passing the correct value will default to an older version of this endpoint.",
"parameters": [
{
"name": "Authorization",
@@ -11775,7 +11783,7 @@
{
"name": "cal-api-version",
"in": "header",
- "description": "Must be set to 2024-06-11",
+ "description": "Must be set to 2024-06-11. If not set to this value, the endpoint will default to an older version.",
"required": true,
"schema": {
"type": "string",
@@ -11808,6 +11816,7 @@
"patch": {
"operationId": "SchedulesController_2024_06_11_updateSchedule",
"summary": "Update a schedule",
+ "description": "Please make sure to pass in the cal-api-version header value as mentioned in the Headers section. Not passing the correct value will default to an older version of this endpoint.",
"parameters": [
{
"name": "Authorization",
@@ -11821,7 +11830,7 @@
{
"name": "cal-api-version",
"in": "header",
- "description": "Must be set to 2024-06-11",
+ "description": "Must be set to 2024-06-11. If not set to this value, the endpoint will default to an older version.",
"required": true,
"schema": {
"type": "string",
@@ -11864,6 +11873,7 @@
"delete": {
"operationId": "SchedulesController_2024_06_11_deleteSchedule",
"summary": "Delete a schedule",
+ "description": "Please make sure to pass in the cal-api-version header value as mentioned in the Headers section. Not passing the correct value will default to an older version of this endpoint.",
"parameters": [
{
"name": "Authorization",
@@ -11877,7 +11887,7 @@
{
"name": "cal-api-version",
"in": "header",
- "description": "Must be set to 2024-06-11",
+ "description": "Must be set to 2024-06-11. If not set to this value, the endpoint will default to an older version.",
"required": true,
"schema": {
"type": "string",
@@ -12012,12 +12022,12 @@
"get": {
"operationId": "SlotsController_2024_09_04_getAvailableSlots",
"summary": "Get available time slots for an event type",
- "description": "\n There are 4 ways to get available slots for event type of an individual user:\n\n 1. By event type id. Event type id can be of user and team event types. Example '/v2/slots?eventTypeId=10&start=2050-09-05&end=2050-09-06&timeZone=Europe/Rome'\n\n 2. By event type slug + username. Example '/v2/slots?eventTypeSlug=intro&username=bob&start=2050-09-05&end=2050-09-06'\n\n 3. By event type slug + username + organization slug when searching within an organization. Example '/v2/slots?organizationSlug=org-slug&eventTypeSlug=intro&username=bob&start=2050-09-05&end=2050-09-06'\n\n 4. By usernames only (used for dynamic event type - there is no specific event but you want to know when 2 or more people are available). Example '/v2/slots?usernames=alice,bob&username=bob&organizationSlug=org-slug&start=2050-09-05&end=2050-09-06'. As you see you also need to provide the slug of the organization to which each user in the 'usernames' array belongs.\n\n And 3 ways to get available slots for team event type:\n\n 1. By team event type id. Example '/v2/slots?eventTypeId=10&start=2050-09-05&end=2050-09-06&timeZone=Europe/Rome'\n\n 2. By team event type slug + team slug. Example '/v2/slots?eventTypeSlug=intro&teamSlug=team-slug&start=2050-09-05&end=2050-09-06'\n\n 3. By team event type slug + team slug + organization slug when searching within an organization. Example '/v2/slots?organizationSlug=org-slug&eventTypeSlug=intro&teamSlug=team-slug&start=2050-09-05&end=2050-09-06'\n\n All of them require \"start\" and \"end\" query parameters which define the time range for which available slots should be checked.\n Optional parameters are:\n - timeZone: Time zone in which the available slots should be returned. Defaults to UTC.\n - duration: Only use for event types that allow multiple durations or for dynamic event types. If not passed for multiple duration event types defaults to default duration. For dynamic event types defaults to 30 aka each returned slot is 30 minutes long. So duration=60 means that returned slots will be each 60 minutes long.\n - format: Format of the slots. By default return is an object where each key is date and value is array of slots as string. If you want to get start and end of each slot use \"range\" as value.\n - bookingUidToReschedule: When rescheduling an existing booking, provide the booking's unique identifier to exclude its time slot from busy time calculations. This ensures the original booking time appears as available for rescheduling.\n ",
+ "description": "\n There are 4 ways to get available slots for event type of an individual user:\n\n 1. By event type id. Event type id can be of user and team event types. Example '/v2/slots?eventTypeId=10&start=2050-09-05&end=2050-09-06&timeZone=Europe/Rome'\n\n 2. By event type slug + username. Example '/v2/slots?eventTypeSlug=intro&username=bob&start=2050-09-05&end=2050-09-06'\n\n 3. By event type slug + username + organization slug when searching within an organization. Example '/v2/slots?organizationSlug=org-slug&eventTypeSlug=intro&username=bob&start=2050-09-05&end=2050-09-06'\n\n 4. By usernames only (used for dynamic event type - there is no specific event but you want to know when 2 or more people are available). Example '/v2/slots?usernames=alice,bob&username=bob&organizationSlug=org-slug&start=2050-09-05&end=2050-09-06'. As you see you also need to provide the slug of the organization to which each user in the 'usernames' array belongs.\n\n And 3 ways to get available slots for team event type:\n\n 1. By team event type id. Example '/v2/slots?eventTypeId=10&start=2050-09-05&end=2050-09-06&timeZone=Europe/Rome'\n\n 2. By team event type slug + team slug. Example '/v2/slots?eventTypeSlug=intro&teamSlug=team-slug&start=2050-09-05&end=2050-09-06'\n\n 3. By team event type slug + team slug + organization slug when searching within an organization. Example '/v2/slots?organizationSlug=org-slug&eventTypeSlug=intro&teamSlug=team-slug&start=2050-09-05&end=2050-09-06'\n\n All of them require \"start\" and \"end\" query parameters which define the time range for which available slots should be checked.\n Optional parameters are:\n - timeZone: Time zone in which the available slots should be returned. Defaults to UTC.\n - duration: Only use for event types that allow multiple durations or for dynamic event types. If not passed for multiple duration event types defaults to default duration. For dynamic event types defaults to 30 aka each returned slot is 30 minutes long. So duration=60 means that returned slots will be each 60 minutes long.\n - format: Format of the slots. By default return is an object where each key is date and value is array of slots as string. If you want to get start and end of each slot use \"range\" as value.\n - bookingUidToReschedule: When rescheduling an existing booking, provide the booking's unique identifier to exclude its time slot from busy time calculations. This ensures the original booking time appears as available for rescheduling.\n\n Please make sure to pass in the cal-api-version header value as mentioned in the Headers section. Not passing the correct value will default to an older version of this endpoint.\n ",
"parameters": [
{
"name": "cal-api-version",
"in": "header",
- "description": "Must be set to 2024-09-04",
+ "description": "Must be set to 2024-09-04. If not set to this value, the endpoint will default to an older version.",
"required": true,
"schema": {
"type": "string",
@@ -12029,108 +12039,96 @@
"required": false,
"in": "query",
"description": "The unique identifier of the booking being rescheduled. When provided will ensure that the original booking time appears within the returned available slots when rescheduling.",
- "schema": {
- "example": "abc123def456"
- }
+ "example": "abc123def456",
+ "schema": {}
},
{
"name": "start",
"required": true,
"in": "query",
"description": "\n Time starting from which available slots should be checked.\n\n Must be in UTC timezone as ISO 8601 datestring.\n\n You can pass date without hours which defaults to start of day or specify hours:\n 2024-08-13 (will have hours 00:00:00 aka at very beginning of the date) or you can specify hours manually like 2024-08-13T09:00:00Z.",
- "schema": {
- "example": "2050-09-05"
- }
+ "example": "2050-09-05",
+ "schema": {}
},
{
"name": "end",
"required": true,
"in": "query",
"description": "\n Time until which available slots should be checked.\n\n Must be in UTC timezone as ISO 8601 datestring.\n\n You can pass date without hours which defaults to end of day or specify hours:\n 2024-08-20 (will have hours 23:59:59 aka at the very end of the date) or you can specify hours manually like 2024-08-20T18:00:00Z.",
- "schema": {
- "example": "2050-09-06"
- }
+ "example": "2050-09-06",
+ "schema": {}
},
{
"name": "organizationSlug",
"required": false,
"in": "query",
"description": "The slug of the organization to which user with username belongs or team with teamSlug belongs.",
- "schema": {
- "example": "org-slug"
- }
+ "example": "org-slug",
+ "schema": {}
},
{
"name": "teamSlug",
"required": false,
"in": "query",
"description": "The slug of the team who owns event type with eventTypeSlug - used when slots are checked for team event type.",
- "schema": {
- "example": "team-slug"
- }
+ "example": "team-slug",
+ "schema": {}
},
{
"name": "username",
"required": false,
"in": "query",
"description": "The username of the user who owns event type with eventTypeSlug - used when slots are checked for individual user event type.",
- "schema": {
- "example": "bob"
- }
+ "example": "bob",
+ "schema": {}
},
{
"name": "eventTypeSlug",
"required": false,
"in": "query",
"description": "The slug of the event type for which available slots should be checked. If slug is provided then username or teamSlug must be provided too and if relevant organizationSlug too.",
- "schema": {
- "example": "event-type-slug"
- }
+ "example": "event-type-slug",
+ "schema": {}
},
{
"name": "eventTypeId",
"required": false,
"in": "query",
"description": "The ID of the event type for which available slots should be checked.",
- "schema": {
- "example": "100"
- }
+ "example": "100",
+ "schema": {}
},
{
"name": "usernames",
"required": false,
"in": "query",
"description": "The usernames for which available slots should be checked separated by a comma.\n\n Checking slots by usernames is used mainly for dynamic events where there is no specific event but we just want to know when 2 or more people are available.\n\n Must contain at least 2 usernames.",
- "schema": {
- "example": "alice,bob"
- }
+ "example": "alice,bob",
+ "schema": {}
},
{
"name": "format",
"required": false,
"in": "query",
"description": "Format of slot times in response. Use 'range' to get start and end times. Use 'time' or omit this query parameter to get only start time.",
- "schema": {
- "example": "range"
- }
+ "example": "range",
+ "schema": {}
},
{
"name": "duration",
"required": false,
"in": "query",
"description": "If event type has multiple possible durations then you can specify the desired duration here. Also, if you are fetching slots for a dynamic event then you can specify the duration her which defaults to 30, meaning that returned slots will be each 30 minutes long.",
- "schema": {
- "example": "60"
- }
+ "example": "60",
+ "schema": {}
},
{
"name": "timeZone",
"required": false,
"in": "query",
"description": "Time zone in which the available slots should be returned. Defaults to UTC.",
- "schema": {
- "example": "Europe/Rome"
- }
+ "example": "Europe/Rome",
+ "schema": {}
}
],
"responses": {
@@ -12227,12 +12225,12 @@
"post": {
"operationId": "SlotsController_2024_09_04_reserveSlot",
"summary": "Reserve a slot",
- "description": "Make a slot not available for others to book for a certain period of time. If you authenticate using oAuth credentials, api key or access token\n then you can also specify custom duration for how long the slot should be reserved for (defaults to 5 minutes).",
+ "description": "Make a slot not available for others to book for a certain period of time. If you authenticate using oAuth credentials, api key or access token\n then you can also specify custom duration for how long the slot should be reserved for (defaults to 5 minutes).\n \n Please make sure to pass in the cal-api-version header value as mentioned in the Headers section. Not passing the correct value will default to an older version of this endpoint. \n ",
"parameters": [
{
"name": "cal-api-version",
"in": "header",
- "description": "Must be set to 2024-09-04",
+ "description": "Must be set to 2024-09-04. If not set to this value, the endpoint will default to an older version.",
"required": true,
"schema": {
"type": "string",
@@ -12287,11 +12285,12 @@
"get": {
"operationId": "SlotsController_2024_09_04_getReservedSlot",
"summary": "Get reserved slot",
+ "description": "Please make sure to pass in the cal-api-version header value as mentioned in the Headers section. Not passing the correct value will default to an older version of this endpoint.",
"parameters": [
{
"name": "cal-api-version",
"in": "header",
- "description": "Must be set to 2024-09-04",
+ "description": "Must be set to 2024-09-04. If not set to this value, the endpoint will default to an older version.",
"required": true,
"schema": {
"type": "string",
@@ -12324,11 +12323,12 @@
"patch": {
"operationId": "SlotsController_2024_09_04_updateReservedSlot",
"summary": "Update a reserved slot",
+ "description": "Please make sure to pass in the cal-api-version header value as mentioned in the Headers section. Not passing the correct value will default to an older version of this endpoint.",
"parameters": [
{
"name": "cal-api-version",
"in": "header",
- "description": "Must be set to 2024-09-04",
+ "description": "Must be set to 2024-09-04. If not set to this value, the endpoint will default to an older version.",
"required": true,
"schema": {
"type": "string",
@@ -12371,11 +12371,12 @@
"delete": {
"operationId": "SlotsController_2024_09_04_deleteReservedSlot",
"summary": "Delete a reserved slot",
+ "description": "Please make sure to pass in the cal-api-version header value as mentioned in the Headers section. Not passing the correct value will default to an older version of this endpoint.",
"parameters": [
{
"name": "cal-api-version",
"in": "header",
- "description": "Must be set to 2024-09-04",
+ "description": "Must be set to 2024-09-04. If not set to this value, the endpoint will default to an older version.",
"required": true,
"schema": {
"type": "string",
@@ -13037,6 +13038,7 @@
"get": {
"operationId": "TeamsMembershipsController_getTeamMemberships",
"summary": "Get all memberships",
+ "description": "Retrieve team memberships with optional filtering by email addresses. Supports pagination.",
"parameters": [
{
"name": "Authorization",
@@ -13060,11 +13062,11 @@
"required": false,
"in": "query",
"description": "Maximum number of items to return",
+ "example": 25,
"schema": {
"minimum": 1,
"maximum": 250,
"default": 250,
- "example": 25,
"type": "number"
}
},
@@ -13073,12 +13075,25 @@
"required": false,
"in": "query",
"description": "Number of items to skip",
+ "example": 0,
"schema": {
"minimum": 0,
"default": 0,
- "example": 0,
"type": "number"
}
+ },
+ {
+ "name": "emails",
+ "required": false,
+ "in": "query",
+ "description": "Filter team memberships by email addresses. If you want to filter by multiple emails, separate them with a comma (max 20 emails for performance).",
+ "example": "?emails=user1@example.com,user2@example.com",
+ "schema": {
+ "type": "array",
+ "items": {
+ "type": "string"
+ }
+ }
}
],
"responses": {
@@ -13267,11 +13282,11 @@
"required": false,
"in": "query",
"description": "Maximum number of items to return",
+ "example": 25,
"schema": {
"minimum": 1,
"maximum": 250,
"default": 250,
- "example": 25,
"type": "number"
}
},
@@ -13280,10 +13295,10 @@
"required": false,
"in": "query",
"description": "Number of items to skip",
+ "example": 0,
"schema": {
"minimum": 0,
"default": 0,
- "example": 0,
"type": "number"
}
}
@@ -13501,11 +13516,11 @@
"required": false,
"in": "query",
"description": "Maximum number of items to return",
+ "example": 25,
"schema": {
"minimum": 1,
"maximum": 250,
"default": 250,
- "example": 25,
"type": "number"
}
},
@@ -13514,10 +13529,10 @@
"required": false,
"in": "query",
"description": "Number of items to skip",
+ "example": 0,
"schema": {
"minimum": 0,
"default": 0,
- "example": 0,
"type": "number"
}
},
@@ -13564,11 +13579,11 @@
"required": false,
"in": "query",
"description": "Maximum number of items to return",
+ "example": 25,
"schema": {
"minimum": 1,
"maximum": 250,
"default": 250,
- "example": 25,
"type": "number"
}
},
@@ -13577,10 +13592,10 @@
"required": false,
"in": "query",
"description": "Number of items to skip",
+ "example": 0,
"schema": {
"minimum": 0,
"default": 0,
- "example": 0,
"type": "number"
}
},
@@ -13875,11 +13890,11 @@
"required": false,
"in": "query",
"description": "Maximum number of items to return",
+ "example": 25,
"schema": {
"minimum": 1,
"maximum": 250,
"default": 250,
- "example": 25,
"type": "number"
}
},
@@ -13888,10 +13903,10 @@
"required": false,
"in": "query",
"description": "Number of items to skip",
+ "example": 0,
"schema": {
"minimum": 0,
"default": 0,
- "example": 0,
"type": "number"
}
},
@@ -13930,11 +13945,11 @@
"required": false,
"in": "query",
"description": "Maximum number of items to return",
+ "example": 25,
"schema": {
"minimum": 1,
"maximum": 250,
"default": 250,
- "example": 25,
"type": "number"
}
},
@@ -13943,10 +13958,10 @@
"required": false,
"in": "query",
"description": "Number of items to skip",
+ "example": 0,
"schema": {
"minimum": 0,
"default": 0,
- "example": 0,
"type": "number"
}
},
@@ -14109,11 +14124,11 @@
"required": false,
"in": "query",
"description": "Maximum number of items to return",
+ "example": 25,
"schema": {
"minimum": 1,
"maximum": 250,
"default": 250,
- "example": 25,
"type": "number"
}
},
@@ -14122,10 +14137,10 @@
"required": false,
"in": "query",
"description": "Number of items to skip",
+ "example": 0,
"schema": {
"minimum": 0,
"default": 0,
- "example": 0,
"type": "number"
}
}
@@ -21298,10 +21313,10 @@
"type": "string",
"description": "Trigger type for the workflow",
"example": "formSubmitted",
- "enum": ["formSubmitted"]
+ "enum": ["formSubmitted", "formSubmittedNoEvent"]
},
"offset": {
- "description": "Offset details (present for BEFORE_EVENT/AFTER_EVENT)",
+ "description": "Offset details (present for BEFORE_EVENT/AFTER_EVENT/FORM_SUBMITTED_NO_EVENT)",
"allOf": [
{
"$ref": "#/components/schemas/WorkflowTriggerOffsetOutputDto"
@@ -21523,7 +21538,7 @@
"type": "object",
"properties": {
"offset": {
- "description": "Offset before/after the trigger time; required for BEFORE_EVENT and AFTER_EVENT only",
+ "description": "Offset before/after the trigger time; required for BEFORE_EVENT, AFTER_EVENT, and FORM_SUBMITTED_NO_EVENT",
"allOf": [
{
"$ref": "#/components/schemas/WorkflowTriggerOffsetDto"
@@ -21544,7 +21559,7 @@
"type": "object",
"properties": {
"offset": {
- "description": "Offset before/after the trigger time; required for BEFORE_EVENT and AFTER_EVENT only",
+ "description": "Offset before/after the trigger time; required for BEFORE_EVENT, AFTER_EVENT, and FORM_SUBMITTED_NO_EVENT",
"allOf": [
{
"$ref": "#/components/schemas/WorkflowTriggerOffsetDto"
@@ -21656,7 +21671,7 @@
"type": "object",
"properties": {
"offset": {
- "description": "Offset before/after the trigger time; required for BEFORE_EVENT and AFTER_EVENT only",
+ "description": "Offset before/after the trigger time; required for BEFORE_EVENT, AFTER_EVENT, and FORM_SUBMITTED_NO_EVENT",
"allOf": [
{
"$ref": "#/components/schemas/WorkflowTriggerOffsetDto"
@@ -21677,7 +21692,7 @@
"type": "object",
"properties": {
"offset": {
- "description": "Offset before/after the trigger time; required for BEFORE_EVENT and AFTER_EVENT only",
+ "description": "Offset before/after the trigger time; required for BEFORE_EVENT, AFTER_EVENT, and FORM_SUBMITTED_NO_EVENT",
"allOf": [
{
"$ref": "#/components/schemas/WorkflowTriggerOffsetDto"
@@ -22314,12 +22329,33 @@
},
"required": ["type"]
},
+ "OnFormSubmittedNoEventTriggerDto": {
+ "type": "object",
+ "properties": {
+ "offset": {
+ "description": "Offset before/after the trigger time; required for BEFORE_EVENT, AFTER_EVENT, and FORM_SUBMITTED_NO_EVENT",
+ "allOf": [
+ {
+ "$ref": "#/components/schemas/WorkflowTriggerOffsetDto"
+ }
+ ]
+ },
+ "type": {
+ "type": "string",
+ "default": "formSubmittedNoEvent",
+ "enum": ["formSubmittedNoEvent"],
+ "description": "Trigger type for the workflow",
+ "example": "formSubmittedNoEvent"
+ }
+ },
+ "required": ["offset", "type"]
+ },
"RoutingFormWorkflowTriggerDto": {
"type": "object",
"properties": {
"type": {
- "type": "string",
- "enum": ["formSubmitted"],
+ "type": "object",
+ "enum": ["formSubmitted", "formSubmittedNoEvent"],
"description": "Trigger type for the routing-form workflow",
"example": "formSubmitted"
}
@@ -22362,15 +22398,13 @@
]
},
"trigger": {
- "description": "Trigger configuration for the routing-form workflow, allowed triggers are formSubmitted",
+ "description": "Trigger configuration for the routing-form workflow, allowed triggers are formSubmitted,formSubmittedNoEvent",
"oneOf": [
{
"$ref": "#/components/schemas/OnFormSubmittedTriggerDto"
- }
- ],
- "allOf": [
+ },
{
- "$ref": "#/components/schemas/OnFormSubmittedTriggerDto"
+ "$ref": "#/components/schemas/OnFormSubmittedNoEventTriggerDto"
}
]
},
@@ -22963,15 +22997,13 @@
"example": "Rounting-form Test Workflow"
},
"trigger": {
- "description": "Trigger configuration for the routing-form workflow, allowed triggers are formSubmitted",
+ "description": "Trigger configuration for the routing-form workflow, allowed triggers are formSubmitted,formSubmittedNoEvent",
"oneOf": [
{
"$ref": "#/components/schemas/OnFormSubmittedTriggerDto"
- }
- ],
- "allOf": [
+ },
{
- "$ref": "#/components/schemas/OnFormSubmittedTriggerDto"
+ "$ref": "#/components/schemas/OnFormSubmittedNoEventTriggerDto"
}
]
},
@@ -26881,6 +26913,10 @@
"type": "string",
"example": "3be561a9-31f1-4b8e-aefc-9d9a085f0dd1",
"description": "Uid of the specific seat within booking."
+ },
+ "cancellationReason": {
+ "type": "string",
+ "example": "User requested cancellation"
}
},
"required": ["seatUid"]