action attio_list_meetings { label: "List meetings" description: "Lists all meetings in the workspace using a deterministic sort order. When both the `participants` and `linked_record_id` filters are supplied, they are combined with OR: meetings that match either filter are returned.\n\nThis endpoint is in beta. We will aim to avoid breaking changes, but small updates may be made as we roll out to more users.\n\nRequired scopes: `meeting:read`, `record_permission:read`." provider: attio method: GET path: "/v2/meetings" encoding: json scopes: ["meeting:read", "record_permission:read"] input: { type: "object" properties: { cursor: { type: "string" description: "A pagination cursor used to fetch the next page of meetings. Responses with more meetings will include a cursor for you to use here. If not provided, the first page will be returned." } ends_from: { type: ["string", "null"] description: "Use `ends_from` to filter meetings to only those that end after the specified timestamp. `ends_from` is inclusive, meaning that meetings that end at the exact timestamp will be included in results. When evaluating all-day meetings, we filter results from the perspective of a specific timezone (see `timezone` for more information)." } limit: { type: "integer" description: "The maximum number of meetings to return. Must be between 1 and 200. Defaults to 50." } linked_object: { type: "string" description: "The object to filter meetings by. Must be a valid object slug or ID. If provided, linked_record_id must also be provided." } linked_record_id: { type: "string" format: "uuid" description: "Used to filter meetings to only those values that include a specific linked record. Must be a valid record ID. If provided, linked_object must also be provided. When combined with `participants`, the filters are combined with OR: meetings matching either filter are returned." } participants: { type: "string" description: "A comma-separated list of emails to filter meetings by. If provided, meetings will be filtered to only include meetings that include at least one of the provided emails as participants. When combined with `linked_record_id`, the filters are combined with OR: meetings matching either filter are returned." } sort: { type: "string" description: "The order in which to sort the meetings. Defaults to start_asc." enum: ["start_asc", "start_desc"] } starts_before: { type: ["string", "null"] description: "Use `starts_before` to filter meetings to only those that start before the specified timestamp. `starts_before` is exclusive, meaning that meetings that start at the exact timestamp will not be included in results. When evaluating all-day meetings, we filter results from the perspective of a specific timezone (see `timezone` for more information)." } timezone: { type: "string" description: "The timezone to use when filtering meetings using `ends_from` and `starts_before`. Defaults to UTC. This property has no effect for non-all-day meetings." } } additionalProperties: false } output: { type: "object" description: "Success" required: ["data", "pagination"] properties: { data: { type: "array" items: { type: "object" required: ["id", "title", "description", "is_all_day", "start", "end", "participants", "linked_records", "created_at", "created_by_actor"] properties: { created_at: { type: "string" description: "Timestamp representing when the meeting was created." } created_by_actor: { type: "object" description: "The actor that created this meeting." properties: { id: { type: "string" description: "An ID to identify the actor." } type: { type: "string" description: "The type of actor. [Read more information on actor types here](/docs/actors)." enum: ["api-token", "workspace-member", "system", "app"] } } } description: { type: "string" description: "The description of the meeting." } end: { type: "object" } id: { type: "object" required: ["workspace_id", "meeting_id"] properties: { meeting_id: { type: "string" format: "uuid" description: "The ID of the Attio meeting." } workspace_id: { type: "string" format: "uuid" description: "The ID of the workspace the meeting belongs to." } } } is_all_day: { type: "boolean" description: "Whether or not the meeting is an all day event. All day events may span multiple days." } linked_records: { type: "array" description: "A list of records that are linked to the meeting. Participants with matching person records are automatically linked to the meeting but other records may also be linked explicitly." items: { type: "object" required: ["object_slug", "object_id", "record_id"] properties: { object_id: { type: "string" format: "uuid" description: "The ID of the object the meeting linked record belongs to." } object_slug: { type: "string" description: "The slug of the object the meeting linked record belongs to." } record_id: { type: "string" format: "uuid" description: "The ID of the meeting linked record." } } } } participants: { type: "array" items: { type: "object" required: ["status", "is_organizer", "email_address"] properties: { email_address: { type: ["string", "null"] description: "The normalized email address of the meeting participant." } is_organizer: { type: "boolean" description: "Whether or not the participant is the organizer of the meeting." } status: { type: "string" description: "The status of the individual meeting participant." enum: ["accepted", "tentative", "declined", "pending"] } } } } start: { type: "object" } title: { type: "string" description: "The title of the meeting." } } } } pagination: { type: "object" required: ["next_cursor"] properties: { next_cursor: { type: ["string", "null"] } } } } } }