From 8c775f92b130a379661e85d682343ca18fd65a63 Mon Sep 17 00:00:00 2001 From: linukaar Date: Thu, 12 Jun 2025 11:23:31 +0530 Subject: [PATCH 01/22] Generate the Ballerina clien --- ballerina/Ballerina.toml | 4 +- ballerina/Dependencies.toml | 45 + ballerina/client.bal | 353 ++- ballerina/types.bal | 1184 ++++++++++ ballerina/utils.bal | 203 ++ docs/spec/openapi.json | 4179 +++++++++++++++++++++++++++++++++++ docs/spec/sanitations.md | 2 +- 7 files changed, 5952 insertions(+), 18 deletions(-) create mode 100644 ballerina/Dependencies.toml create mode 100644 ballerina/types.bal create mode 100644 ballerina/utils.bal create mode 100644 docs/spec/openapi.json diff --git a/ballerina/Ballerina.toml b/ballerina/Ballerina.toml index c298017..b830c62 100644 --- a/ballerina/Ballerina.toml +++ b/ballerina/Ballerina.toml @@ -5,8 +5,8 @@ name = "zoom.scheduler" version = "1.0.0" license = ["Apache-2.0"] authors = ["Ballerina"] -keywords = [] -# icon = "icon.png" # TODO: update icon.png +keywords = [] # TODO: Add keywords +# icon = "icon.png" # TODO: Add icon repository = "https://github.com/ballerina-platform/module-ballerinax-zoom.scheduler" [build-options] diff --git a/ballerina/Dependencies.toml b/ballerina/Dependencies.toml new file mode 100644 index 0000000..9406f2d --- /dev/null +++ b/ballerina/Dependencies.toml @@ -0,0 +1,45 @@ +# AUTO-GENERATED FILE. DO NOT MODIFY. + +# This file is auto-generated by Ballerina for managing dependency versions. +# It should not be modified by hand. + +[ballerina] +dependencies-toml-version = "2" +distribution-version = "2201.12.0" + +[[package]] +org = "ballerina" +name = "jballerina.java" +version = "0.0.0" + +[[package]] +org = "ballerina" +name = "observe" +version = "1.5.0" +dependencies = [ + {org = "ballerina", name = "jballerina.java"} +] + +[[package]] +org = "ballerinai" +name = "observe" +version = "0.0.0" +dependencies = [ + {org = "ballerina", name = "jballerina.java"}, + {org = "ballerina", name = "observe"} +] +modules = [ + {org = "ballerinai", packageName = "observe", moduleName = "observe"} +] + +[[package]] +org = "ballerinax" +name = "zoom.scheduler" +version = "1.0.0" +dependencies = [ + {org = "ballerinai", name = "observe"} +] +modules = [ + {org = "ballerinax", packageName = "zoom.scheduler", moduleName = "zoom.scheduler"} +] + diff --git a/ballerina/client.bal b/ballerina/client.bal index c000777..7967489 100644 --- a/ballerina/client.bal +++ b/ballerina/client.bal @@ -1,15 +1,338 @@ -// Copyright (c) 2025, WSO2 LLC. (http://www.wso2.com). -// -// WSO2 LLC. licenses this file to you under the Apache License, -// Version 2.0 (the "License"); you may not use this file except -// in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, -// software distributed under the License is distributed on an -// "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY -// KIND, either express or implied. See the License for the -// specific language governing permissions and limitations -// under the License. +// AUTO-GENERATED FILE. DO NOT MODIFY. +// This file is auto-generated by the Ballerina OpenAPI tool. + +import ballerina/http; + +# The Scheduler APIs let you programmatically interact with [Zoom Scheduler](https://developers.zoom.us/docs/zoom-scheduler/) features. They allow you to schedule, manage, and retrieve details about meetings, webinars, and other events on the Zoom platform. With powerful tools for integration, these APIs streamline event management and automate workflows in external applications. +public isolated client class Client { + final http:Client clientEp; + final readonly & ApiKeysConfig? apiKeyConfig; + # Gets invoked to initialize the `connector`. + # + # + config - The configurations to be used when initializing the `connector` + # + serviceUrl - URL of the target service + # + return - An error if connector initialization failed + public isolated function init(ConnectionConfig config, string serviceUrl = "https://api.zoom.us/v2") returns error? { + http:ClientConfiguration httpClientConfig = {httpVersion: config.httpVersion, timeout: config.timeout, forwarded: config.forwarded, poolConfig: config.poolConfig, compression: config.compression, circuitBreaker: config.circuitBreaker, retryConfig: config.retryConfig, validation: config.validation}; + do { + if config.http1Settings is ClientHttp1Settings { + ClientHttp1Settings settings = check config.http1Settings.ensureType(ClientHttp1Settings); + httpClientConfig.http1Settings = {...settings}; + } + if config.http2Settings is http:ClientHttp2Settings { + httpClientConfig.http2Settings = check config.http2Settings.ensureType(http:ClientHttp2Settings); + } + if config.cache is http:CacheConfig { + httpClientConfig.cache = check config.cache.ensureType(http:CacheConfig); + } + if config.responseLimits is http:ResponseLimitConfigs { + httpClientConfig.responseLimits = check config.responseLimits.ensureType(http:ResponseLimitConfigs); + } + if config.secureSocket is http:ClientSecureSocket { + httpClientConfig.secureSocket = check config.secureSocket.ensureType(http:ClientSecureSocket); + } + if config.proxy is http:ProxyConfig { + httpClientConfig.proxy = check config.proxy.ensureType(http:ProxyConfig); + } + } + if config.auth is ApiKeysConfig { + self.apiKeyConfig = (config.auth).cloneReadOnly(); + } else { + httpClientConfig.auth = config.auth; + self.apiKeyConfig = (); + } + http:Client httpEp = check new (serviceUrl, httpClientConfig); + self.clientEp = httpEp; + return; + } + + # Delete availability + # + # + availabilityId - The UUID of the availability schedule. + # + headers - Headers to be sent with the request + # + return - If successful, this method returns an empty response body. + resource isolated function delete scheduler/availability/[string availabilityId](map headers = {}) returns http:Response|error { + string resourcePath = string `/scheduler/availability/${getEncodedUri(availabilityId)}`; + map headerValues = {...headers}; + if self.apiKeyConfig is ApiKeysConfig { + headerValues["Authorization"] = self.apiKeyConfig?.Authorization; + } + map httpHeaders = http:getHeaderMap(headerValues); + return self.clientEp->delete(resourcePath, headers = httpHeaders); + } + + # Delete scheduled events + # + # + headers - Headers to be sent with the request + # + queries - Queries to be sent with the request + # + return - If successful, this method returns an empty response body. + resource isolated function delete scheduler/events/[string eventId](map headers = {}, *DeleteScheduledEventsQueries queries) returns http:Response|error { + string resourcePath = string `/scheduler/events/${getEncodedUri(eventId)}`; + map headerValues = {...headers}; + if self.apiKeyConfig is ApiKeysConfig { + headerValues["Authorization"] = self.apiKeyConfig?.Authorization; + } + resourcePath = resourcePath + check getPathForQueryParam(queries); + map httpHeaders = http:getHeaderMap(headerValues); + return self.clientEp->delete(resourcePath, headers = httpHeaders); + } + + # Delete schedules + # + # + scheduleId - The unique identifier of the schedule. + # + headers - Headers to be sent with the request + # + queries - Queries to be sent with the request + # + return - If successful, this method returns an empty response body. + resource isolated function delete scheduler/schedules/[string scheduleId](map headers = {}, *DeleteSchedulesQueries queries) returns http:Response|error { + string resourcePath = string `/scheduler/schedules/${getEncodedUri(scheduleId)}`; + map headerValues = {...headers}; + if self.apiKeyConfig is ApiKeysConfig { + headerValues["Authorization"] = self.apiKeyConfig?.Authorization; + } + resourcePath = resourcePath + check getPathForQueryParam(queries); + map httpHeaders = http:getHeaderMap(headerValues); + return self.clientEp->delete(resourcePath, headers = httpHeaders); + } + + # Report analytics + # + # + headers - Headers to be sent with the request + # + queries - Queries to be sent with the request + # + return - If successful, this method returns the scheduler analytics or the user ID or account ID provided. + resource isolated function get scheduler/analytics(map headers = {}, *ReportAnalyticsQueries queries) returns InlineResponse200|error { + string resourcePath = string `/scheduler/analytics`; + map headerValues = {...headers}; + if self.apiKeyConfig is ApiKeysConfig { + headerValues["Authorization"] = self.apiKeyConfig?.Authorization; + } + resourcePath = resourcePath + check getPathForQueryParam(queries); + map httpHeaders = http:getHeaderMap(headerValues); + return self.clientEp->get(resourcePath, httpHeaders); + } + + # List availability + # + # + headers - Headers to be sent with the request + # + queries - Queries to be sent with the request + # + return - Successful availability of the schedule query result of given user. + resource isolated function get scheduler/availability(map headers = {}, *ListAvailabilityQueries queries) returns InlineResponse2001|error { + string resourcePath = string `/scheduler/availability`; + map headerValues = {...headers}; + if self.apiKeyConfig is ApiKeysConfig { + headerValues["Authorization"] = self.apiKeyConfig?.Authorization; + } + resourcePath = resourcePath + check getPathForQueryParam(queries); + map httpHeaders = http:getHeaderMap(headerValues); + return self.clientEp->get(resourcePath, httpHeaders); + } + + # Get availability + # + # + availabilityId - The UUID of the availability schedule. + # + headers - Headers to be sent with the request + # + return - If successful, this method returns an availability resource in the response body. + resource isolated function get scheduler/availability/[string availabilityId](map headers = {}) returns InlineResponse2002|error { + string resourcePath = string `/scheduler/availability/${getEncodedUri(availabilityId)}`; + map headerValues = {...headers}; + if self.apiKeyConfig is ApiKeysConfig { + headerValues["Authorization"] = self.apiKeyConfig?.Authorization; + } + map httpHeaders = http:getHeaderMap(headerValues); + return self.clientEp->get(resourcePath, httpHeaders); + } + + # List scheduled events + # + # + headers - Headers to be sent with the request + # + queries - Queries to be sent with the request + # + return - If successful, this method returns a response body with the following structure: + resource isolated function get scheduler/events(map headers = {}, *ListScheduledEventsQueries queries) returns InlineResponse2003|error { + string resourcePath = string `/scheduler/events`; + map headerValues = {...headers}; + if self.apiKeyConfig is ApiKeysConfig { + headerValues["Authorization"] = self.apiKeyConfig?.Authorization; + } + resourcePath = resourcePath + check getPathForQueryParam(queries); + map httpHeaders = http:getHeaderMap(headerValues); + return self.clientEp->get(resourcePath, httpHeaders); + } + + # Get scheduled events + # + # + headers - Headers to be sent with the request + # + queries - Queries to be sent with the request + # + return - If successful, this method returns the scheduled event resource in the response body. + resource isolated function get scheduler/events/[string eventId](map headers = {}, *GetScheduledEventsQueries queries) returns InlineResponse2004|error { + string resourcePath = string `/scheduler/events/${getEncodedUri(eventId)}`; + map headerValues = {...headers}; + if self.apiKeyConfig is ApiKeysConfig { + headerValues["Authorization"] = self.apiKeyConfig?.Authorization; + } + resourcePath = resourcePath + check getPathForQueryParam(queries); + map httpHeaders = http:getHeaderMap(headerValues); + return self.clientEp->get(resourcePath, httpHeaders); + } + + # List schedules + # + # + headers - Headers to be sent with the request + # + queries - Queries to be sent with the request + # + return - If successful, this method returns a response body with this structure. + resource isolated function get scheduler/schedules(map headers = {}, *ListSchedulesQueries queries) returns InlineResponse2005|error { + string resourcePath = string `/scheduler/schedules`; + map headerValues = {...headers}; + if self.apiKeyConfig is ApiKeysConfig { + headerValues["Authorization"] = self.apiKeyConfig?.Authorization; + } + resourcePath = resourcePath + check getPathForQueryParam(queries); + map httpHeaders = http:getHeaderMap(headerValues); + return self.clientEp->get(resourcePath, httpHeaders); + } + + # Get schedules + # + # + scheduleId - The schedule's unique identifier. + # + headers - Headers to be sent with the request + # + queries - Queries to be sent with the request + # + return - If successful, this method returns an schedule resource in the response body. + resource isolated function get scheduler/schedules/[string scheduleId](map headers = {}, *GetScheduleQueries queries) returns InlineResponse2006|error { + string resourcePath = string `/scheduler/schedules/${getEncodedUri(scheduleId)}`; + map headerValues = {...headers}; + if self.apiKeyConfig is ApiKeysConfig { + headerValues["Authorization"] = self.apiKeyConfig?.Authorization; + } + resourcePath = resourcePath + check getPathForQueryParam(queries); + map httpHeaders = http:getHeaderMap(headerValues); + return self.clientEp->get(resourcePath, httpHeaders); + } + + # Get user + # + # + headers - Headers to be sent with the request + # + return - If successful, this method returns user information in the response body. + resource isolated function get scheduler/users/[string userId](map headers = {}) returns InlineResponse2007|error { + string resourcePath = string `/scheduler/users/${getEncodedUri(userId)}`; + map headerValues = {...headers}; + if self.apiKeyConfig is ApiKeysConfig { + headerValues["Authorization"] = self.apiKeyConfig?.Authorization; + } + map httpHeaders = http:getHeaderMap(headerValues); + return self.clientEp->get(resourcePath, httpHeaders); + } + + # Patch availability + # + # + availabilityId - The UUID of the availability schedule. + # + headers - Headers to be sent with the request + # + payload - In the request body, supply availability resource properties. + # + return - If successful, this method returns an empty response body. + resource isolated function patch scheduler/availability/[string availabilityId](AvailabilityavailabilityIdBody payload, map headers = {}) returns http:Response|error { + string resourcePath = string `/scheduler/availability/${getEncodedUri(availabilityId)}`; + map headerValues = {...headers}; + if self.apiKeyConfig is ApiKeysConfig { + headerValues["Authorization"] = self.apiKeyConfig?.Authorization; + } + map httpHeaders = http:getHeaderMap(headerValues); + http:Request request = new; + json jsonBody = payload.toJson(); + request.setPayload(jsonBody, "application/json"); + return self.clientEp->patch(resourcePath, request, httpHeaders); + } + + # Patch scheduled events + # + # + eventId - The opaque identifier of the scheduled event. + # + headers - Headers to be sent with the request + # + queries - Queries to be sent with the request + # + payload - In the request body, it supplies the relevant portions of event resource. + # + return - If successful, this method returns an event resource in the response body. + resource isolated function patch scheduler/events/[string eventId](EventseventIdBody payload, map headers = {}, *PatchScheduledEventsQueries queries) returns http:Response|error { + string resourcePath = string `/scheduler/events/${getEncodedUri(eventId)}`; + map headerValues = {...headers}; + if self.apiKeyConfig is ApiKeysConfig { + headerValues["Authorization"] = self.apiKeyConfig?.Authorization; + } + resourcePath = resourcePath + check getPathForQueryParam(queries); + map httpHeaders = http:getHeaderMap(headerValues); + http:Request request = new; + json jsonBody = payload.toJson(); + request.setPayload(jsonBody, "application/json"); + return self.clientEp->patch(resourcePath, request, httpHeaders); + } + + # Patch schedules + # + # + scheduleId - The schedule's unique identifier. + # + headers - Headers to be sent with the request + # + queries - Queries to be sent with the request + # + payload - In the request body, it supplies the relevant portions of a schedule resource, according to the rules of patch semantics. + # + return - If successful, this method returns an empty response body. + resource isolated function patch scheduler/schedules/[string scheduleId](SchedulesscheduleIdBody payload, map headers = {}, *PatchScheduleQueries queries) returns http:Response|error { + string resourcePath = string `/scheduler/schedules/${getEncodedUri(scheduleId)}`; + map headerValues = {...headers}; + if self.apiKeyConfig is ApiKeysConfig { + headerValues["Authorization"] = self.apiKeyConfig?.Authorization; + } + resourcePath = resourcePath + check getPathForQueryParam(queries); + map httpHeaders = http:getHeaderMap(headerValues); + http:Request request = new; + json jsonBody = payload.toJson(); + request.setPayload(jsonBody, "application/json"); + return self.clientEp->patch(resourcePath, request, httpHeaders); + } + + # Insert availability + # + # + headers - Headers to be sent with the request + # + payload - In the request body, it supplies an availability resource properties. + # + return - If successful, this method returns a availability resource in the response body. + resource isolated function post scheduler/availability(SchedulerAvailabilityBody payload, map headers = {}) returns InlineResponse201|error { + string resourcePath = string `/scheduler/availability`; + map headerValues = {...headers}; + if self.apiKeyConfig is ApiKeysConfig { + headerValues["Authorization"] = self.apiKeyConfig?.Authorization; + } + map httpHeaders = http:getHeaderMap(headerValues); + http:Request request = new; + json jsonBody = payload.toJson(); + request.setPayload(jsonBody, "application/json"); + return self.clientEp->post(resourcePath, request, httpHeaders); + } + + # Insert schedules + # + # + headers - Headers to be sent with the request + # + queries - Queries to be sent with the request + # + payload - In the request body, it supplies the schedule resource properties. + # + return - If successful, this method returns an schedule resource in the response body. + resource isolated function post scheduler/schedules(SchedulerSchedulesBody payload, map headers = {}, *InsertScheduleQueries queries) returns InlineResponse2011|error { + string resourcePath = string `/scheduler/schedules`; + map headerValues = {...headers}; + if self.apiKeyConfig is ApiKeysConfig { + headerValues["Authorization"] = self.apiKeyConfig?.Authorization; + } + resourcePath = resourcePath + check getPathForQueryParam(queries); + map httpHeaders = http:getHeaderMap(headerValues); + http:Request request = new; + json jsonBody = payload.toJson(); + request.setPayload(jsonBody, "application/json"); + return self.clientEp->post(resourcePath, request, httpHeaders); + } + + # Single use link + # + # + headers - Headers to be sent with the request + # + return - If successful, this method returns a scheduling link URL in the response body. + resource isolated function post scheduler/schedules/single_use_link(SchedulesSingleUseLinkBody payload, map headers = {}) returns InlineResponse2012|error { + string resourcePath = string `/scheduler/schedules/single_use_link`; + map headerValues = {...headers}; + if self.apiKeyConfig is ApiKeysConfig { + headerValues["Authorization"] = self.apiKeyConfig?.Authorization; + } + map httpHeaders = http:getHeaderMap(headerValues); + http:Request request = new; + json jsonBody = payload.toJson(); + request.setPayload(jsonBody, "application/json"); + return self.clientEp->post(resourcePath, request, httpHeaders); + } +} diff --git a/ballerina/types.bal b/ballerina/types.bal new file mode 100644 index 0000000..8cc5f9f --- /dev/null +++ b/ballerina/types.bal @@ -0,0 +1,1184 @@ +// AUTO-GENERATED FILE. DO NOT MODIFY. +// This file is auto-generated by the Ballerina OpenAPI tool. + +import ballerina/constraint; +import ballerina/data.jsondata; +import ballerina/http; + +# The week of available time rule. +public type InlineResponse2006SegmentsRecurrence record { + # Thursday + ScheduleravailabilitySegmentsRecurrenceSun[] thu?; + # Tuesday + ScheduleravailabilitySegmentsRecurrenceSun[] tue?; + # Wednesday + ScheduleravailabilitySegmentsRecurrenceSun[] wed?; + # Saturday + ScheduleravailabilitySegmentsRecurrenceSun[] sat?; + # Friday + ScheduleravailabilitySegmentsRecurrenceSun[] fri?; + # Sundays + ScheduleravailabilitySegmentsRecurrenceSun[] sun?; + # Monday + ScheduleravailabilitySegmentsRecurrenceSun[] mon?; +}; + +# The creator of the schedule. The field is read-only. +public type InlineResponse2011Creator record { + # This field indicates if you created the schedule. The field is read-only. + boolean self?; + @jsondata:Name {value: "display_name"} + string displayName?; + # This field indicates the creator's email address. + string email?; +}; + +# The availability schedule set by the user. +public type SchedulerAvailabilityBody record { + # the owner's ID. + string owner?; + # The default availability schedule in use. + boolean default?; + # The name of this availability schedule. + @constraint:String {minLength: 1} + string name; + @jsondata:Name {value: "availability_id"} + string availabilityId?; + @jsondata:Name {value: "segments_recurrence"} + ScheduleravailabilitySegmentsRecurrence segmentsRecurrence?; + @jsondata:Name {value: "time_zone"} + string timeZone; + # The date on which the rule needs to be applied outside of the availability rule. + ScheduleravailabilitySegments[] segments?; +}; + +public type InlineResponse2005AvailabilityRules record { + @jsondata:Name {value: "use_custom"} + boolean useCustom?; + @jsondata:Name {value: "availability_id"} + string availabilityId?; + @jsondata:Name {value: "segments_recurrence"} + SchedulerschedulesscheduleIdSegmentsRecurrence1 segmentsRecurrence?; + @jsondata:Name {value: "time_zone"} + string timeZone?; + # The owner of this availability rule. + string email?; + # The available time segments of the event. + SchedulerschedulesSegments[] segments?; +}; + +public type SchedulesSingleUseLinkBody record { + @jsondata:Name {value: "schedule_id"} + string scheduleId; +}; + +public type SchedulerschedulesCustomFields record { + @jsondata:Name {value: "answer_choices"} + SchedulerschedulesCustomFieldsAnswerchoicesItemsString[] answerChoices?; + @jsondata:Name {value: "custom_field_id"} + string customFieldId?; + # The type of response that the invitee provides to the custom question. It can be one or multiple lines of text, a phone number, or single- or multiple-select.[`string text phone_number single_select multi_select`] + "text"|"string"|"phone_number"|"choices_one"|"choices_many"|"select" format; + # The custom question the host created for the event type. + string name; + @jsondata:Name {value: "include_other"} + boolean includeOther; + # The position of this question. + decimal position; + # This field is true if the question the host creates is ON and visible on the event booking page. This field is false if it's OFF and invisible on the event booking page. + boolean enabled; + # This field is true if a response to the question created by the host is required for invitees to book the event type. This field is false if a response to the question created by the host is not required for invitees to book the event type. + boolean required; +}; + +# Represents the Queries record for the operation: get_scheduled_events +public type GetScheduledEventsQueries record { + @http:Query {name: "user_id"} + string userId?; +}; + +public type SchedulesscheduleIdBody record { + @jsondata:Name {value: "add_on_type"} + "zoomMeeting"|"zoomPhone"|"offline" addOnType?; + @jsondata:Name {value: "end_date"} + string endDate?; + @jsondata:Name {value: "start_time_increment"} + decimal startTimeIncrement?; + # The event's summary. + @constraint:String {maxLength: 256} + string summary?; + # The hexadecimal color value of the event type's scheduling page. + string color?; + @jsondata:Name {value: "custom_fields"} + SchedulerschedulesscheduleIdCustomFields[] customFields?; + # The schedule's description + @constraint:String {maxLength: 8192} + string description?; + # This field indicates if the schedule is active. + boolean active?; + @jsondata:Name {value: "booking_limit"} + decimal bookingLimit?; + # This field indicates if the event type is hidden on the owner's main scheduling page. + boolean secret?; + @jsondata:Name {value: "time_zone"} + string timeZone?; + @jsondata:Name {value: "availability_rules"} + SchedulerschedulesscheduleIdAvailabilityRules[] availabilityRules?; + # The maximum invitees per event. + @constraint:Number {minValue: 1, maxValue: 200} + decimal capacity?; + # The available time segments of the event. + SchedulerschedulesSegments[] segments?; + # The duration of meeting in minutes, range: [1, 1440]. + @constraint:Number {minValue: 15, maxValue: 1440} + decimal duration?; + # The minimum time before a schedule starts that attendees can book. + @constraint:Number {minValue: 0, maxValue: 14340} + decimal cushion?; + # The information for a custom location. + @constraint:String {maxLength: 1024} + string location?; + SchedulerschedulesscheduleIdBuffer buffer?; + @jsondata:Name {value: "segments_recurrence"} + SchedulerschedulesscheduleIdSegmentsRecurrence1 segmentsRecurrence?; + # The event portion of the event's URL that identifies a specific web page. + @constraint:String {maxLength: 256, minLength: 3} + string slug?; + @jsondata:Name {value: "interval_type"} + "unlimited"|"fixed" intervalType?; + @jsondata:Name {value: "availability_override"} + boolean availabilityOverride?; + @jsondata:Name {value: "start_date"} + string startDate?; + # The status of schedule, confirmed or cancelled. + "confirmed"|"cancelled" status?; +}; + +public type InlineResponse2003Items record { + # The event's summary. + @constraint:String {maxLength: 256} + string summary?; + # The attendees of the event. + InlineResponse2003Attendees[] attendees?; + @jsondata:Name {value: "meeting_notes"} + string meetingNotes?; + # The event's description. + @constraint:String {maxLength: 8192} + string description?; + @jsondata:Name {value: "end_date_time"} + string endDateTime?; + @jsondata:Name {value: "event_id"} + string eventId?; + @jsondata:Name {value: "event_type"} + "default"|"pending" eventType?; + @jsondata:Name {value: "tracking_params"} + InlineResponse2003TrackingParams[] trackingParams?; + # The guest's collection. + string[] guests?; + # The information for a custom location. + @constraint:String {maxLength: 1024} + string location?; + @jsondata:Name {value: "start_date_time"} + string startDateTime?; + @jsondata:Name {value: "schedule_id"} + string scheduleId?; + # The moment the event was updated. + string updated?; + @jsondata:Name {value: "external_location"} + record {string kind?; string meeting_id?; string personal_meeting_id?; string meeting_passcode?; string meeting_description?; string meeting_join_url?;} externalLocation?; + # The status of event: confirmed or cancelled. + "confirmed"|"cancelled" status?; +}; + +public type InlineResponse2011CustomFields record { + @jsondata:Name {value: "answer_choices"} + InlineResponse2011CustomFieldsAnswerchoicesItemsString[] answerChoices?; + @jsondata:Name {value: "custom_field_id"} + string customFieldId?; + # The type of response that the invitee provides to the custom question. It can be one or multiple lines of text, a phone number, or single- or multiple-select.[`string text phone_number single_select multi_select`] + "text"|"string"|"phone_number"|"choices_one"|"choices_many"|"select" format; + # The custom question the host created for the event type. + string name; + @jsondata:Name {value: "include_other"} + boolean includeOther; + # The position of this question. + decimal position; + # This field is true if the question the host creates is ON and visible on the event booking page. This field is false if it's OFF and invisible on the event booking page. + boolean enabled; + # This field is true if a response to the question created by the host is required for invitees to book the event type. This field is false if a response to the question created by the host is not required for invitees to book the event type. + boolean required; +}; + +public type InlineResponse2006AvailabilityRules record { + @jsondata:Name {value: "use_custom"} + boolean useCustom?; + @jsondata:Name {value: "availability_id"} + string availabilityId?; + @jsondata:Name {value: "segments_recurrence"} + InlineResponse2006SegmentsRecurrence segmentsRecurrence?; + @jsondata:Name {value: "time_zone"} + string timeZone?; + # The owner of this availability rule. + string email?; + # The available time segments of the event. + SchedulerschedulesSegments[] segments?; +}; + +# Represents the Queries record for the operation: get_schedule +public type GetScheduleQueries record { + @http:Query {name: "user_id"} + string userId?; +}; + +public type InlineResponse2011CustomFieldsAnswerchoicesItemsString string; + +# Provides a set of configurations for controlling the behaviours when communicating with a remote HTTP endpoint. +@display {label: "Connection Config"} +public type ConnectionConfig record {| + # Provides Auth configurations needed when communicating with a remote HTTP endpoint. + http:BearerTokenConfig|http:OAuth2RefreshTokenGrantConfig|ApiKeysConfig auth; + # The HTTP version understood by the client + http:HttpVersion httpVersion = http:HTTP_2_0; + # Configurations related to HTTP/1.x protocol + ClientHttp1Settings http1Settings?; + # Configurations related to HTTP/2 protocol + http:ClientHttp2Settings http2Settings?; + # The maximum time to wait (in seconds) for a response before closing the connection + decimal timeout = 60; + # The choice of setting `forwarded`/`x-forwarded` header + string forwarded = "disable"; + # Configurations associated with request pooling + http:PoolConfiguration poolConfig?; + # HTTP caching related configurations + http:CacheConfig cache?; + # Specifies the way of handling compression (`accept-encoding`) header + http:Compression compression = http:COMPRESSION_AUTO; + # Configurations associated with the behaviour of the Circuit Breaker + http:CircuitBreakerConfig circuitBreaker?; + # Configurations associated with retrying + http:RetryConfig retryConfig?; + # Configurations associated with inbound response size limits + http:ResponseLimitConfigs responseLimits?; + # SSL/TLS-related options + http:ClientSecureSocket secureSocket?; + # Proxy server related options + http:ProxyConfig proxy?; + # Enables the inbound payload validation functionality which provided by the constraint package. Enabled by default + boolean validation = true; + # Enables relaxed data binding on the client side. When enabled, `nil` values are treated as optional, + # and absent fields are handled as `nilable` types. Enabled by default. + boolean laxDataBinding = true; +|}; + +public type InlineResponse2011AvailabilityRules record { + @jsondata:Name {value: "use_custom"} + boolean useCustom?; + @jsondata:Name {value: "availability_id"} + string availabilityId?; + @jsondata:Name {value: "segments_recurrence"} + SchedulerschedulesSegmentsRecurrence segmentsRecurrence?; + @jsondata:Name {value: "time_zone"} + string timeZone?; + # The owner of this availability rule. + string email?; + # The available time segments of the event. + SchedulerschedulesSegments[] segments?; +}; + +# The organizer of the schedule. This field is read-only. +public type InlineResponse2011Organizer record { + # This field indicates if this user is the organizer. This field is read-only. + boolean self?; + @jsondata:Name {value: "display_name"} + string displayName?; + # The organizer's email address. + string email?; +}; + +public type SchedulerschedulesscheduleIdAvailabilityRules record { + @jsondata:Name {value: "use_custom"} + boolean useCustom?; + @jsondata:Name {value: "availability_id"} + string availabilityId?; + @jsondata:Name {value: "segments_recurrence"} + SchedulerschedulesscheduleIdSegmentsRecurrence segmentsRecurrence?; + @jsondata:Name {value: "time_zone"} + string timeZone?; + # The owner of this availability rule. + string email?; + # The available time segments of the event. + SchedulerschedulesscheduleIdSegments[] segments?; +}; + +# Represents the Queries record for the operation: insert_schedule +public type InsertScheduleQueries record { + @http:Query {name: "user_id"} + string userId?; +}; + +# The date interval to override. +public type ScheduleravailabilitySegments record { + # This field indicates the start date to override. + string 'start; + # This field indicates the end date to override. + string end; +}; + +public type InlineResponse2004TrackingParams record { + # The scheduler tags that correspond to UTM parameters one by one. + string label?; + # The value of UTM parameters set in schedule links by host. + string value?; + # The UTM parameters in schedule links. + string 'key?; +}; + +public type InlineResponse2001Items record { + # The owner's ID. + string owner?; + boolean default?; + string name?; + @jsondata:Name {value: "availability_id"} + string availabilityId?; + @jsondata:Name {value: "segments_recurrence"} + InlineResponse2001SegmentsRecurrence segmentsRecurrence?; + @jsondata:Name {value: "time_zone"} + string timeZone?; +}; + +# The rules of this availability schedule. +public type ScheduleravailabilitySegmentsRecurrence record { + # Thursday + ScheduleravailabilitySegmentsRecurrenceSun[] thu?; + # Tuesday + ScheduleravailabilitySegmentsRecurrenceSun[] tue?; + # Wednesday + ScheduleravailabilitySegmentsRecurrenceSun[] wed?; + # Saturday + ScheduleravailabilitySegmentsRecurrenceSun[] sat?; + # Friday + ScheduleravailabilitySegmentsRecurrenceSun[] fri?; + # Sundays + ScheduleravailabilitySegmentsRecurrenceSun[] sun?; + # Monday + ScheduleravailabilitySegmentsRecurrenceSun[] mon?; +}; + +public type InlineResponse2003Attendees record { + # This field indicates when the attendee attended this event. + string created?; + @jsondata:Name {value: "attendee_id"} + string attendeeId?; + @jsondata:Name {value: "last_name"} + string lastName?; + @jsondata:Name {value: "display_name"} + string displayName?; + @jsondata:Name {value: "time_zone"} + string timeZone?; + @jsondata:Name {value: "no_show"} + boolean noShow?; + # Whether the attendee is the booker. + boolean booker?; + @jsondata:Name {value: "first_name"} + string firstName?; + # The attendee's email. + string email?; +}; + +public type InlineResponse2001SegmentsRecurrence record { + # Thursday + ScheduleravailabilitySegmentsRecurrenceSun[] thu?; + # Tuesday + ScheduleravailabilitySegmentsRecurrenceSun[] tue?; + # Wednesday + ScheduleravailabilitySegmentsRecurrenceSun[] wed?; + # Saturday + ScheduleravailabilitySegmentsRecurrenceSun[] sat?; + # Friday + ScheduleravailabilitySegmentsRecurrenceSun[] fri?; + # Sunday + ScheduleravailabilitySegmentsRecurrenceSun[] sun?; + # Monday + ScheduleravailabilitySegmentsRecurrenceSun[] mon?; +}; + +# the stats of the previous period with a length of also N. Last N day is counting from today and backtrace N days. Previous period is counting from N days ago and back tracking another N days +public type InlineResponse200PreviousPeriod record { + @jsondata:Name {value: "all_host_available"} + int allHostAvailable?; + @jsondata:Name {value: "scheduled_events_rescheduled"} + int scheduledEventsRescheduled?; + @jsondata:Name {value: "scheduled_events_completed"} + int scheduledEventsCompleted?; + @jsondata:Name {value: "schedules_canceled"} + int schedulesCanceled?; + @jsondata:Name {value: "one_off_meeting"} + int oneOffMeeting?; + @jsondata:Name {value: "meeting_poll"} + int meetingPoll?; + @jsondata:Name {value: "one_to_many"} + int oneToMany?; + @jsondata:Name {value: "any_host_available"} + int anyHostAvailable?; + @jsondata:Name {value: "scheduled_events_canceled"} + int scheduledEventsCanceled?; + @jsondata:Name {value: "one_to_one"} + int oneToOne?; + @jsondata:Name {value: "scheduled_events_created"} + int scheduledEventsCreated?; + @jsondata:Name {value: "schedules_created"} + int schedulesCreated?; +}; + +public type SchedulereventseventIdAttendees record { + @jsondata:Name {value: "attendee_id"} + string attendeeId?; + @jsondata:Name {value: "no_show"} + boolean noShow?; + # The attendee's email. + string email?; +}; + +# The week of the available time rule. +public type SchedulerschedulesSegmentsRecurrence record { + # Thursday + ScheduleravailabilitySegmentsRecurrenceSun[] thu?; + # Tuesday + ScheduleravailabilitySegmentsRecurrenceSun[] tue?; + # Wednesday + ScheduleravailabilitySegmentsRecurrenceSun[] wed?; + # Saturday + ScheduleravailabilitySegmentsRecurrenceSun[] sat?; + # Friday + ScheduleravailabilitySegmentsRecurrenceSun[] fri?; + # Sundays + ScheduleravailabilitySegmentsRecurrenceSun[] sun?; + # Monday + ScheduleravailabilitySegmentsRecurrenceSun[] mon?; +}; + +public type SchedulerSchedulesBody record { + @jsondata:Name {value: "add_on_type"} + "zoomMeeting"|"zoomPhone"|"offline" addOnType?; + @jsondata:Name {value: "end_date"} + string endDate?; + @jsondata:Name {value: "start_time_increment"} + decimal startTimeIncrement?; + # The event's summary. + @constraint:String {maxLength: 256} + string summary?; + @jsondata:Name {value: "schedule_type"} + "one"|"multiple" scheduleType?; + # The hexadecimal color value of the event type's scheduling page. + string color?; + @jsondata:Name {value: "custom_fields"} + SchedulerschedulesCustomFields[] customFields?; + # The schedule's description. + @constraint:String {maxLength: 8192} + string description?; + # This field indicates if the schedule is active. + boolean active?; + @jsondata:Name {value: "booking_limit"} + decimal bookingLimit?; + # This field indicates if the event type is hidden on the owner's main scheduling page. + boolean secret?; + @jsondata:Name {value: "time_zone"} + string timeZone?; + @jsondata:Name {value: "availability_rules"} + SchedulerschedulesAvailabilityRules[] availabilityRules; + # This field indicates the maximum invitees per event. + @constraint:Number {minValue: 1, maxValue: 200} + decimal capacity; + # The available time segments of the event. + SchedulerschedulesSegments[] segments?; + # This field indicates the duration of the meeting in minutes, range: [1, 1440]. + @constraint:Number {minValue: 15, maxValue: 1440} + decimal duration?; + # This field indicates the minimum time before a schedule starts when the attendees can book. + @constraint:Number {minValue: 0, maxValue: 14340} + decimal cushion?; + # The information for a custom location. + @constraint:String {maxLength: 1024} + string location?; + SchedulerschedulesBuffer buffer?; + @jsondata:Name {value: "segments_recurrence"} + SchedulerschedulesSegmentsRecurrence segmentsRecurrence?; + @jsondata:Name {value: "interval_type"} + "unlimited"|"fixed" intervalType?; + # The event portion of the event's URL that identifies a specific web page. + @constraint:String {maxLength: 256, minLength: 3} + string slug?; + @jsondata:Name {value: "availability_override"} + boolean availabilityOverride; + @jsondata:Name {value: "start_date"} + string startDate?; +}; + +# Represents the Queries record for the operation: patch_scheduled_events +public type PatchScheduledEventsQueries record { + @http:Query {name: "user_id"} + string userId?; +}; + +public type InlineResponse2003TrackingParams record { + # The scheduler tags that correspond to UTM parameters one by one. + string label?; + # The value of UTM parameters set in schedule links by host. + string value?; + # The UTM parameters in the schedule links. + string 'key?; +}; + +# Provides API key configurations needed when communicating with a remote HTTP endpoint. +public type ApiKeysConfig record {| + string Authorization; +|}; + +# This field indicates the extra time before or after the booked schedule. +public type SchedulerschedulesBuffer record { + # This field adds the time after the booked schedule. + @constraint:Number {minValue: 0, maxValue: 240} + decimal before?; + # This field adds the time before the booked schedule. + @constraint:Number {minValue: 0, maxValue: 240} + decimal after?; +}; + +# The extra time before or after booked schedule. +public type SchedulerschedulesscheduleIdBuffer record { + # This field adds time after the booked schedule. + @constraint:Number {minValue: 0, maxValue: 240} + decimal before?; + # This field adds time before the booked schedule. + @constraint:Number {minValue: 0, maxValue: 240} + decimal after?; +}; + +public type SchedulerschedulesscheduleIdSegments record { + # The start date-time of the segment. + string 'start?; + # The end date-time of the segment. + string end?; +}; + +public type InlineResponse2004Attendees record { + # This field indicates when the attendee attended this event. + string created?; + @jsondata:Name {value: "attendee_id"} + string attendeeId?; + @jsondata:Name {value: "last_name"} + string lastName?; + @jsondata:Name {value: "display_name"} + string displayName?; + @jsondata:Name {value: "time_zone"} + string timeZone?; + @jsondata:Name {value: "no_show"} + boolean noShow?; + # Whether the attendee is the booker. + boolean booker?; + @jsondata:Name {value: "first_name"} + string firstName?; + # The attendee's email. + string email?; +}; + +# The availability schedule set by the user. +public type InlineResponse201 record { + # An URI reference to a user. + string owner?; + # The default availability schedule in use. + boolean default?; + # The name of this availability schedule. + string name?; + @jsondata:Name {value: "availability_id"} + string availabilityId?; + @jsondata:Name {value: "segments_recurrence"} + ScheduleravailabilitySegmentsRecurrence segmentsRecurrence?; + @jsondata:Name {value: "time_zone"} + string timeZone?; + # The date on which the rule needs to be applied outside of the availability rule. + record {}[] segments?; +}; + +public type InlineResponse200 record { + @jsondata:Name {value: "popular_schedules"} + record {}[] popularSchedules?; + @jsondata:Name {value: "users_with_least_events"} + record {}[] usersWithLeastEvents?; + @jsondata:Name {value: "last_n_days"} + InlineResponse200LastNDays lastNDays?; + @jsondata:Name {value: "popular_time_of_day"} + record {}[] popularTimeOfDay?; + @jsondata:Name {value: "previous_period"} + InlineResponse200PreviousPeriod previousPeriod?; + @jsondata:Name {value: "event_distribution_by_duration"} + record {}[] eventDistributionByDuration?; + @jsondata:Name {value: "popular_time_of_week"} + record {}[] popularTimeOfWeek?; + @jsondata:Name {value: "users_with_most_events"} + record {}[] usersWithMostEvents?; +}; + +# The week of available time rule. +public type SchedulerschedulesscheduleIdSegmentsRecurrence record { + # Thursday + ScheduleravailabilitySegmentsRecurrenceSun[] thu?; + # Tuesday + ScheduleravailabilitySegmentsRecurrenceSun[] tue?; + # Wednesday + ScheduleravailabilitySegmentsRecurrenceSun[] wed?; + # Saturday + ScheduleravailabilitySegmentsRecurrenceSun[] sat?; + # Friday + ScheduleravailabilitySegmentsRecurrenceSun[] fri?; + # Sunday + ScheduleravailabilitySegmentsRecurrenceSun[] sun?; + # Monday + ScheduleravailabilitySegmentsRecurrenceSun[] mon?; +}; + +# Represents the Queries record for the operation: delete_schedules +public type DeleteSchedulesQueries record { + @http:Query {name: "user_id"} + string userId?; +}; + +# Represents the Queries record for the operation: delete_scheduled_events +public type DeleteScheduledEventsQueries record { + @http:Query {name: "user_id"} + string userId?; +}; + +# Represents the Queries record for the operation: patch_schedule +public type PatchScheduleQueries record { + @http:Query {name: "user_id"} + string userId?; +}; + +# Represents the Queries record for the operation: list_availability +public type ListAvailabilityQueries record { + @http:Query {name: "next_page_token"} + string nextPageToken?; + @http:Query {name: "user_id"} + string userId?; + @http:Query {name: "page_size"} + int pageSize?; +}; + +# The portions of the event resource. +public type EventseventIdBody record { + SchedulereventseventIdAttendees[] attendees?; + @jsondata:Name {value: "meeting_notes"} + string meetingNotes?; + # The status of event: confirmed or cancelled. + "confirmed"|"cancelled" status?; +}; + +# The availability schedule set by the user. +public type AvailabilityavailabilityIdBody record { + # The default availability schedule in use. + boolean default?; + # The name of this availability schedule. + @constraint:String {minLength: 1} + string name; + @jsondata:Name {value: "segments_recurrence"} + ScheduleravailabilitySegmentsRecurrence segmentsRecurrence?; + @jsondata:Name {value: "time_zone"} + string timeZone; + # The date on which the rule needs to be applied outside of the availability rule. + ScheduleravailabilityavailabilityIdSegments[] segments?; +}; + +# The week of the available time rule. +public type SchedulerschedulesscheduleIdSegmentsRecurrence1 record { + # Thursday + ScheduleravailabilitySegmentsRecurrenceSun[] thu?; + # Tuesday + ScheduleravailabilitySegmentsRecurrenceSun[] tue?; + # Wednesday + ScheduleravailabilitySegmentsRecurrenceSun[] wed?; + # Saturday + ScheduleravailabilitySegmentsRecurrenceSun[] sat?; + # Friday + ScheduleravailabilitySegmentsRecurrenceSun[] fri?; + # Sunday + ScheduleravailabilitySegmentsRecurrenceSun[] sun?; + # Monday + ScheduleravailabilitySegmentsRecurrenceSun[] mon?; +}; + +# The creator of the schedule. This field is read-only. +public type InlineResponse2005Creator record { + # This field indicates if you created the schedule. The field is read-only. + boolean self?; + @jsondata:Name {value: "display_name"} + string displayName?; + # This field indicates the creator's email address. + string email?; +}; + +# Represents the Queries record for the operation: list_schedules +public type ListSchedulesQueries record { + @http:Query {name: "show_deleted"} + boolean showDeleted?; + @http:Query {name: "next_page_token"} + string nextPageToken?; + @http:Query {name: "user_id"} + string userId?; + # The lower bound (exclusive) for a schedule's end time from which to filter. + string 'from?; + # The upper bound (exclusive) for a schedule's start time from which to filter. + string to?; + @http:Query {name: "time_zone"} + string timeZone?; + @http:Query {name: "page_size"} + int pageSize?; +}; + +public type InlineResponse2012 record { + @jsondata:Name {value: "scheduling_url"} + string schedulingUrl; +}; + +public type InlineResponse2011 record { + @jsondata:Name {value: "end_date"} + string endDate?; + # The hexadecimal color value of the event type's scheduling page. + string color?; + # The schedule's description. + @constraint:String {maxLength: 8192} + string description?; + # This field indicates if the event type is hidden on the owner's main scheduling page. + boolean secret?; + @jsondata:Name {value: "availability_rules"} + InlineResponse2011AvailabilityRules[] availabilityRules?; + # This field indicates the maximum invitees per event. + @constraint:Number {minValue: 1, maxValue: 200} + decimal capacity?; + # The available time segments of the event. + SchedulerschedulesSegments[] segments?; + # This field indicates the duration of the meeting in minutes, range: [1, 1440]. + @constraint:Number {minValue: 15, maxValue: 1440} + decimal duration?; + # This field indicates the minimum time before a schedule starts when the attendees can book. + @constraint:Number {minValue: 0, maxValue: 14340} + decimal cushion?; + SchedulerschedulesBuffer buffer?; + @jsondata:Name {value: "segments_recurrence"} + SchedulerschedulesSegmentsRecurrence segmentsRecurrence?; + # The event portion of the event's URL that identifies a specific web page. + @constraint:String {maxLength: 256, minLength: 3} + string slug?; + @jsondata:Name {value: "interval_type"} + "unlimited"|"fixed" intervalType?; + @jsondata:Name {value: "start_date"} + string startDate?; + @jsondata:Name {value: "add_on_type"} + "zoomMeeting"|"zoomPhone"|"offline" addOnType?; + @jsondata:Name {value: "scheduling_url"} + string schedulingUrl?; + @jsondata:Name {value: "start_time_increment"} + decimal startTimeIncrement?; + # The event's summary. + @constraint:String {maxLength: 256} + string summary?; + InlineResponse2011Creator creator?; + @jsondata:Name {value: "schedule_type"} + "one"|"multiple" scheduleType?; + @jsondata:Name {value: "custom_fields"} + InlineResponse2011CustomFields[] customFields?; + # This field indicates if the schedule is active. + boolean active?; + @jsondata:Name {value: "booking_limit"} + decimal bookingLimit?; + @jsondata:Name {value: "time_zone"} + string timeZone?; + InlineResponse2011Organizer organizer?; + # The information for a custom location. + @constraint:String {maxLength: 1024} + string location?; + @jsondata:Name {value: "schedule_id"} + string scheduleId?; + # The moment the schedule type was updated. + string updated?; + @jsondata:Name {value: "availability_override"} + boolean availabilityOverride?; + # The status of schedule: confirmed or cancelled. + "confirmed"|"cancelled" status?; +}; + +# OAuth2 Refresh Token Grant Configs +public type OAuth2RefreshTokenGrantConfig record {| + *http:OAuth2RefreshTokenGrantConfig; + # Refresh URL + string refreshUrl = ""; +|}; + +public type SchedulerschedulesAvailabilityRules record { + @jsondata:Name {value: "use_custom"} + boolean useCustom?; + @jsondata:Name {value: "availability_id"} + string availabilityId?; + @jsondata:Name {value: "segments_recurrence"} + SchedulerschedulesSegmentsRecurrence segmentsRecurrence?; + @jsondata:Name {value: "time_zone"} + string timeZone?; + # The owner of this availability rule. + string email?; + # The available time segments of the event. + SchedulerschedulesSegments[] segments?; +}; + +public type ScheduleravailabilitySegmentsRecurrenceSun record { + # The start time of this day. + string 'start?; + # The end time of this day. + string end?; +}; + +# The stats of the last N days. +public type InlineResponse200LastNDays record { + @jsondata:Name {value: "all_host_available"} + int allHostAvailable?; + @jsondata:Name {value: "scheduled_events_rescheduled"} + int scheduledEventsRescheduled?; + @jsondata:Name {value: "scheduled_events_completed"} + int scheduledEventsCompleted?; + @jsondata:Name {value: "schedules_canceled"} + int schedulesCanceled?; + @jsondata:Name {value: "one_off_meeting"} + int oneOffMeeting?; + @jsondata:Name {value: "meeting_poll"} + int meetingPoll?; + @jsondata:Name {value: "one_to_many"} + int oneToMany?; + @jsondata:Name {value: "any_host_available"} + int anyHostAvailable?; + @jsondata:Name {value: "scheduled_events_canceled"} + int scheduledEventsCanceled?; + @jsondata:Name {value: "one_to_one"} + int oneToOne?; + @jsondata:Name {value: "scheduled_events_created"} + int scheduledEventsCreated?; + @jsondata:Name {value: "schedules_created"} + int schedulesCreated?; +}; + +public type SchedulerschedulesscheduleIdCustomFields record { + @jsondata:Name {value: "answer_choices"} + SchedulerschedulesscheduleIdCustomFieldsAnswerchoicesItemsString[] answerChoices?; + # The type of response that the invitee provides to the custom question. It can be one or multiple lines of text, a phone number, or single- or multiple-select.[`string text phone_number single_select multi_select`] + "text"|"string"|"phone_number"|"choices_one"|"choices_many"|"select" format; + @jsondata:Name {value: "custom_field_id"} + string customFieldId?; + # The custom question that the host created for the event type. + string name; + @jsondata:Name {value: "include_other"} + boolean includeOther; + # The position of this question. + decimal position; + # If the question created by the host is turned ON and visible on the event booking page, then it's true. If it's turned OFF and invisible on the event booking page, then it's false. + boolean enabled; + # If a response to the question, created by the host, is required for invitees to book the event type, then it's true. If it's not required, it's false. + boolean required; +}; + +public type SchedulerschedulesSegments record { + # The start date and time of the segment. + string 'start?; + # The end date and time of the segment. + string end?; +}; + +# Proxy server configurations to be used with the HTTP client endpoint. +public type ProxyConfig record {| + # Host name of the proxy server + string host = ""; + # Proxy server port + int port = 0; + # Proxy server username + string userName = ""; + # Proxy server password + @display {label: "", kind: "password"} + string password = ""; +|}; + +# The date interval that needs to overridden. +public type ScheduleravailabilityavailabilityIdSegments record { + # The start date to override. + string 'start; + # The end date to override. + string end; +}; + +# Represents the Queries record for the operation: report_analytics +public type ReportAnalyticsQueries record { + @http:Query {name: "user_id"} + string userId?; + # The lower bound (exclusive) for an event's end time from which to filter. Optional. The default is not to filter by end time. It must be an RFC3339 timestamp with mandatory time zone offset, for example, 2011-06-03T10:00:00-07:00, 2011-06-03T10:00:00Z. Milliseconds can be provided but are ignored. If `timeMax` is set, `timeMin` must be smaller than `timeMax`. + string 'from?; + # The upper bound (exclusive) for an event's start time to filter by. Optional. The default is not to filter by start time. It must be an RFC3339 timestamp with mandatory time zone offset. For example, 2011-06-03T10:00:00-07:00, 2011-06-03T10:00:00Z. Milliseconds may be provided but are ignored. If `timeMin` is set, `timeMax` must be greater than `timeMin`. + string to?; + @http:Query {name: "time_zone"} + string timeZone?; +}; + +public type SchedulerschedulesscheduleIdCustomFieldsAnswerchoicesItemsString string; + +# Provides settings related to HTTP/1.x protocol. +public type ClientHttp1Settings record {| + # Specifies whether to reuse a connection for multiple requests + http:KeepAlive keepAlive = http:KEEPALIVE_AUTO; + # The chunking behaviour of the request + http:Chunking chunking = http:CHUNKING_AUTO; + # Proxy server related options + ProxyConfig proxy?; +|}; + +# The availability of the schedule query result of given user. +public type InlineResponse2001 record { + @jsondata:Name {value: "next_page_token"} + string nextPageToken?; + # array[User Availability Schedule] + InlineResponse2001Items[] items?; +}; + +public type SchedulerschedulesCustomFieldsAnswerchoicesItemsString string; + +public type InlineResponse2003 record { + @jsondata:Name {value: "next_page_token"} + string nextPageToken?; + InlineResponse2003Items[] items?; +}; + +# The availability schedule set by the user. +public type InlineResponse2002 record { + # The owner's ID. + string owner?; + # The default availability schedule in use. + boolean default?; + # The name of this availability schedule. + string name?; + @jsondata:Name {value: "availability_id"} + string availabilityId?; + @jsondata:Name {value: "segments_recurrence"} + ScheduleravailabilitySegmentsRecurrence segmentsRecurrence?; + @jsondata:Name {value: "time_zone"} + string timeZone?; +}; + +public type InlineResponse2005 record { + @jsondata:Name {value: "next_page_token"} + string nextPageToken?; + InlineResponse2005Items[] items?; +}; + +public type InlineResponse2005Items record { + @jsondata:Name {value: "end_date"} + string endDate?; + # The hexadecimal color value of the event type's scheduling page. + string color?; + # The schedule's description. + @constraint:String {maxLength: 8192} + string description?; + # This field indicates if the event type is hidden on the owner's main scheduling page. + boolean secret?; + @jsondata:Name {value: "availability_rules"} + InlineResponse2005AvailabilityRules[] availabilityRules?; + # This field indicates the maximum invitees per event. + @constraint:Number {minValue: 1, maxValue: 200} + decimal capacity?; + # The available time segments of the event. + SchedulerschedulesSegments[] segments?; + # This field indicates the duration of the meeting in minutes, range: [1, 1440]. + @constraint:Number {minValue: 15, maxValue: 1440} + decimal duration?; + # This field indicates the minimum time before a schedule starts when the attendees can book. + @constraint:Number {minValue: 0, maxValue: 14340} + decimal cushion?; + SchedulerschedulesBuffer buffer?; + @jsondata:Name {value: "segments_recurrence"} + SchedulerschedulesscheduleIdSegmentsRecurrence1 segmentsRecurrence?; + # The event portion of the event's URL that identifies a specific web page. + @constraint:String {maxLength: 256, minLength: 3} + string slug?; + @jsondata:Name {value: "interval_type"} + "unlimited"|"fixed" intervalType?; + @jsondata:Name {value: "start_date"} + string startDate?; + @jsondata:Name {value: "add_on_type"} + "zoomMeeting"|"zoomPhone"|"offline" addOnType?; + @jsondata:Name {value: "scheduling_url"} + string schedulingUrl?; + @jsondata:Name {value: "start_time_increment"} + decimal startTimeIncrement?; + # The event's summary. + @constraint:String {maxLength: 256} + string summary?; + InlineResponse2005Creator creator?; + @jsondata:Name {value: "schedule_type"} + "one"|"multiple" scheduleType?; + @jsondata:Name {value: "custom_fields"} + InlineResponse2011CustomFields[] customFields?; + # This field indicates if the schedule is active + boolean active?; + @jsondata:Name {value: "booking_limit"} + decimal bookingLimit?; + @jsondata:Name {value: "time_zone"} + string timeZone?; + InlineResponse2011Organizer organizer?; + # The information for a custom location. + @constraint:String {maxLength: 1024} + string location?; + @jsondata:Name {value: "schedule_id"} + string scheduleId?; + # The moment the schedule type was updated. + string updated?; + @jsondata:Name {value: "availability_override"} + boolean availabilityOverride?; + # The status of schedule: confirmed or cancelled. + "confirmed"|"cancelled" status?; +}; + +public type InlineResponse2004 record { + # The event's summary. + @constraint:String {maxLength: 256} + string summary?; + # The attendees of the event. + InlineResponse2004Attendees[] attendees?; + @jsondata:Name {value: "meeting_notes"} + string meetingNotes?; + # The event's description. + @constraint:String {maxLength: 8192} + string description?; + @jsondata:Name {value: "end_date_time"} + string endDateTime?; + @jsondata:Name {value: "event_id"} + string eventId?; + @jsondata:Name {value: "event_type"} + "default"|"pending" eventType?; + @jsondata:Name {value: "tracking_params"} + InlineResponse2004TrackingParams[] trackingParams?; + # The guest's collection. + string[] guests?; + # The information for a custom location. + @constraint:String {maxLength: 1024} + string location?; + @jsondata:Name {value: "start_date_time"} + string startDateTime?; + @jsondata:Name {value: "schedule_id"} + string scheduleId?; + # The moment the event was updated. + string updated?; + @jsondata:Name {value: "external_location"} + record {string kind?; string meeting_id?; string personal_meeting_id?; string meeting_passcode?; string meeting_description?; string meeting_join_url?;} externalLocation?; + # The status of event: confirmed or cancelled. + "confirmed"|"cancelled" status?; +}; + +# The user's information. +public type InlineResponse2007 record { + @jsondata:Name {value: "scheduling_url"} + string schedulingUrl?; + # This field enables users to upload their company's logo on Zoom. + string logo?; + @jsondata:Name {value: "display_name"} + string displayName?; + @jsondata:Name {value: "time_zone"} + string timeZone?; + # The portion of URL for the user's scheduling page where invitees book sessions that renders in a human-readable format. + string slug?; + # This field enables users to upload their personal avatars on Zoom. + string picture?; +}; + +# Represents the Queries record for the operation: list_scheduled_events +public type ListScheduledEventsQueries record { + @http:Query {name: "show_deleted"} + boolean showDeleted?; + # This field returns search results from meeting ID or summary. + string search?; + @http:Query {name: "event_type"} + "pending" eventType?; + @http:Query {name: "next_page_token"} + string nextPageToken?; + @http:Query {name: "user_id"} + string userId?; + @http:Query {name: "order_by"} + string orderBy?; + # The lower bound (exclusive) for an event's end time from which to filter. + string 'from?; + # The upper bound (exclusive) for an event's start time from which to filter. + string to?; + @http:Query {name: "time_zone"} + string timeZone?; + @http:Query {name: "page_size"} + int pageSize?; +}; + +public type InlineResponse2006 record { + @jsondata:Name {value: "end_date"} + string endDate?; + # The hexadecimal color value of the event type's scheduling page. + string color?; + # The schedule's description. + @constraint:String {maxLength: 8192} + string description?; + # This field indicates if the event type is hidden on the owner's main scheduling page. + boolean secret?; + @jsondata:Name {value: "availability_rules"} + InlineResponse2006AvailabilityRules[] availabilityRules?; + # This field indicates the maximum invitees per event. + @constraint:Number {minValue: 1, maxValue: 200} + decimal capacity?; + # The available time segments of the event. + SchedulerschedulesSegments[] segments?; + # This field indicates the duration of the meeting in minutes, range: [1, 1440]. + @constraint:Number {minValue: 15, maxValue: 1440} + decimal duration?; + # This field indicates the minimum time before a schedule starts when the attendees can book. + @constraint:Number {minValue: 0, maxValue: 14340} + decimal cushion?; + SchedulerschedulesBuffer buffer?; + @jsondata:Name {value: "segments_recurrence"} + SchedulerschedulesSegmentsRecurrence segmentsRecurrence?; + # The event portion of the event's URL that identifies a specific web page. + @constraint:String {maxLength: 256, minLength: 3} + string slug?; + @jsondata:Name {value: "interval_type"} + "unlimited"|"fixed" intervalType?; + @jsondata:Name {value: "start_date"} + string startDate?; + @jsondata:Name {value: "add_on_type"} + "zoomMeeting"|"zoomPhone"|"offline" addOnType?; + @jsondata:Name {value: "scheduling_url"} + string schedulingUrl?; + @jsondata:Name {value: "start_time_increment"} + decimal startTimeIncrement?; + # The event's summary. + @constraint:String {maxLength: 256} + string summary?; + InlineResponse2011Creator creator?; + @jsondata:Name {value: "schedule_type"} + "one"|"multiple" scheduleType?; + @jsondata:Name {value: "custom_fields"} + InlineResponse2011CustomFields[] customFields?; + # This field indicates if the schedule is active. + boolean active?; + @jsondata:Name {value: "booking_limit"} + decimal bookingLimit?; + @jsondata:Name {value: "time_zone"} + string timeZone?; + InlineResponse2011Organizer organizer?; + # The information for a custom location. + @constraint:String {maxLength: 1024} + string location?; + @jsondata:Name {value: "schedule_id"} + string scheduleId?; + # The moment the schedule type was updated. + string updated?; + @jsondata:Name {value: "availability_override"} + boolean availabilityOverride?; + # The status of schedule: confirmed or cancelled. + "confirmed"|"cancelled" status?; +}; diff --git a/ballerina/utils.bal b/ballerina/utils.bal new file mode 100644 index 0000000..859a6d2 --- /dev/null +++ b/ballerina/utils.bal @@ -0,0 +1,203 @@ +// AUTO-GENERATED FILE. DO NOT MODIFY. +// This file is auto-generated by the Ballerina OpenAPI tool. + +import ballerina/http; +import ballerina/url; + +type SimpleBasicType string|boolean|int|float|decimal; + +# Represents encoding mechanism details. +type Encoding record { + # Defines how multiple values are delimited + string style = FORM; + # Specifies whether arrays and objects should generate as separate fields + boolean explode = true; + # Specifies the custom content type + string contentType?; + # Specifies the custom headers + map headers?; +}; + +enum EncodingStyle { + DEEPOBJECT, FORM, SPACEDELIMITED, PIPEDELIMITED +} + +final Encoding & readonly defaultEncoding = {}; + +# Serialize the record according to the deepObject style. +# +# + parent - Parent record name +# + anyRecord - Record to be serialized +# + return - Serialized record as a string +isolated function getDeepObjectStyleRequest(string parent, record {} anyRecord) returns string { + string[] recordArray = []; + foreach [string, anydata] [key, value] in anyRecord.entries() { + if value is SimpleBasicType { + recordArray.push(parent + "[" + key + "]" + "=" + getEncodedUri(value.toString())); + } else if value is SimpleBasicType[] { + recordArray.push(getSerializedArray(parent + "[" + key + "]" + "[]", value, DEEPOBJECT, true)); + } else if value is record {} { + string nextParent = parent + "[" + key + "]"; + recordArray.push(getDeepObjectStyleRequest(nextParent, value)); + } else if value is record {}[] { + string nextParent = parent + "[" + key + "]"; + recordArray.push(getSerializedRecordArray(nextParent, value, DEEPOBJECT)); + } + recordArray.push("&"); + } + _ = recordArray.pop(); + return string:'join("", ...recordArray); +} + +# Serialize the record according to the form style. +# +# + parent - Parent record name +# + anyRecord - Record to be serialized +# + explode - Specifies whether arrays and objects should generate separate parameters +# + return - Serialized record as a string +isolated function getFormStyleRequest(string parent, record {} anyRecord, boolean explode = true) returns string { + string[] recordArray = []; + if explode { + foreach [string, anydata] [key, value] in anyRecord.entries() { + if value is SimpleBasicType { + recordArray.push(key, "=", getEncodedUri(value.toString())); + } else if value is SimpleBasicType[] { + recordArray.push(getSerializedArray(key, value, explode = explode)); + } else if value is record {} { + recordArray.push(getFormStyleRequest(parent, value, explode)); + } + recordArray.push("&"); + } + _ = recordArray.pop(); + } else { + foreach [string, anydata] [key, value] in anyRecord.entries() { + if value is SimpleBasicType { + recordArray.push(key, ",", getEncodedUri(value.toString())); + } else if value is SimpleBasicType[] { + recordArray.push(getSerializedArray(key, value, explode = false)); + } else if value is record {} { + recordArray.push(getFormStyleRequest(parent, value, explode)); + } + recordArray.push(","); + } + _ = recordArray.pop(); + } + return string:'join("", ...recordArray); +} + +# Serialize arrays. +# +# + arrayName - Name of the field with arrays +# + anyArray - Array to be serialized +# + style - Defines how multiple values are delimited +# + explode - Specifies whether arrays and objects should generate separate parameters +# + return - Serialized array as a string +isolated function getSerializedArray(string arrayName, anydata[] anyArray, string style = "form", boolean explode = true) returns string { + string key = arrayName; + string[] arrayValues = []; + if anyArray.length() > 0 { + if style == FORM && !explode { + arrayValues.push(key, "="); + foreach anydata i in anyArray { + arrayValues.push(getEncodedUri(i.toString()), ","); + } + } else if style == SPACEDELIMITED && !explode { + arrayValues.push(key, "="); + foreach anydata i in anyArray { + arrayValues.push(getEncodedUri(i.toString()), "%20"); + } + } else if style == PIPEDELIMITED && !explode { + arrayValues.push(key, "="); + foreach anydata i in anyArray { + arrayValues.push(getEncodedUri(i.toString()), "|"); + } + } else if style == DEEPOBJECT { + foreach anydata i in anyArray { + arrayValues.push(key, "[]", "=", getEncodedUri(i.toString()), "&"); + } + } else { + foreach anydata i in anyArray { + arrayValues.push(key, "=", getEncodedUri(i.toString()), "&"); + } + } + _ = arrayValues.pop(); + } + return string:'join("", ...arrayValues); +} + +# Serialize the array of records according to the form style. +# +# + parent - Parent record name +# + value - Array of records to be serialized +# + style - Defines how multiple values are delimited +# + explode - Specifies whether arrays and objects should generate separate parameters +# + return - Serialized record as a string +isolated function getSerializedRecordArray(string parent, record {}[] value, string style = FORM, boolean explode = true) returns string { + string[] serializedArray = []; + if style == DEEPOBJECT { + int arayIndex = 0; + foreach var recordItem in value { + serializedArray.push(getDeepObjectStyleRequest(parent + "[" + arayIndex.toString() + "]", recordItem), "&"); + arayIndex = arayIndex + 1; + } + } else { + if !explode { + serializedArray.push(parent, "="); + } + foreach var recordItem in value { + serializedArray.push(getFormStyleRequest(parent, recordItem, explode), ","); + } + } + _ = serializedArray.pop(); + return string:'join("", ...serializedArray); +} + +# Get Encoded URI for a given value. +# +# + value - Value to be encoded +# + return - Encoded string +isolated function getEncodedUri(anydata value) returns string { + string|error encoded = url:encode(value.toString(), "UTF8"); + if encoded is string { + return encoded; + } else { + return value.toString(); + } +} + +# Generate query path with query parameter. +# +# + queryParam - Query parameter map +# + encodingMap - Details on serialization mechanism +# + return - Returns generated Path or error at failure of client initialization +isolated function getPathForQueryParam(map queryParam, map encodingMap = {}) returns string|error { + map queriesMap = http:getQueryMap(queryParam); + string[] param = []; + if queriesMap.length() > 0 { + param.push("?"); + foreach var [key, value] in queriesMap.entries() { + if value is () { + _ = queriesMap.remove(key); + continue; + } + Encoding encodingData = encodingMap.hasKey(key) ? encodingMap.get(key) : defaultEncoding; + if value is SimpleBasicType { + param.push(key, "=", getEncodedUri(value.toString())); + } else if value is SimpleBasicType[] { + param.push(getSerializedArray(key, value, encodingData.style, encodingData.explode)); + } else if value is record {} { + if encodingData.style == DEEPOBJECT { + param.push(getDeepObjectStyleRequest(key, value)); + } else { + param.push(getFormStyleRequest(key, value, encodingData.explode)); + } + } else { + param.push(key, "=", value.toString()); + } + param.push("&"); + } + _ = param.pop(); + } + string restOfPath = string:'join("", ...param); + return restOfPath; +} diff --git a/docs/spec/openapi.json b/docs/spec/openapi.json new file mode 100644 index 0000000..2373479 --- /dev/null +++ b/docs/spec/openapi.json @@ -0,0 +1,4179 @@ +{ + "openapi" : "3.0.0", + "info" : { + "title" : "Scheduler", + "description" : "The Scheduler APIs let you programmatically interact with [Zoom Scheduler](https://developers.zoom.us/docs/zoom-scheduler/) features. They allow you to schedule, manage, and retrieve details about meetings, webinars, and other events on the Zoom platform. With powerful tools for integration, these APIs streamline event management and automate workflows in external applications.", + "termsOfService" : "https://zoom.us/docs/en-us/zoom_api_license_and_tou.html", + "contact" : { + "name" : "Zoom Developers", + "url" : "https://developer.zoom.us/" + }, + "version" : "2" + }, + "externalDocs" : { + "description" : "Find out more about Swagger", + "url" : "https://swagger.io" + }, + "servers" : [ { + "url" : "https://api.zoom.us/v2" + } ], + "paths" : { + "/scheduler/analytics" : { + "get" : { + "tags" : [ "analytics" ], + "summary" : "Report analytics", + "description" : "Generates the scheduler analytics report.\n\n**[Scopes](https://developers.zoom.us/docs/integrations/oauth-scopes-overview/):** `scheduler:read`,`scheduler:read:admin`\n\n**[Granular Scopes](https://developers.zoom.us/docs/integrations/oauth-scopes-overview/):** `scheduler:read:analytics`,`scheduler:read:analytics:admin`\n\n**[Rate Limit Label](https://marketplace.zoom.us/docs/api-reference/rate-limits#rate-limits):** `LIGHT`", + "operationId" : "report_analytics", + "parameters" : [ { + "name" : "to", + "in" : "query", + "description" : "The upper bound (exclusive) for an event's start time to filter by. Optional. The default is not to filter by start time. It must be an RFC3339 timestamp with mandatory time zone offset. For example, 2011-06-03T10:00:00-07:00, 2011-06-03T10:00:00Z. Milliseconds may be provided but are ignored. If `timeMin` is set, `timeMax` must be greater than `timeMin`.", + "required" : false, + "style" : "form", + "explode" : true, + "schema" : { + "type" : "string", + "example" : "2024-02-01T00:00:00Z" + } + }, { + "name" : "from", + "in" : "query", + "description" : "The lower bound (exclusive) for an event's end time from which to filter. Optional. The default is not to filter by end time. It must be an RFC3339 timestamp with mandatory time zone offset, for example, 2011-06-03T10:00:00-07:00, 2011-06-03T10:00:00Z. Milliseconds can be provided but are ignored. If `timeMax` is set, `timeMin` must be smaller than `timeMax`.", + "required" : false, + "style" : "form", + "explode" : true, + "schema" : { + "type" : "string", + "example" : "2024-01-01T00:00:00Z" + } + }, { + "name" : "time_zone", + "in" : "query", + "description" : "The time zone in the response. The default is the time zone of the calendar. Optional. ", + "required" : false, + "style" : "form", + "explode" : true, + "schema" : { + "type" : "string", + "example" : "America/Los_Angeles" + }, + "x-ballerina-name" : "timeZone" + }, { + "name" : "user_id", + "in" : "query", + "description" : "The specific user's web user ID. Default is \"me\". Use \"all\" to query for analytics with respect to all members under that account. ", + "required" : false, + "style" : "form", + "explode" : true, + "schema" : { + "type" : "string", + "example" : "x3h1u4id4liffdyszsp8kpxl80 or all" + }, + "x-ballerina-name" : "userId" + } ], + "responses" : { + "200" : { + "description" : "If successful, this method returns the scheduler analytics or the user ID or account ID provided.", + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/InlineResponse200" + } + } + } + }, + "400" : { + "description" : "**HTTP Status Code:** `400`
\n Bad Request \n\n **Error Code:** `400`
\n invalidArgument
\n" + }, + "401" : { + "description" : "**HTTP Status Code:** `401`
\n Unauthorized \n\n **Error Code:** `401`
\n unauthorized
\n" + }, + "404" : { + "description" : "**HTTP Status Code:** `404`
\n Not Found \n\n **Error Code:** `404`
\n notFound
\n" + }, + "409" : { + "description" : "**HTTP Status Code:** `409`
\n Conflict \n\n **Error Code:** `409`
\n conflict
\n" + }, + "429" : { + "description" : "**HTTP Status Code:** `429`
\n Too Many Requests. For more information, see [rate limits](https://developers.zoom.us/docs/api/rest/rate-limits/). \n\n " + }, + "500" : { + "description" : "**HTTP Status Code:** `500`
\n Internal Server Error \n\n **Error Code:** `500`
\n internalErr
\n" + } + }, + "security" : [ { + "openapi_oauth" : [ "scheduler:read", "scheduler:read:admin", "scheduler:read:analytics", "scheduler:read:analytics:admin" ], + "openapi_authorization" : [ ] + } ], + "x-extensions" : { + "x-permissions" : [ ], + "x-macro-scopes" : [ "scheduler:read", "scheduler:read:admin" ], + "x-granular-scopes" : [ "scheduler:read:analytics", "scheduler:read:analytics:admin" ] + } + } + }, + "/scheduler/availability" : { + "get" : { + "tags" : [ "availability" ], + "summary" : "List availability", + "description" : "Returns the availability schedules of the given user.\n\n**[Scopes](https://developers.zoom.us/docs/integrations/oauth-scopes-overview/):** `scheduler:read:admin`,`scheduler:read`\n\n**[Granular Scopes](https://developers.zoom.us/docs/integrations/oauth-scopes-overview/):** `scheduler:read:list_availability`,`scheduler:read:list_availability:admin`\n\n**[Rate Limit Label](https://marketplace.zoom.us/docs/api-reference/rate-limits#rate-limits):** `LIGHT`", + "operationId" : "list_availability", + "parameters" : [ { + "name" : "page_size", + "in" : "query", + "description" : "The maximum number of availability returned on one result page.", + "required" : false, + "style" : "form", + "explode" : true, + "schema" : { + "type" : "integer", + "example" : 250 + }, + "x-ballerina-name" : "pageSize" + }, { + "name" : "next_page_token", + "in" : "query", + "description" : "The token that specifies which result page to return.", + "required" : false, + "style" : "form", + "explode" : true, + "schema" : { + "type" : "string", + "example" : "Cj8KLwotCgsI3ujvqgYQgIXUGxIeChwKGjBzNzAyZWVtbjBzOTdlZXFhNXE1NWg4ZWJtGgwIzIPVrAYQwM3WrAPAPgE=" + }, + "x-ballerina-name" : "nextPageToken" + }, { + "name" : "user_id", + "in" : "query", + "description" : "The return of the specific user's availability.", + "required" : false, + "style" : "form", + "explode" : true, + "schema" : { + "type" : "string", + "example" : "x3h1u4id4liffdyszsp8kpxl8" + }, + "x-ballerina-name" : "userId" + } ], + "responses" : { + "200" : { + "description" : "Successful availability of the schedule query result of given user.", + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/InlineResponse2001" + } + } + } + }, + "401" : { + "description" : "**HTTP Status Code:** `401`
\n Unauthorized \n\n **Error Code:** `401`
\n Unauthorized
\n" + }, + "404" : { + "description" : "**HTTP Status Code:** `404`
\n Not Found \n\n **Error Code:** `404`
\n notFound
\n" + }, + "409" : { + "description" : "**HTTP Status Code:** `409`
\n Conflict \n\n **Error Code:** `409`
\n conflict
\n" + }, + "429" : { + "description" : "**HTTP Status Code:** `429`
\n Too Many Requests. For more information, see [rate limits](https://developers.zoom.us/docs/api/rest/rate-limits/). \n\n " + }, + "500" : { + "description" : "**HTTP Status Code:** `500`
\n Internal Server Error \n\n **Error Code:** `500`
\n internalErr
\n" + } + }, + "security" : [ { + "openapi_oauth" : [ "scheduler:read:admin", "scheduler:read", "scheduler:read:list_availability", "scheduler:read:list_availability:admin" ], + "openapi_authorization" : [ ] + } ], + "x-extensions" : { + "x-permissions" : [ ], + "x-macro-scopes" : [ "scheduler:read:admin", "scheduler:read" ], + "x-granular-scopes" : [ "scheduler:read:list_availability", "scheduler:read:list_availability:admin" ] + } + }, + "post" : { + "tags" : [ "availability" ], + "summary" : "Insert availability", + "description" : "Inserts a user availability schedule. \n\n**[Scopes](https://developers.zoom.us/docs/integrations/oauth-scopes-overview/):** `scheduler:write:admin`,`scheduler:write`\n\n**[Granular Scopes](https://developers.zoom.us/docs/integrations/oauth-scopes-overview/):** `scheduler:write:availability`,`scheduler:write:availability:admin`\n\n**[Rate Limit Label](https://marketplace.zoom.us/docs/api-reference/rate-limits#rate-limits):** `LIGHT`", + "operationId" : "insert_availability", + "requestBody" : { + "description" : "In the request body, it supplies an availability resource properties.", + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/SchedulerAvailabilityBody" + } + } + } + }, + "responses" : { + "201" : { + "description" : "If successful, this method returns a availability resource in the response body.", + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/InlineResponse201" + } + } + } + }, + "400" : { + "description" : "**HTTP Status Code:** `400`
\n Bad Request \n\n **Error Code:** `400`
\n invalidArgument
\n" + }, + "401" : { + "description" : "**HTTP Status Code:** `401`
\n Unauthorized \n\n **Error Code:** `401`
\n unauthorized
\n" + }, + "409" : { + "description" : "**HTTP Status Code:** `409`
\n Conflict \n\n **Error Code:** `409`
\n conflict
\n" + }, + "429" : { + "description" : "**HTTP Status Code:** `429`
\n Too Many Requests. For more information, see [rate limits](https://developers.zoom.us/docs/api/rest/rate-limits/). \n\n " + }, + "500" : { + "description" : "**HTTP Status Code:** `500`
\n Internal Server Error \n\n **Error Code:** `500`
\n internalErr
\n" + } + }, + "security" : [ { + "openapi_oauth" : [ "scheduler:write:admin", "scheduler:write", "scheduler:write:availability", "scheduler:write:availability:admin" ], + "openapi_authorization" : [ ] + } ], + "x-extensions" : { + "x-permissions" : [ ], + "x-macro-scopes" : [ "scheduler:write:admin", "scheduler:write" ], + "x-granular-scopes" : [ "scheduler:write:availability", "scheduler:write:availability:admin" ] + } + } + }, + "/scheduler/availability/{availabilityId}" : { + "get" : { + "tags" : [ "availability" ], + "summary" : "Get availability ", + "description" : "Returns the availability schedule of the given UUID.\n\n**[Scopes](https://developers.zoom.us/docs/integrations/oauth-scopes-overview/):** `scheduler:read:admin`,`scheduler:read`\n\n**[Granular Scopes](https://developers.zoom.us/docs/integrations/oauth-scopes-overview/):** `scheduler:read:availability`,`scheduler:read:availability:admin`\n\n**[Rate Limit Label](https://marketplace.zoom.us/docs/api-reference/rate-limits#rate-limits):** `LIGHT`", + "operationId" : "get_availability", + "parameters" : [ { + "name" : "availabilityId", + "in" : "path", + "description" : "The UUID of the availability schedule.", + "required" : true, + "style" : "simple", + "explode" : false, + "schema" : { + "type" : "string", + "example" : "x3h1u4id4liffdyszsp8kpxl80" + } + } ], + "responses" : { + "200" : { + "description" : "If successful, this method returns an availability resource in the response body.", + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/InlineResponse2002" + } + } + } + }, + "400" : { + "description" : "**HTTP Status Code:** `400`
\n Bad Request \n\n **Error Code:** `400`
\n invalidArgument
\n" + }, + "401" : { + "description" : "**HTTP Status Code:** `401`
\n Unauthorized \n\n **Error Code:** `401`
\n unauthorized
\n" + }, + "404" : { + "description" : "**HTTP Status Code:** `404`
\n Not Found \n\n **Error Code:** `404`
\n notFound
\n" + }, + "409" : { + "description" : "**HTTP Status Code:** `409`
\n Conflict \n\n **Error Code:** `409`
\n conflict
\n" + }, + "429" : { + "description" : "**HTTP Status Code:** `429`
\n Too Many Requests. For more information, see [rate limits](https://developers.zoom.us/docs/api/rest/rate-limits/). \n\n " + }, + "500" : { + "description" : "**HTTP Status Code:** `500`
\n Internal Server Error \n\n **Error Code:** `500`
\n internalErr
\n" + } + }, + "security" : [ { + "openapi_oauth" : [ "scheduler:read:admin", "scheduler:read", "scheduler:read:availability", "scheduler:read:availability:admin" ], + "openapi_authorization" : [ ] + } ], + "x-extensions" : { + "x-permissions" : [ ], + "x-macro-scopes" : [ "scheduler:read:admin", "scheduler:read" ], + "x-granular-scopes" : [ "scheduler:read:availability", "scheduler:read:availability:admin" ] + } + }, + "delete" : { + "tags" : [ "availability" ], + "summary" : "Delete availability", + "description" : "Removes a user's availability.\n\n**[Scopes](https://developers.zoom.us/docs/integrations/oauth-scopes-overview/):** `scheduler:write:admin`,`scheduler:write`\n\n**[Granular Scopes](https://developers.zoom.us/docs/integrations/oauth-scopes-overview/):** `scheduler:delete:availability`,`scheduler:delete:availability:admin`\n\n**[Rate Limit Label](https://marketplace.zoom.us/docs/api-reference/rate-limits#rate-limits):** `LIGHT`", + "operationId" : "delete_availability", + "parameters" : [ { + "name" : "availabilityId", + "in" : "path", + "description" : " The UUID of the availability schedule.", + "required" : true, + "style" : "simple", + "explode" : false, + "schema" : { + "type" : "string", + "example" : "x3h1u4id4liffdyszsp8kpxl80" + } + } ], + "responses" : { + "204" : { + "description" : "If successful, this method returns an empty response body." + }, + "404" : { + "description" : "**HTTP Status Code:** `404`
\n Not Found \n\n **Error Code:** `404`
\n notFound
\n" + }, + "429" : { + "description" : "**HTTP Status Code:** `429`
\n Too Many Requests. For more information, see [rate limits](https://developers.zoom.us/docs/api/rest/rate-limits/). \n\n " + }, + "500" : { + "description" : "**HTTP Status Code:** `500`
\n Internal Server Error \n\n **Error Code:** `500`
\n internalErr
\n" + } + }, + "security" : [ { + "openapi_oauth" : [ "scheduler:write:admin", "scheduler:write", "scheduler:delete:availability", "scheduler:delete:availability:admin" ], + "openapi_authorization" : [ ] + } ], + "x-extensions" : { + "x-permissions" : [ ], + "x-macro-scopes" : [ "scheduler:write:admin", "scheduler:write" ], + "x-granular-scopes" : [ "scheduler:delete:availability", "scheduler:delete:availability:admin" ] + } + }, + "patch" : { + "tags" : [ "availability" ], + "summary" : "Patch availability", + "description" : "Adjusts the availability schedule content of the given UUID.\n\n**[Scopes](https://developers.zoom.us/docs/integrations/oauth-scopes-overview/):** `scheduler:write:admin`,`scheduler:write`\n\n**[Granular Scopes](https://developers.zoom.us/docs/integrations/oauth-scopes-overview/):** `scheduler:update:availability`,`scheduler:update:availability:admin`\n\n**[Rate Limit Label](https://marketplace.zoom.us/docs/api-reference/rate-limits#rate-limits):** `LIGHT`", + "operationId" : "patch_availability", + "parameters" : [ { + "name" : "availabilityId", + "in" : "path", + "description" : "The UUID of the availability schedule.", + "required" : true, + "style" : "simple", + "explode" : false, + "schema" : { + "type" : "string", + "example" : "x3h1u4id4liffdyszsp8kpxl80" + } + } ], + "requestBody" : { + "description" : "In the request body, supply availability resource properties.", + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/AvailabilityavailabilityIdBody" + } + } + } + }, + "responses" : { + "204" : { + "description" : "If successful, this method returns an empty response body." + }, + "400" : { + "description" : "**HTTP Status Code:** `400`
\n Bad Request \n\n **Error Code:** `400`
\n invalidArgument
\n" + }, + "401" : { + "description" : "**HTTP Status Code:** `401`
\n Unauthorized \n\n **Error Code:** `401`
\n unauthorized
\n" + }, + "404" : { + "description" : "**HTTP Status Code:** `404`
\n Not Found \n\n **Error Code:** `404`
\n notFound
\n" + }, + "409" : { + "description" : "**HTTP Status Code:** `409`
\n Conflict \n\n **Error Code:** `409`
\n conflict
\n" + }, + "429" : { + "description" : "**HTTP Status Code:** `429`
\n Too Many Requests. For more information, see [rate limits](https://developers.zoom.us/docs/api/rest/rate-limits/). \n\n " + }, + "500" : { + "description" : "**HTTP Status Code:** `500`
\n Internal Server Error \n\n **Error Code:** `500`
\n internalErr
\n" + } + }, + "security" : [ { + "openapi_oauth" : [ "scheduler:write:admin", "scheduler:write", "scheduler:update:availability", "scheduler:update:availability:admin" ], + "openapi_authorization" : [ ] + } ], + "x-extensions" : { + "x-permissions" : [ ], + "x-macro-scopes" : [ "scheduler:write:admin", "scheduler:write" ], + "x-granular-scopes" : [ "scheduler:update:availability", "scheduler:update:availability:admin" ] + } + } + }, + "/scheduler/events" : { + "get" : { + "tags" : [ "scheduled events" ], + "summary" : "List scheduled events", + "description" : "Returns a list of all scheduled events.\n\n**[Scopes](https://developers.zoom.us/docs/integrations/oauth-scopes-overview/):** `scheduler:read:admin`,`scheduler:read`\n\n**[Granular Scopes](https://developers.zoom.us/docs/integrations/oauth-scopes-overview/):** `scheduler:read:list_scheduled_events`,`scheduler:read:list_scheduled_events:admin`\n\n**[Rate Limit Label](https://marketplace.zoom.us/docs/api-reference/rate-limits#rate-limits):** `LIGHT`", + "operationId" : "list_scheduled_events", + "parameters" : [ { + "name" : "to", + "in" : "query", + "description" : "The upper bound (exclusive) for an event's start time from which to filter.", + "required" : false, + "style" : "form", + "explode" : true, + "schema" : { + "type" : "string", + "example" : "2011-06-03T10:00:00-07:00" + } + }, { + "name" : "from", + "in" : "query", + "description" : "The lower bound (exclusive) for an event's end time from which to filter. ", + "required" : false, + "style" : "form", + "explode" : true, + "schema" : { + "type" : "string", + "example" : "2011-06-03T10:00:00-07:00" + } + }, { + "name" : "page_size", + "in" : "query", + "description" : "The maximum number of events returned on one result page.", + "required" : false, + "style" : "form", + "explode" : true, + "schema" : { + "type" : "integer", + "example" : 250 + }, + "x-ballerina-name" : "pageSize" + }, { + "name" : "order_by", + "in" : "query", + "description" : "This field indicates the start time or the time when the event has been updated.", + "required" : false, + "style" : "form", + "explode" : true, + "schema" : { + "type" : "string", + "example" : "startTime" + }, + "x-ballerina-name" : "orderBy" + }, { + "name" : "time_zone", + "in" : "query", + "description" : "The time zone in the response.", + "required" : false, + "style" : "form", + "explode" : true, + "schema" : { + "type" : "string", + "example" : "UTC" + }, + "x-ballerina-name" : "timeZone" + }, { + "name" : "next_page_token", + "in" : "query", + "description" : "The token that specifies which result page to return.", + "required" : false, + "style" : "form", + "explode" : true, + "schema" : { + "type" : "string", + "example" : "ffffffff97c5b97f_53slvrhet2n0xkxurl5ybgde40" + }, + "x-ballerina-name" : "nextPageToken" + }, { + "name" : "show_deleted", + "in" : "query", + "description" : "Whether to include deleted events (with status equals `cancelled`) in the result.", + "required" : false, + "style" : "form", + "explode" : true, + "schema" : { + "type" : "boolean", + "example" : true + }, + "x-ballerina-name" : "showDeleted" + }, { + "name" : "event_type", + "in" : "query", + "description" : "Whether to return the pending events.", + "required" : false, + "style" : "form", + "explode" : true, + "schema" : { + "type" : "string", + "example" : "pending", + "enum" : [ "pending" ] + }, + "x-ballerina-name" : "eventType" + }, { + "name" : "user_id", + "in" : "query", + "description" : "The return of the specific user's scheduled event. It's only for admin", + "required" : false, + "style" : "form", + "explode" : true, + "schema" : { + "type" : "string", + "example" : "x3h1u4id4liffdyszsp8kpxl80" + }, + "x-ballerina-name" : "userId" + }, { + "name" : "search", + "in" : "query", + "description" : "This field returns search results from meeting ID or summary.", + "required" : false, + "style" : "form", + "explode" : true, + "schema" : { + "type" : "string", + "example" : "94777886776" + } + } ], + "responses" : { + "200" : { + "description" : "If successful, this method returns a response body with the following structure:", + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/InlineResponse2003" + } + } + } + }, + "401" : { + "description" : "**HTTP Status Code:** `401`
\n Unauthorized \n\n **Error Code:** `401`
\n Unauthorized
\n" + }, + "429" : { + "description" : "**HTTP Status Code:** `429`
\n Too Many Requests. For more information, see [rate limits](https://developers.zoom.us/docs/api/rest/rate-limits/). \n\n " + }, + "500" : { + "description" : "**HTTP Status Code:** `500`
\n Internal Server Error \n\n **Error Code:** `500`
\n InternalErr
\n" + } + }, + "security" : [ { + "openapi_oauth" : [ "scheduler:read:admin", "scheduler:read", "scheduler:read:list_scheduled_events", "scheduler:read:list_scheduled_events:admin" ], + "openapi_authorization" : [ ] + } ], + "x-extensions" : { + "x-permissions" : [ ], + "x-macro-scopes" : [ "scheduler:read:admin", "scheduler:read" ], + "x-granular-scopes" : [ "scheduler:read:list_scheduled_events", "scheduler:read:list_scheduled_events:admin" ] + } + } + }, + "/scheduler/events/{eventId}" : { + "get" : { + "tags" : [ "scheduled events" ], + "summary" : "Get scheduled events ", + "description" : "Returns a scheduled event.\n\n**[Scopes](https://developers.zoom.us/docs/integrations/oauth-scopes-overview/):** `scheduler:read:admin`,`scheduler:read`\n\n**[Granular Scopes](https://developers.zoom.us/docs/integrations/oauth-scopes-overview/):** `scheduler:read:scheduled_event`,`scheduler:read:scheduled_event:admin`\n\n**[Rate Limit Label](https://marketplace.zoom.us/docs/api-reference/rate-limits#rate-limits):** `LIGHT`", + "operationId" : "get_scheduled_events", + "parameters" : [ { + "name" : "eventId", + "in" : "path", + "required" : true, + "style" : "simple", + "explode" : false, + "schema" : { + "type" : "string" + } + }, { + "name" : "user_id", + "in" : "query", + "description" : "This field indicates whether the admin handles certain users. It's only for admin.", + "required" : false, + "style" : "form", + "explode" : true, + "schema" : { + "type" : "string", + "example" : "x3h1u4id4liffdyszsp8kpxl8" + }, + "x-ballerina-name" : "userId" + } ], + "responses" : { + "200" : { + "description" : "If successful, this method returns the scheduled event resource in the response body.", + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/InlineResponse2004" + } + } + } + }, + "401" : { + "description" : "**HTTP Status Code:** `401`
\n Unauthorized \n\n **Error Code:** `401`
\n Unauthorized
\n" + }, + "404" : { + "description" : "**HTTP Status Code:** `404`
\n Not Found \n\n **Error Code:** `404`
\n NotFound
\n" + }, + "429" : { + "description" : "**HTTP Status Code:** `429`
\n Too Many Requests. For more information, see [rate limits](https://developers.zoom.us/docs/api/rest/rate-limits/). \n\n " + }, + "500" : { + "description" : "**HTTP Status Code:** `500`
\n Internal Server Error \n\n **Error Code:** `500`
\n InternalErr
\n" + } + }, + "security" : [ { + "openapi_oauth" : [ "scheduler:read:admin", "scheduler:read", "scheduler:read:scheduled_event", "scheduler:read:scheduled_event:admin" ], + "openapi_authorization" : [ ] + } ], + "x-extensions" : { + "x-permissions" : [ ], + "x-macro-scopes" : [ "scheduler:read:admin", "scheduler:read" ], + "x-granular-scopes" : [ "scheduler:read:scheduled_event", "scheduler:read:scheduled_event:admin" ] + } + }, + "delete" : { + "tags" : [ "scheduled events" ], + "summary" : "Delete scheduled events ", + "description" : "Deletes a scheduled event.\n\n**[Scopes](https://developers.zoom.us/docs/integrations/oauth-scopes-overview/):** `scheduler:write:admin`,`scheduler:write`\n\n**[Granular Scopes](https://developers.zoom.us/docs/integrations/oauth-scopes-overview/):** `scheduler:delete:scheduled_event`,`scheduler:delete:scheduled_event:admin`\n\n**[Rate Limit Label](https://marketplace.zoom.us/docs/api-reference/rate-limits#rate-limits):** `LIGHT`", + "operationId" : "delete_scheduled_events", + "parameters" : [ { + "name" : "eventId", + "in" : "path", + "required" : true, + "style" : "simple", + "explode" : false, + "schema" : { + "type" : "string" + } + }, { + "name" : "user_id", + "in" : "query", + "description" : "This field indicates whether the admin handles certain users. It's only for admin.", + "required" : false, + "style" : "form", + "explode" : true, + "schema" : { + "type" : "string", + "example" : "x3h1u4id4liffdyszsp8kpxl8" + }, + "x-ballerina-name" : "userId" + } ], + "responses" : { + "204" : { + "description" : "If successful, this method returns an empty response body." + }, + "401" : { + "description" : "**HTTP Status Code:** `401`
\n Unauthorized \n\n **Error Code:** `401`
\n Unauthorized
\n" + }, + "404" : { + "description" : "**HTTP Status Code:** `404`
\n Not Found \n\n **Error Code:** `404`
\n NotFound
\n" + }, + "409" : { + "description" : "**HTTP Status Code:** `409`
\n Conflict \n\n **Error Code:** `409`
\n Conflict
\n" + }, + "429" : { + "description" : "**HTTP Status Code:** `429`
\n Too Many Requests. For more information, see [rate limits](https://developers.zoom.us/docs/api/rest/rate-limits/). \n\n " + }, + "500" : { + "description" : "**HTTP Status Code:** `500`
\n Internal Server Error \n\n **Error Code:** `500`
\n IntenralErr
\n" + } + }, + "security" : [ { + "openapi_oauth" : [ "scheduler:write:admin", "scheduler:write", "scheduler:delete:scheduled_event", "scheduler:delete:scheduled_event:admin" ], + "openapi_authorization" : [ ] + } ], + "x-extensions" : { + "x-permissions" : [ ], + "x-macro-scopes" : [ "scheduler:write:admin", "scheduler:write" ], + "x-granular-scopes" : [ "scheduler:delete:scheduled_event", "scheduler:delete:scheduled_event:admin" ] + } + }, + "patch" : { + "tags" : [ "scheduled events" ], + "summary" : "Patch scheduled events", + "description" : "Patches a scheduled event.\n\n**[Scopes](https://developers.zoom.us/docs/integrations/oauth-scopes-overview/):** `scheduler:write:admin`,`scheduler:write`\n\n**[Granular Scopes](https://developers.zoom.us/docs/integrations/oauth-scopes-overview/):** `scheduler:update:scheduled_event`,`scheduler:update:scheduled_event:admin`\n\n**[Rate Limit Label](https://marketplace.zoom.us/docs/api-reference/rate-limits#rate-limits):** `LIGHT`", + "operationId" : "patch_scheduled_events", + "parameters" : [ { + "name" : "eventId", + "in" : "path", + "description" : "The opaque identifier of the scheduled event.", + "required" : true, + "style" : "simple", + "explode" : false, + "schema" : { + "type" : "string", + "example" : "yev6yf64xot16c0cco50f31tb0" + } + }, { + "name" : "user_id", + "in" : "query", + "description" : "This field indicates whether the admin handles certain users. It's only for admin.", + "required" : false, + "style" : "form", + "explode" : true, + "schema" : { + "type" : "string", + "example" : "x3h1u4id4liffdyszsp8kpxl8" + }, + "x-ballerina-name" : "userId" + } ], + "requestBody" : { + "description" : "In the request body, it supplies the relevant portions of event resource.", + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/EventseventIdBody" + } + } + } + }, + "responses" : { + "204" : { + "description" : "If successful, this method returns an event resource in the response body." + }, + "400" : { + "description" : "**HTTP Status Code:** `400`
\n Bad Request \n\n **Error Code:** `400`
\n InvalidArgument
\n" + }, + "401" : { + "description" : "**HTTP Status Code:** `401`
\n Unauthorized \n\n **Error Code:** `401`
\n Unauthorized
\n" + }, + "429" : { + "description" : "**HTTP Status Code:** `429`
\n Too Many Requests. For more information, see [rate limits](https://developers.zoom.us/docs/api/rest/rate-limits/). \n\n " + }, + "500" : { + "description" : "**HTTP Status Code:** `500`
\n Internal Server Error \n\n **Error Code:** `500`
\n InternalErr
\n" + } + }, + "security" : [ { + "openapi_oauth" : [ "scheduler:write:admin", "scheduler:write", "scheduler:update:scheduled_event", "scheduler:update:scheduled_event:admin" ], + "openapi_authorization" : [ ] + } ], + "x-extensions" : { + "x-permissions" : [ ], + "x-macro-scopes" : [ "scheduler:write:admin", "scheduler:write" ], + "x-granular-scopes" : [ "scheduler:update:scheduled_event", "scheduler:update:scheduled_event:admin" ] + } + } + }, + "/scheduler/schedules" : { + "get" : { + "tags" : [ "schedules" ], + "summary" : "List schedules", + "description" : "Returns a list of all schedules.\n\n**[Scopes](https://developers.zoom.us/docs/integrations/oauth-scopes-overview/):** `scheduler:read:admin`,`scheduler:read`\n\n**[Granular Scopes](https://developers.zoom.us/docs/integrations/oauth-scopes-overview/):** `scheduler:read:list_schedule`,`scheduler:read:list_schedule:admin`\n\n**[Rate Limit Label](https://marketplace.zoom.us/docs/api-reference/rate-limits#rate-limits):** `LIGHT`", + "operationId" : "list_schedules", + "parameters" : [ { + "name" : "to", + "in" : "query", + "description" : "The upper bound (exclusive) for a schedule's start time from which to filter.", + "required" : false, + "style" : "form", + "explode" : true, + "schema" : { + "type" : "string", + "example" : "2011-06-03T10:00:00-07:00" + } + }, { + "name" : "from", + "in" : "query", + "description" : "The lower bound (exclusive) for a schedule's end time from which to filter.", + "required" : false, + "style" : "form", + "explode" : true, + "schema" : { + "type" : "string", + "example" : "2011-06-03T10:00:00-07:00" + } + }, { + "name" : "page_size", + "in" : "query", + "description" : "The maximum number of schedule results returned on a result page.", + "required" : false, + "style" : "form", + "explode" : true, + "schema" : { + "type" : "integer", + "example" : 250 + }, + "x-ballerina-name" : "pageSize" + }, { + "name" : "next_page_token", + "in" : "query", + "description" : "The token that specifies which result page to return.", + "required" : false, + "style" : "form", + "explode" : true, + "schema" : { + "type" : "string", + "example" : "x3h1u4id4liffdyszsp8kpxl80" + }, + "x-ballerina-name" : "nextPageToken" + }, { + "name" : "show_deleted", + "in" : "query", + "description" : "Whether to include the deleted schedule (with status equals \"cancelled\") in the result.", + "required" : false, + "style" : "form", + "explode" : true, + "schema" : { + "type" : "boolean", + "example" : true + }, + "x-ballerina-name" : "showDeleted" + }, { + "name" : "time_zone", + "in" : "query", + "description" : "The time zone in the response.", + "required" : false, + "style" : "form", + "explode" : true, + "schema" : { + "type" : "string", + "example" : "America/Los_Angeles" + }, + "x-ballerina-name" : "timeZone" + }, { + "name" : "user_id", + "in" : "query", + "description" : "The return of the specific user's schedules. Ths setting is only for admin.", + "required" : false, + "style" : "form", + "explode" : true, + "schema" : { + "type" : "string", + "example" : "x3h1u4id4liffdyszsp8kpxl80" + }, + "x-ballerina-name" : "userId" + } ], + "responses" : { + "200" : { + "description" : "If successful, this method returns a response body with this structure.", + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/InlineResponse2005" + } + } + } + }, + "400" : { + "description" : "**HTTP Status Code:** `400`
\n Bad Request \n\n **Error Code:** `400`
\n InvalidArgument
\n" + }, + "401" : { + "description" : "**HTTP Status Code:** `401`
\n Unauthorized \n\n **Error Code:** `401`
\n Unauthorized
\n" + }, + "429" : { + "description" : "**HTTP Status Code:** `429`
\n Too Many Requests. For more information, see [rate limits](https://developers.zoom.us/docs/api/rest/rate-limits/). \n\n " + }, + "500" : { + "description" : "**HTTP Status Code:** `500`
\n Internal Server Error \n\n **Error Code:** `500`
\n InternalErr
\n" + } + }, + "security" : [ { + "openapi_oauth" : [ "scheduler:read:admin", "scheduler:read", "scheduler:read:list_schedule", "scheduler:read:list_schedule:admin" ], + "openapi_authorization" : [ ] + } ], + "x-extensions" : { + "x-permissions" : [ ], + "x-macro-scopes" : [ "scheduler:read:admin", "scheduler:read" ], + "x-granular-scopes" : [ "scheduler:read:list_schedule", "scheduler:read:list_schedule:admin" ] + } + }, + "post" : { + "tags" : [ "schedules" ], + "summary" : "Insert schedules", + "description" : "Creates a schedule.\n\n**[Scopes](https://developers.zoom.us/docs/integrations/oauth-scopes-overview/):** `scheduler:write:admin`,`scheduler:write`\n\n**[Granular Scopes](https://developers.zoom.us/docs/integrations/oauth-scopes-overview/):** `scheduler:write:insert_schedule`,`scheduler:write:insert_schedule:admin`\n\n**[Rate Limit Label](https://marketplace.zoom.us/docs/api-reference/rate-limits#rate-limits):** `LIGHT`", + "operationId" : "insert_schedule", + "parameters" : [ { + "name" : "user_id", + "in" : "query", + "description" : "This field indicates that the admin handles certain users. This setting is only for admin.", + "required" : false, + "style" : "form", + "explode" : true, + "schema" : { + "type" : "string", + "example" : "x3h1u4id4liffdyszsp8kpxl8" + }, + "x-ballerina-name" : "userId" + } ], + "requestBody" : { + "description" : "In the request body, it supplies the schedule resource properties.", + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/SchedulerSchedulesBody" + } + } + } + }, + "responses" : { + "201" : { + "description" : "If successful, this method returns an schedule resource in the response body.", + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/InlineResponse2011" + } + } + } + }, + "400" : { + "description" : "**HTTP Status Code:** `400`
\n Bad Request \n\n **Error Code:** `400`
\n InvalidArgument
\n" + }, + "401" : { + "description" : "**HTTP Status Code:** `401`
\n Unauthorized \n\n **Error Code:** `401`
\n Unauthorized
\n" + }, + "429" : { + "description" : "**HTTP Status Code:** `429`
\n Too Many Requests. For more information, see [rate limits](https://developers.zoom.us/docs/api/rest/rate-limits/). \n\n " + }, + "500" : { + "description" : "**HTTP Status Code:** `500`
\n Internal Server Error \n\n **Error Code:** `500`
\n InternalErr
\n" + } + }, + "security" : [ { + "openapi_oauth" : [ "scheduler:write:admin", "scheduler:write", "scheduler:write:insert_schedule", "scheduler:write:insert_schedule:admin" ], + "openapi_authorization" : [ ] + } ], + "x-extensions" : { + "x-permissions" : [ ], + "x-macro-scopes" : [ "scheduler:write:admin", "scheduler:write" ], + "x-granular-scopes" : [ "scheduler:write:insert_schedule", "scheduler:write:insert_schedule:admin" ] + } + } + }, + "/scheduler/schedules/{scheduleId}" : { + "get" : { + "tags" : [ "schedules" ], + "summary" : "Get schedules", + "description" : "Returns a schedule.\n\n**[Scopes](https://developers.zoom.us/docs/integrations/oauth-scopes-overview/):** `scheduler:read:admin`,`scheduler:read`\n\n**[Granular Scopes](https://developers.zoom.us/docs/integrations/oauth-scopes-overview/):** `scheduler:read:get_schedule`,`scheduler:read:get_schedule:admin`\n\n**[Rate Limit Label](https://marketplace.zoom.us/docs/api-reference/rate-limits#rate-limits):** `LIGHT`", + "operationId" : "get_schedule", + "parameters" : [ { + "name" : "scheduleId", + "in" : "path", + "description" : "The schedule's unique identifier.", + "required" : true, + "style" : "simple", + "explode" : false, + "schema" : { + "type" : "string", + "example" : "aec369a4fce6ae655749b00fc7260bfd" + } + }, { + "name" : "user_id", + "in" : "query", + "description" : "This field indicates that admins handle certain users. This setting is only for admin.", + "required" : false, + "style" : "form", + "explode" : true, + "schema" : { + "type" : "string", + "example" : "x3h1u4id4liffdyszsp8kpxl8" + }, + "x-ballerina-name" : "userId" + } ], + "responses" : { + "200" : { + "description" : "If successful, this method returns an schedule resource in the response body.", + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/InlineResponse2006" + } + } + } + }, + "401" : { + "description" : "**HTTP Status Code:** `401`
\n Unauthorized \n\n **Error Code:** `401`
\n Unauthorized
\n" + }, + "404" : { + "description" : "**HTTP Status Code:** `404`
\n Not Found \n\n **Error Code:** `404`
\n NotFound
\n" + }, + "429" : { + "description" : "**HTTP Status Code:** `429`
\n Too Many Requests. For more information, see [rate limits](https://developers.zoom.us/docs/api/rest/rate-limits/). \n\n " + }, + "500" : { + "description" : "**HTTP Status Code:** `500`
\n Internal Server Error \n\n **Error Code:** `500`
\n InternalErr
\n" + } + }, + "security" : [ { + "openapi_oauth" : [ "scheduler:read:admin", "scheduler:read", "scheduler:read:get_schedule", "scheduler:read:get_schedule:admin" ], + "openapi_authorization" : [ ] + } ], + "x-extensions" : { + "x-permissions" : [ ], + "x-macro-scopes" : [ "scheduler:read:admin", "scheduler:read" ], + "x-granular-scopes" : [ "scheduler:read:get_schedule", "scheduler:read:get_schedule:admin" ] + } + }, + "delete" : { + "tags" : [ "schedules" ], + "summary" : "Delete schedules", + "description" : "Deletes a schedule.\n\n**[Scopes](https://developers.zoom.us/docs/integrations/oauth-scopes-overview/):** `scheduler:write:admin`,`scheduler:write`\n\n**[Granular Scopes](https://developers.zoom.us/docs/integrations/oauth-scopes-overview/):** `scheduler:delete:delete_schedule`,`scheduler:delete:delete_schedule:admin`\n\n**[Rate Limit Label](https://marketplace.zoom.us/docs/api-reference/rate-limits#rate-limits):** `LIGHT`", + "operationId" : "delete_schedules", + "parameters" : [ { + "name" : "scheduleId", + "in" : "path", + "description" : "The unique identifier of the schedule.", + "required" : true, + "style" : "simple", + "explode" : false, + "schema" : { + "type" : "string", + "example" : "aec369a4fce6ae655749b00fc7260bfd" + } + }, { + "name" : "user_id", + "in" : "query", + "description" : "This field indicates that the admin handles certain users. This setting is only for admin.", + "required" : false, + "style" : "form", + "explode" : true, + "schema" : { + "type" : "string", + "example" : "x3h1u4id4liffdyszsp8kpxl8" + }, + "x-ballerina-name" : "userId" + } ], + "responses" : { + "204" : { + "description" : "If successful, this method returns an empty response body." + }, + "400" : { + "description" : "**HTTP Status Code:** `400`
\n Bad Request \n\n **Error Code:** `400`
\n invalidArgument
\n" + }, + "401" : { + "description" : "**HTTP Status Code:** `401`
\n Unauthorized \n\n **Error Code:** `401 `
\n unauthorized
\n" + }, + "409" : { + "description" : "**HTTP Status Code:** `409`
\n Conflict \n\n **Error Code:** `409`
\n conflict
\n" + }, + "429" : { + "description" : "**HTTP Status Code:** `429`
\n Too Many Requests. For more information, see [rate limits](https://developers.zoom.us/docs/api/rest/rate-limits/). \n\n " + }, + "500" : { + "description" : "**HTTP Status Code:** `500`
\n Internal Server Error \n\n **Error Code:** `500`
\n internalErr
\n" + } + }, + "security" : [ { + "openapi_oauth" : [ "scheduler:write:admin", "scheduler:write", "scheduler:delete:delete_schedule", "scheduler:delete:delete_schedule:admin" ], + "openapi_authorization" : [ ] + } ], + "x-extensions" : { + "x-permissions" : [ ], + "x-macro-scopes" : [ "scheduler:write:admin", "scheduler:write" ], + "x-granular-scopes" : [ "scheduler:delete:delete_schedule", "scheduler:delete:delete_schedule:admin" ] + } + }, + "patch" : { + "tags" : [ "schedules" ], + "summary" : "Patch schedules", + "description" : "Patches a schedule. \n\n**[Scopes](https://developers.zoom.us/docs/integrations/oauth-scopes-overview/):** `scheduler:write:admin`,`scheduler:write`\n\n**[Granular Scopes](https://developers.zoom.us/docs/integrations/oauth-scopes-overview/):** `scheduler:update:patch_schedule`,`scheduler:update:patch_schedule:admin`\n\n**[Rate Limit Label](https://marketplace.zoom.us/docs/api-reference/rate-limits#rate-limits):** `LIGHT`", + "operationId" : "patch_schedule", + "parameters" : [ { + "name" : "scheduleId", + "in" : "path", + "description" : "The schedule's unique identifier.", + "required" : true, + "style" : "simple", + "explode" : false, + "schema" : { + "type" : "string", + "example" : "aec369a4fce6ae655749b00fc7260bfd" + } + }, { + "name" : "user_id", + "in" : "query", + "description" : "This field indicates that the admin handles certain users. This setting is only for admin.", + "required" : false, + "style" : "form", + "explode" : true, + "schema" : { + "type" : "string", + "example" : "x3h1u4id4liffdyszsp8kpxl8" + }, + "x-ballerina-name" : "userId" + } ], + "requestBody" : { + "description" : "In the request body, it supplies the relevant portions of a schedule resource, according to the rules of patch semantics.", + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/SchedulesscheduleIdBody" + } + } + } + }, + "responses" : { + "204" : { + "description" : "If successful, this method returns an empty response body." + }, + "400" : { + "description" : "**HTTP Status Code:** `400`
\n Bad Request \n\n **Error Code:** `400`
\n InvaildArgument
\n" + }, + "401" : { + "description" : "**HTTP Status Code:** `401`
\n Unauthorized \n\n **Error Code:** `401`
\n Unauthorized
\n" + }, + "404" : { + "description" : "**HTTP Status Code:** `404`
\n Not Found \n\n **Error Code:** `404`
\n NotFound
\n" + }, + "429" : { + "description" : "**HTTP Status Code:** `429`
\n Too Many Requests. For more information, see [rate limits](https://developers.zoom.us/docs/api/rest/rate-limits/). \n\n " + }, + "500" : { + "description" : "**HTTP Status Code:** `500`
\n Internal Server Error \n\n **Error Code:** `500`
\n InternalErr
\n" + } + }, + "security" : [ { + "openapi_oauth" : [ "scheduler:write:admin", "scheduler:write", "scheduler:update:patch_schedule", "scheduler:update:patch_schedule:admin" ], + "openapi_authorization" : [ ] + } ], + "x-extensions" : { + "x-permissions" : [ ], + "x-macro-scopes" : [ "scheduler:write:admin", "scheduler:write" ], + "x-granular-scopes" : [ "scheduler:update:patch_schedule", "scheduler:update:patch_schedule:admin" ] + } + } + }, + "/scheduler/schedules/single_use_link" : { + "post" : { + "tags" : [ "scheduling links" ], + "summary" : "Single use link", + "description" : "Creates a single-use scheduling link.\n\n**[Scopes](https://developers.zoom.us/docs/integrations/oauth-scopes-overview/):** `scheduler:write:admin`,`scheduler:write`\n\n**[Granular Scopes](https://developers.zoom.us/docs/integrations/oauth-scopes-overview/):** `scheduler:write:single_use_link`,`scheduler:write:single_use_link:admin`\n\n**[Rate Limit Label](https://marketplace.zoom.us/docs/api-reference/rate-limits#rate-limits):** `LIGHT`", + "operationId" : "single_use_link", + "requestBody" : { + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/SchedulesSingleUseLinkBody" + } + } + } + }, + "responses" : { + "201" : { + "description" : "If successful, this method returns a scheduling link URL in the response body.", + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/InlineResponse2012" + } + } + } + }, + "400" : { + "description" : "**HTTP Status Code:** `400`
\n Bad Request \n\n **Error Code:** `400`
\n invalidArgument
\n" + }, + "401" : { + "description" : "**HTTP Status Code:** `401`
\n Unauthorized \n\n **Error Code:** `401`
\n unauthorized
\n" + }, + "409" : { + "description" : "**HTTP Status Code:** `409`
\n Conflict \n\n **Error Code:** `409`
\n conflict
\n" + }, + "429" : { + "description" : "**HTTP Status Code:** `429`
\n Too Many Requests. For more information, see [rate limits](https://developers.zoom.us/docs/api/rest/rate-limits/). \n\n " + }, + "500" : { + "description" : "**HTTP Status Code:** `500`
\n Internal Server Error \n\n **Error Code:** `500`
\n internalErr
\n" + } + }, + "security" : [ { + "openapi_oauth" : [ "scheduler:write:admin", "scheduler:write", "scheduler:write:single_use_link", "scheduler:write:single_use_link:admin" ], + "openapi_authorization" : [ ] + } ], + "x-extensions" : { + "x-permissions" : [ ], + "x-macro-scopes" : [ "scheduler:write:admin", "scheduler:write" ], + "x-granular-scopes" : [ "scheduler:write:single_use_link", "scheduler:write:single_use_link:admin" ] + } + } + }, + "/scheduler/users/{userId}" : { + "get" : { + "tags" : [ "users" ], + "summary" : "Get user", + "description" : "Returns information about the user.\n\n**[Scopes](https://developers.zoom.us/docs/integrations/oauth-scopes-overview/):** `scheduler:read:admin`,`scheduler:read`\n\n**[Granular Scopes](https://developers.zoom.us/docs/integrations/oauth-scopes-overview/):** `scheduler:read:user`,`scheduler:read:user:admin`\n\n**[Rate Limit Label](https://marketplace.zoom.us/docs/api-reference/rate-limits#rate-limits):** `LIGHT`", + "operationId" : "get_user", + "parameters" : [ { + "name" : "userId", + "in" : "path", + "required" : true, + "style" : "simple", + "explode" : false, + "schema" : { + "type" : "string" + } + } ], + "responses" : { + "200" : { + "description" : "If successful, this method returns user information in the response body.", + "content" : { + "application/json" : { + "schema" : { + "$ref" : "#/components/schemas/InlineResponse2007" + } + } + } + }, + "400" : { + "description" : "**HTTP Status Code:** `400`
\n Bad Request \n\n **Error Code:** `400`
\n invalidArgument
\n" + }, + "401" : { + "description" : "**HTTP Status Code:** `401`
\n Unauthorized \n\n **Error Code:** `401`
\n unauthorized
\n" + }, + "404" : { + "description" : "**HTTP Status Code:** `404`
\n Not Found \n\n **Error Code:** `404`
\n notFound
\n" + }, + "429" : { + "description" : "**HTTP Status Code:** `429`
\n Too Many Requests. For more information, see [rate limits](https://developers.zoom.us/docs/api/rest/rate-limits/). \n\n " + }, + "500" : { + "description" : "**HTTP Status Code:** `500`
\n Internal Server Error \n\n **Error Code:** `500`
\n internalErr
\n" + } + }, + "security" : [ { + "openapi_oauth" : [ "scheduler:read:admin", "scheduler:read", "scheduler:read:user", "scheduler:read:user:admin" ], + "openapi_authorization" : [ ] + } ], + "x-extensions" : { + "x-permissions" : [ ], + "x-macro-scopes" : [ "scheduler:read:admin", "scheduler:read" ], + "x-granular-scopes" : [ "scheduler:read:user", "scheduler:read:user:admin" ] + } + } + } + }, + "components" : { + "schemas" : { + "InlineResponse2006SegmentsRecurrence" : { + "type" : "object", + "properties" : { + "thu" : { + "type" : "array", + "description" : "Thursday", + "items" : { + "$ref" : "#/components/schemas/ScheduleravailabilitySegmentsRecurrenceSun" + } + }, + "tue" : { + "type" : "array", + "description" : "Tuesday", + "items" : { + "$ref" : "#/components/schemas/ScheduleravailabilitySegmentsRecurrenceSun" + } + }, + "wed" : { + "type" : "array", + "description" : "Wednesday", + "items" : { + "$ref" : "#/components/schemas/ScheduleravailabilitySegmentsRecurrenceSun" + } + }, + "sat" : { + "type" : "array", + "description" : "Saturday", + "items" : { + "$ref" : "#/components/schemas/ScheduleravailabilitySegmentsRecurrenceSun" + } + }, + "fri" : { + "type" : "array", + "description" : "Friday ", + "items" : { + "$ref" : "#/components/schemas/ScheduleravailabilitySegmentsRecurrenceSun" + } + }, + "sun" : { + "type" : "array", + "description" : "Sundays", + "items" : { + "$ref" : "#/components/schemas/ScheduleravailabilitySegmentsRecurrenceSun" + } + }, + "mon" : { + "type" : "array", + "description" : "Monday", + "items" : { + "$ref" : "#/components/schemas/ScheduleravailabilitySegmentsRecurrenceSun" + } + } + }, + "description" : "The week of available time rule." + }, + "SchedulerAvailabilityBody" : { + "required" : [ "name", "time_zone" ], + "type" : "object", + "properties" : { + "owner" : { + "type" : "string", + "description" : "the owner's ID.", + "readOnly" : true, + "example" : "easonfsxsysks3lgchitiw@scheudler.zoom.us" + }, + "default" : { + "type" : "boolean", + "description" : "The default availability schedule in use." + }, + "name" : { + "minLength" : 1, + "type" : "string", + "description" : "The name of this availability schedule.", + "example" : "Working hours" + }, + "availability_id" : { + "type" : "string", + "description" : "The unique ID of availability.", + "readOnly" : true, + "example" : "x3h1u4id4liffdyszsp8kpxl80", + "x-ballerina-name" : "availabilityId" + }, + "segments_recurrence" : { + "allOf" : [ { + "$ref" : "#/components/schemas/ScheduleravailabilitySegmentsRecurrence" + } ], + "x-ballerina-name" : "segmentsRecurrence" + }, + "time_zone" : { + "type" : "string", + "description" : "The timezone for which this availability schedule originates.", + "example" : "Asia/Shanghai", + "x-ballerina-name" : "timeZone" + }, + "segments" : { + "type" : "array", + "description" : "The date on which the rule needs to be applied outside of the availability rule.", + "items" : { + "$ref" : "#/components/schemas/ScheduleravailabilitySegments" + } + } + }, + "description" : "The availability schedule set by the user." + }, + "InlineResponse2011Creator" : { + "type" : "object", + "properties" : { + "self" : { + "type" : "boolean", + "description" : "This field indicates if you created the schedule. The field is read-only.", + "readOnly" : true, + "example" : true + }, + "display_name" : { + "type" : "string", + "description" : "This field indicates the creator of the display name.", + "readOnly" : true, + "example" : "name", + "x-ballerina-name" : "displayName" + }, + "email" : { + "type" : "string", + "description" : "This field indicates the creator's email address.", + "example" : "easonfsxsysks3lgchitiw@scheduler.zoom.us" + } + }, + "description" : "The creator of the schedule. The field is read-only." + }, + "SchedulesSingleUseLinkBody" : { + "required" : [ "schedule_id" ], + "type" : "object", + "properties" : { + "schedule_id" : { + "type" : "string", + "description" : "The unique identifier of a schedule.", + "example" : "kb1i8qrplqn7r3zmmhphz4uxd0", + "x-ballerina-name" : "scheduleId" + } + } + }, + "InlineResponse2005AvailabilityRules" : { + "type" : "object", + "properties" : { + "use_custom" : { + "type" : "boolean", + "description" : "This field indicates the use of custom availability instead of the rule.", + "example" : false, + "x-ballerina-name" : "useCustom" + }, + "availability_id" : { + "type" : "string", + "description" : "The ID of this availability rule. ", + "example" : "x3h1u4id4liffdyszsp8kpxl80", + "x-ballerina-name" : "availabilityId" + }, + "segments_recurrence" : { + "allOf" : [ { + "$ref" : "#/components/schemas/SchedulerschedulesscheduleIdSegmentsRecurrence1" + } ], + "x-ballerina-name" : "segmentsRecurrence" + }, + "time_zone" : { + "type" : "string", + "description" : "The timezone of this availability rule. ", + "example" : "Asia/Shanghai", + "x-ballerina-name" : "timeZone" + }, + "email" : { + "type" : "string", + "description" : "The owner of this availability rule. ", + "example" : "easonfsxsysks3lgchitiw@scheduler.zoom.us" + }, + "segments" : { + "type" : "array", + "description" : "The available time segments of the event.", + "items" : { + "$ref" : "#/components/schemas/SchedulerschedulesSegments" + } + } + } + }, + "SchedulerschedulesCustomFields" : { + "required" : [ "enabled", "format", "include_other", "name", "position", "required" ], + "type" : "object", + "properties" : { + "answer_choices" : { + "maxItems" : 50, + "minItems" : 1, + "type" : "array", + "description" : "The invitee's option(s) for `single_select` or `multi_select` type of responses.", + "items" : { + "maxLength" : 8192, + "minLength" : 1, + "type" : "string", + "description" : "The invitee's option for `single_select` or `multi_select` type of responses.", + "example" : "At home" + }, + "x-ballerina-name" : "answerChoices" + }, + "custom_field_id" : { + "type" : "string", + "description" : "The ID of this question.", + "example" : "0l6imf50il8jchyapni3p5ckc0", + "x-ballerina-name" : "customFieldId" + }, + "format" : { + "type" : "string", + "description" : "The type of response that the invitee provides to the custom question. It can be one or multiple lines of text, a phone number, or single- or multiple-select.[`string text phone_number single_select multi_select`]", + "example" : "text", + "enum" : [ "text", "string", "phone_number", "choices_one", "choices_many", "select" ] + }, + "name" : { + "type" : "string", + "description" : "The custom question the host created for the event type.", + "example" : "Please share anything that will help prepare for our meeting." + }, + "include_other" : { + "type" : "boolean", + "description" : "This field is true if the custom question allows invitees to record a written response in addition to single-select or multiple-select type of responses. This field is false if the custom question does not allow invitees to record a written response.", + "example" : false, + "x-ballerina-name" : "includeOther" + }, + "position" : { + "type" : "number", + "description" : "The position of this question.", + "example" : 0 + }, + "enabled" : { + "type" : "boolean", + "description" : "This field is true if the question the host creates is ON and visible on the event booking page. This field is false if it's OFF and invisible on the event booking page.", + "example" : true + }, + "required" : { + "type" : "boolean", + "description" : "This field is true if a response to the question created by the host is required for invitees to book the event type. This field is false if a response to the question created by the host is not required for invitees to book the event type.", + "example" : false + } + } + }, + "SchedulesscheduleIdBody" : { + "type" : "object", + "properties" : { + "add_on_type" : { + "type" : "string", + "description" : "The method of `addOn`, such as Zoom meeting, Zoom phone, and offline.", + "example" : "zoomMeeting", + "enum" : [ "zoomMeeting", "zoomPhone", "offline" ], + "x-ballerina-name" : "addOnType" + }, + "end_date" : { + "type" : "string", + "description" : "The schedule's end date.", + "example" : "2023-12-28", + "x-ballerina-name" : "endDate" + }, + "start_time_increment" : { + "maximum" : 720, + "minimum" : 5, + "type" : "number", + "description" : "This field sets the frequency of available time slots for invitees.", + "example" : 30, + "x-ballerina-name" : "startTimeIncrement" + }, + "summary" : { + "maxLength" : 256, + "type" : "string", + "description" : "The event's summary.", + "example" : "daily meeting" + }, + "color" : { + "type" : "string", + "description" : "The hexadecimal color value of the event type's scheduling page.", + "example" : "#fff200" + }, + "custom_fields" : { + "type" : "array", + "description" : "The custom question.", + "items" : { + "$ref" : "#/components/schemas/SchedulerschedulesscheduleIdCustomFields" + }, + "x-ballerina-name" : "customFields" + }, + "description" : { + "maxLength" : 8192, + "type" : "string", + "description" : "The schedule's description", + "example" : "15 Minute Meeting" + }, + "active" : { + "type" : "boolean", + "description" : "This field indicates if the schedule is active.", + "example" : true + }, + "booking_limit" : { + "maximum" : 96, + "minimum" : 0, + "type" : "number", + "description" : "This field sets the maximum events allowed per day.", + "example" : 0, + "x-ballerina-name" : "bookingLimit" + }, + "secret" : { + "type" : "boolean", + "description" : "This field indicates if the event type is hidden on the owner's main scheduling page.", + "example" : false + }, + "time_zone" : { + "type" : "string", + "description" : "the timezone of this availability rule. ", + "example" : "Asia/Shanghai", + "x-ballerina-name" : "timeZone" + }, + "availability_rules" : { + "type" : "array", + "description" : "The availability time rule.", + "items" : { + "$ref" : "#/components/schemas/SchedulerschedulesscheduleIdAvailabilityRules" + }, + "x-ballerina-name" : "availabilityRules" + }, + "capacity" : { + "maximum" : 200, + "minimum" : 1, + "type" : "number", + "description" : "The maximum invitees per event.", + "example" : 1 + }, + "segments" : { + "type" : "array", + "description" : "The available time segments of the event.", + "items" : { + "$ref" : "#/components/schemas/SchedulerschedulesSegments" + } + }, + "duration" : { + "maximum" : 1440, + "minimum" : 15, + "type" : "number", + "description" : "The duration of meeting in minutes, range: [1, 1440].", + "example" : 30 + }, + "cushion" : { + "maximum" : 14340, + "minimum" : 0, + "type" : "number", + "description" : "The minimum time before a schedule starts that attendees can book.", + "example" : 0 + }, + "location" : { + "maxLength" : 1024, + "type" : "string", + "description" : "The information for a custom location.", + "example" : "AAA office" + }, + "buffer" : { + "$ref" : "#/components/schemas/SchedulerschedulesscheduleIdBuffer" + }, + "segments_recurrence" : { + "allOf" : [ { + "$ref" : "#/components/schemas/SchedulerschedulesscheduleIdSegmentsRecurrence1" + } ], + "x-ballerina-name" : "segmentsRecurrence" + }, + "slug" : { + "maxLength" : 256, + "minLength" : 3, + "type" : "string", + "description" : "The event portion of the event's URL that identifies a specific web page.", + "example" : "sales" + }, + "interval_type" : { + "type" : "string", + "description" : "The schedule time range. Unlimited means forever and fixed means using `startDate` and `endDate`.", + "example" : "fixed", + "enum" : [ "unlimited", "fixed" ], + "x-ballerina-name" : "intervalType" + }, + "availability_override" : { + "type" : "boolean", + "description" : "This field indicates the use of the availability rule.", + "example" : false, + "x-ballerina-name" : "availabilityOverride" + }, + "start_date" : { + "type" : "string", + "description" : "The schedule's start date.", + "example" : "2023-12-21", + "x-ballerina-name" : "startDate" + }, + "status" : { + "type" : "string", + "description" : "The status of schedule, confirmed or cancelled.", + "example" : "confirmed", + "enum" : [ "confirmed", "cancelled" ] + } + } + }, + "InlineResponse2003Items" : { + "type" : "object", + "properties" : { + "summary" : { + "maxLength" : 256, + "type" : "string", + "description" : "The event's summary.", + "example" : "daily meeting" + }, + "attendees" : { + "type" : "array", + "description" : "The attendees of the event.", + "items" : { + "$ref" : "#/components/schemas/InlineResponse2003Attendees" + } + }, + "meeting_notes" : { + "maxLength" : 1024, + "type" : "string", + "description" : "The meeting notes of the event.", + "example" : "meeting notes", + "x-ballerina-name" : "meetingNotes" + }, + "description" : { + "maxLength" : 8192, + "type" : "string", + "description" : "The event's description.", + "example" : "15 Minute Meeting" + }, + "end_date_time" : { + "type" : "string", + "description" : "The scheduled event end date time.", + "example" : "2023-12-21T16:30:00+08:00", + "x-ballerina-name" : "endDateTime" + }, + "event_id" : { + "type" : "string", + "description" : "The unique identifier of event.", + "example" : "woft7torlatbw8ek24bmit5k60", + "x-ballerina-name" : "eventId" + }, + "event_type" : { + "type" : "string", + "description" : "This field indicates the type is default(scheduled) or pending event.", + "readOnly" : true, + "example" : "default", + "enum" : [ "default", "pending" ], + "x-ballerina-name" : "eventType" + }, + "tracking_params" : { + "type" : "array", + "description" : "The information to track the source of invitee. This occurs when you add UTM parameters in schedule links.", + "items" : { + "$ref" : "#/components/schemas/InlineResponse2003TrackingParams" + }, + "x-ballerina-name" : "trackingParams" + }, + "guests" : { + "type" : "array", + "description" : "The guest's collection.", + "items" : { + "type" : "string", + "description" : "The guest's email.", + "example" : "tom@zoom.us" + } + }, + "location" : { + "maxLength" : 1024, + "type" : "string", + "description" : "The information for a custom location.", + "example" : "AAA office" + }, + "start_date_time" : { + "type" : "string", + "description" : "The scheduled event start date time.", + "example" : "2023-12-21T16:00:00+08:00", + "x-ballerina-name" : "startDateTime" + }, + "schedule_id" : { + "type" : "string", + "description" : "The unique identifier of schedule.", + "example" : "ygfx661g9x8dwcgeusdqhsplc0_20231220T160000Z", + "x-ballerina-name" : "scheduleId" + }, + "updated" : { + "type" : "string", + "description" : "The moment the event was updated.", + "example" : "2023-12-21T06:19:28.309Z" + }, + "external_location" : { + "description" : "The meeting details for when users have scheduled appointments.", + "readOnly" : true, + "oneOf" : [ { + "type" : "object", + "properties" : { + "kind" : { + "type" : "string", + "description" : "The type of meeting specified in the schedule.", + "example" : "zoom" + }, + "meeting_id" : { + "type" : "string", + "description" : "The unique identifier of the meeting in string format.", + "example" : "94777886776" + }, + "personal_meeting_id" : { + "type" : "string", + "description" : "The personal meeting id in string format.", + "example" : "98656786887" + }, + "meeting_passcode" : { + "type" : "string", + "description" : "The passcode of Zoom meeting.", + "example" : "958000" + }, + "meeting_description" : { + "type" : "string", + "description" : "The description of Zoom meeting.", + "example" : "Invite you to meeting" + }, + "meeting_join_url" : { + "type" : "string", + "description" : "The URL of Zoom meeting", + "example" : "https://zoom.us/j/7427752805" + } + } + } ], + "x-ballerina-name" : "externalLocation" + }, + "status" : { + "type" : "string", + "description" : "The status of event: confirmed or cancelled.", + "example" : "confirmed", + "enum" : [ "confirmed", "cancelled" ] + } + } + }, + "InlineResponse2011CustomFields" : { + "required" : [ "enabled", "format", "include_other", "name", "position", "required" ], + "type" : "object", + "properties" : { + "answer_choices" : { + "maxItems" : 50, + "minItems" : 1, + "type" : "array", + "description" : "The invitee's option(s) for single_select or multi_select type of responses.", + "items" : { + "maxLength" : 8192, + "minLength" : 1, + "type" : "string", + "description" : "The invitee's option for single_select or multi_select type of responses.", + "example" : "At home" + }, + "x-ballerina-name" : "answerChoices" + }, + "custom_field_id" : { + "type" : "string", + "description" : "The ID of this question.", + "example" : "0l6imf50il8jchyapni3p5ckc0", + "x-ballerina-name" : "customFieldId" + }, + "format" : { + "type" : "string", + "description" : "The type of response that the invitee provides to the custom question. It can be one or multiple lines of text, a phone number, or single- or multiple-select.[`string text phone_number single_select multi_select`]", + "example" : "text", + "enum" : [ "text", "string", "phone_number", "choices_one", "choices_many", "select" ] + }, + "name" : { + "type" : "string", + "description" : "The custom question the host created for the event type.", + "example" : "Please share anything that will help prepare for our meeting." + }, + "include_other" : { + "type" : "boolean", + "description" : "This field is true if the custom question allows invitees to record a written response in addition to single-select or multiple-select type of responses. This field is false if the custom question does not allow invitees to record a written response.", + "example" : false, + "x-ballerina-name" : "includeOther" + }, + "position" : { + "type" : "number", + "description" : "The position of this question.", + "example" : 0 + }, + "enabled" : { + "type" : "boolean", + "description" : "This field is true if the question the host creates is ON and visible on the event booking page. This field is false if it's OFF and invisible on the event booking page.", + "example" : true + }, + "required" : { + "type" : "boolean", + "description" : "This field is true if a response to the question created by the host is required for invitees to book the event type. This field is false if a response to the question created by the host is not required for invitees to book the event type.", + "example" : false + } + } + }, + "InlineResponse2006AvailabilityRules" : { + "type" : "object", + "properties" : { + "use_custom" : { + "type" : "boolean", + "description" : "This field indicates the use of custom availability instead of the rule.", + "example" : false, + "x-ballerina-name" : "useCustom" + }, + "availability_id" : { + "type" : "string", + "description" : "The ID of this availability rule. ", + "example" : "x3h1u4id4liffdyszsp8kpxl80", + "x-ballerina-name" : "availabilityId" + }, + "segments_recurrence" : { + "allOf" : [ { + "$ref" : "#/components/schemas/InlineResponse2006SegmentsRecurrence" + } ], + "x-ballerina-name" : "segmentsRecurrence" + }, + "time_zone" : { + "type" : "string", + "description" : "The timezone of this availability rule. ", + "example" : "Asia/Shanghai", + "x-ballerina-name" : "timeZone" + }, + "email" : { + "type" : "string", + "description" : "The owner of this availability rule. ", + "example" : "easonfsxsysks3lgchitiw@scheduler.zoom.us" + }, + "segments" : { + "type" : "array", + "description" : "The available time segments of the event.", + "items" : { + "$ref" : "#/components/schemas/SchedulerschedulesSegments" + } + } + } + }, + "InlineResponse2011AvailabilityRules" : { + "type" : "object", + "properties" : { + "use_custom" : { + "type" : "boolean", + "description" : "This field indicates the use of custom availability instead of the rule.", + "example" : false, + "x-ballerina-name" : "useCustom" + }, + "availability_id" : { + "type" : "string", + "description" : "The ID of this availability rule. ", + "example" : "x3h1u4id4liffdyszsp8kpxl80", + "x-ballerina-name" : "availabilityId" + }, + "segments_recurrence" : { + "allOf" : [ { + "$ref" : "#/components/schemas/SchedulerschedulesSegmentsRecurrence" + } ], + "x-ballerina-name" : "segmentsRecurrence" + }, + "time_zone" : { + "type" : "string", + "description" : "The timezone of this availability rule. ", + "example" : "Asia/Shanghai", + "x-ballerina-name" : "timeZone" + }, + "email" : { + "type" : "string", + "description" : "The owner of this availability rule. ", + "example" : "easonfsxsysks3lgchitiw@scheduler.zoom.us" + }, + "segments" : { + "type" : "array", + "description" : "The available time segments of the event.", + "items" : { + "$ref" : "#/components/schemas/SchedulerschedulesSegments" + } + } + } + }, + "InlineResponse2011Organizer" : { + "type" : "object", + "properties" : { + "self" : { + "type" : "boolean", + "description" : "This field indicates if this user is the organizer. This field is read-only.", + "readOnly" : true, + "example" : true + }, + "display_name" : { + "type" : "string", + "description" : "The organizer's display name.", + "readOnly" : true, + "example" : "name", + "x-ballerina-name" : "displayName" + }, + "email" : { + "type" : "string", + "description" : "The organizer's email address.", + "example" : "easonfsxsysks3lgchitiw@scheduler.zoom.us" + } + }, + "description" : "The organizer of the schedule. This field is read-only." + }, + "SchedulerschedulesscheduleIdAvailabilityRules" : { + "type" : "object", + "properties" : { + "use_custom" : { + "type" : "boolean", + "description" : "This field indicates whether to use the custom availability instead of the rule.", + "example" : false, + "x-ballerina-name" : "useCustom" + }, + "availability_id" : { + "type" : "string", + "description" : "The ID of this availability rule. ", + "example" : "x3h1u4id4liffdyszsp8kpxl80", + "x-ballerina-name" : "availabilityId" + }, + "segments_recurrence" : { + "allOf" : [ { + "$ref" : "#/components/schemas/SchedulerschedulesscheduleIdSegmentsRecurrence" + } ], + "x-ballerina-name" : "segmentsRecurrence" + }, + "time_zone" : { + "type" : "string", + "description" : "The timezone of this availability rule. ", + "example" : "Asia/Shanghai", + "x-ballerina-name" : "timeZone" + }, + "email" : { + "type" : "string", + "description" : "The owner of this availability rule. ", + "example" : "easonfsxsysks3lgchitiw@scheduler.zoom.us" + }, + "segments" : { + "type" : "array", + "description" : "The available time segments of the event.", + "items" : { + "$ref" : "#/components/schemas/SchedulerschedulesscheduleIdSegments" + } + } + } + }, + "ScheduleravailabilitySegments" : { + "required" : [ "end", "start" ], + "type" : "object", + "properties" : { + "start" : { + "type" : "string", + "description" : "This field indicates the start date to override.", + "example" : "2024-01-07T09:00:00Z" + }, + "end" : { + "type" : "string", + "description" : "This field indicates the end date to override.", + "example" : "2024-01-08T09:00:00Z" + } + }, + "description" : "The date interval to override." + }, + "InlineResponse2004TrackingParams" : { + "type" : "object", + "properties" : { + "label" : { + "type" : "string", + "description" : "The scheduler tags that correspond to UTM parameters one by one.", + "example" : "UTM_Source" + }, + "value" : { + "type" : "string", + "description" : "The value of UTM parameters set in schedule links by host.", + "example" : "zoom" + }, + "key" : { + "type" : "string", + "description" : "The UTM parameters in schedule links.", + "example" : "utm_source" + } + } + }, + "InlineResponse2001Items" : { + "type" : "object", + "properties" : { + "owner" : { + "type" : "string", + "description" : "The owner's ID.", + "example" : "easonfsxsysks3lgchitiw@scheudler.zoom.us" + }, + "default" : { + "type" : "boolean", + "example" : true + }, + "name" : { + "type" : "string", + "example" : "The working hours." + }, + "availability_id" : { + "type" : "string", + "example" : "x3h1u4id4liffdyszsp8kpxl80", + "x-ballerina-name" : "availabilityId" + }, + "segments_recurrence" : { + "allOf" : [ { + "$ref" : "#/components/schemas/InlineResponse2001SegmentsRecurrence" + } ], + "x-ballerina-name" : "segmentsRecurrence" + }, + "time_zone" : { + "type" : "string", + "example" : "Asia/Shanghai", + "x-ballerina-name" : "timeZone" + } + } + }, + "InlineResponse2003Attendees" : { + "type" : "object", + "properties" : { + "created" : { + "type" : "string", + "description" : "This field indicates when the attendee attended this event.", + "readOnly" : true, + "example" : "2023-12-21T06:19:23.899Z" + }, + "attendee_id" : { + "type" : "string", + "description" : "The ID of attendee.", + "readOnly" : true, + "example" : "z7q0q2962w8iyj87249zbi7t10", + "x-ballerina-name" : "attendeeId" + }, + "last_name" : { + "type" : "string", + "description" : " The attendee's last name.", + "example" : "tom", + "x-ballerina-name" : "lastName" + }, + "display_name" : { + "type" : "string", + "description" : "The attendee's name.", + "example" : "bob", + "x-ballerina-name" : "displayName" + }, + "time_zone" : { + "type" : "string", + "description" : "The attendee's time zone.", + "example" : "Asia/Shanghai", + "x-ballerina-name" : "timeZone" + }, + "no_show" : { + "type" : "boolean", + "description" : "Whether to show events or not.", + "example" : false, + "x-ballerina-name" : "noShow" + }, + "booker" : { + "type" : "boolean", + "description" : "Whether the attendee is the booker.", + "readOnly" : true, + "example" : true + }, + "first_name" : { + "type" : "string", + "description" : "The attendee's first name.", + "example" : "green", + "x-ballerina-name" : "firstName" + }, + "email" : { + "type" : "string", + "description" : "The attendee's email.", + "example" : "abc@zoom.us" + } + } + }, + "ScheduleravailabilitySegmentsRecurrence" : { + "type" : "object", + "properties" : { + "thu" : { + "type" : "array", + "description" : "Thursday", + "items" : { + "$ref" : "#/components/schemas/ScheduleravailabilitySegmentsRecurrenceSun" + } + }, + "tue" : { + "type" : "array", + "description" : "Tuesday", + "items" : { + "$ref" : "#/components/schemas/ScheduleravailabilitySegmentsRecurrenceSun" + } + }, + "wed" : { + "type" : "array", + "description" : "Wednesday", + "items" : { + "$ref" : "#/components/schemas/ScheduleravailabilitySegmentsRecurrenceSun" + } + }, + "sat" : { + "type" : "array", + "description" : "Saturday", + "items" : { + "$ref" : "#/components/schemas/ScheduleravailabilitySegmentsRecurrenceSun" + } + }, + "fri" : { + "type" : "array", + "description" : "Friday ", + "items" : { + "$ref" : "#/components/schemas/ScheduleravailabilitySegmentsRecurrenceSun" + } + }, + "sun" : { + "type" : "array", + "description" : "Sundays", + "items" : { + "$ref" : "#/components/schemas/ScheduleravailabilitySegmentsRecurrenceSun" + } + }, + "mon" : { + "type" : "array", + "description" : "Monday", + "items" : { + "$ref" : "#/components/schemas/ScheduleravailabilitySegmentsRecurrenceSun" + } + } + }, + "description" : "The rules of this availability schedule." + }, + "InlineResponse2001SegmentsRecurrence" : { + "type" : "object", + "properties" : { + "thu" : { + "type" : "array", + "description" : "Thursday", + "items" : { + "$ref" : "#/components/schemas/ScheduleravailabilitySegmentsRecurrenceSun" + } + }, + "tue" : { + "type" : "array", + "description" : "Tuesday", + "items" : { + "$ref" : "#/components/schemas/ScheduleravailabilitySegmentsRecurrenceSun" + } + }, + "wed" : { + "type" : "array", + "description" : "Wednesday", + "items" : { + "$ref" : "#/components/schemas/ScheduleravailabilitySegmentsRecurrenceSun" + } + }, + "sat" : { + "type" : "array", + "description" : "Saturday", + "items" : { + "$ref" : "#/components/schemas/ScheduleravailabilitySegmentsRecurrenceSun" + } + }, + "fri" : { + "type" : "array", + "description" : "Friday ", + "items" : { + "$ref" : "#/components/schemas/ScheduleravailabilitySegmentsRecurrenceSun" + } + }, + "sun" : { + "type" : "array", + "description" : "Sunday", + "items" : { + "$ref" : "#/components/schemas/ScheduleravailabilitySegmentsRecurrenceSun" + } + }, + "mon" : { + "type" : "array", + "description" : "Monday", + "items" : { + "$ref" : "#/components/schemas/ScheduleravailabilitySegmentsRecurrenceSun" + } + } + } + }, + "InlineResponse200PreviousPeriod" : { + "type" : "object", + "properties" : { + "all_host_available" : { + "type" : "integer", + "description" : "The number of \"all host available\" type schedules.", + "example" : 10, + "x-ballerina-name" : "allHostAvailable" + }, + "scheduled_events_rescheduled" : { + "type" : "integer", + "description" : "The number of rescheduled scheduled events.", + "example" : 10, + "x-ballerina-name" : "scheduledEventsRescheduled" + }, + "scheduled_events_completed" : { + "type" : "integer", + "description" : "The number of completed scheduled events.", + "example" : 10, + "x-ballerina-name" : "scheduledEventsCompleted" + }, + "schedules_canceled" : { + "type" : "integer", + "description" : "The number of cancelled schedules.", + "example" : 10, + "x-ballerina-name" : "schedulesCanceled" + }, + "one_off_meeting" : { + "type" : "integer", + "description" : "The number of \"one-off\" type schedules.", + "example" : 10, + "x-ballerina-name" : "oneOffMeeting" + }, + "meeting_poll" : { + "type" : "integer", + "description" : "The number of \"meeting poll\" type schedules.", + "example" : 10, + "x-ballerina-name" : "meetingPoll" + }, + "one_to_many" : { + "type" : "integer", + "description" : "The number of \"one to many\" type schedules.", + "example" : 10, + "x-ballerina-name" : "oneToMany" + }, + "any_host_available" : { + "type" : "integer", + "description" : "The number of \"any host available\" type schedules.", + "example" : 10, + "x-ballerina-name" : "anyHostAvailable" + }, + "scheduled_events_canceled" : { + "type" : "integer", + "description" : "The number of cancelled scheduled events.", + "example" : 10, + "x-ballerina-name" : "scheduledEventsCanceled" + }, + "one_to_one" : { + "type" : "integer", + "description" : "The number of \"one to one\" type schedules.", + "example" : 10, + "x-ballerina-name" : "oneToOne" + }, + "scheduled_events_created" : { + "type" : "integer", + "description" : "The number of created scheduled events.", + "example" : 10, + "x-ballerina-name" : "scheduledEventsCreated" + }, + "schedules_created" : { + "type" : "integer", + "description" : "The number of created schedules.", + "example" : 10, + "x-ballerina-name" : "schedulesCreated" + } + }, + "description" : "the stats of the previous period with a length of also N. Last N day is counting from today and backtrace N days. Previous period is counting from N days ago and back tracking another N days", + "example" : "\"previous_period\":{{\"created_scheduled_events\":65},{\"completed_scheduled_events\":34},{\"created_schedules\":20},{\"cancelled_scheduled_events\":14},{\"rescheduled_scheduled_events\":8},{\"cancelled_schedules\":3},{\"one_to_one\":10},{\"any_host_available\":5},{\"one_off_meeting\":2},{\"all_host_available\":1},{\"meeting_poll\":1},{\"one_to_many\":1}}" + }, + "SchedulereventseventIdAttendees" : { + "type" : "object", + "properties" : { + "attendee_id" : { + "type" : "string", + "description" : "The ID of attendee.", + "readOnly" : true, + "example" : "z7q0q2962w8iyj87249zbi7t10", + "x-ballerina-name" : "attendeeId" + }, + "no_show" : { + "type" : "boolean", + "description" : "This field inidcates the attendee if shown in the scheduled event", + "example" : false, + "x-ballerina-name" : "noShow" + }, + "email" : { + "type" : "string", + "description" : "The attendee's email.", + "example" : "abc@zoom.us" + } + } + }, + "SchedulerSchedulesBody" : { + "required" : [ "availability_override", "availability_rules", "capacity", "end", "start", "type" ], + "type" : "object", + "properties" : { + "add_on_type" : { + "type" : "string", + "description" : "The method of the type of `addOn`, such as Zoom meeting, Zoom phone, or offline.", + "example" : "zoomMeeting", + "enum" : [ "zoomMeeting", "zoomPhone", "offline" ], + "x-ballerina-name" : "addOnType" + }, + "end_date" : { + "type" : "string", + "description" : "The schedule's end date.", + "example" : "2023-12-28", + "x-ballerina-name" : "endDate" + }, + "start_time_increment" : { + "maximum" : 720, + "minimum" : 5, + "type" : "number", + "description" : "This field sets the frequency of available time slots for invitees.", + "example" : 30, + "x-ballerina-name" : "startTimeIncrement" + }, + "summary" : { + "maxLength" : 256, + "type" : "string", + "description" : "The event's summary.", + "example" : "daily meeting" + }, + "schedule_type" : { + "type" : "string", + "description" : "This field indicates if the schedule type is \"one\" (belongs to an individual user) or \"multiple\".", + "example" : "one", + "enum" : [ "one", "multiple" ], + "x-ballerina-name" : "scheduleType" + }, + "color" : { + "type" : "string", + "description" : "The hexadecimal color value of the event type's scheduling page.", + "example" : "#fff200" + }, + "custom_fields" : { + "type" : "array", + "description" : "This field contains the custom question.", + "items" : { + "$ref" : "#/components/schemas/SchedulerschedulesCustomFields" + }, + "x-ballerina-name" : "customFields" + }, + "description" : { + "maxLength" : 8192, + "type" : "string", + "description" : "The schedule's description.", + "example" : "15 Minute Meeting" + }, + "active" : { + "type" : "boolean", + "description" : "This field indicates if the schedule is active.", + "example" : true + }, + "booking_limit" : { + "maximum" : 96, + "minimum" : 0, + "type" : "number", + "description" : "This field sets the maximum events allowed per day.", + "example" : 0, + "x-ballerina-name" : "bookingLimit" + }, + "secret" : { + "type" : "boolean", + "description" : "This field indicates if the event type is hidden on the owner's main scheduling page.", + "example" : false + }, + "time_zone" : { + "type" : "string", + "description" : "The timezone of this availability rule. ", + "example" : "Asia/Shanghai", + "x-ballerina-name" : "timeZone" + }, + "availability_rules" : { + "type" : "array", + "description" : "The availability of the time rule.", + "items" : { + "$ref" : "#/components/schemas/SchedulerschedulesAvailabilityRules" + }, + "x-ballerina-name" : "availabilityRules" + }, + "capacity" : { + "maximum" : 200, + "minimum" : 1, + "type" : "number", + "description" : "This field indicates the maximum invitees per event.", + "example" : 1 + }, + "segments" : { + "type" : "array", + "description" : "The available time segments of the event.", + "items" : { + "$ref" : "#/components/schemas/SchedulerschedulesSegments" + } + }, + "duration" : { + "maximum" : 1440, + "minimum" : 15, + "type" : "number", + "description" : "This field indicates the duration of the meeting in minutes, range: [1, 1440].", + "example" : 30 + }, + "cushion" : { + "maximum" : 14340, + "minimum" : 0, + "type" : "number", + "description" : "This field indicates the minimum time before a schedule starts when the attendees can book.", + "example" : 0 + }, + "location" : { + "maxLength" : 1024, + "type" : "string", + "description" : "The information for a custom location.", + "example" : "AAA office" + }, + "buffer" : { + "$ref" : "#/components/schemas/SchedulerschedulesBuffer" + }, + "segments_recurrence" : { + "allOf" : [ { + "$ref" : "#/components/schemas/SchedulerschedulesSegmentsRecurrence" + } ], + "x-ballerina-name" : "segmentsRecurrence" + }, + "interval_type" : { + "type" : "string", + "description" : "The schedule time range. Unlimited means forever and fixed means using `startDate` and `endDate`.", + "example" : "fixed", + "enum" : [ "unlimited", "fixed" ], + "x-ballerina-name" : "intervalType" + }, + "slug" : { + "maxLength" : 256, + "minLength" : 3, + "type" : "string", + "description" : "The event portion of the event's URL that identifies a specific web page.", + "example" : "sales" + }, + "availability_override" : { + "type" : "boolean", + "description" : "This field indicates the use of the availability rule.", + "example" : false, + "x-ballerina-name" : "availabilityOverride" + }, + "start_date" : { + "type" : "string", + "description" : "The schedule's start date.", + "example" : "2023-12-21", + "x-ballerina-name" : "startDate" + } + } + }, + "SchedulerschedulesSegmentsRecurrence" : { + "type" : "object", + "properties" : { + "thu" : { + "type" : "array", + "description" : "Thursday", + "items" : { + "$ref" : "#/components/schemas/ScheduleravailabilitySegmentsRecurrenceSun" + } + }, + "tue" : { + "type" : "array", + "description" : "Tuesday", + "items" : { + "$ref" : "#/components/schemas/ScheduleravailabilitySegmentsRecurrenceSun" + } + }, + "wed" : { + "type" : "array", + "description" : "Wednesday", + "items" : { + "$ref" : "#/components/schemas/ScheduleravailabilitySegmentsRecurrenceSun" + } + }, + "sat" : { + "type" : "array", + "description" : "Saturday", + "items" : { + "$ref" : "#/components/schemas/ScheduleravailabilitySegmentsRecurrenceSun" + } + }, + "fri" : { + "type" : "array", + "description" : "Friday ", + "items" : { + "$ref" : "#/components/schemas/ScheduleravailabilitySegmentsRecurrenceSun" + } + }, + "sun" : { + "type" : "array", + "description" : "Sundays", + "items" : { + "$ref" : "#/components/schemas/ScheduleravailabilitySegmentsRecurrenceSun" + } + }, + "mon" : { + "type" : "array", + "description" : "Monday", + "items" : { + "$ref" : "#/components/schemas/ScheduleravailabilitySegmentsRecurrenceSun" + } + } + }, + "description" : "The week of the available time rule." + }, + "InlineResponse2003TrackingParams" : { + "type" : "object", + "properties" : { + "label" : { + "type" : "string", + "description" : "The scheduler tags that correspond to UTM parameters one by one.", + "example" : "UTM_Source" + }, + "value" : { + "type" : "string", + "description" : "The value of UTM parameters set in schedule links by host.", + "example" : "zoom" + }, + "key" : { + "type" : "string", + "description" : "The UTM parameters in the schedule links.", + "example" : "utm_source" + } + } + }, + "SchedulerschedulesBuffer" : { + "type" : "object", + "properties" : { + "before" : { + "maximum" : 240, + "minimum" : 0, + "type" : "number", + "description" : "This field adds the time after the booked schedule.", + "example" : 0 + }, + "after" : { + "maximum" : 240, + "minimum" : 0, + "type" : "number", + "description" : "This field adds the time before the booked schedule.", + "example" : 0 + } + }, + "description" : "This field indicates the extra time before or after the booked schedule." + }, + "SchedulerschedulesscheduleIdBuffer" : { + "type" : "object", + "properties" : { + "before" : { + "maximum" : 240, + "minimum" : 0, + "type" : "number", + "description" : "This field adds time after the booked schedule.", + "example" : 0 + }, + "after" : { + "maximum" : 240, + "minimum" : 0, + "type" : "number", + "description" : "This field adds time before the booked schedule.", + "example" : 0 + } + }, + "description" : "The extra time before or after booked schedule." + }, + "SchedulerschedulesscheduleIdSegments" : { + "type" : "object", + "properties" : { + "start" : { + "type" : "string", + "description" : "The start date-time of the segment.", + "example" : "2023-12-21T06:00:00Z" + }, + "end" : { + "type" : "string", + "description" : "The end date-time of the segment.", + "example" : "2023-12-21T06:00:00Z" + } + } + }, + "InlineResponse201" : { + "type" : "object", + "properties" : { + "owner" : { + "type" : "string", + "description" : "An URI reference to a user.", + "example" : "easonfsxsysks3lgchitiw" + }, + "default" : { + "type" : "boolean", + "description" : "The default availability schedule in use.", + "example" : false + }, + "name" : { + "type" : "string", + "description" : "The name of this availability schedule.", + "example" : "Working hours" + }, + "availability_id" : { + "type" : "string", + "description" : "The unique ID of the availability.", + "example" : "x3h1u4id4liffdyszsp8kpxl80", + "x-ballerina-name" : "availabilityId" + }, + "segments_recurrence" : { + "allOf" : [ { + "$ref" : "#/components/schemas/ScheduleravailabilitySegmentsRecurrence" + } ], + "x-ballerina-name" : "segmentsRecurrence" + }, + "time_zone" : { + "type" : "string", + "description" : "The timezone for which this availability schedule originates.", + "example" : "Asia/Shanghai", + "x-ballerina-name" : "timeZone" + }, + "segments" : { + "type" : "array", + "description" : "The date on which the rule needs to be applied outside of the availability rule.", + "items" : { + "type" : "object", + "description" : "The date interval to override." + } + } + }, + "description" : "The availability schedule set by the user." + }, + "InlineResponse2004Attendees" : { + "type" : "object", + "properties" : { + "created" : { + "type" : "string", + "description" : "This field indicates when the attendee attended this event.", + "readOnly" : true, + "example" : "2023-12-21T06:19:23.899Z" + }, + "attendee_id" : { + "type" : "string", + "description" : "The ID of attendee.", + "readOnly" : true, + "example" : "z7q0q2962w8iyj87249zbi7t10", + "x-ballerina-name" : "attendeeId" + }, + "last_name" : { + "type" : "string", + "description" : " The attendee's last name.", + "example" : "tom", + "x-ballerina-name" : "lastName" + }, + "display_name" : { + "type" : "string", + "description" : "The attendee's name.", + "example" : "bob", + "x-ballerina-name" : "displayName" + }, + "time_zone" : { + "type" : "string", + "description" : "The attendee's time zone.", + "example" : "Asia/Shanghai", + "x-ballerina-name" : "timeZone" + }, + "no_show" : { + "type" : "boolean", + "description" : "Whether or not to show the event.", + "example" : false, + "x-ballerina-name" : "noShow" + }, + "booker" : { + "type" : "boolean", + "description" : "Whether the attendee is the booker.", + "readOnly" : true, + "example" : true + }, + "first_name" : { + "type" : "string", + "description" : "The attendee's first name.", + "example" : "green", + "x-ballerina-name" : "firstName" + }, + "email" : { + "type" : "string", + "description" : "The attendee's email.", + "example" : "abc@zoom.us" + } + } + }, + "InlineResponse200" : { + "type" : "object", + "properties" : { + "popular_schedules" : { + "maxItems" : 5, + "type" : "array", + "description" : "The most popular schedules in the given time range.", + "example" : { + "Popular schedules" : [ { + "Test 1-1" : 5 + }, { + "Test 1-to-many" : 4 + }, { + "Test any host available" : 3 + } ] + }, + "items" : { + "type" : "object", + "description" : "The scheduled event's name and booked times." + }, + "x-ballerina-name" : "popularSchedules" + }, + "users_with_least_events" : { + "maxItems" : 5, + "type" : "array", + "description" : "The users with the least scheduled events.", + "example" : { + "Users with the least events" : [ { + "Dan Smith" : 5 + }, { + "Allan Swift" : 10 + } ] + }, + "items" : { + "type" : "object", + "description" : "The user's display name and number of scheduled events." + }, + "x-ballerina-name" : "usersWithLeastEvents" + }, + "last_n_days" : { + "allOf" : [ { + "$ref" : "#/components/schemas/InlineResponse200LastNDays" + } ], + "x-ballerina-name" : "lastNDays" + }, + "popular_time_of_day" : { + "maxItems" : 7, + "type" : "array", + "description" : "The distribution of number of events scheduled in a day.", + "example" : { + "Popular times (hour of day)" : [ { + "11" : 16 + }, { + "12" : 6 + }, { + "16" : 3 + } ] + }, + "items" : { + "type" : "object", + "description" : "The hour index." + }, + "x-ballerina-name" : "popularTimeOfDay" + }, + "previous_period" : { + "allOf" : [ { + "$ref" : "#/components/schemas/InlineResponse200PreviousPeriod" + } ], + "x-ballerina-name" : "previousPeriod" + }, + "event_distribution_by_duration" : { + "maxItems" : 5, + "type" : "array", + "description" : "The event distribution by duration.", + "items" : { + "type" : "object", + "properties" : { }, + "description" : "The event name and its duration in minutes.", + "example" : { + "Event distribution by duration" : [ { + "30" : 65 + }, { + "45" : 15 + }, { + "60" : 35 + } ] + } + }, + "x-ballerina-name" : "eventDistributionByDuration" + }, + "popular_time_of_week" : { + "maxItems" : 24, + "type" : "array", + "description" : "The distribution of number of events scheduled in a week.", + "example" : { + "Popular times (day of week)" : [ { + "Fri" : 20 + }, { + "Wed" : 16 + }, { + "Thu" : 11 + }, { + "Tue" : 8 + }, { + "Mon" : 6 + }, { + "Sat" : 3 + }, { + "Sun" : 1 + } ] + }, + "items" : { + "type" : "object", + "description" : "day abbreviation" + }, + "x-ballerina-name" : "popularTimeOfWeek" + }, + "users_with_most_events" : { + "maxItems" : 5, + "type" : "array", + "description" : "The users with the most scheduled events.", + "example" : { + "Users with the most events" : [ { + "Dan Smith" : 65 + }, { + "Allan Swift" : 20 + } ] + }, + "items" : { + "type" : "object", + "description" : "The user's display name and number of scheduled events." + }, + "x-ballerina-name" : "usersWithMostEvents" + } + } + }, + "SchedulerschedulesscheduleIdSegmentsRecurrence" : { + "type" : "object", + "properties" : { + "thu" : { + "type" : "array", + "description" : "Thursday", + "items" : { + "$ref" : "#/components/schemas/ScheduleravailabilitySegmentsRecurrenceSun" + } + }, + "tue" : { + "type" : "array", + "description" : "Tuesday", + "items" : { + "$ref" : "#/components/schemas/ScheduleravailabilitySegmentsRecurrenceSun" + } + }, + "wed" : { + "type" : "array", + "description" : "Wednesday", + "items" : { + "$ref" : "#/components/schemas/ScheduleravailabilitySegmentsRecurrenceSun" + } + }, + "sat" : { + "type" : "array", + "description" : "Saturday", + "items" : { + "$ref" : "#/components/schemas/ScheduleravailabilitySegmentsRecurrenceSun" + } + }, + "fri" : { + "type" : "array", + "description" : "Friday ", + "items" : { + "$ref" : "#/components/schemas/ScheduleravailabilitySegmentsRecurrenceSun" + } + }, + "sun" : { + "type" : "array", + "description" : "Sunday", + "items" : { + "$ref" : "#/components/schemas/ScheduleravailabilitySegmentsRecurrenceSun" + } + }, + "mon" : { + "type" : "array", + "description" : "Monday", + "items" : { + "$ref" : "#/components/schemas/ScheduleravailabilitySegmentsRecurrenceSun" + } + } + }, + "description" : "The week of available time rule." + }, + "EventseventIdBody" : { + "type" : "object", + "properties" : { + "attendees" : { + "type" : "array", + "items" : { + "$ref" : "#/components/schemas/SchedulereventseventIdAttendees" + } + }, + "meeting_notes" : { + "maxLength" : 1024, + "type" : "string", + "description" : "The meeting notes of the event.", + "example" : "meeting notes", + "x-ballerina-name" : "meetingNotes" + }, + "status" : { + "type" : "string", + "description" : "The status of event: confirmed or cancelled.", + "example" : "confirmed", + "enum" : [ "confirmed", "cancelled" ] + } + }, + "description" : "The portions of the event resource." + }, + "AvailabilityavailabilityIdBody" : { + "required" : [ "name", "time_zone" ], + "type" : "object", + "properties" : { + "default" : { + "type" : "boolean", + "description" : "The default availability schedule in use." + }, + "name" : { + "minLength" : 1, + "type" : "string", + "description" : "The name of this availability schedule.", + "example" : "Working hours" + }, + "segments_recurrence" : { + "allOf" : [ { + "$ref" : "#/components/schemas/ScheduleravailabilitySegmentsRecurrence" + } ], + "x-ballerina-name" : "segmentsRecurrence" + }, + "time_zone" : { + "type" : "string", + "description" : "The timezone for which this availability schedule originates.", + "example" : "Asia/Shanghai", + "x-ballerina-name" : "timeZone" + }, + "segments" : { + "type" : "array", + "description" : "The date on which the rule needs to be applied outside of the availability rule.", + "items" : { + "$ref" : "#/components/schemas/ScheduleravailabilityavailabilityIdSegments" + } + } + }, + "description" : "The availability schedule set by the user." + }, + "SchedulerschedulesscheduleIdSegmentsRecurrence1" : { + "type" : "object", + "properties" : { + "thu" : { + "type" : "array", + "description" : "Thursday", + "items" : { + "$ref" : "#/components/schemas/ScheduleravailabilitySegmentsRecurrenceSun" + } + }, + "tue" : { + "type" : "array", + "description" : "Tuesday", + "items" : { + "$ref" : "#/components/schemas/ScheduleravailabilitySegmentsRecurrenceSun" + } + }, + "wed" : { + "type" : "array", + "description" : "Wednesday", + "items" : { + "$ref" : "#/components/schemas/ScheduleravailabilitySegmentsRecurrenceSun" + } + }, + "sat" : { + "type" : "array", + "description" : "Saturday", + "items" : { + "$ref" : "#/components/schemas/ScheduleravailabilitySegmentsRecurrenceSun" + } + }, + "fri" : { + "type" : "array", + "description" : "Friday ", + "items" : { + "$ref" : "#/components/schemas/ScheduleravailabilitySegmentsRecurrenceSun" + } + }, + "sun" : { + "type" : "array", + "description" : "Sunday", + "items" : { + "$ref" : "#/components/schemas/ScheduleravailabilitySegmentsRecurrenceSun" + } + }, + "mon" : { + "type" : "array", + "description" : "Monday", + "items" : { + "$ref" : "#/components/schemas/ScheduleravailabilitySegmentsRecurrenceSun" + } + } + }, + "description" : "The week of the available time rule." + }, + "InlineResponse2005Creator" : { + "type" : "object", + "properties" : { + "self" : { + "type" : "boolean", + "description" : "This field indicates if you created the schedule. The field is read-only.", + "readOnly" : true, + "example" : true + }, + "display_name" : { + "type" : "string", + "description" : "This field indicates the creator of the display name.", + "readOnly" : true, + "example" : "name", + "x-ballerina-name" : "displayName" + }, + "email" : { + "type" : "string", + "description" : "This field indicates the creator's email address.", + "example" : "easonfsxsysks3lgchitiw@scheduler.zoom.us" + } + }, + "description" : "The creator of the schedule. This field is read-only." + }, + "InlineResponse2012" : { + "required" : [ "scheduling_url" ], + "type" : "object", + "properties" : { + "scheduling_url" : { + "type" : "string", + "description" : "The scheduling link URL.", + "example" : "https://scheduler.zoomdev.us/manage/xu3o9skk6ygg8gk5hjvokjm2c0", + "x-ballerina-name" : "schedulingUrl" + } + } + }, + "InlineResponse2011" : { + "type" : "object", + "properties" : { + "end_date" : { + "type" : "string", + "description" : "The schedule's end date.", + "example" : "2023-12-20", + "x-ballerina-name" : "endDate" + }, + "color" : { + "type" : "string", + "description" : "The hexadecimal color value of the event type's scheduling page.", + "example" : "#fff200" + }, + "description" : { + "maxLength" : 8192, + "type" : "string", + "description" : "The schedule's description.", + "example" : "15 Minute Meeting" + }, + "secret" : { + "type" : "boolean", + "description" : "This field indicates if the event type is hidden on the owner's main scheduling page.", + "example" : false + }, + "availability_rules" : { + "type" : "array", + "description" : "The availability of the time rule.", + "items" : { + "$ref" : "#/components/schemas/InlineResponse2011AvailabilityRules" + }, + "x-ballerina-name" : "availabilityRules" + }, + "capacity" : { + "maximum" : 200, + "minimum" : 1, + "type" : "number", + "description" : "This field indicates the maximum invitees per event.", + "example" : 1 + }, + "segments" : { + "type" : "array", + "description" : "The available time segments of the event.", + "items" : { + "$ref" : "#/components/schemas/SchedulerschedulesSegments" + } + }, + "duration" : { + "maximum" : 1440, + "minimum" : 15, + "type" : "number", + "description" : "This field indicates the duration of the meeting in minutes, range: [1, 1440].", + "example" : 30 + }, + "cushion" : { + "maximum" : 14340, + "minimum" : 0, + "type" : "number", + "description" : "This field indicates the minimum time before a schedule starts when the attendees can book.", + "example" : 0 + }, + "buffer" : { + "$ref" : "#/components/schemas/SchedulerschedulesBuffer" + }, + "segments_recurrence" : { + "allOf" : [ { + "$ref" : "#/components/schemas/SchedulerschedulesSegmentsRecurrence" + } ], + "x-ballerina-name" : "segmentsRecurrence" + }, + "slug" : { + "maxLength" : 256, + "minLength" : 3, + "type" : "string", + "description" : "The event portion of the event's URL that identifies a specific web page.", + "example" : "sales" + }, + "interval_type" : { + "type" : "string", + "description" : "The schedule time range. Unlimited means forever and fixed means using `startDate` and `endDate`.", + "example" : "fixed", + "enum" : [ "unlimited", "fixed" ], + "x-ballerina-name" : "intervalType" + }, + "start_date" : { + "type" : "string", + "description" : "The schedule's start date.", + "example" : "2023-12-21", + "x-ballerina-name" : "startDate" + }, + "add_on_type" : { + "type" : "string", + "description" : "The method of the type of `addOn`, such as Zoom meeting, Zoom phone, or offline.", + "example" : "zoomMeeting", + "enum" : [ "zoomMeeting", "zoomPhone", "offline" ], + "x-ballerina-name" : "addOnType" + }, + "scheduling_url" : { + "type" : "string", + "description" : "The URL of the user’s scheduling site where invitees book this event type.", + "example" : "https://scheduler.zoom.us/zoom_us/sales", + "x-ballerina-name" : "schedulingUrl" + }, + "start_time_increment" : { + "maximum" : 720, + "minimum" : 5, + "type" : "number", + "description" : "This field sets the frequency of available time slots for invitees.", + "example" : 30, + "x-ballerina-name" : "startTimeIncrement" + }, + "summary" : { + "maxLength" : 256, + "type" : "string", + "description" : "The event's summary.", + "example" : "daily meeting" + }, + "creator" : { + "$ref" : "#/components/schemas/InlineResponse2011Creator" + }, + "schedule_type" : { + "type" : "string", + "description" : "This field indicates if the schedule type is \"one\" (belongs to an individual user) or \"multiple\".", + "example" : "one", + "enum" : [ "one", "multiple" ], + "x-ballerina-name" : "scheduleType" + }, + "custom_fields" : { + "type" : "array", + "description" : "This field contains the custom question.", + "items" : { + "$ref" : "#/components/schemas/InlineResponse2011CustomFields" + }, + "x-ballerina-name" : "customFields" + }, + "active" : { + "type" : "boolean", + "description" : "This field indicates if the schedule is active.", + "example" : true + }, + "booking_limit" : { + "maximum" : 96, + "minimum" : 0, + "type" : "number", + "description" : "This field sets the maximum events allowed per day.", + "example" : 0, + "x-ballerina-name" : "bookingLimit" + }, + "time_zone" : { + "type" : "string", + "description" : "the timezone of this availability rule. ", + "example" : "Asia/Shanghai", + "x-ballerina-name" : "timeZone" + }, + "organizer" : { + "$ref" : "#/components/schemas/InlineResponse2011Organizer" + }, + "location" : { + "maxLength" : 1024, + "type" : "string", + "description" : "The information for a custom location.", + "example" : "AAA office" + }, + "schedule_id" : { + "type" : "string", + "description" : "The unique identifier of schedule.", + "example" : "ygfx661g9x8dwcgeusdqhsplc0", + "x-ballerina-name" : "scheduleId" + }, + "updated" : { + "type" : "string", + "description" : "The moment the schedule type was updated.", + "readOnly" : true, + "example" : "2023-12-21T06:18:32.087Z" + }, + "availability_override" : { + "type" : "boolean", + "description" : "This field indicates the use of the availability rule.", + "example" : false, + "x-ballerina-name" : "availabilityOverride" + }, + "status" : { + "type" : "string", + "description" : "The status of schedule: confirmed or cancelled.", + "example" : "confirmed", + "enum" : [ "confirmed", "cancelled" ] + } + } + }, + "SchedulerschedulesAvailabilityRules" : { + "type" : "object", + "properties" : { + "use_custom" : { + "type" : "boolean", + "description" : "This field indicates the use of custom availability instead of the rule.", + "example" : false, + "x-ballerina-name" : "useCustom" + }, + "availability_id" : { + "type" : "string", + "description" : "The ID of this availability rule. ", + "example" : "x3h1u4id4liffdyszsp8kpxl80", + "x-ballerina-name" : "availabilityId" + }, + "segments_recurrence" : { + "allOf" : [ { + "$ref" : "#/components/schemas/SchedulerschedulesSegmentsRecurrence" + } ], + "x-ballerina-name" : "segmentsRecurrence" + }, + "time_zone" : { + "type" : "string", + "description" : "the timezone of this availability rule. ", + "example" : "Asia/Shanghai", + "x-ballerina-name" : "timeZone" + }, + "email" : { + "type" : "string", + "description" : "The owner of this availability rule. ", + "example" : "easonfsxsysks3lgchitiw@scheduler.zoom.us" + }, + "segments" : { + "type" : "array", + "description" : "The available time segments of the event.", + "items" : { + "$ref" : "#/components/schemas/SchedulerschedulesSegments" + } + } + } + }, + "ScheduleravailabilitySegmentsRecurrenceSun" : { + "type" : "object", + "properties" : { + "start" : { + "type" : "string", + "description" : "The start time of this day.", + "example" : "09:00" + }, + "end" : { + "type" : "string", + "description" : "The end time of this day.", + "example" : "17:00" + } + } + }, + "InlineResponse200LastNDays" : { + "type" : "object", + "properties" : { + "all_host_available" : { + "type" : "integer", + "description" : "The number of \"all host available\" type schedules.", + "example" : 10, + "x-ballerina-name" : "allHostAvailable" + }, + "scheduled_events_rescheduled" : { + "type" : "integer", + "description" : "The number of rescheduled scheduled events.", + "example" : 10, + "x-ballerina-name" : "scheduledEventsRescheduled" + }, + "scheduled_events_completed" : { + "type" : "integer", + "description" : "The number of completed scheduled events.", + "example" : 10, + "x-ballerina-name" : "scheduledEventsCompleted" + }, + "schedules_canceled" : { + "type" : "integer", + "description" : "The number of cancelled schedules.", + "example" : 10, + "x-ballerina-name" : "schedulesCanceled" + }, + "one_off_meeting" : { + "type" : "integer", + "description" : "The number of \"one-off\" type schedules.", + "example" : 10, + "x-ballerina-name" : "oneOffMeeting" + }, + "meeting_poll" : { + "type" : "integer", + "description" : "The number of \"meeting poll\" type schedules.", + "example" : 10, + "x-ballerina-name" : "meetingPoll" + }, + "one_to_many" : { + "type" : "integer", + "description" : "The number of \"one to many\" type schedules.", + "example" : 10, + "x-ballerina-name" : "oneToMany" + }, + "any_host_available" : { + "type" : "integer", + "description" : "The number of \"any host available\" type schedules.", + "example" : 10, + "x-ballerina-name" : "anyHostAvailable" + }, + "scheduled_events_canceled" : { + "type" : "integer", + "description" : "The number of cancelled scheduled events.", + "example" : 10, + "x-ballerina-name" : "scheduledEventsCanceled" + }, + "one_to_one" : { + "type" : "integer", + "description" : "The number of \"one to one\" type schedules.", + "example" : 10, + "x-ballerina-name" : "oneToOne" + }, + "scheduled_events_created" : { + "type" : "integer", + "description" : "The number of created scheduled events.", + "example" : 10, + "x-ballerina-name" : "scheduledEventsCreated" + }, + "schedules_created" : { + "type" : "integer", + "description" : "The number of created schedules.", + "example" : 10, + "x-ballerina-name" : "schedulesCreated" + } + }, + "description" : "The stats of the last N days.", + "example" : "\"last_n_days\":{{\"created_scheduled_events\":65},{\"completed_scheduled_events\":34},{\"created_schedules\":20},{\"cancelled_scheduled_events\":14},{\"rescheduled_scheduled_events\":8},{\"cancelled_schedules\":3},{\"one_to_one\":10},{\"any_host_available\":5},{\"one_off_meeting\":2},{\"all_host_available\":1},{\"meeting_poll\":1},{\"one_to_many\":1}}" + }, + "SchedulerschedulesscheduleIdCustomFields" : { + "required" : [ "enabled", "format", "include_other", "name", "position", "required" ], + "type" : "object", + "properties" : { + "answer_choices" : { + "maxItems" : 50, + "minItems" : 1, + "type" : "array", + "description" : "The invitee's option(s) for single_select or multi_select type of responses.", + "items" : { + "maxLength" : 8192, + "minLength" : 1, + "type" : "string", + "description" : "The invitee's option for single_select or multi_select type of responses.", + "example" : "At home" + }, + "x-ballerina-name" : "answerChoices" + }, + "format" : { + "type" : "string", + "description" : "The type of response that the invitee provides to the custom question. It can be one or multiple lines of text, a phone number, or single- or multiple-select.[`string text phone_number single_select multi_select`]", + "example" : "text", + "enum" : [ "text", "string", "phone_number", "choices_one", "choices_many", "select" ] + }, + "custom_field_id" : { + "type" : "string", + "description" : "The ID of this question", + "example" : "0l6imf50il8jchyapni3p5ckc0", + "x-ballerina-name" : "customFieldId" + }, + "name" : { + "type" : "string", + "description" : "The custom question that the host created for the event type.", + "example" : "Please share anything that will help prepare for our meeting." + }, + "include_other" : { + "type" : "boolean", + "description" : "If the custom question lets invitees record a written response, in addition to single-select or multiple-select type of responses, then it's true. Otherwise, it's false.", + "example" : false, + "x-ballerina-name" : "includeOther" + }, + "position" : { + "type" : "number", + "description" : "The position of this question.", + "example" : 0 + }, + "enabled" : { + "type" : "boolean", + "description" : "If the question created by the host is turned ON and visible on the event booking page, then it's true. If it's turned OFF and invisible on the event booking page, then it's false.", + "example" : true + }, + "required" : { + "type" : "boolean", + "description" : "If a response to the question, created by the host, is required for invitees to book the event type, then it's true. If it's not required, it's false.", + "example" : false + } + } + }, + "SchedulerschedulesSegments" : { + "type" : "object", + "properties" : { + "start" : { + "type" : "string", + "description" : "The start date and time of the segment.", + "example" : "2023-12-21T06:00:00Z" + }, + "end" : { + "type" : "string", + "description" : "The end date and time of the segment.", + "example" : "2023-12-21T06:00:00Z" + } + } + }, + "ScheduleravailabilityavailabilityIdSegments" : { + "required" : [ "end", "start" ], + "type" : "object", + "properties" : { + "start" : { + "type" : "string", + "description" : "The start date to override.", + "example" : "2024-01-07T09:00:00Z" + }, + "end" : { + "type" : "string", + "description" : "The end date to override.", + "example" : "2024-01-08T09:00:00Z" + } + }, + "description" : "The date interval that needs to overridden." + }, + "InlineResponse2001" : { + "type" : "object", + "properties" : { + "next_page_token" : { + "type" : "string", + "description" : " The token for a later to retrieve only the entries that have changed since this result was returned. It's omitted if further results are available, in which case `nextPageToken` is provided.", + "example" : "Cj8KLwotCgsI3ujvqgYQgIXUGxIeChwKGjBzNzAyZWVtbjBzOTdlZXFhNXE1NWg4ZWJtGgwIzIPVrAYQwM3WrAPAPgE=", + "x-ballerina-name" : "nextPageToken" + }, + "items" : { + "type" : "array", + "description" : "array[User Availability Schedule]", + "items" : { + "$ref" : "#/components/schemas/InlineResponse2001Items" + } + } + }, + "description" : "The availability of the schedule query result of given user." + }, + "InlineResponse2003" : { + "type" : "object", + "properties" : { + "next_page_token" : { + "type" : "string", + "description" : "The token to access the next page of this result.", + "example" : "ffffffff97c5b97f_53slvrhet2n0xkxurl5ybgde40", + "x-ballerina-name" : "nextPageToken" + }, + "items" : { + "type" : "array", + "items" : { + "$ref" : "#/components/schemas/InlineResponse2003Items" + } + } + } + }, + "InlineResponse2002" : { + "type" : "object", + "properties" : { + "owner" : { + "type" : "string", + "description" : "The owner's ID.", + "readOnly" : true, + "example" : "easonfsxsysks3lgchitiw@scheudler.zoom.us" + }, + "default" : { + "type" : "boolean", + "description" : "The default availability schedule in use.", + "example" : true + }, + "name" : { + "type" : "string", + "description" : "The name of this availability schedule.", + "example" : "Working hours" + }, + "availability_id" : { + "type" : "string", + "description" : "The unique ID of availability.", + "example" : "x3h1u4id4liffdyszsp8kpxl80", + "x-ballerina-name" : "availabilityId" + }, + "segments_recurrence" : { + "allOf" : [ { + "$ref" : "#/components/schemas/ScheduleravailabilitySegmentsRecurrence" + } ], + "x-ballerina-name" : "segmentsRecurrence" + }, + "time_zone" : { + "type" : "string", + "description" : "The timezone for which this availability schedule originates.", + "example" : "Asia/Shanghai", + "x-ballerina-name" : "timeZone" + } + }, + "description" : "The availability schedule set by the user." + }, + "InlineResponse2005" : { + "type" : "object", + "properties" : { + "next_page_token" : { + "type" : "string", + "description" : "The token that accesses the next page of this result.", + "example" : "aec369a4fce6ae655749b00fc7260bfd", + "x-ballerina-name" : "nextPageToken" + }, + "items" : { + "type" : "array", + "items" : { + "$ref" : "#/components/schemas/InlineResponse2005Items" + } + } + } + }, + "InlineResponse2004" : { + "type" : "object", + "properties" : { + "summary" : { + "maxLength" : 256, + "type" : "string", + "description" : "The event's summary.", + "example" : "daily meeting" + }, + "attendees" : { + "type" : "array", + "description" : "The attendees of the event.", + "items" : { + "$ref" : "#/components/schemas/InlineResponse2004Attendees" + } + }, + "meeting_notes" : { + "maxLength" : 1024, + "type" : "string", + "description" : "The meeting notes of the event.", + "example" : "meeting notes", + "x-ballerina-name" : "meetingNotes" + }, + "description" : { + "maxLength" : 8192, + "type" : "string", + "description" : "The event's description.", + "example" : "15 Minute Meeting" + }, + "end_date_time" : { + "type" : "string", + "description" : "The scheduled event's end date time.", + "example" : "2023-12-21T16:30:00+08:00", + "x-ballerina-name" : "endDateTime" + }, + "event_id" : { + "type" : "string", + "description" : "The unique identifier of event.", + "example" : "woft7torlatbw8ek24bmit5k60", + "x-ballerina-name" : "eventId" + }, + "event_type" : { + "type" : "string", + "description" : "This field indicates whether the type is default(scheduled) or a pending event.", + "readOnly" : true, + "example" : "default", + "enum" : [ "default", "pending" ], + "x-ballerina-name" : "eventType" + }, + "tracking_params" : { + "type" : "array", + "description" : "The information to track the source of invitee. Only use this setting you add UTM parameters in schedule links.", + "items" : { + "$ref" : "#/components/schemas/InlineResponse2004TrackingParams" + }, + "x-ballerina-name" : "trackingParams" + }, + "guests" : { + "type" : "array", + "description" : "The guest's collection.", + "items" : { + "type" : "string", + "description" : "The guest's email.", + "example" : "tom@zoom.us" + } + }, + "location" : { + "maxLength" : 1024, + "type" : "string", + "description" : "The information for a custom location.", + "example" : "AAA office" + }, + "start_date_time" : { + "type" : "string", + "description" : "The scheduled event's start date time.", + "example" : "2023-12-21T16:00:00+08:00", + "x-ballerina-name" : "startDateTime" + }, + "schedule_id" : { + "type" : "string", + "description" : "The unique identifier of schedule.", + "example" : "ygfx661g9x8dwcgeusdqhsplc0_20231220T160000Z", + "x-ballerina-name" : "scheduleId" + }, + "updated" : { + "type" : "string", + "description" : "The moment the event was updated.", + "example" : "2023-12-21T06:19:28.309Z" + }, + "external_location" : { + "description" : "The meeting details for when users have scheduled appointments.", + "readOnly" : true, + "oneOf" : [ { + "type" : "object", + "properties" : { + "kind" : { + "type" : "string", + "description" : "The type of meeting specified in the schedule.", + "example" : "zoom" + }, + "meeting_id" : { + "type" : "string", + "description" : "The unique identifier of the meeting in string format.", + "example" : "94777886776" + }, + "personal_meeting_id" : { + "type" : "string", + "description" : "The personal meeting id in string format.", + "example" : "98656786887" + }, + "meeting_passcode" : { + "type" : "string", + "description" : "The passcode of Zoom meeting.", + "example" : "958000" + }, + "meeting_description" : { + "type" : "string", + "description" : "The description of Zoom meeting.", + "example" : "Invite you to meeting" + }, + "meeting_join_url" : { + "type" : "string", + "description" : "The URL of Zoom meeting", + "example" : "https://zoom.us/j/7427752805" + } + } + } ], + "x-ballerina-name" : "externalLocation" + }, + "status" : { + "type" : "string", + "description" : "The status of event: confirmed or cancelled.", + "example" : "confirmed", + "enum" : [ "confirmed", "cancelled" ] + } + } + }, + "InlineResponse2005Items" : { + "type" : "object", + "properties" : { + "end_date" : { + "type" : "string", + "description" : "The schedule's end date.", + "example" : "2023-12-28", + "x-ballerina-name" : "endDate" + }, + "color" : { + "type" : "string", + "description" : "The hexadecimal color value of the event type's scheduling page.", + "example" : "#fff200" + }, + "description" : { + "maxLength" : 8192, + "type" : "string", + "description" : "The schedule's description.", + "example" : "15 Minute Meeting" + }, + "secret" : { + "type" : "boolean", + "description" : "This field indicates if the event type is hidden on the owner's main scheduling page.", + "example" : false + }, + "availability_rules" : { + "type" : "array", + "description" : "The availability of the time rule.", + "items" : { + "$ref" : "#/components/schemas/InlineResponse2005AvailabilityRules" + }, + "x-ballerina-name" : "availabilityRules" + }, + "capacity" : { + "maximum" : 200, + "minimum" : 1, + "type" : "number", + "description" : "This field indicates the maximum invitees per event.", + "example" : 1 + }, + "segments" : { + "type" : "array", + "description" : "The available time segments of the event.", + "items" : { + "$ref" : "#/components/schemas/SchedulerschedulesSegments" + } + }, + "duration" : { + "maximum" : 1440, + "minimum" : 15, + "type" : "number", + "description" : "This field indicates the duration of the meeting in minutes, range: [1, 1440].", + "example" : 30 + }, + "cushion" : { + "maximum" : 14340, + "minimum" : 0, + "type" : "number", + "description" : "This field indicates the minimum time before a schedule starts when the attendees can book.", + "example" : 0 + }, + "buffer" : { + "$ref" : "#/components/schemas/SchedulerschedulesBuffer" + }, + "segments_recurrence" : { + "allOf" : [ { + "$ref" : "#/components/schemas/SchedulerschedulesscheduleIdSegmentsRecurrence1" + } ], + "x-ballerina-name" : "segmentsRecurrence" + }, + "slug" : { + "maxLength" : 256, + "minLength" : 3, + "type" : "string", + "description" : "The event portion of the event's URL that identifies a specific web page.", + "example" : "sales" + }, + "interval_type" : { + "type" : "string", + "description" : "The schedule time range. Unlimited means forever and fixed means using `startDate` and `endDate`.", + "example" : "fixed", + "enum" : [ "unlimited", "fixed" ], + "x-ballerina-name" : "intervalType" + }, + "start_date" : { + "type" : "string", + "description" : "The schedule's start date.", + "example" : "2023-12-21", + "x-ballerina-name" : "startDate" + }, + "add_on_type" : { + "type" : "string", + "description" : "The method of the type of `addOn`, such as Zoom meeting, Zoom phone, or offline.", + "example" : "zoomMeeting", + "enum" : [ "zoomMeeting", "zoomPhone", "offline" ], + "x-ballerina-name" : "addOnType" + }, + "scheduling_url" : { + "type" : "string", + "description" : "The URL of the user's scheduling site where invitees book this event type.", + "example" : "https://scheduler.zoom.us/zoom_us/sales", + "x-ballerina-name" : "schedulingUrl" + }, + "start_time_increment" : { + "maximum" : 720, + "minimum" : 5, + "type" : "number", + "description" : "This field sets the frequency of available time slots for invitees.", + "example" : 30, + "x-ballerina-name" : "startTimeIncrement" + }, + "summary" : { + "maxLength" : 256, + "type" : "string", + "description" : "The event's summary.", + "example" : "daily meeting" + }, + "creator" : { + "$ref" : "#/components/schemas/InlineResponse2005Creator" + }, + "schedule_type" : { + "type" : "string", + "description" : "This field indicates if the schedule type is \"one\" (belongs to an individual user) or \"multiple\".", + "example" : "one", + "enum" : [ "one", "multiple" ], + "x-ballerina-name" : "scheduleType" + }, + "custom_fields" : { + "type" : "array", + "description" : "This field contains the custom question.", + "items" : { + "$ref" : "#/components/schemas/InlineResponse2011CustomFields" + }, + "x-ballerina-name" : "customFields" + }, + "active" : { + "type" : "boolean", + "description" : "This field indicates if the schedule is active", + "example" : true + }, + "booking_limit" : { + "maximum" : 96, + "minimum" : 0, + "type" : "number", + "description" : "This field sets the maximum events allowed per day.", + "example" : 0, + "x-ballerina-name" : "bookingLimit" + }, + "time_zone" : { + "type" : "string", + "description" : "the timezone of this availability rule. ", + "example" : "Asia/Shanghai", + "x-ballerina-name" : "timeZone" + }, + "organizer" : { + "$ref" : "#/components/schemas/InlineResponse2011Organizer" + }, + "location" : { + "maxLength" : 1024, + "type" : "string", + "description" : "The information for a custom location.", + "example" : "AAA office" + }, + "schedule_id" : { + "type" : "string", + "description" : "The unique identifier of the schedule.", + "example" : "ygfx661g9x8dwcgeusdqhsplc0", + "x-ballerina-name" : "scheduleId" + }, + "updated" : { + "type" : "string", + "description" : "The moment the schedule type was updated.", + "readOnly" : true, + "example" : "2023-12-21T06:18:32.087Z" + }, + "availability_override" : { + "type" : "boolean", + "description" : "This field indicates the use of the availability rule.", + "example" : false, + "x-ballerina-name" : "availabilityOverride" + }, + "status" : { + "type" : "string", + "description" : "The status of schedule: confirmed or cancelled.", + "example" : "confirmed", + "enum" : [ "confirmed", "cancelled" ] + } + } + }, + "InlineResponse2007" : { + "type" : "object", + "properties" : { + "scheduling_url" : { + "type" : "string", + "description" : "The URL of the user’s scheduling site where invitees book this event type.", + "example" : "https://scheduler.zoom.us/zoom_us", + "x-ballerina-name" : "schedulingUrl" + }, + "logo" : { + "type" : "string", + "description" : "This field enables users to upload their company's logo on Zoom.", + "example" : "user logo" + }, + "display_name" : { + "type" : "string", + "description" : "The user's name", + "example" : "name", + "x-ballerina-name" : "displayName" + }, + "time_zone" : { + "type" : "string", + "description" : "The time zone to use when presenting time to the user.", + "example" : "America/New York", + "x-ballerina-name" : "timeZone" + }, + "slug" : { + "type" : "string", + "description" : "The portion of URL for the user's scheduling page where invitees book sessions that renders in a human-readable format.", + "example" : "zoom_us" + }, + "picture" : { + "type" : "string", + "description" : "This field enables users to upload their personal avatars on Zoom.", + "example" : "base64 encoding string" + } + }, + "description" : "The user's information." + }, + "InlineResponse2006" : { + "type" : "object", + "properties" : { + "end_date" : { + "type" : "string", + "description" : "The schedule's end date.", + "example" : "2023-12-28", + "x-ballerina-name" : "endDate" + }, + "color" : { + "type" : "string", + "description" : "The hexadecimal color value of the event type's scheduling page.", + "example" : "#fff200" + }, + "description" : { + "maxLength" : 8192, + "type" : "string", + "description" : "The schedule's description.", + "example" : "15 Minute Meeting" + }, + "secret" : { + "type" : "boolean", + "description" : "This field indicates if the event type is hidden on the owner's main scheduling page.", + "example" : false + }, + "availability_rules" : { + "type" : "array", + "description" : "The availability of the time rule.", + "items" : { + "$ref" : "#/components/schemas/InlineResponse2006AvailabilityRules" + }, + "x-ballerina-name" : "availabilityRules" + }, + "capacity" : { + "maximum" : 200, + "minimum" : 1, + "type" : "number", + "description" : "This field indicates the maximum invitees per event.", + "example" : 1 + }, + "segments" : { + "type" : "array", + "description" : "The available time segments of the event.", + "items" : { + "$ref" : "#/components/schemas/SchedulerschedulesSegments" + } + }, + "duration" : { + "maximum" : 1440, + "minimum" : 15, + "type" : "number", + "description" : "This field indicates the duration of the meeting in minutes, range: [1, 1440].", + "example" : 30 + }, + "cushion" : { + "maximum" : 14340, + "minimum" : 0, + "type" : "number", + "description" : "This field indicates the minimum time before a schedule starts when the attendees can book.", + "example" : 0 + }, + "buffer" : { + "$ref" : "#/components/schemas/SchedulerschedulesBuffer" + }, + "segments_recurrence" : { + "allOf" : [ { + "$ref" : "#/components/schemas/SchedulerschedulesSegmentsRecurrence" + } ], + "x-ballerina-name" : "segmentsRecurrence" + }, + "slug" : { + "maxLength" : 256, + "minLength" : 3, + "type" : "string", + "description" : "The event portion of the event's URL that identifies a specific web page.", + "example" : "sales" + }, + "interval_type" : { + "type" : "string", + "description" : "The schedule time range. Unlimited means forever and fixed means using `startDate` and `endDate`.", + "example" : "fixed", + "enum" : [ "unlimited", "fixed" ], + "x-ballerina-name" : "intervalType" + }, + "start_date" : { + "type" : "string", + "description" : "The schedule's start date.", + "example" : "2023-12-21", + "x-ballerina-name" : "startDate" + }, + "add_on_type" : { + "type" : "string", + "description" : "The method of the type of `addOn`, such as Zoom meeting, Zoom phone, or offline.", + "example" : "zoomMeeting", + "enum" : [ "zoomMeeting", "zoomPhone", "offline" ], + "x-ballerina-name" : "addOnType" + }, + "scheduling_url" : { + "type" : "string", + "description" : "The URL of the user's scheduling site where invitees book this event type.", + "example" : "https://scheduler.zoom.us/zoom_us/sales", + "x-ballerina-name" : "schedulingUrl" + }, + "start_time_increment" : { + "maximum" : 720, + "minimum" : 5, + "type" : "number", + "description" : "This field sets the frequency of available time slots for invitees.", + "example" : 30, + "x-ballerina-name" : "startTimeIncrement" + }, + "summary" : { + "maxLength" : 256, + "type" : "string", + "description" : "The event's summary.", + "example" : "daily meeting" + }, + "creator" : { + "$ref" : "#/components/schemas/InlineResponse2011Creator" + }, + "schedule_type" : { + "type" : "string", + "description" : "This field indicates if the schedule type is **one** (belongs to an individual user) or **multiple**.", + "example" : "one", + "enum" : [ "one", "multiple" ], + "x-ballerina-name" : "scheduleType" + }, + "custom_fields" : { + "type" : "array", + "description" : "This field contains the custom question.", + "items" : { + "$ref" : "#/components/schemas/InlineResponse2011CustomFields" + }, + "x-ballerina-name" : "customFields" + }, + "active" : { + "type" : "boolean", + "description" : "This field indicates if the schedule is active.", + "example" : true + }, + "booking_limit" : { + "maximum" : 96, + "minimum" : 0, + "type" : "number", + "description" : "This field sets the maximum events allowed per day.", + "example" : 0, + "x-ballerina-name" : "bookingLimit" + }, + "time_zone" : { + "type" : "string", + "description" : "the timezone of this availability rule. ", + "example" : "Asia/Shanghai", + "x-ballerina-name" : "timeZone" + }, + "organizer" : { + "$ref" : "#/components/schemas/InlineResponse2011Organizer" + }, + "location" : { + "maxLength" : 1024, + "type" : "string", + "description" : "The information for a custom location.", + "example" : "AAA office" + }, + "schedule_id" : { + "type" : "string", + "description" : "The unique identifier of a schedule.", + "example" : "ygfx661g9x8dwcgeusdqhsplc0", + "x-ballerina-name" : "scheduleId" + }, + "updated" : { + "type" : "string", + "description" : "The moment the schedule type was updated.", + "readOnly" : true, + "example" : "2023-12-21T06:18:32.087Z" + }, + "availability_override" : { + "type" : "boolean", + "description" : "This field indicates the use of the availability rule.", + "example" : false, + "x-ballerina-name" : "availabilityOverride" + }, + "status" : { + "type" : "string", + "description" : "The status of schedule: confirmed or cancelled.", + "example" : "confirmed", + "enum" : [ "confirmed", "cancelled" ] + } + } + } + }, + "securitySchemes" : { + "openapi_authorization" : { + "type" : "apiKey", + "name" : "Authorization", + "in" : "header" + }, + "openapi_oauth" : { + "type" : "oauth2", + "flows" : { + "authorizationCode" : { + "authorizationUrl" : "/", + "tokenUrl" : "", + "refreshUrl" : "", + "scopes" : { + "scheduler:read" : "scheduler:read", + "scheduler:read:admin" : "scheduler:read:admin", + "scheduler:read:analytics" : "scheduler:read:analytics", + "scheduler:read:analytics:admin" : "scheduler:read:analytics:admin", + "scheduler:read:list_availability" : "scheduler:read:list_availability", + "scheduler:read:list_availability:admin" : "scheduler:read:list_availability:admin", + "scheduler:write:admin" : "scheduler:write:admin", + "scheduler:write" : "scheduler:write", + "scheduler:write:availability" : "scheduler:write:availability", + "scheduler:write:availability:admin" : "scheduler:write:availability:admin", + "scheduler:read:availability" : "scheduler:read:availability", + "scheduler:read:availability:admin" : "scheduler:read:availability:admin", + "scheduler:update:availability" : "scheduler:update:availability", + "scheduler:update:availability:admin" : "scheduler:update:availability:admin", + "scheduler:delete:availability" : "scheduler:delete:availability", + "scheduler:delete:availability:admin" : "scheduler:delete:availability:admin", + "scheduler:read:list_scheduled_events" : "scheduler:read:list_scheduled_events", + "scheduler:read:list_scheduled_events:admin" : "scheduler:read:list_scheduled_events:admin", + "scheduler:read:scheduled_event" : "scheduler:read:scheduled_event", + "scheduler:read:scheduled_event:admin" : "scheduler:read:scheduled_event:admin", + "scheduler:delete:scheduled_event" : "scheduler:delete:scheduled_event", + "scheduler:delete:scheduled_event:admin" : "scheduler:delete:scheduled_event:admin", + "scheduler:update:scheduled_event" : "scheduler:update:scheduled_event", + "scheduler:update:scheduled_event:admin" : "scheduler:update:scheduled_event:admin", + "scheduler:read:list_schedule" : "scheduler:read:list_schedule", + "scheduler:read:list_schedule:admin" : "scheduler:read:list_schedule:admin", + "scheduler:write:insert_schedule" : "scheduler:write:insert_schedule", + "scheduler:write:insert_schedule:admin" : "scheduler:write:insert_schedule:admin", + "scheduler:update:patch_schedule" : "scheduler:update:patch_schedule", + "scheduler:update:patch_schedule:admin" : "scheduler:update:patch_schedule:admin", + "scheduler:read:get_schedule" : "scheduler:read:get_schedule", + "scheduler:read:get_schedule:admin" : "scheduler:read:get_schedule:admin", + "scheduler:delete:delete_schedule" : "scheduler:delete:delete_schedule", + "scheduler:delete:delete_schedule:admin" : "scheduler:delete:delete_schedule:admin", + "scheduler:write:single_use_link" : "scheduler:write:single_use_link", + "scheduler:write:single_use_link:admin" : "scheduler:write:single_use_link:admin", + "scheduler:read:user" : "scheduler:read:user", + "scheduler:read:user:admin" : "scheduler:read:user:admin" + } + } + } + } + } + } +} \ No newline at end of file diff --git a/docs/spec/sanitations.md b/docs/spec/sanitations.md index 63ddf5d..736df38 100644 --- a/docs/spec/sanitations.md +++ b/docs/spec/sanitations.md @@ -1,4 +1,4 @@ -_Author_: \ +_Author_: LinukaAr _Created_: \ _Updated_: \ _Edition_: Swan Lake From e1c5dcb93dfe6b6db236a260b0d953605f94aa46 Mon Sep 17 00:00:00 2001 From: linukaar Date: Thu, 12 Jun 2025 11:55:27 +0530 Subject: [PATCH 02/22] [Automated] Update the toml files --- ballerina/Dependencies.toml | 297 ++++++++++++++++++++++++++++++++++++ 1 file changed, 297 insertions(+) diff --git a/ballerina/Dependencies.toml b/ballerina/Dependencies.toml index 9406f2d..3581d1b 100644 --- a/ballerina/Dependencies.toml +++ b/ballerina/Dependencies.toml @@ -7,11 +7,252 @@ dependencies-toml-version = "2" distribution-version = "2201.12.0" +[[package]] +org = "ballerina" +name = "auth" +version = "2.14.0" +dependencies = [ + {org = "ballerina", name = "crypto"}, + {org = "ballerina", name = "jballerina.java"}, + {org = "ballerina", name = "lang.array"}, + {org = "ballerina", name = "lang.string"}, + {org = "ballerina", name = "log"} +] + +[[package]] +org = "ballerina" +name = "cache" +version = "3.10.0" +dependencies = [ + {org = "ballerina", name = "constraint"}, + {org = "ballerina", name = "jballerina.java"}, + {org = "ballerina", name = "task"}, + {org = "ballerina", name = "time"} +] + +[[package]] +org = "ballerina" +name = "constraint" +version = "1.7.0" +dependencies = [ + {org = "ballerina", name = "jballerina.java"} +] +modules = [ + {org = "ballerina", packageName = "constraint", moduleName = "constraint"} +] + +[[package]] +org = "ballerina" +name = "crypto" +version = "2.9.0" +dependencies = [ + {org = "ballerina", name = "jballerina.java"}, + {org = "ballerina", name = "time"} +] + +[[package]] +org = "ballerina" +name = "data.jsondata" +version = "1.1.0" +dependencies = [ + {org = "ballerina", name = "jballerina.java"}, + {org = "ballerina", name = "lang.object"} +] +modules = [ + {org = "ballerina", packageName = "data.jsondata", moduleName = "data.jsondata"} +] + +[[package]] +org = "ballerina" +name = "file" +version = "1.12.0" +dependencies = [ + {org = "ballerina", name = "io"}, + {org = "ballerina", name = "jballerina.java"}, + {org = "ballerina", name = "os"}, + {org = "ballerina", name = "time"} +] + +[[package]] +org = "ballerina" +name = "http" +version = "2.14.1" +dependencies = [ + {org = "ballerina", name = "auth"}, + {org = "ballerina", name = "cache"}, + {org = "ballerina", name = "constraint"}, + {org = "ballerina", name = "crypto"}, + {org = "ballerina", name = "data.jsondata"}, + {org = "ballerina", name = "file"}, + {org = "ballerina", name = "io"}, + {org = "ballerina", name = "jballerina.java"}, + {org = "ballerina", name = "jwt"}, + {org = "ballerina", name = "lang.array"}, + {org = "ballerina", name = "lang.decimal"}, + {org = "ballerina", name = "lang.int"}, + {org = "ballerina", name = "lang.regexp"}, + {org = "ballerina", name = "lang.runtime"}, + {org = "ballerina", name = "lang.string"}, + {org = "ballerina", name = "lang.value"}, + {org = "ballerina", name = "log"}, + {org = "ballerina", name = "mime"}, + {org = "ballerina", name = "oauth2"}, + {org = "ballerina", name = "observe"}, + {org = "ballerina", name = "time"}, + {org = "ballerina", name = "url"} +] +modules = [ + {org = "ballerina", packageName = "http", moduleName = "http"}, + {org = "ballerina", packageName = "http", moduleName = "http.httpscerr"} +] + +[[package]] +org = "ballerina" +name = "io" +version = "1.8.0" +dependencies = [ + {org = "ballerina", name = "jballerina.java"}, + {org = "ballerina", name = "lang.value"} +] + [[package]] org = "ballerina" name = "jballerina.java" version = "0.0.0" +[[package]] +org = "ballerina" +name = "jwt" +version = "2.15.0" +dependencies = [ + {org = "ballerina", name = "cache"}, + {org = "ballerina", name = "crypto"}, + {org = "ballerina", name = "io"}, + {org = "ballerina", name = "jballerina.java"}, + {org = "ballerina", name = "lang.int"}, + {org = "ballerina", name = "lang.string"}, + {org = "ballerina", name = "log"}, + {org = "ballerina", name = "time"} +] + +[[package]] +org = "ballerina" +name = "lang.__internal" +version = "0.0.0" +dependencies = [ + {org = "ballerina", name = "jballerina.java"}, + {org = "ballerina", name = "lang.object"} +] + +[[package]] +org = "ballerina" +name = "lang.array" +version = "0.0.0" +dependencies = [ + {org = "ballerina", name = "jballerina.java"}, + {org = "ballerina", name = "lang.__internal"} +] + +[[package]] +org = "ballerina" +name = "lang.decimal" +version = "0.0.0" +dependencies = [ + {org = "ballerina", name = "jballerina.java"} +] + +[[package]] +org = "ballerina" +name = "lang.error" +version = "0.0.0" +scope = "testOnly" +dependencies = [ + {org = "ballerina", name = "jballerina.java"} +] + +[[package]] +org = "ballerina" +name = "lang.int" +version = "0.0.0" +dependencies = [ + {org = "ballerina", name = "jballerina.java"}, + {org = "ballerina", name = "lang.__internal"}, + {org = "ballerina", name = "lang.object"} +] + +[[package]] +org = "ballerina" +name = "lang.object" +version = "0.0.0" + +[[package]] +org = "ballerina" +name = "lang.regexp" +version = "0.0.0" +dependencies = [ + {org = "ballerina", name = "jballerina.java"} +] + +[[package]] +org = "ballerina" +name = "lang.runtime" +version = "0.0.0" +dependencies = [ + {org = "ballerina", name = "jballerina.java"} +] + +[[package]] +org = "ballerina" +name = "lang.string" +version = "0.0.0" +dependencies = [ + {org = "ballerina", name = "jballerina.java"}, + {org = "ballerina", name = "lang.regexp"} +] + +[[package]] +org = "ballerina" +name = "lang.value" +version = "0.0.0" +dependencies = [ + {org = "ballerina", name = "jballerina.java"} +] + +[[package]] +org = "ballerina" +name = "log" +version = "2.12.0" +dependencies = [ + {org = "ballerina", name = "io"}, + {org = "ballerina", name = "jballerina.java"}, + {org = "ballerina", name = "lang.value"}, + {org = "ballerina", name = "observe"} +] + +[[package]] +org = "ballerina" +name = "mime" +version = "2.12.0" +dependencies = [ + {org = "ballerina", name = "io"}, + {org = "ballerina", name = "jballerina.java"}, + {org = "ballerina", name = "lang.int"}, + {org = "ballerina", name = "log"} +] + +[[package]] +org = "ballerina" +name = "oauth2" +version = "2.14.0" +dependencies = [ + {org = "ballerina", name = "cache"}, + {org = "ballerina", name = "crypto"}, + {org = "ballerina", name = "jballerina.java"}, + {org = "ballerina", name = "log"}, + {org = "ballerina", name = "time"}, + {org = "ballerina", name = "url"} +] + [[package]] org = "ballerina" name = "observe" @@ -20,6 +261,57 @@ dependencies = [ {org = "ballerina", name = "jballerina.java"} ] +[[package]] +org = "ballerina" +name = "os" +version = "1.10.0" +dependencies = [ + {org = "ballerina", name = "io"}, + {org = "ballerina", name = "jballerina.java"} +] + +[[package]] +org = "ballerina" +name = "task" +version = "2.7.0" +dependencies = [ + {org = "ballerina", name = "jballerina.java"}, + {org = "ballerina", name = "time"} +] + +[[package]] +org = "ballerina" +name = "test" +version = "0.0.0" +scope = "testOnly" +dependencies = [ + {org = "ballerina", name = "jballerina.java"}, + {org = "ballerina", name = "lang.array"}, + {org = "ballerina", name = "lang.error"} +] +modules = [ + {org = "ballerina", packageName = "test", moduleName = "test"} +] + +[[package]] +org = "ballerina" +name = "time" +version = "2.7.0" +dependencies = [ + {org = "ballerina", name = "jballerina.java"} +] + +[[package]] +org = "ballerina" +name = "url" +version = "2.6.0" +dependencies = [ + {org = "ballerina", name = "jballerina.java"} +] +modules = [ + {org = "ballerina", packageName = "url", moduleName = "url"} +] + [[package]] org = "ballerinai" name = "observe" @@ -37,6 +329,11 @@ org = "ballerinax" name = "zoom.scheduler" version = "1.0.0" dependencies = [ + {org = "ballerina", name = "constraint"}, + {org = "ballerina", name = "data.jsondata"}, + {org = "ballerina", name = "http"}, + {org = "ballerina", name = "test"}, + {org = "ballerina", name = "url"}, {org = "ballerinai", name = "observe"} ] modules = [ From 2e84333b70aca3e4ac6cad030d340f0836f3d7ef Mon Sep 17 00:00:00 2001 From: linukaar Date: Thu, 12 Jun 2025 14:06:35 +0530 Subject: [PATCH 03/22] [Automated] Update the toml files --- ballerina/Dependencies.toml | 24 ------------------------ 1 file changed, 24 deletions(-) diff --git a/ballerina/Dependencies.toml b/ballerina/Dependencies.toml index 3581d1b..11fd1d0 100644 --- a/ballerina/Dependencies.toml +++ b/ballerina/Dependencies.toml @@ -161,15 +161,6 @@ dependencies = [ {org = "ballerina", name = "jballerina.java"} ] -[[package]] -org = "ballerina" -name = "lang.error" -version = "0.0.0" -scope = "testOnly" -dependencies = [ - {org = "ballerina", name = "jballerina.java"} -] - [[package]] org = "ballerina" name = "lang.int" @@ -279,20 +270,6 @@ dependencies = [ {org = "ballerina", name = "time"} ] -[[package]] -org = "ballerina" -name = "test" -version = "0.0.0" -scope = "testOnly" -dependencies = [ - {org = "ballerina", name = "jballerina.java"}, - {org = "ballerina", name = "lang.array"}, - {org = "ballerina", name = "lang.error"} -] -modules = [ - {org = "ballerina", packageName = "test", moduleName = "test"} -] - [[package]] org = "ballerina" name = "time" @@ -332,7 +309,6 @@ dependencies = [ {org = "ballerina", name = "constraint"}, {org = "ballerina", name = "data.jsondata"}, {org = "ballerina", name = "http"}, - {org = "ballerina", name = "test"}, {org = "ballerina", name = "url"}, {org = "ballerinai", name = "observe"} ] From 29e40a86e700c4af66bb1c7b2264cd2005116ed2 Mon Sep 17 00:00:00 2001 From: linukaar Date: Mon, 16 Jun 2025 10:38:27 +0530 Subject: [PATCH 04/22] add tests --- README.md | 10 +- ballerina/Dependencies.toml | 36 ++++ ballerina/tests/mock_service.bal | 341 +++++++++++++++++++++++++++++++ ballerina/tests/tests.bal | 181 ++++++++++++++++ 4 files changed, 567 insertions(+), 1 deletion(-) create mode 100644 ballerina/tests/mock_service.bal create mode 100644 ballerina/tests/tests.bal diff --git a/README.md b/README.md index 5d7f7b1..66d49e4 100644 --- a/README.md +++ b/README.md @@ -4,9 +4,17 @@ [![GitHub Last Commit](https://img.shields.io/github/last-commit/ballerina-platform/module-ballerinax-zoom.scheduler.svg)](https://github.com/ballerina-platform/module-ballerinax-zoom.scheduler/commits/master) [![GitHub Issues](https://img.shields.io/github/issues/ballerina-platform/ballerina-library/module/zoom.scheduler.svg?label=Open%20Issues)](https://github.com/ballerina-platform/ballerina-library/labels/module%zoom.scheduler) +[![Build](https://github.com/ballerina-platform/module-ballerinax-twitter/workflows/CI/badge.svg)](https://github.com/ballerina-platform/module-ballerinax-twitter/actions?query=workflow%3ACI) +[![codecov](https://codecov.io/gh/ballerina-platform/module-ballerinax-twitter/branch/main/graph/badge.svg)](https://codecov.io/gh/ballerina-platform/module-ballerinax-twitter) +[![License](https://img.shields.io/badge/License-Apache%202.0-blue.svg)](https://opensource.org/licenses/Apache-2.0) + + ## Overview -[//]: # (TODO: Add overview mentioning the purpose of the module, supported REST API versions, and other high-level details.) +[Zoom](https://www.zoom.com/) is a video communications platform that enables users to schedule, host, and join virtual meetings, webinars, and conferences. + +The `ballerinax/zoom-schedular` package offers APIs to connect ant interract with [Zoom](https://developers.zoom.us/docs/api/) endpoints. specifically based on [Zoom API v2]() + ## Setup guide diff --git a/ballerina/Dependencies.toml b/ballerina/Dependencies.toml index 11fd1d0..2a98f8e 100644 --- a/ballerina/Dependencies.toml +++ b/ballerina/Dependencies.toml @@ -161,6 +161,15 @@ dependencies = [ {org = "ballerina", name = "jballerina.java"} ] +[[package]] +org = "ballerina" +name = "lang.error" +version = "0.0.0" +scope = "testOnly" +dependencies = [ + {org = "ballerina", name = "jballerina.java"} +] + [[package]] org = "ballerina" name = "lang.int" @@ -219,6 +228,9 @@ dependencies = [ {org = "ballerina", name = "lang.value"}, {org = "ballerina", name = "observe"} ] +modules = [ + {org = "ballerina", packageName = "log", moduleName = "log"} +] [[package]] org = "ballerina" @@ -260,6 +272,9 @@ dependencies = [ {org = "ballerina", name = "io"}, {org = "ballerina", name = "jballerina.java"} ] +modules = [ + {org = "ballerina", packageName = "os", moduleName = "os"} +] [[package]] org = "ballerina" @@ -270,6 +285,20 @@ dependencies = [ {org = "ballerina", name = "time"} ] +[[package]] +org = "ballerina" +name = "test" +version = "0.0.0" +scope = "testOnly" +dependencies = [ + {org = "ballerina", name = "jballerina.java"}, + {org = "ballerina", name = "lang.array"}, + {org = "ballerina", name = "lang.error"} +] +modules = [ + {org = "ballerina", packageName = "test", moduleName = "test"} +] + [[package]] org = "ballerina" name = "time" @@ -277,6 +306,9 @@ version = "2.7.0" dependencies = [ {org = "ballerina", name = "jballerina.java"} ] +modules = [ + {org = "ballerina", packageName = "time", moduleName = "time"} +] [[package]] org = "ballerina" @@ -309,6 +341,10 @@ dependencies = [ {org = "ballerina", name = "constraint"}, {org = "ballerina", name = "data.jsondata"}, {org = "ballerina", name = "http"}, + {org = "ballerina", name = "log"}, + {org = "ballerina", name = "os"}, + {org = "ballerina", name = "test"}, + {org = "ballerina", name = "time"}, {org = "ballerina", name = "url"}, {org = "ballerinai", name = "observe"} ] diff --git a/ballerina/tests/mock_service.bal b/ballerina/tests/mock_service.bal new file mode 100644 index 0000000..2853732 --- /dev/null +++ b/ballerina/tests/mock_service.bal @@ -0,0 +1,341 @@ +// Copyright (c) 2025, WSO2 LLC. (http://www.wso2.com). +// +// WSO2 LLC. licenses this file to you under the Apache License, +// Version 2.0 (the "License"); you may not use this file except +// in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, +// software distributed under the License is distributed on an +// "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY +// KIND, either express or implied. See the License for the +// specific language governing permissions and limitations +// under the License. + +import ballerina/http; +import ballerina/log; + + +listener http:Listener httpListener = new (9091); + +http:Service mockService = service object { + + # Delete availability + # + # + availabilityId - The UUID of the availability schedule. + # + return - returns can be any of following types + # http:NoContent (If successful, this method returns an empty response body.) + # http:Response (The request has failed.) + resource function delete scheduler/availability/[string availabilityId]() returns http:Response { + return new http:Response(); + } + + # Delete scheduled events + # + # + eventId - The event ID + # + user_id - User ID query parameter + # + return - returns can be any of following types + # http:NoContent (If successful, this method returns an empty response body.) + # http:Response (The request has failed.) + resource function delete scheduler/events/[string eventId](string? user_id) returns http:Response { + return new http:Response(); + } + + # Delete schedules + # + # + scheduleId - The unique identifier of the schedule. + # + user_id - User ID query parameter + # + return - returns can be any of following types + # http:NoContent (If successful, this method returns an empty response body.) + # http:Response (The request has failed.) + resource function delete scheduler/schedules/[string scheduleId](string? user_id) returns http:Response { + return new http:Response(); + } + + # Report analytics + # + # + user_id - The specific user's web user ID + # + 'from - The lower bound for filtering + # + to - The upper bound for filtering + # + time_zone - The time zone in the response + # + return - returns can be any of following types + # http:Ok (If successful, this method returns the scheduler analytics.) + # http:Response (The request has failed.) + resource function get scheduler/analytics(string? user_id, string? 'from, string? to, string? time_zone) returns json|http:Response { + return { + "last_n_days": { + "scheduled_events_created": 10, + "scheduled_events_completed": 7, + "scheduled_events_canceled": 1, + "scheduled_events_rescheduled": 1, + "schedules_created": 5, + "schedules_canceled": 0, + "one_to_one": 3, + "one_to_many": 2, + "any_host_available": 5, + "all_host_available": 3, + "one_off_meeting": 1, + "meeting_poll": 0 + }, + "previous_period": { + "scheduled_events_created": 8, + "scheduled_events_completed": 6, + "scheduled_events_canceled": 0, + "scheduled_events_rescheduled": 2, + "schedules_created": 3, + "schedules_canceled": 1, + "one_to_one": 6, + "one_to_many": 2, + "any_host_available": 4, + "all_host_available": 2, + "one_off_meeting": 0, + "meeting_poll": 1 + } + }; + } + + # List availability + # + # + page_size - The maximum number of availability returned + # + next_page_token - The token that specifies which result page to return + # + user_id - The return of the specific user's availability + # + return - returns can be any of following types + # http:Ok (Successful availability of the schedule query result.) + # http:Response (The request has failed.) + resource function get scheduler/availability(int? page_size, string? next_page_token, string? user_id) returns json|http:Response { + return { + "items": [ + { + "owner": "test-owner@example.com", + "default": true, + "name": "Working Hours", + "availability_id": "avail-123", + "time_zone": "UTC" + } + ] + }; + } + + # Get availability + # + # + availabilityId - The UUID of the availability schedule. + # + return - returns can be any of following types + # http:Ok (If successful, this method returns an availability resource.) + # http:Response (The request has failed.) + resource function get scheduler/availability/[string availabilityId]() returns json|http:Response { + return { + "owner": "test-owner@example.com", + "default": true, + "name": "Working Hours", + "availability_id": availabilityId, + "time_zone": "UTC" + }; + } + + # List scheduled events + # + # + to - The upper bound for filtering + # + 'from - The lower bound for filtering + # + page_size - The maximum number of events returned + # + order_by - Order by field + # + time_zone - The time zone in the response + # + next_page_token - The token for pagination + # + show_deleted - Whether to include deleted events + # + event_type - Event type filter + # + user_id - The specific user's scheduled events + # + search - Search term + # + return - returns can be any of following types + # http:Ok (If successful, this method returns scheduled events.) + # http:Response (The request has failed.) + resource function get scheduler/events(string? to, string? 'from, int? page_size, string? order_by, string? time_zone, string? next_page_token, boolean? show_deleted, string? event_type, string? user_id, string? search) returns json|http:Response { + return { + "items": [ + { + "event_id": "event-123", + "summary": "Test Meeting", + "description": "A test meeting", + "start_date_time": "2024-06-15T10:00:00Z", + "end_date_time": "2024-06-15T11:00:00Z", + "status": "confirmed", + "schedule_id": "schedule-456" + } + ] + }; + } + + # Get scheduled events + # + # + eventId - The event ID + # + user_id - User ID query parameter + # + return - returns can be any of following types + # http:Ok (If successful, this method returns the scheduled event resource.) + # http:Response (The request has failed.) + resource function get scheduler/events/[string eventId](string? user_id) returns json|http:Response { + return { + "event_id": eventId, + "summary": "Test Meeting", + "description": "A test meeting", + "start_date_time": "2024-06-15T10:00:00Z", + "end_date_time": "2024-06-15T11:00:00Z", + "status": "confirmed", + "schedule_id": "schedule-456" + }; + } + + # List schedules + # + # + to - The upper bound for filtering + # + 'from - The lower bound for filtering + # + page_size - The maximum number of schedule results returned + # + next_page_token - The token for pagination + # + show_deleted - Whether to include deleted schedules + # + time_zone - The time zone in the response + # + user_id - The specific user's schedules + # + return - returns can be any of following types + # http:Ok (If successful, this method returns schedules.) + # http:Response (The request has failed.) + resource function get scheduler/schedules(string? to, string? 'from, int? page_size, string? next_page_token, boolean? show_deleted, string? time_zone, string? user_id) returns json|http:Response { + return { + "items": [ + { + "schedule_id": "schedule-456", + "summary": "Test Schedule", + "description": "A test schedule", + "duration": 30, + "capacity": 1, + "active": true, + "status": "confirmed", + "availability_override": false + } + ] + }; + } + + # Get schedules + # + # + scheduleId - The schedule's unique identifier. + # + user_id - User ID query parameter + # + return - returns can be any of following types + # http:Ok (If successful, this method returns a schedule resource.) + # http:Response (The request has failed.) + resource function get scheduler/schedules/[string scheduleId](string? user_id) returns json|http:Response { + return { + "schedule_id": scheduleId, + "summary": "Test Schedule", + "description": "A test schedule", + "duration": 30, + "capacity": 1, + "active": true, + "status": "confirmed", + "availability_override": false + }; + } + + # Get user + # + # + userId - The user ID + # + return - returns can be any of following types + # http:Ok (If successful, this method returns user information.) + # http:Response (The request has failed.) + resource function get scheduler/users/[string userId]() returns json|http:Response { + return { + "display_name": "Test User", + "scheduling_url": "https://scheduler.zoom.us/test-user", + "time_zone": "UTC", + "slug": "test-user" + }; + } + + # Patch availability + # + # + availabilityId - The UUID of the availability schedule. + # + return - returns can be any of following types + # http:NoContent (If successful, this method returns an empty response body.) + # http:Response (The request has failed.) + resource function patch scheduler/availability/[string availabilityId](@http:Payload json payload) returns http:Response { + return new http:Response(); + } + + # Patch scheduled events + # + # + eventId - The opaque identifier of the scheduled event. + # + user_id - User ID query parameter + # + return - returns can be any of following types + # http:NoContent (If successful, this method returns an event resource.) + # http:Response (The request has failed.) + resource function patch scheduler/events/[string eventId](@http:Payload json payload, string? user_id) returns http:Response { + return new http:Response(); + } + + # Patch schedules + # + # + scheduleId - The schedule's unique identifier. + # + user_id - User ID query parameter + # + return - returns can be any of following types + # http:NoContent (If successful, this method returns an empty response body.) + # http:Response (The request has failed.) + resource function patch scheduler/schedules/[string scheduleId](@http:Payload json payload, string? user_id) returns http:Response { + return new http:Response(); + } + + # Insert availability + # + # + return - returns can be any of following types + # http:Created (If successful, this method returns an availability resource.) + # http:Response (The request has failed.) + resource function post scheduler/availability(@http:Payload json payload) returns json|http:Response { + return { + "owner": "test-owner@example.com", + "default": true, + "name": "New Working Hours", + "availability_id": "avail-new-123", + "time_zone": "UTC" + }; + } + + # Insert schedules + # + # + user_id - User ID query parameter + # + return - returns can be any of following types + # http:Created (If successful, this method returns a schedule resource.) + # http:Response (The request has failed.) + resource function post scheduler/schedules(@http:Payload json payload, string? user_id) returns json|http:Response { + json schedulePayload = payload; + return { + "schedule_id": "schedule-new-789", + "summary": schedulePayload is map && schedulePayload.hasKey("summary") ? schedulePayload["summary"] : "Default Summary", + "description": schedulePayload is map && schedulePayload.hasKey("description") ? schedulePayload["description"] : "Default description", + "duration": schedulePayload is map && schedulePayload.hasKey("duration") ? schedulePayload["duration"] : 30, + "capacity": schedulePayload is map && schedulePayload.hasKey("capacity") ? schedulePayload["capacity"] : 1, + "active": schedulePayload is map && schedulePayload.hasKey("active") ? schedulePayload["active"] : true, + "availability_override": schedulePayload is map && schedulePayload.hasKey("availabilityOverride") ? schedulePayload["availabilityOverride"] : false, + "status": "confirmed" + }; + } + + # Single use link + # + # + return - returns can be any of following types + # http:Created (If successful, this method returns a scheduling link URL.) + # http:Response (The request has failed.) + resource function post scheduler/schedules/single_use_link(@http:Payload json payload) returns json|http:Response { + json schedulePayload = payload; + string scheduleId = schedulePayload is map && schedulePayload.hasKey("schedule_id") && schedulePayload["schedule_id"] is string + ? schedulePayload["schedule_id"] : "default-id"; + return { + "scheduling_url": "https://scheduler.zoom.us/single-use/" + scheduleId + }; + } +}; + +function init() returns error? { + if isLiveServer { + log:printInfo("Skipping mock server initialization as the tests are running on live server"); + return; + } + log:printInfo("Initiating mock server"); + check httpListener.attach(mockService, "/"); + check httpListener.'start(); +} \ No newline at end of file diff --git a/ballerina/tests/tests.bal b/ballerina/tests/tests.bal new file mode 100644 index 0000000..8786537 --- /dev/null +++ b/ballerina/tests/tests.bal @@ -0,0 +1,181 @@ +// Copyright (c) 2025, WSO2 LLC. (http://www.wso2.com). +// +// WSO2 LLC. licenses this file to you under the Apache License, +// Version 2.0 (the "License"); you may not use this file except +// in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, +// software distributed under the License is distributed on an +// "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY +// KIND, either express or implied. See the License for the +// specific language governing permissions and limitations +// under the License. + +import ballerina/os; +import ballerina/test; +import ballerina/time; + +configurable boolean isLiveServer = os:getEnv("IS_LIVE_SERVER") == "true"; +configurable string userId = isLiveServer ? os:getEnv("ZOOM_USER_ID") : "test"; +configurable string token = isLiveServer ? os:getEnv("ZOOM_TOKEN") : "test"; +configurable string serviceUrl = isLiveServer ? "https://api.zoom.us/v2" : "http://localhost:9091"; + +ConnectionConfig config = { + auth: { + Authorization: "Bearer " + token + } +}; +final Client zoomClient = check new Client(config, serviceUrl); + +final string testUserId = "test-user-123"; +final string testScheduleId = "test-schedule-456"; + +@test:Config { + groups: ["live_tests", "mock_tests"] +} +isolated function testGetSchedulerAnalytics() returns error? { + map headers = {}; + + InlineResponse200 response = check zoomClient->/scheduler/analytics.get(headers, + userId = userId + ); + test:assertTrue(response.lastNDays !is ()); +} + +@test:Config { + groups: ["live_tests", "mock_tests"] +} +isolated function testGetSchedulerAvailability() returns error? { + map headers = {}; + + InlineResponse2001 response = check zoomClient->/scheduler/availability.get(headers, + userId = userId + ); + test:assertTrue(response.items !is ()); +} + +@test:Config { + groups: ["live_tests", "mock_tests"] +} +isolated function testGetSchedulerUser() returns error? { + map headers = {}; + + InlineResponse2007 response = check zoomClient->/scheduler/users/[testUserId].get(headers); + test:assertTrue(response.displayName !is ()); +} + +@test:Config { + groups: ["live_tests", "mock_tests"] +} +isolated function testCreateSchedule() returns error? { + time:Utc utc = time:utcNow(); + string scheduleSummary = "Test Schedule at " + utc.toString(); + + SchedulerSchedulesBody schedulePayload = { + summary: scheduleSummary, + duration: 30, + capacity: 1, + availabilityRules: [ + { + email: "test@example.com", + timeZone: "UTC" + } + ], + availabilityOverride: false + }; + + map headers = {}; + + InlineResponse2011 response = check zoomClient->/scheduler/schedules.post(schedulePayload, headers, + userId = userId + ); + test:assertTrue(response.scheduleId !is ()); +} + +@test:Config { + groups: ["live_tests", "mock_tests"] +} +isolated function testGetSchedule() returns error? { + map headers = {}; + + InlineResponse2006 response = check zoomClient->/scheduler/schedules/[testScheduleId].get(headers, + userId = userId + ); + test:assertTrue(response.summary !is ()); +} + +@test:Config { + groups: ["live_tests", "mock_tests"] +} +isolated function testListSchedules() returns error? { + map headers = {}; + + InlineResponse2005 response = check zoomClient->/scheduler/schedules.get(headers, + userId = userId, + pageSize = 10 + ); + test:assertTrue(response.items !is ()); +} + +@test:Config { + groups: ["live_tests", "mock_tests"] +} +isolated function testGetSchedulerAnalyticsWithDateRange() returns error? { + map headers = {}; + + InlineResponse200 response = check zoomClient->/scheduler/analytics.get(headers, + userId = userId, + 'from = "2024-01-01", + to = "2024-12-31" + ); + test:assertTrue(response.lastNDays !is ()); +} + +@test:Config { + groups: ["live_tests", "mock_tests"] +} +isolated function testListSchedulesWithPagination() returns error? { + map headers = {}; + + InlineResponse2005 response = check zoomClient->/scheduler/schedules.get(headers, + userId = userId, + pageSize = 5, + nextPageToken = "test-token" + ); + test:assertTrue(response.items !is ()); +} + +@test:Config { + groups: ["live_tests", "mock_tests"] +} +isolated function testCreateScheduleWithComplexRules() returns error? { + time:Utc utc = time:utcNow(); + string scheduleSummary = "Complex Schedule at " + utc.toString(); + + SchedulerSchedulesBody schedulePayload = { + summary: scheduleSummary, + duration: 60, + capacity: 5, + availabilityRules: [ + { + email: "user1@example.com", + timeZone: "UTC" + }, + { + email: "user2@example.com", + timeZone: "America/Los_Angeles" + } + ], + availabilityOverride: true + }; + + map headers = {}; + + InlineResponse2011 response = check zoomClient->/scheduler/schedules.post(schedulePayload, headers, + userId = userId + ); + test:assertTrue(response.scheduleId !is ()); +} \ No newline at end of file From 5eede35bf490748a3be0145d1f036d1bd5f15f5e Mon Sep 17 00:00:00 2001 From: linukaar Date: Thu, 19 Jun 2025 15:10:12 +0530 Subject: [PATCH 05/22] Regenarate files for updated bal version --- ballerina/client.bal | 282 +++++++--------- ballerina/types.bal | 679 +++++++++++++++++++++++-------------- docs/spec/openapi.json | 749 +++++++++++++++++++++-------------------- gradle.properties | 2 +- 4 files changed, 936 insertions(+), 776 deletions(-) diff --git a/ballerina/client.bal b/ballerina/client.bal index 7967489..e9c118a 100644 --- a/ballerina/client.bal +++ b/ballerina/client.bal @@ -1,6 +1,7 @@ // AUTO-GENERATED FILE. DO NOT MODIFY. // This file is auto-generated by the Ballerina OpenAPI tool. +import ballerina/data.jsondata; import ballerina/http; # The Scheduler APIs let you programmatically interact with [Zoom Scheduler](https://developers.zoom.us/docs/zoom-scheduler/) features. They allow you to schedule, manage, and retrieve details about meetings, webinars, and other events on the Zoom platform. With powerful tools for integration, these APIs streamline event management and automate workflows in external applications. @@ -12,133 +13,114 @@ public isolated client class Client { # + config - The configurations to be used when initializing the `connector` # + serviceUrl - URL of the target service # + return - An error if connector initialization failed - public isolated function init(ConnectionConfig config, string serviceUrl = "https://api.zoom.us/v2") returns error? { - http:ClientConfiguration httpClientConfig = {httpVersion: config.httpVersion, timeout: config.timeout, forwarded: config.forwarded, poolConfig: config.poolConfig, compression: config.compression, circuitBreaker: config.circuitBreaker, retryConfig: config.retryConfig, validation: config.validation}; - do { - if config.http1Settings is ClientHttp1Settings { - ClientHttp1Settings settings = check config.http1Settings.ensureType(ClientHttp1Settings); - httpClientConfig.http1Settings = {...settings}; - } - if config.http2Settings is http:ClientHttp2Settings { - httpClientConfig.http2Settings = check config.http2Settings.ensureType(http:ClientHttp2Settings); - } - if config.cache is http:CacheConfig { - httpClientConfig.cache = check config.cache.ensureType(http:CacheConfig); - } - if config.responseLimits is http:ResponseLimitConfigs { - httpClientConfig.responseLimits = check config.responseLimits.ensureType(http:ResponseLimitConfigs); - } - if config.secureSocket is http:ClientSecureSocket { - httpClientConfig.secureSocket = check config.secureSocket.ensureType(http:ClientSecureSocket); - } - if config.proxy is http:ProxyConfig { - httpClientConfig.proxy = check config.proxy.ensureType(http:ProxyConfig); - } - } + public isolated function init(ConnectionConfig config, string serviceUrl = "https://api.zoom.us/v2/scheduler") returns error? { + http:ClientConfiguration httpClientConfig = {httpVersion: config.httpVersion, http1Settings: config.http1Settings, http2Settings: config.http2Settings, timeout: config.timeout, forwarded: config.forwarded, followRedirects: config.followRedirects, poolConfig: config.poolConfig, cache: config.cache, compression: config.compression, circuitBreaker: config.circuitBreaker, retryConfig: config.retryConfig, cookieConfig: config.cookieConfig, responseLimits: config.responseLimits, secureSocket: config.secureSocket, proxy: config.proxy, socketConfig: config.socketConfig, validation: config.validation, laxDataBinding: config.laxDataBinding}; if config.auth is ApiKeysConfig { self.apiKeyConfig = (config.auth).cloneReadOnly(); } else { httpClientConfig.auth = config.auth; self.apiKeyConfig = (); } - http:Client httpEp = check new (serviceUrl, httpClientConfig); - self.clientEp = httpEp; - return; + self.clientEp = check new (serviceUrl, httpClientConfig); } - # Delete availability + # Report analytics # - # + availabilityId - The UUID of the availability schedule. # + headers - Headers to be sent with the request - # + return - If successful, this method returns an empty response body. - resource isolated function delete scheduler/availability/[string availabilityId](map headers = {}) returns http:Response|error { - string resourcePath = string `/scheduler/availability/${getEncodedUri(availabilityId)}`; + # + queries - Queries to be sent with the request + # + return - If successful, this method returns the scheduler analytics or the user ID or account ID provided + resource isolated function get analytics(map headers = {}, *ReportAnalyticsQueries queries) returns InlineResponse200|error { + string resourcePath = string `/analytics`; map headerValues = {...headers}; if self.apiKeyConfig is ApiKeysConfig { - headerValues["Authorization"] = self.apiKeyConfig?.Authorization; + headerValues["Authorization"] = self.apiKeyConfig?.authorization; } + resourcePath = resourcePath + check getPathForQueryParam(queries); map httpHeaders = http:getHeaderMap(headerValues); - return self.clientEp->delete(resourcePath, headers = httpHeaders); + return self.clientEp->get(resourcePath, httpHeaders); } - # Delete scheduled events + # List availability # # + headers - Headers to be sent with the request # + queries - Queries to be sent with the request - # + return - If successful, this method returns an empty response body. - resource isolated function delete scheduler/events/[string eventId](map headers = {}, *DeleteScheduledEventsQueries queries) returns http:Response|error { - string resourcePath = string `/scheduler/events/${getEncodedUri(eventId)}`; + # + return - Successful availability of the schedule query result of given user + resource isolated function get availability(map headers = {}, *ListAvailabilityQueries queries) returns InlineResponse2001|error { + string resourcePath = string `/availability`; map headerValues = {...headers}; if self.apiKeyConfig is ApiKeysConfig { - headerValues["Authorization"] = self.apiKeyConfig?.Authorization; + headerValues["Authorization"] = self.apiKeyConfig?.authorization; } resourcePath = resourcePath + check getPathForQueryParam(queries); map httpHeaders = http:getHeaderMap(headerValues); - return self.clientEp->delete(resourcePath, headers = httpHeaders); + return self.clientEp->get(resourcePath, httpHeaders); } - # Delete schedules + # Insert availability # - # + scheduleId - The unique identifier of the schedule. # + headers - Headers to be sent with the request - # + queries - Queries to be sent with the request - # + return - If successful, this method returns an empty response body. - resource isolated function delete scheduler/schedules/[string scheduleId](map headers = {}, *DeleteSchedulesQueries queries) returns http:Response|error { - string resourcePath = string `/scheduler/schedules/${getEncodedUri(scheduleId)}`; + # + payload - In the request body, it supplies an availability resource properties + # + return - If successful, this method returns a availability resource in the response body + resource isolated function post availability(SchedulerAvailabilityBody payload, map headers = {}) returns InlineResponse201|error { + string resourcePath = string `/availability`; map headerValues = {...headers}; if self.apiKeyConfig is ApiKeysConfig { - headerValues["Authorization"] = self.apiKeyConfig?.Authorization; + headerValues["Authorization"] = self.apiKeyConfig?.authorization; } - resourcePath = resourcePath + check getPathForQueryParam(queries); map httpHeaders = http:getHeaderMap(headerValues); - return self.clientEp->delete(resourcePath, headers = httpHeaders); + http:Request request = new; + json jsonBody = jsondata:toJson(payload); + request.setPayload(jsonBody, "application/json"); + return self.clientEp->post(resourcePath, request, httpHeaders); } - # Report analytics + # Get availability # + # + availabilityId - The UUID of the availability schedule # + headers - Headers to be sent with the request - # + queries - Queries to be sent with the request - # + return - If successful, this method returns the scheduler analytics or the user ID or account ID provided. - resource isolated function get scheduler/analytics(map headers = {}, *ReportAnalyticsQueries queries) returns InlineResponse200|error { - string resourcePath = string `/scheduler/analytics`; + # + return - If successful, this method returns an availability resource in the response body + resource isolated function get availability/[string availabilityId](map headers = {}) returns InlineResponse2002|error { + string resourcePath = string `/availability/${getEncodedUri(availabilityId)}`; map headerValues = {...headers}; if self.apiKeyConfig is ApiKeysConfig { - headerValues["Authorization"] = self.apiKeyConfig?.Authorization; + headerValues["Authorization"] = self.apiKeyConfig?.authorization; } - resourcePath = resourcePath + check getPathForQueryParam(queries); map httpHeaders = http:getHeaderMap(headerValues); return self.clientEp->get(resourcePath, httpHeaders); } - # List availability + # Delete availability # + # + availabilityId - The UUID of the availability schedule # + headers - Headers to be sent with the request - # + queries - Queries to be sent with the request - # + return - Successful availability of the schedule query result of given user. - resource isolated function get scheduler/availability(map headers = {}, *ListAvailabilityQueries queries) returns InlineResponse2001|error { - string resourcePath = string `/scheduler/availability`; + # + return - If successful, this method returns an empty response body + resource isolated function delete availability/[string availabilityId](map headers = {}) returns error? { + string resourcePath = string `/availability/${getEncodedUri(availabilityId)}`; map headerValues = {...headers}; if self.apiKeyConfig is ApiKeysConfig { - headerValues["Authorization"] = self.apiKeyConfig?.Authorization; + headerValues["Authorization"] = self.apiKeyConfig?.authorization; } - resourcePath = resourcePath + check getPathForQueryParam(queries); map httpHeaders = http:getHeaderMap(headerValues); - return self.clientEp->get(resourcePath, httpHeaders); + return self.clientEp->delete(resourcePath, headers = httpHeaders); } - # Get availability + # Patch availability # - # + availabilityId - The UUID of the availability schedule. + # + availabilityId - The UUID of the availability schedule # + headers - Headers to be sent with the request - # + return - If successful, this method returns an availability resource in the response body. - resource isolated function get scheduler/availability/[string availabilityId](map headers = {}) returns InlineResponse2002|error { - string resourcePath = string `/scheduler/availability/${getEncodedUri(availabilityId)}`; + # + payload - In the request body, supply availability resource properties + # + return - If successful, this method returns an empty response body + resource isolated function patch availability/[string availabilityId](AvailabilityavailabilityIdBody payload, map headers = {}) returns error? { + string resourcePath = string `/availability/${getEncodedUri(availabilityId)}`; map headerValues = {...headers}; if self.apiKeyConfig is ApiKeysConfig { - headerValues["Authorization"] = self.apiKeyConfig?.Authorization; + headerValues["Authorization"] = self.apiKeyConfig?.authorization; } map httpHeaders = http:getHeaderMap(headerValues); - return self.clientEp->get(resourcePath, httpHeaders); + http:Request request = new; + json jsonBody = jsondata:toJson(payload); + request.setPayload(jsonBody, "application/json"); + return self.clientEp->patch(resourcePath, request, httpHeaders); } # List scheduled events @@ -146,11 +128,11 @@ public isolated client class Client { # + headers - Headers to be sent with the request # + queries - Queries to be sent with the request # + return - If successful, this method returns a response body with the following structure: - resource isolated function get scheduler/events(map headers = {}, *ListScheduledEventsQueries queries) returns InlineResponse2003|error { - string resourcePath = string `/scheduler/events`; + resource isolated function get events(map headers = {}, *ListScheduledEventsQueries queries) returns InlineResponse2003|error { + string resourcePath = string `/events`; map headerValues = {...headers}; if self.apiKeyConfig is ApiKeysConfig { - headerValues["Authorization"] = self.apiKeyConfig?.Authorization; + headerValues["Authorization"] = self.apiKeyConfig?.authorization; } resourcePath = resourcePath + check getPathForQueryParam(queries); map httpHeaders = http:getHeaderMap(headerValues); @@ -161,178 +143,174 @@ public isolated client class Client { # # + headers - Headers to be sent with the request # + queries - Queries to be sent with the request - # + return - If successful, this method returns the scheduled event resource in the response body. - resource isolated function get scheduler/events/[string eventId](map headers = {}, *GetScheduledEventsQueries queries) returns InlineResponse2004|error { - string resourcePath = string `/scheduler/events/${getEncodedUri(eventId)}`; + # + return - If successful, this method returns the scheduled event resource in the response body + resource isolated function get events/[string eventId](map headers = {}, *GetScheduledEventsQueries queries) returns InlineResponse2004|error { + string resourcePath = string `/events/${getEncodedUri(eventId)}`; map headerValues = {...headers}; if self.apiKeyConfig is ApiKeysConfig { - headerValues["Authorization"] = self.apiKeyConfig?.Authorization; + headerValues["Authorization"] = self.apiKeyConfig?.authorization; } resourcePath = resourcePath + check getPathForQueryParam(queries); map httpHeaders = http:getHeaderMap(headerValues); return self.clientEp->get(resourcePath, httpHeaders); } - # List schedules + # Delete scheduled events # # + headers - Headers to be sent with the request # + queries - Queries to be sent with the request - # + return - If successful, this method returns a response body with this structure. - resource isolated function get scheduler/schedules(map headers = {}, *ListSchedulesQueries queries) returns InlineResponse2005|error { - string resourcePath = string `/scheduler/schedules`; + # + return - If successful, this method returns an empty response body + resource isolated function delete events/[string eventId](map headers = {}, *DeleteScheduledEventsQueries queries) returns error? { + string resourcePath = string `/events/${getEncodedUri(eventId)}`; map headerValues = {...headers}; if self.apiKeyConfig is ApiKeysConfig { - headerValues["Authorization"] = self.apiKeyConfig?.Authorization; + headerValues["Authorization"] = self.apiKeyConfig?.authorization; } resourcePath = resourcePath + check getPathForQueryParam(queries); map httpHeaders = http:getHeaderMap(headerValues); - return self.clientEp->get(resourcePath, httpHeaders); + return self.clientEp->delete(resourcePath, headers = httpHeaders); } - # Get schedules + # Patch scheduled events # - # + scheduleId - The schedule's unique identifier. + # + eventId - The opaque identifier of the scheduled event # + headers - Headers to be sent with the request # + queries - Queries to be sent with the request - # + return - If successful, this method returns an schedule resource in the response body. - resource isolated function get scheduler/schedules/[string scheduleId](map headers = {}, *GetScheduleQueries queries) returns InlineResponse2006|error { - string resourcePath = string `/scheduler/schedules/${getEncodedUri(scheduleId)}`; + # + payload - In the request body, it supplies the relevant portions of event resource + # + return - If successful, this method returns an event resource in the response body + resource isolated function patch events/[string eventId](EventseventIdBody payload, map headers = {}, *PatchScheduledEventsQueries queries) returns error? { + string resourcePath = string `/events/${getEncodedUri(eventId)}`; map headerValues = {...headers}; if self.apiKeyConfig is ApiKeysConfig { - headerValues["Authorization"] = self.apiKeyConfig?.Authorization; + headerValues["Authorization"] = self.apiKeyConfig?.authorization; } resourcePath = resourcePath + check getPathForQueryParam(queries); map httpHeaders = http:getHeaderMap(headerValues); - return self.clientEp->get(resourcePath, httpHeaders); + http:Request request = new; + json jsonBody = jsondata:toJson(payload); + request.setPayload(jsonBody, "application/json"); + return self.clientEp->patch(resourcePath, request, httpHeaders); } - # Get user + # List schedules # # + headers - Headers to be sent with the request - # + return - If successful, this method returns user information in the response body. - resource isolated function get scheduler/users/[string userId](map headers = {}) returns InlineResponse2007|error { - string resourcePath = string `/scheduler/users/${getEncodedUri(userId)}`; + # + queries - Queries to be sent with the request + # + return - If successful, this method returns a response body with this structure + resource isolated function get schedules(map headers = {}, *ListSchedulesQueries queries) returns InlineResponse2005|error { + string resourcePath = string `/schedules`; map headerValues = {...headers}; if self.apiKeyConfig is ApiKeysConfig { - headerValues["Authorization"] = self.apiKeyConfig?.Authorization; + headerValues["Authorization"] = self.apiKeyConfig?.authorization; } + resourcePath = resourcePath + check getPathForQueryParam(queries); map httpHeaders = http:getHeaderMap(headerValues); return self.clientEp->get(resourcePath, httpHeaders); } - # Patch availability + # Insert schedules # - # + availabilityId - The UUID of the availability schedule. # + headers - Headers to be sent with the request - # + payload - In the request body, supply availability resource properties. - # + return - If successful, this method returns an empty response body. - resource isolated function patch scheduler/availability/[string availabilityId](AvailabilityavailabilityIdBody payload, map headers = {}) returns http:Response|error { - string resourcePath = string `/scheduler/availability/${getEncodedUri(availabilityId)}`; + # + queries - Queries to be sent with the request + # + payload - In the request body, it supplies the schedule resource properties + # + return - If successful, this method returns an schedule resource in the response body + resource isolated function post schedules(SchedulerSchedulesBody payload, map headers = {}, *InsertScheduleQueries queries) returns InlineResponse2011|error { + string resourcePath = string `/schedules`; map headerValues = {...headers}; if self.apiKeyConfig is ApiKeysConfig { - headerValues["Authorization"] = self.apiKeyConfig?.Authorization; + headerValues["Authorization"] = self.apiKeyConfig?.authorization; } + resourcePath = resourcePath + check getPathForQueryParam(queries); map httpHeaders = http:getHeaderMap(headerValues); http:Request request = new; - json jsonBody = payload.toJson(); + json jsonBody = jsondata:toJson(payload); request.setPayload(jsonBody, "application/json"); - return self.clientEp->patch(resourcePath, request, httpHeaders); + return self.clientEp->post(resourcePath, request, httpHeaders); } - # Patch scheduled events + # Get schedules # - # + eventId - The opaque identifier of the scheduled event. + # + scheduleId - The schedule's unique identifier # + headers - Headers to be sent with the request # + queries - Queries to be sent with the request - # + payload - In the request body, it supplies the relevant portions of event resource. - # + return - If successful, this method returns an event resource in the response body. - resource isolated function patch scheduler/events/[string eventId](EventseventIdBody payload, map headers = {}, *PatchScheduledEventsQueries queries) returns http:Response|error { - string resourcePath = string `/scheduler/events/${getEncodedUri(eventId)}`; + # + return - If successful, this method returns an schedule resource in the response body + resource isolated function get schedules/[string scheduleId](map headers = {}, *GetScheduleQueries queries) returns InlineResponse2006|error { + string resourcePath = string `/schedules/${getEncodedUri(scheduleId)}`; map headerValues = {...headers}; if self.apiKeyConfig is ApiKeysConfig { - headerValues["Authorization"] = self.apiKeyConfig?.Authorization; + headerValues["Authorization"] = self.apiKeyConfig?.authorization; } resourcePath = resourcePath + check getPathForQueryParam(queries); map httpHeaders = http:getHeaderMap(headerValues); - http:Request request = new; - json jsonBody = payload.toJson(); - request.setPayload(jsonBody, "application/json"); - return self.clientEp->patch(resourcePath, request, httpHeaders); + return self.clientEp->get(resourcePath, httpHeaders); } - # Patch schedules + # Delete schedules # - # + scheduleId - The schedule's unique identifier. + # + scheduleId - The unique identifier of the schedule # + headers - Headers to be sent with the request # + queries - Queries to be sent with the request - # + payload - In the request body, it supplies the relevant portions of a schedule resource, according to the rules of patch semantics. - # + return - If successful, this method returns an empty response body. - resource isolated function patch scheduler/schedules/[string scheduleId](SchedulesscheduleIdBody payload, map headers = {}, *PatchScheduleQueries queries) returns http:Response|error { - string resourcePath = string `/scheduler/schedules/${getEncodedUri(scheduleId)}`; + # + return - If successful, this method returns an empty response body + resource isolated function delete schedules/[string scheduleId](map headers = {}, *DeleteSchedulesQueries queries) returns error? { + string resourcePath = string `/schedules/${getEncodedUri(scheduleId)}`; map headerValues = {...headers}; if self.apiKeyConfig is ApiKeysConfig { - headerValues["Authorization"] = self.apiKeyConfig?.Authorization; + headerValues["Authorization"] = self.apiKeyConfig?.authorization; } resourcePath = resourcePath + check getPathForQueryParam(queries); map httpHeaders = http:getHeaderMap(headerValues); - http:Request request = new; - json jsonBody = payload.toJson(); - request.setPayload(jsonBody, "application/json"); - return self.clientEp->patch(resourcePath, request, httpHeaders); + return self.clientEp->delete(resourcePath, headers = httpHeaders); } - # Insert availability + # Patch schedules # + # + scheduleId - The schedule's unique identifier # + headers - Headers to be sent with the request - # + payload - In the request body, it supplies an availability resource properties. - # + return - If successful, this method returns a availability resource in the response body. - resource isolated function post scheduler/availability(SchedulerAvailabilityBody payload, map headers = {}) returns InlineResponse201|error { - string resourcePath = string `/scheduler/availability`; + # + queries - Queries to be sent with the request + # + payload - In the request body, it supplies the relevant portions of a schedule resource, according to the rules of patch semantics + # + return - If successful, this method returns an empty response body + resource isolated function patch schedules/[string scheduleId](SchedulesscheduleIdBody payload, map headers = {}, *PatchScheduleQueries queries) returns error? { + string resourcePath = string `/schedules/${getEncodedUri(scheduleId)}`; map headerValues = {...headers}; if self.apiKeyConfig is ApiKeysConfig { - headerValues["Authorization"] = self.apiKeyConfig?.Authorization; + headerValues["Authorization"] = self.apiKeyConfig?.authorization; } + resourcePath = resourcePath + check getPathForQueryParam(queries); map httpHeaders = http:getHeaderMap(headerValues); http:Request request = new; - json jsonBody = payload.toJson(); + json jsonBody = jsondata:toJson(payload); request.setPayload(jsonBody, "application/json"); - return self.clientEp->post(resourcePath, request, httpHeaders); + return self.clientEp->patch(resourcePath, request, httpHeaders); } - # Insert schedules + # Single use link # # + headers - Headers to be sent with the request - # + queries - Queries to be sent with the request - # + payload - In the request body, it supplies the schedule resource properties. - # + return - If successful, this method returns an schedule resource in the response body. - resource isolated function post scheduler/schedules(SchedulerSchedulesBody payload, map headers = {}, *InsertScheduleQueries queries) returns InlineResponse2011|error { - string resourcePath = string `/scheduler/schedules`; + # + return - If successful, this method returns a scheduling link URL in the response body + resource isolated function post schedules/single_use_link(SchedulesSingleUseLinkBody payload, map headers = {}) returns InlineResponse2012|error { + string resourcePath = string `/schedules/single_use_link`; map headerValues = {...headers}; if self.apiKeyConfig is ApiKeysConfig { - headerValues["Authorization"] = self.apiKeyConfig?.Authorization; + headerValues["Authorization"] = self.apiKeyConfig?.authorization; } - resourcePath = resourcePath + check getPathForQueryParam(queries); map httpHeaders = http:getHeaderMap(headerValues); http:Request request = new; - json jsonBody = payload.toJson(); + json jsonBody = jsondata:toJson(payload); request.setPayload(jsonBody, "application/json"); return self.clientEp->post(resourcePath, request, httpHeaders); } - # Single use link + # Get user # # + headers - Headers to be sent with the request - # + return - If successful, this method returns a scheduling link URL in the response body. - resource isolated function post scheduler/schedules/single_use_link(SchedulesSingleUseLinkBody payload, map headers = {}) returns InlineResponse2012|error { - string resourcePath = string `/scheduler/schedules/single_use_link`; + # + return - If successful, this method returns user information in the response body + resource isolated function get users/[string userId](map headers = {}) returns InlineResponse2007|error { + string resourcePath = string `/users/${getEncodedUri(userId)}`; map headerValues = {...headers}; if self.apiKeyConfig is ApiKeysConfig { - headerValues["Authorization"] = self.apiKeyConfig?.Authorization; + headerValues["Authorization"] = self.apiKeyConfig?.authorization; } map httpHeaders = http:getHeaderMap(headerValues); - http:Request request = new; - json jsonBody = payload.toJson(); - request.setPayload(jsonBody, "application/json"); - return self.clientEp->post(resourcePath, request, httpHeaders); + return self.clientEp->get(resourcePath, httpHeaders); } } diff --git a/ballerina/types.bal b/ballerina/types.bal index 8cc5f9f..7024e85 100644 --- a/ballerina/types.bal +++ b/ballerina/types.bal @@ -5,7 +5,7 @@ import ballerina/constraint; import ballerina/data.jsondata; import ballerina/http; -# The week of available time rule. +# The week of available time rule public type InlineResponse2006SegmentsRecurrence record { # Thursday ScheduleravailabilitySegmentsRecurrenceSun[] thu?; @@ -23,209 +23,246 @@ public type InlineResponse2006SegmentsRecurrence record { ScheduleravailabilitySegmentsRecurrenceSun[] mon?; }; -# The creator of the schedule. The field is read-only. -public type InlineResponse2011Creator record { - # This field indicates if you created the schedule. The field is read-only. - boolean self?; - @jsondata:Name {value: "display_name"} - string displayName?; - # This field indicates the creator's email address. - string email?; -}; - -# The availability schedule set by the user. +# The availability schedule set by the user public type SchedulerAvailabilityBody record { - # the owner's ID. + # the owner's ID string owner?; - # The default availability schedule in use. + # The default availability schedule in use boolean default?; - # The name of this availability schedule. + # The name of this availability schedule @constraint:String {minLength: 1} string name; + # The unique ID of availability @jsondata:Name {value: "availability_id"} string availabilityId?; @jsondata:Name {value: "segments_recurrence"} ScheduleravailabilitySegmentsRecurrence segmentsRecurrence?; + # The timezone for which this availability schedule originates @jsondata:Name {value: "time_zone"} string timeZone; - # The date on which the rule needs to be applied outside of the availability rule. + # The date on which the rule needs to be applied outside of the availability rule ScheduleravailabilitySegments[] segments?; }; +# The creator of the schedule. The field is read-only +public type InlineResponse2011Creator record { + # This field indicates if you created the schedule. The field is read-only + boolean self?; + # This field indicates the creator of the display name + @jsondata:Name {value: "display_name"} + string displayName?; + # This field indicates the creator's email address + string email?; +}; + public type InlineResponse2005AvailabilityRules record { + # This field indicates the use of custom availability instead of the rule @jsondata:Name {value: "use_custom"} boolean useCustom?; + # The ID of this availability rule. @jsondata:Name {value: "availability_id"} string availabilityId?; @jsondata:Name {value: "segments_recurrence"} SchedulerschedulesscheduleIdSegmentsRecurrence1 segmentsRecurrence?; + # The timezone of this availability rule. @jsondata:Name {value: "time_zone"} string timeZone?; # The owner of this availability rule. string email?; - # The available time segments of the event. + # The available time segments of the event SchedulerschedulesSegments[] segments?; }; public type SchedulesSingleUseLinkBody record { + # The unique identifier of a schedule @jsondata:Name {value: "schedule_id"} string scheduleId; }; public type SchedulerschedulesCustomFields record { + # The invitee's option(s) for `single_select` or `multi_select` type of responses @jsondata:Name {value: "answer_choices"} SchedulerschedulesCustomFieldsAnswerchoicesItemsString[] answerChoices?; + # The ID of this question @jsondata:Name {value: "custom_field_id"} string customFieldId?; # The type of response that the invitee provides to the custom question. It can be one or multiple lines of text, a phone number, or single- or multiple-select.[`string text phone_number single_select multi_select`] "text"|"string"|"phone_number"|"choices_one"|"choices_many"|"select" format; - # The custom question the host created for the event type. + # The custom question the host created for the event type string name; + # This field is true if the custom question allows invitees to record a written response in addition to single-select or multiple-select type of responses. This field is false if the custom question does not allow invitees to record a written response @jsondata:Name {value: "include_other"} boolean includeOther; - # The position of this question. + # The position of this question decimal position; - # This field is true if the question the host creates is ON and visible on the event booking page. This field is false if it's OFF and invisible on the event booking page. + # This field is true if the question the host creates is ON and visible on the event booking page. This field is false if it's OFF and invisible on the event booking page boolean enabled; - # This field is true if a response to the question created by the host is required for invitees to book the event type. This field is false if a response to the question created by the host is not required for invitees to book the event type. + # This field is true if a response to the question created by the host is required for invitees to book the event type. This field is false if a response to the question created by the host is not required for invitees to book the event type boolean required; }; # Represents the Queries record for the operation: get_scheduled_events public type GetScheduledEventsQueries record { + # This field indicates whether the admin handles certain users. It's only for admin @http:Query {name: "user_id"} string userId?; }; public type SchedulesscheduleIdBody record { + # The method of `addOn`, such as Zoom meeting, Zoom phone, and offline @jsondata:Name {value: "add_on_type"} "zoomMeeting"|"zoomPhone"|"offline" addOnType?; + # The schedule's end date @jsondata:Name {value: "end_date"} string endDate?; + # This field sets the frequency of available time slots for invitees @jsondata:Name {value: "start_time_increment"} decimal startTimeIncrement?; - # The event's summary. + # The event's summary @constraint:String {maxLength: 256} string summary?; - # The hexadecimal color value of the event type's scheduling page. + # The hexadecimal color value of the event type's scheduling page string color?; + # The custom question @jsondata:Name {value: "custom_fields"} SchedulerschedulesscheduleIdCustomFields[] customFields?; # The schedule's description @constraint:String {maxLength: 8192} string description?; - # This field indicates if the schedule is active. + # This field indicates if the schedule is active boolean active?; + # This field sets the maximum events allowed per day @jsondata:Name {value: "booking_limit"} decimal bookingLimit?; - # This field indicates if the event type is hidden on the owner's main scheduling page. + # This field indicates if the event type is hidden on the owner's main scheduling page boolean secret?; + # the timezone of this availability rule. @jsondata:Name {value: "time_zone"} string timeZone?; + # The availability time rule @jsondata:Name {value: "availability_rules"} SchedulerschedulesscheduleIdAvailabilityRules[] availabilityRules?; - # The maximum invitees per event. + # The maximum invitees per event @constraint:Number {minValue: 1, maxValue: 200} decimal capacity?; - # The available time segments of the event. + # The available time segments of the event SchedulerschedulesSegments[] segments?; - # The duration of meeting in minutes, range: [1, 1440]. + # The duration of meeting in minutes, range: [1, 1440] @constraint:Number {minValue: 15, maxValue: 1440} decimal duration?; - # The minimum time before a schedule starts that attendees can book. + # The minimum time before a schedule starts that attendees can book @constraint:Number {minValue: 0, maxValue: 14340} decimal cushion?; - # The information for a custom location. + # The information for a custom location @constraint:String {maxLength: 1024} string location?; + # The extra time before or after booked schedule SchedulerschedulesscheduleIdBuffer buffer?; @jsondata:Name {value: "segments_recurrence"} SchedulerschedulesscheduleIdSegmentsRecurrence1 segmentsRecurrence?; - # The event portion of the event's URL that identifies a specific web page. + # The event portion of the event's URL that identifies a specific web page @constraint:String {maxLength: 256, minLength: 3} string slug?; + # The schedule time range. Unlimited means forever and fixed means using `startDate` and `endDate` @jsondata:Name {value: "interval_type"} "unlimited"|"fixed" intervalType?; + # This field indicates the use of the availability rule @jsondata:Name {value: "availability_override"} boolean availabilityOverride?; + # The schedule's start date @jsondata:Name {value: "start_date"} string startDate?; - # The status of schedule, confirmed or cancelled. + # The status of schedule, confirmed or cancelled "confirmed"|"cancelled" status?; }; public type InlineResponse2003Items record { - # The event's summary. + # The event's summary @constraint:String {maxLength: 256} string summary?; - # The attendees of the event. + # The attendees of the event InlineResponse2003Attendees[] attendees?; + # The meeting notes of the event @jsondata:Name {value: "meeting_notes"} string meetingNotes?; - # The event's description. + # The event's description @constraint:String {maxLength: 8192} string description?; + # The scheduled event end date time @jsondata:Name {value: "end_date_time"} string endDateTime?; + # The unique identifier of event @jsondata:Name {value: "event_id"} string eventId?; + # This field indicates the type is default(scheduled) or pending event @jsondata:Name {value: "event_type"} "default"|"pending" eventType?; + # The information to track the source of invitee. This occurs when you add UTM parameters in schedule links @jsondata:Name {value: "tracking_params"} InlineResponse2003TrackingParams[] trackingParams?; - # The guest's collection. + # The guest's collection string[] guests?; - # The information for a custom location. + # The information for a custom location @constraint:String {maxLength: 1024} string location?; + # The scheduled event start date time @jsondata:Name {value: "start_date_time"} string startDateTime?; + # The unique identifier of schedule @jsondata:Name {value: "schedule_id"} string scheduleId?; - # The moment the event was updated. + # The moment the event was updated string updated?; + # The meeting details for when users have scheduled appointments @jsondata:Name {value: "external_location"} record {string kind?; string meeting_id?; string personal_meeting_id?; string meeting_passcode?; string meeting_description?; string meeting_join_url?;} externalLocation?; - # The status of event: confirmed or cancelled. + # The status of event: confirmed or cancelled "confirmed"|"cancelled" status?; }; public type InlineResponse2011CustomFields record { + # The invitee's option(s) for single_select or multi_select type of responses @jsondata:Name {value: "answer_choices"} InlineResponse2011CustomFieldsAnswerchoicesItemsString[] answerChoices?; + # The ID of this question @jsondata:Name {value: "custom_field_id"} string customFieldId?; # The type of response that the invitee provides to the custom question. It can be one or multiple lines of text, a phone number, or single- or multiple-select.[`string text phone_number single_select multi_select`] "text"|"string"|"phone_number"|"choices_one"|"choices_many"|"select" format; - # The custom question the host created for the event type. + # The custom question the host created for the event type string name; + # This field is true if the custom question allows invitees to record a written response in addition to single-select or multiple-select type of responses. This field is false if the custom question does not allow invitees to record a written response @jsondata:Name {value: "include_other"} boolean includeOther; - # The position of this question. + # The position of this question decimal position; - # This field is true if the question the host creates is ON and visible on the event booking page. This field is false if it's OFF and invisible on the event booking page. + # This field is true if the question the host creates is ON and visible on the event booking page. This field is false if it's OFF and invisible on the event booking page boolean enabled; - # This field is true if a response to the question created by the host is required for invitees to book the event type. This field is false if a response to the question created by the host is not required for invitees to book the event type. + # This field is true if a response to the question created by the host is required for invitees to book the event type. This field is false if a response to the question created by the host is not required for invitees to book the event type boolean required; }; public type InlineResponse2006AvailabilityRules record { + # This field indicates the use of custom availability instead of the rule @jsondata:Name {value: "use_custom"} boolean useCustom?; + # The ID of this availability rule. @jsondata:Name {value: "availability_id"} string availabilityId?; @jsondata:Name {value: "segments_recurrence"} InlineResponse2006SegmentsRecurrence segmentsRecurrence?; + # The timezone of this availability rule. @jsondata:Name {value: "time_zone"} string timeZone?; # The owner of this availability rule. string email?; - # The available time segments of the event. + # The available time segments of the event SchedulerschedulesSegments[] segments?; }; # Represents the Queries record for the operation: get_schedule public type GetScheduleQueries record { + # This field indicates that admins handle certain users. This setting is only for admin @http:Query {name: "user_id"} string userId?; }; @@ -240,29 +277,35 @@ public type ConnectionConfig record {| # The HTTP version understood by the client http:HttpVersion httpVersion = http:HTTP_2_0; # Configurations related to HTTP/1.x protocol - ClientHttp1Settings http1Settings?; + http:ClientHttp1Settings http1Settings = {}; # Configurations related to HTTP/2 protocol - http:ClientHttp2Settings http2Settings?; + http:ClientHttp2Settings http2Settings = {}; # The maximum time to wait (in seconds) for a response before closing the connection - decimal timeout = 60; + decimal timeout = 30; # The choice of setting `forwarded`/`x-forwarded` header string forwarded = "disable"; + # Configurations associated with Redirection + http:FollowRedirects followRedirects?; # Configurations associated with request pooling http:PoolConfiguration poolConfig?; # HTTP caching related configurations - http:CacheConfig cache?; + http:CacheConfig cache = {}; # Specifies the way of handling compression (`accept-encoding`) header http:Compression compression = http:COMPRESSION_AUTO; # Configurations associated with the behaviour of the Circuit Breaker http:CircuitBreakerConfig circuitBreaker?; # Configurations associated with retrying http:RetryConfig retryConfig?; + # Configurations associated with cookies + http:CookieConfig cookieConfig?; # Configurations associated with inbound response size limits - http:ResponseLimitConfigs responseLimits?; + http:ResponseLimitConfigs responseLimits = {}; # SSL/TLS-related options http:ClientSecureSocket secureSocket?; # Proxy server related options http:ProxyConfig proxy?; + # Provides settings related to client socket configuration + http:ClientSocketConfig socketConfig = {}; # Enables the inbound payload validation functionality which provided by the constraint package. Enabled by default boolean validation = true; # Enables relaxed data binding on the client side. When enabled, `nil` values are treated as optional, @@ -271,70 +314,78 @@ public type ConnectionConfig record {| |}; public type InlineResponse2011AvailabilityRules record { + # This field indicates the use of custom availability instead of the rule @jsondata:Name {value: "use_custom"} boolean useCustom?; + # The ID of this availability rule. @jsondata:Name {value: "availability_id"} string availabilityId?; @jsondata:Name {value: "segments_recurrence"} SchedulerschedulesSegmentsRecurrence segmentsRecurrence?; + # The timezone of this availability rule. @jsondata:Name {value: "time_zone"} string timeZone?; # The owner of this availability rule. string email?; - # The available time segments of the event. + # The available time segments of the event SchedulerschedulesSegments[] segments?; }; -# The organizer of the schedule. This field is read-only. +# The organizer of the schedule. This field is read-only public type InlineResponse2011Organizer record { - # This field indicates if this user is the organizer. This field is read-only. + # This field indicates if this user is the organizer. This field is read-only boolean self?; + # The organizer's display name @jsondata:Name {value: "display_name"} string displayName?; - # The organizer's email address. + # The organizer's email address string email?; }; public type SchedulerschedulesscheduleIdAvailabilityRules record { + # This field indicates whether to use the custom availability instead of the rule @jsondata:Name {value: "use_custom"} boolean useCustom?; + # The ID of this availability rule. @jsondata:Name {value: "availability_id"} string availabilityId?; @jsondata:Name {value: "segments_recurrence"} SchedulerschedulesscheduleIdSegmentsRecurrence segmentsRecurrence?; + # The timezone of this availability rule. @jsondata:Name {value: "time_zone"} string timeZone?; # The owner of this availability rule. string email?; - # The available time segments of the event. + # The available time segments of the event SchedulerschedulesscheduleIdSegments[] segments?; }; # Represents the Queries record for the operation: insert_schedule public type InsertScheduleQueries record { + # This field indicates that the admin handles certain users. This setting is only for admin @http:Query {name: "user_id"} string userId?; }; -# The date interval to override. +# The date interval to override public type ScheduleravailabilitySegments record { - # This field indicates the start date to override. + # This field indicates the start date to override string 'start; - # This field indicates the end date to override. + # This field indicates the end date to override string end; }; public type InlineResponse2004TrackingParams record { - # The scheduler tags that correspond to UTM parameters one by one. + # The scheduler tags that correspond to UTM parameters one by one string label?; - # The value of UTM parameters set in schedule links by host. + # The value of UTM parameters set in schedule links by host string value?; - # The UTM parameters in schedule links. + # The UTM parameters in schedule links string 'key?; }; public type InlineResponse2001Items record { - # The owner's ID. + # The owner's ID string owner?; boolean default?; string name?; @@ -346,7 +397,7 @@ public type InlineResponse2001Items record { string timeZone?; }; -# The rules of this availability schedule. +# The rules of this availability schedule public type ScheduleravailabilitySegmentsRecurrence record { # Thursday ScheduleravailabilitySegmentsRecurrenceSun[] thu?; @@ -365,23 +416,29 @@ public type ScheduleravailabilitySegmentsRecurrence record { }; public type InlineResponse2003Attendees record { - # This field indicates when the attendee attended this event. + # This field indicates when the attendee attended this event string created?; + # The ID of attendee @jsondata:Name {value: "attendee_id"} string attendeeId?; + # The attendee's last name @jsondata:Name {value: "last_name"} string lastName?; + # The attendee's name @jsondata:Name {value: "display_name"} string displayName?; + # The attendee's time zone @jsondata:Name {value: "time_zone"} string timeZone?; + # Whether to show events or not @jsondata:Name {value: "no_show"} boolean noShow?; - # Whether the attendee is the booker. + # Whether the attendee is the booker boolean booker?; + # The attendee's first name @jsondata:Name {value: "first_name"} string firstName?; - # The attendee's email. + # The attendee's email string email?; }; @@ -404,42 +461,56 @@ public type InlineResponse2001SegmentsRecurrence record { # the stats of the previous period with a length of also N. Last N day is counting from today and backtrace N days. Previous period is counting from N days ago and back tracking another N days public type InlineResponse200PreviousPeriod record { + # The number of "all host available" type schedules @jsondata:Name {value: "all_host_available"} int allHostAvailable?; + # The number of rescheduled scheduled events @jsondata:Name {value: "scheduled_events_rescheduled"} int scheduledEventsRescheduled?; + # The number of completed scheduled events @jsondata:Name {value: "scheduled_events_completed"} int scheduledEventsCompleted?; + # The number of cancelled schedules @jsondata:Name {value: "schedules_canceled"} int schedulesCanceled?; + # The number of "one-off" type schedules @jsondata:Name {value: "one_off_meeting"} int oneOffMeeting?; + # The number of "meeting poll" type schedules @jsondata:Name {value: "meeting_poll"} int meetingPoll?; + # The number of "one to many" type schedules @jsondata:Name {value: "one_to_many"} int oneToMany?; + # The number of "any host available" type schedules @jsondata:Name {value: "any_host_available"} int anyHostAvailable?; + # The number of cancelled scheduled events @jsondata:Name {value: "scheduled_events_canceled"} int scheduledEventsCanceled?; + # The number of "one to one" type schedules @jsondata:Name {value: "one_to_one"} int oneToOne?; + # The number of created scheduled events @jsondata:Name {value: "scheduled_events_created"} int scheduledEventsCreated?; + # The number of created schedules @jsondata:Name {value: "schedules_created"} int schedulesCreated?; }; public type SchedulereventseventIdAttendees record { + # The ID of attendee @jsondata:Name {value: "attendee_id"} string attendeeId?; + # This field inidcates the attendee if shown in the scheduled event @jsondata:Name {value: "no_show"} boolean noShow?; - # The attendee's email. + # The attendee's email string email?; }; -# The week of the available time rule. +# The week of the available time rule public type SchedulerschedulesSegmentsRecurrence record { # Thursday ScheduleravailabilitySegmentsRecurrenceSun[] thu?; @@ -458,168 +529,195 @@ public type SchedulerschedulesSegmentsRecurrence record { }; public type SchedulerSchedulesBody record { + # The method of the type of `addOn`, such as Zoom meeting, Zoom phone, or offline @jsondata:Name {value: "add_on_type"} "zoomMeeting"|"zoomPhone"|"offline" addOnType?; + # The schedule's end date @jsondata:Name {value: "end_date"} string endDate?; + # This field sets the frequency of available time slots for invitees @jsondata:Name {value: "start_time_increment"} decimal startTimeIncrement?; - # The event's summary. + # The event's summary @constraint:String {maxLength: 256} string summary?; + # This field indicates if the schedule type is "one" (belongs to an individual user) or "multiple" @jsondata:Name {value: "schedule_type"} "one"|"multiple" scheduleType?; - # The hexadecimal color value of the event type's scheduling page. + # The hexadecimal color value of the event type's scheduling page string color?; + # This field contains the custom question @jsondata:Name {value: "custom_fields"} SchedulerschedulesCustomFields[] customFields?; - # The schedule's description. + # The schedule's description @constraint:String {maxLength: 8192} string description?; - # This field indicates if the schedule is active. + # This field indicates if the schedule is active boolean active?; + # This field sets the maximum events allowed per day @jsondata:Name {value: "booking_limit"} decimal bookingLimit?; - # This field indicates if the event type is hidden on the owner's main scheduling page. + # This field indicates if the event type is hidden on the owner's main scheduling page boolean secret?; + # The timezone of this availability rule. @jsondata:Name {value: "time_zone"} string timeZone?; + # The availability of the time rule @jsondata:Name {value: "availability_rules"} SchedulerschedulesAvailabilityRules[] availabilityRules; - # This field indicates the maximum invitees per event. + # This field indicates the maximum invitees per event @constraint:Number {minValue: 1, maxValue: 200} decimal capacity; - # The available time segments of the event. + # The available time segments of the event SchedulerschedulesSegments[] segments?; - # This field indicates the duration of the meeting in minutes, range: [1, 1440]. + # This field indicates the duration of the meeting in minutes, range: [1, 1440] @constraint:Number {minValue: 15, maxValue: 1440} decimal duration?; - # This field indicates the minimum time before a schedule starts when the attendees can book. + # This field indicates the minimum time before a schedule starts when the attendees can book @constraint:Number {minValue: 0, maxValue: 14340} decimal cushion?; - # The information for a custom location. + # The information for a custom location @constraint:String {maxLength: 1024} string location?; + # This field indicates the extra time before or after the booked schedule SchedulerschedulesBuffer buffer?; @jsondata:Name {value: "segments_recurrence"} SchedulerschedulesSegmentsRecurrence segmentsRecurrence?; + # The schedule time range. Unlimited means forever and fixed means using `startDate` and `endDate` @jsondata:Name {value: "interval_type"} "unlimited"|"fixed" intervalType?; - # The event portion of the event's URL that identifies a specific web page. + # The event portion of the event's URL that identifies a specific web page @constraint:String {maxLength: 256, minLength: 3} string slug?; + # This field indicates the use of the availability rule @jsondata:Name {value: "availability_override"} boolean availabilityOverride; + # The schedule's start date @jsondata:Name {value: "start_date"} string startDate?; }; # Represents the Queries record for the operation: patch_scheduled_events public type PatchScheduledEventsQueries record { + # This field indicates whether the admin handles certain users. It's only for admin @http:Query {name: "user_id"} string userId?; }; public type InlineResponse2003TrackingParams record { - # The scheduler tags that correspond to UTM parameters one by one. + # The scheduler tags that correspond to UTM parameters one by one string label?; - # The value of UTM parameters set in schedule links by host. + # The value of UTM parameters set in schedule links by host string value?; - # The UTM parameters in the schedule links. + # The UTM parameters in the schedule links string 'key?; }; # Provides API key configurations needed when communicating with a remote HTTP endpoint. public type ApiKeysConfig record {| - string Authorization; + string authorization; |}; -# This field indicates the extra time before or after the booked schedule. +# This field indicates the extra time before or after the booked schedule public type SchedulerschedulesBuffer record { - # This field adds the time after the booked schedule. + # This field adds the time after the booked schedule @constraint:Number {minValue: 0, maxValue: 240} decimal before?; - # This field adds the time before the booked schedule. + # This field adds the time before the booked schedule @constraint:Number {minValue: 0, maxValue: 240} decimal after?; }; -# The extra time before or after booked schedule. +# The extra time before or after booked schedule public type SchedulerschedulesscheduleIdBuffer record { - # This field adds time after the booked schedule. + # This field adds time after the booked schedule @constraint:Number {minValue: 0, maxValue: 240} decimal before?; - # This field adds time before the booked schedule. + # This field adds time before the booked schedule @constraint:Number {minValue: 0, maxValue: 240} decimal after?; }; public type SchedulerschedulesscheduleIdSegments record { - # The start date-time of the segment. + # The start date-time of the segment string 'start?; - # The end date-time of the segment. + # The end date-time of the segment string end?; }; +# The availability schedule set by the user +public type InlineResponse201 record { + # An URI reference to a user + string owner?; + # The default availability schedule in use + boolean default?; + # The name of this availability schedule + string name?; + # The unique ID of the availability + @jsondata:Name {value: "availability_id"} + string availabilityId?; + @jsondata:Name {value: "segments_recurrence"} + ScheduleravailabilitySegmentsRecurrence segmentsRecurrence?; + # The timezone for which this availability schedule originates + @jsondata:Name {value: "time_zone"} + string timeZone?; + # The date on which the rule needs to be applied outside of the availability rule + record {}[] segments?; +}; + public type InlineResponse2004Attendees record { - # This field indicates when the attendee attended this event. + # This field indicates when the attendee attended this event string created?; + # The ID of attendee @jsondata:Name {value: "attendee_id"} string attendeeId?; + # The attendee's last name @jsondata:Name {value: "last_name"} string lastName?; + # The attendee's name @jsondata:Name {value: "display_name"} string displayName?; + # The attendee's time zone @jsondata:Name {value: "time_zone"} string timeZone?; + # Whether or not to show the event @jsondata:Name {value: "no_show"} boolean noShow?; - # Whether the attendee is the booker. + # Whether the attendee is the booker boolean booker?; + # The attendee's first name @jsondata:Name {value: "first_name"} string firstName?; - # The attendee's email. + # The attendee's email string email?; }; -# The availability schedule set by the user. -public type InlineResponse201 record { - # An URI reference to a user. - string owner?; - # The default availability schedule in use. - boolean default?; - # The name of this availability schedule. - string name?; - @jsondata:Name {value: "availability_id"} - string availabilityId?; - @jsondata:Name {value: "segments_recurrence"} - ScheduleravailabilitySegmentsRecurrence segmentsRecurrence?; - @jsondata:Name {value: "time_zone"} - string timeZone?; - # The date on which the rule needs to be applied outside of the availability rule. - record {}[] segments?; -}; - public type InlineResponse200 record { + # The most popular schedules in the given time range @jsondata:Name {value: "popular_schedules"} record {}[] popularSchedules?; + # The users with the least scheduled events @jsondata:Name {value: "users_with_least_events"} record {}[] usersWithLeastEvents?; @jsondata:Name {value: "last_n_days"} InlineResponse200LastNDays lastNDays?; + # The distribution of number of events scheduled in a day @jsondata:Name {value: "popular_time_of_day"} record {}[] popularTimeOfDay?; @jsondata:Name {value: "previous_period"} InlineResponse200PreviousPeriod previousPeriod?; + # The event distribution by duration @jsondata:Name {value: "event_distribution_by_duration"} record {}[] eventDistributionByDuration?; + # The distribution of number of events scheduled in a week @jsondata:Name {value: "popular_time_of_week"} record {}[] popularTimeOfWeek?; + # The users with the most scheduled events @jsondata:Name {value: "users_with_most_events"} record {}[] usersWithMostEvents?; }; -# The week of available time rule. +# The week of available time rule public type SchedulerschedulesscheduleIdSegmentsRecurrence record { # Thursday ScheduleravailabilitySegmentsRecurrenceSun[] thu?; @@ -639,57 +737,65 @@ public type SchedulerschedulesscheduleIdSegmentsRecurrence record { # Represents the Queries record for the operation: delete_schedules public type DeleteSchedulesQueries record { + # This field indicates that the admin handles certain users. This setting is only for admin @http:Query {name: "user_id"} string userId?; }; # Represents the Queries record for the operation: delete_scheduled_events public type DeleteScheduledEventsQueries record { + # This field indicates whether the admin handles certain users. It's only for admin @http:Query {name: "user_id"} string userId?; }; # Represents the Queries record for the operation: patch_schedule public type PatchScheduleQueries record { + # This field indicates that the admin handles certain users. This setting is only for admin @http:Query {name: "user_id"} string userId?; }; # Represents the Queries record for the operation: list_availability public type ListAvailabilityQueries record { + # The token that specifies which result page to return @http:Query {name: "next_page_token"} string nextPageToken?; + # The return of the specific user's availability @http:Query {name: "user_id"} string userId?; + # The maximum number of availability returned on one result page @http:Query {name: "page_size"} int pageSize?; }; -# The portions of the event resource. +# The portions of the event resource public type EventseventIdBody record { SchedulereventseventIdAttendees[] attendees?; + # The meeting notes of the event @jsondata:Name {value: "meeting_notes"} string meetingNotes?; - # The status of event: confirmed or cancelled. + # The status of event: confirmed or cancelled "confirmed"|"cancelled" status?; }; -# The availability schedule set by the user. +# The availability schedule set by the user public type AvailabilityavailabilityIdBody record { - # The default availability schedule in use. + # The default availability schedule in use boolean default?; - # The name of this availability schedule. + # The name of this availability schedule @constraint:String {minLength: 1} string name; @jsondata:Name {value: "segments_recurrence"} ScheduleravailabilitySegmentsRecurrence segmentsRecurrence?; + # The timezone for which this availability schedule originates @jsondata:Name {value: "time_zone"} string timeZone; - # The date on which the rule needs to be applied outside of the availability rule. + # The date on which the rule needs to be applied outside of the availability rule ScheduleravailabilityavailabilityIdSegments[] segments?; }; -# The week of the available time rule. +# The week of the available time rule public type SchedulerschedulesscheduleIdSegmentsRecurrence1 record { # Thursday ScheduleravailabilitySegmentsRecurrenceSun[] thu?; @@ -707,103 +813,126 @@ public type SchedulerschedulesscheduleIdSegmentsRecurrence1 record { ScheduleravailabilitySegmentsRecurrenceSun[] mon?; }; -# The creator of the schedule. This field is read-only. +# The creator of the schedule. This field is read-only public type InlineResponse2005Creator record { - # This field indicates if you created the schedule. The field is read-only. + # This field indicates if you created the schedule. The field is read-only boolean self?; + # This field indicates the creator of the display name @jsondata:Name {value: "display_name"} string displayName?; - # This field indicates the creator's email address. + # This field indicates the creator's email address string email?; }; # Represents the Queries record for the operation: list_schedules public type ListSchedulesQueries record { + # Whether to include the deleted schedule (with status equals "cancelled") in the result @http:Query {name: "show_deleted"} boolean showDeleted?; + # The token that specifies which result page to return @http:Query {name: "next_page_token"} string nextPageToken?; + # The return of the specific user's schedules. Ths setting is only for admin @http:Query {name: "user_id"} string userId?; - # The lower bound (exclusive) for a schedule's end time from which to filter. + # The lower bound (exclusive) for a schedule's end time from which to filter string 'from?; - # The upper bound (exclusive) for a schedule's start time from which to filter. + # The upper bound (exclusive) for a schedule's start time from which to filter string to?; + # The time zone in the response @http:Query {name: "time_zone"} string timeZone?; + # The maximum number of schedule results returned on a result page @http:Query {name: "page_size"} int pageSize?; }; public type InlineResponse2012 record { + # The scheduling link URL @jsondata:Name {value: "scheduling_url"} string schedulingUrl; }; public type InlineResponse2011 record { + # The schedule's end date @jsondata:Name {value: "end_date"} string endDate?; - # The hexadecimal color value of the event type's scheduling page. + # The hexadecimal color value of the event type's scheduling page string color?; - # The schedule's description. + # The schedule's description @constraint:String {maxLength: 8192} string description?; - # This field indicates if the event type is hidden on the owner's main scheduling page. + # This field indicates if the event type is hidden on the owner's main scheduling page boolean secret?; + # The availability of the time rule @jsondata:Name {value: "availability_rules"} InlineResponse2011AvailabilityRules[] availabilityRules?; - # This field indicates the maximum invitees per event. + # This field indicates the maximum invitees per event @constraint:Number {minValue: 1, maxValue: 200} decimal capacity?; - # The available time segments of the event. + # The available time segments of the event SchedulerschedulesSegments[] segments?; - # This field indicates the duration of the meeting in minutes, range: [1, 1440]. + # This field indicates the duration of the meeting in minutes, range: [1, 1440] @constraint:Number {minValue: 15, maxValue: 1440} decimal duration?; - # This field indicates the minimum time before a schedule starts when the attendees can book. + # This field indicates the minimum time before a schedule starts when the attendees can book @constraint:Number {minValue: 0, maxValue: 14340} decimal cushion?; + # This field indicates the extra time before or after the booked schedule SchedulerschedulesBuffer buffer?; @jsondata:Name {value: "segments_recurrence"} SchedulerschedulesSegmentsRecurrence segmentsRecurrence?; - # The event portion of the event's URL that identifies a specific web page. + # The event portion of the event's URL that identifies a specific web page @constraint:String {maxLength: 256, minLength: 3} string slug?; + # The schedule time range. Unlimited means forever and fixed means using `startDate` and `endDate` @jsondata:Name {value: "interval_type"} "unlimited"|"fixed" intervalType?; + # The schedule's start date @jsondata:Name {value: "start_date"} string startDate?; + # The method of the type of `addOn`, such as Zoom meeting, Zoom phone, or offline @jsondata:Name {value: "add_on_type"} "zoomMeeting"|"zoomPhone"|"offline" addOnType?; + # The URL of the user’s scheduling site where invitees book this event type @jsondata:Name {value: "scheduling_url"} string schedulingUrl?; + # This field sets the frequency of available time slots for invitees @jsondata:Name {value: "start_time_increment"} decimal startTimeIncrement?; - # The event's summary. + # The event's summary @constraint:String {maxLength: 256} string summary?; + # The creator of the schedule. The field is read-only InlineResponse2011Creator creator?; + # This field indicates if the schedule type is "one" (belongs to an individual user) or "multiple" @jsondata:Name {value: "schedule_type"} "one"|"multiple" scheduleType?; + # This field contains the custom question @jsondata:Name {value: "custom_fields"} InlineResponse2011CustomFields[] customFields?; - # This field indicates if the schedule is active. + # This field indicates if the schedule is active boolean active?; + # This field sets the maximum events allowed per day @jsondata:Name {value: "booking_limit"} decimal bookingLimit?; + # the timezone of this availability rule. @jsondata:Name {value: "time_zone"} string timeZone?; + # The organizer of the schedule. This field is read-only InlineResponse2011Organizer organizer?; - # The information for a custom location. + # The information for a custom location @constraint:String {maxLength: 1024} string location?; + # The unique identifier of schedule @jsondata:Name {value: "schedule_id"} string scheduleId?; - # The moment the schedule type was updated. + # The moment the schedule type was updated string updated?; + # This field indicates the use of the availability rule @jsondata:Name {value: "availability_override"} boolean availabilityOverride?; - # The status of schedule: confirmed or cancelled. + # The status of schedule: confirmed or cancelled "confirmed"|"cancelled" status?; }; @@ -815,370 +944,422 @@ public type OAuth2RefreshTokenGrantConfig record {| |}; public type SchedulerschedulesAvailabilityRules record { + # This field indicates the use of custom availability instead of the rule @jsondata:Name {value: "use_custom"} boolean useCustom?; + # The ID of this availability rule. @jsondata:Name {value: "availability_id"} string availabilityId?; @jsondata:Name {value: "segments_recurrence"} SchedulerschedulesSegmentsRecurrence segmentsRecurrence?; + # the timezone of this availability rule. @jsondata:Name {value: "time_zone"} string timeZone?; # The owner of this availability rule. string email?; - # The available time segments of the event. + # The available time segments of the event SchedulerschedulesSegments[] segments?; }; public type ScheduleravailabilitySegmentsRecurrenceSun record { - # The start time of this day. + # The start time of this day string 'start?; - # The end time of this day. + # The end time of this day string end?; }; -# The stats of the last N days. +# The stats of the last N days public type InlineResponse200LastNDays record { + # The number of "all host available" type schedules @jsondata:Name {value: "all_host_available"} int allHostAvailable?; + # The number of rescheduled scheduled events @jsondata:Name {value: "scheduled_events_rescheduled"} int scheduledEventsRescheduled?; + # The number of completed scheduled events @jsondata:Name {value: "scheduled_events_completed"} int scheduledEventsCompleted?; + # The number of cancelled schedules @jsondata:Name {value: "schedules_canceled"} int schedulesCanceled?; + # The number of "one-off" type schedules @jsondata:Name {value: "one_off_meeting"} int oneOffMeeting?; + # The number of "meeting poll" type schedules @jsondata:Name {value: "meeting_poll"} int meetingPoll?; + # The number of "one to many" type schedules @jsondata:Name {value: "one_to_many"} int oneToMany?; + # The number of "any host available" type schedules @jsondata:Name {value: "any_host_available"} int anyHostAvailable?; + # The number of cancelled scheduled events @jsondata:Name {value: "scheduled_events_canceled"} int scheduledEventsCanceled?; + # The number of "one to one" type schedules @jsondata:Name {value: "one_to_one"} int oneToOne?; + # The number of created scheduled events @jsondata:Name {value: "scheduled_events_created"} int scheduledEventsCreated?; + # The number of created schedules @jsondata:Name {value: "schedules_created"} int schedulesCreated?; }; public type SchedulerschedulesscheduleIdCustomFields record { + # The invitee's option(s) for single_select or multi_select type of responses @jsondata:Name {value: "answer_choices"} SchedulerschedulesscheduleIdCustomFieldsAnswerchoicesItemsString[] answerChoices?; # The type of response that the invitee provides to the custom question. It can be one or multiple lines of text, a phone number, or single- or multiple-select.[`string text phone_number single_select multi_select`] "text"|"string"|"phone_number"|"choices_one"|"choices_many"|"select" format; + # The ID of this question @jsondata:Name {value: "custom_field_id"} string customFieldId?; - # The custom question that the host created for the event type. + # The custom question that the host created for the event type string name; + # If the custom question lets invitees record a written response, in addition to single-select or multiple-select type of responses, then it's true. Otherwise, it's false @jsondata:Name {value: "include_other"} boolean includeOther; - # The position of this question. + # The position of this question decimal position; - # If the question created by the host is turned ON and visible on the event booking page, then it's true. If it's turned OFF and invisible on the event booking page, then it's false. + # If the question created by the host is turned ON and visible on the event booking page, then it's true. If it's turned OFF and invisible on the event booking page, then it's false boolean enabled; - # If a response to the question, created by the host, is required for invitees to book the event type, then it's true. If it's not required, it's false. + # If a response to the question, created by the host, is required for invitees to book the event type, then it's true. If it's not required, it's false boolean required; }; public type SchedulerschedulesSegments record { - # The start date and time of the segment. + # The start date and time of the segment string 'start?; - # The end date and time of the segment. + # The end date and time of the segment string end?; }; -# Proxy server configurations to be used with the HTTP client endpoint. -public type ProxyConfig record {| - # Host name of the proxy server - string host = ""; - # Proxy server port - int port = 0; - # Proxy server username - string userName = ""; - # Proxy server password - @display {label: "", kind: "password"} - string password = ""; -|}; - -# The date interval that needs to overridden. +# The date interval that needs to overridden public type ScheduleravailabilityavailabilityIdSegments record { - # The start date to override. + # The start date to override string 'start; - # The end date to override. + # The end date to override string end; }; # Represents the Queries record for the operation: report_analytics public type ReportAnalyticsQueries record { + # The specific user's web user ID. Default is "me". Use "all" to query for analytics with respect to all members under that account. @http:Query {name: "user_id"} string userId?; - # The lower bound (exclusive) for an event's end time from which to filter. Optional. The default is not to filter by end time. It must be an RFC3339 timestamp with mandatory time zone offset, for example, 2011-06-03T10:00:00-07:00, 2011-06-03T10:00:00Z. Milliseconds can be provided but are ignored. If `timeMax` is set, `timeMin` must be smaller than `timeMax`. + # The lower bound (exclusive) for an event's end time from which to filter. Optional. The default is not to filter by end time. It must be an RFC3339 timestamp with mandatory time zone offset, for example, 2011-06-03T10:00:00-07:00, 2011-06-03T10:00:00Z. Milliseconds can be provided but are ignored. If `timeMax` is set, `timeMin` must be smaller than `timeMax` string 'from?; - # The upper bound (exclusive) for an event's start time to filter by. Optional. The default is not to filter by start time. It must be an RFC3339 timestamp with mandatory time zone offset. For example, 2011-06-03T10:00:00-07:00, 2011-06-03T10:00:00Z. Milliseconds may be provided but are ignored. If `timeMin` is set, `timeMax` must be greater than `timeMin`. + # The upper bound (exclusive) for an event's start time to filter by. Optional. The default is not to filter by start time. It must be an RFC3339 timestamp with mandatory time zone offset. For example, 2011-06-03T10:00:00-07:00, 2011-06-03T10:00:00Z. Milliseconds may be provided but are ignored. If `timeMin` is set, `timeMax` must be greater than `timeMin` string to?; + # The time zone in the response. The default is the time zone of the calendar. Optional. @http:Query {name: "time_zone"} string timeZone?; }; public type SchedulerschedulesscheduleIdCustomFieldsAnswerchoicesItemsString string; -# Provides settings related to HTTP/1.x protocol. -public type ClientHttp1Settings record {| - # Specifies whether to reuse a connection for multiple requests - http:KeepAlive keepAlive = http:KEEPALIVE_AUTO; - # The chunking behaviour of the request - http:Chunking chunking = http:CHUNKING_AUTO; - # Proxy server related options - ProxyConfig proxy?; -|}; - -# The availability of the schedule query result of given user. +# The availability of the schedule query result of given user public type InlineResponse2001 record { + # The token for a later to retrieve only the entries that have changed since this result was returned. It's omitted if further results are available, in which case `nextPageToken` is provided @jsondata:Name {value: "next_page_token"} string nextPageToken?; # array[User Availability Schedule] InlineResponse2001Items[] items?; }; -public type SchedulerschedulesCustomFieldsAnswerchoicesItemsString string; - public type InlineResponse2003 record { + # The token to access the next page of this result @jsondata:Name {value: "next_page_token"} string nextPageToken?; InlineResponse2003Items[] items?; }; -# The availability schedule set by the user. +public type SchedulerschedulesCustomFieldsAnswerchoicesItemsString string; + +# The availability schedule set by the user public type InlineResponse2002 record { - # The owner's ID. + # The owner's ID string owner?; - # The default availability schedule in use. + # The default availability schedule in use boolean default?; - # The name of this availability schedule. + # The name of this availability schedule string name?; + # The unique ID of availability @jsondata:Name {value: "availability_id"} string availabilityId?; @jsondata:Name {value: "segments_recurrence"} ScheduleravailabilitySegmentsRecurrence segmentsRecurrence?; + # The timezone for which this availability schedule originates @jsondata:Name {value: "time_zone"} string timeZone?; }; public type InlineResponse2005 record { + # The token that accesses the next page of this result @jsondata:Name {value: "next_page_token"} string nextPageToken?; InlineResponse2005Items[] items?; }; +public type InlineResponse2004 record { + # The event's summary + @constraint:String {maxLength: 256} + string summary?; + # The attendees of the event + InlineResponse2004Attendees[] attendees?; + # The meeting notes of the event + @jsondata:Name {value: "meeting_notes"} + string meetingNotes?; + # The event's description + @constraint:String {maxLength: 8192} + string description?; + # The scheduled event's end date time + @jsondata:Name {value: "end_date_time"} + string endDateTime?; + # The unique identifier of event + @jsondata:Name {value: "event_id"} + string eventId?; + # This field indicates whether the type is default(scheduled) or a pending event + @jsondata:Name {value: "event_type"} + "default"|"pending" eventType?; + # The information to track the source of invitee. Only use this setting you add UTM parameters in schedule links + @jsondata:Name {value: "tracking_params"} + InlineResponse2004TrackingParams[] trackingParams?; + # The guest's collection + string[] guests?; + # The information for a custom location + @constraint:String {maxLength: 1024} + string location?; + # The scheduled event's start date time + @jsondata:Name {value: "start_date_time"} + string startDateTime?; + # The unique identifier of schedule + @jsondata:Name {value: "schedule_id"} + string scheduleId?; + # The moment the event was updated + string updated?; + # The meeting details for when users have scheduled appointments + @jsondata:Name {value: "external_location"} + record {string kind?; string meeting_id?; string personal_meeting_id?; string meeting_passcode?; string meeting_description?; string meeting_join_url?;} externalLocation?; + # The status of event: confirmed or cancelled + "confirmed"|"cancelled" status?; +}; + public type InlineResponse2005Items record { + # The schedule's end date @jsondata:Name {value: "end_date"} string endDate?; - # The hexadecimal color value of the event type's scheduling page. + # The hexadecimal color value of the event type's scheduling page string color?; - # The schedule's description. + # The schedule's description @constraint:String {maxLength: 8192} string description?; - # This field indicates if the event type is hidden on the owner's main scheduling page. + # This field indicates if the event type is hidden on the owner's main scheduling page boolean secret?; + # The availability of the time rule @jsondata:Name {value: "availability_rules"} InlineResponse2005AvailabilityRules[] availabilityRules?; - # This field indicates the maximum invitees per event. + # This field indicates the maximum invitees per event @constraint:Number {minValue: 1, maxValue: 200} decimal capacity?; - # The available time segments of the event. + # The available time segments of the event SchedulerschedulesSegments[] segments?; - # This field indicates the duration of the meeting in minutes, range: [1, 1440]. + # This field indicates the duration of the meeting in minutes, range: [1, 1440] @constraint:Number {minValue: 15, maxValue: 1440} decimal duration?; - # This field indicates the minimum time before a schedule starts when the attendees can book. + # This field indicates the minimum time before a schedule starts when the attendees can book @constraint:Number {minValue: 0, maxValue: 14340} decimal cushion?; + # This field indicates the extra time before or after the booked schedule SchedulerschedulesBuffer buffer?; @jsondata:Name {value: "segments_recurrence"} SchedulerschedulesscheduleIdSegmentsRecurrence1 segmentsRecurrence?; - # The event portion of the event's URL that identifies a specific web page. + # The event portion of the event's URL that identifies a specific web page @constraint:String {maxLength: 256, minLength: 3} string slug?; + # The schedule time range. Unlimited means forever and fixed means using `startDate` and `endDate` @jsondata:Name {value: "interval_type"} "unlimited"|"fixed" intervalType?; + # The schedule's start date @jsondata:Name {value: "start_date"} string startDate?; + # The method of the type of `addOn`, such as Zoom meeting, Zoom phone, or offline @jsondata:Name {value: "add_on_type"} "zoomMeeting"|"zoomPhone"|"offline" addOnType?; + # The URL of the user's scheduling site where invitees book this event type @jsondata:Name {value: "scheduling_url"} string schedulingUrl?; + # This field sets the frequency of available time slots for invitees @jsondata:Name {value: "start_time_increment"} decimal startTimeIncrement?; - # The event's summary. + # The event's summary @constraint:String {maxLength: 256} string summary?; + # The creator of the schedule. This field is read-only InlineResponse2005Creator creator?; + # This field indicates if the schedule type is "one" (belongs to an individual user) or "multiple" @jsondata:Name {value: "schedule_type"} "one"|"multiple" scheduleType?; + # This field contains the custom question @jsondata:Name {value: "custom_fields"} InlineResponse2011CustomFields[] customFields?; # This field indicates if the schedule is active boolean active?; + # This field sets the maximum events allowed per day @jsondata:Name {value: "booking_limit"} decimal bookingLimit?; + # the timezone of this availability rule. @jsondata:Name {value: "time_zone"} string timeZone?; + # The organizer of the schedule. This field is read-only InlineResponse2011Organizer organizer?; - # The information for a custom location. + # The information for a custom location @constraint:String {maxLength: 1024} string location?; + # The unique identifier of the schedule @jsondata:Name {value: "schedule_id"} string scheduleId?; - # The moment the schedule type was updated. + # The moment the schedule type was updated string updated?; + # This field indicates the use of the availability rule @jsondata:Name {value: "availability_override"} boolean availabilityOverride?; - # The status of schedule: confirmed or cancelled. + # The status of schedule: confirmed or cancelled "confirmed"|"cancelled" status?; }; -public type InlineResponse2004 record { - # The event's summary. - @constraint:String {maxLength: 256} - string summary?; - # The attendees of the event. - InlineResponse2004Attendees[] attendees?; - @jsondata:Name {value: "meeting_notes"} - string meetingNotes?; - # The event's description. - @constraint:String {maxLength: 8192} - string description?; - @jsondata:Name {value: "end_date_time"} - string endDateTime?; - @jsondata:Name {value: "event_id"} - string eventId?; - @jsondata:Name {value: "event_type"} - "default"|"pending" eventType?; - @jsondata:Name {value: "tracking_params"} - InlineResponse2004TrackingParams[] trackingParams?; - # The guest's collection. - string[] guests?; - # The information for a custom location. - @constraint:String {maxLength: 1024} - string location?; - @jsondata:Name {value: "start_date_time"} - string startDateTime?; - @jsondata:Name {value: "schedule_id"} - string scheduleId?; - # The moment the event was updated. - string updated?; - @jsondata:Name {value: "external_location"} - record {string kind?; string meeting_id?; string personal_meeting_id?; string meeting_passcode?; string meeting_description?; string meeting_join_url?;} externalLocation?; - # The status of event: confirmed or cancelled. - "confirmed"|"cancelled" status?; -}; - -# The user's information. +# The user's information public type InlineResponse2007 record { + # The URL of the user’s scheduling site where invitees book this event type @jsondata:Name {value: "scheduling_url"} string schedulingUrl?; - # This field enables users to upload their company's logo on Zoom. + # This field enables users to upload their company's logo on Zoom string logo?; + # The user's name @jsondata:Name {value: "display_name"} string displayName?; + # The time zone to use when presenting time to the user @jsondata:Name {value: "time_zone"} string timeZone?; - # The portion of URL for the user's scheduling page where invitees book sessions that renders in a human-readable format. + # The portion of URL for the user's scheduling page where invitees book sessions that renders in a human-readable format string slug?; - # This field enables users to upload their personal avatars on Zoom. + # This field enables users to upload their personal avatars on Zoom string picture?; }; # Represents the Queries record for the operation: list_scheduled_events public type ListScheduledEventsQueries record { + # Whether to include deleted events (with status equals `cancelled`) in the result @http:Query {name: "show_deleted"} boolean showDeleted?; - # This field returns search results from meeting ID or summary. + # This field returns search results from meeting ID or summary string search?; + # Whether to return the pending events @http:Query {name: "event_type"} "pending" eventType?; + # The token that specifies which result page to return @http:Query {name: "next_page_token"} string nextPageToken?; + # The return of the specific user's scheduled event. It's only for admin @http:Query {name: "user_id"} string userId?; + # This field indicates the start time or the time when the event has been updated @http:Query {name: "order_by"} string orderBy?; # The lower bound (exclusive) for an event's end time from which to filter. string 'from?; - # The upper bound (exclusive) for an event's start time from which to filter. + # The upper bound (exclusive) for an event's start time from which to filter string to?; + # The time zone in the response @http:Query {name: "time_zone"} string timeZone?; + # The maximum number of events returned on one result page @http:Query {name: "page_size"} int pageSize?; }; public type InlineResponse2006 record { + # The schedule's end date @jsondata:Name {value: "end_date"} string endDate?; - # The hexadecimal color value of the event type's scheduling page. + # The hexadecimal color value of the event type's scheduling page string color?; - # The schedule's description. + # The schedule's description @constraint:String {maxLength: 8192} string description?; - # This field indicates if the event type is hidden on the owner's main scheduling page. + # This field indicates if the event type is hidden on the owner's main scheduling page boolean secret?; + # The availability of the time rule @jsondata:Name {value: "availability_rules"} InlineResponse2006AvailabilityRules[] availabilityRules?; - # This field indicates the maximum invitees per event. + # This field indicates the maximum invitees per event @constraint:Number {minValue: 1, maxValue: 200} decimal capacity?; - # The available time segments of the event. + # The available time segments of the event SchedulerschedulesSegments[] segments?; - # This field indicates the duration of the meeting in minutes, range: [1, 1440]. + # This field indicates the duration of the meeting in minutes, range: [1, 1440] @constraint:Number {minValue: 15, maxValue: 1440} decimal duration?; - # This field indicates the minimum time before a schedule starts when the attendees can book. + # This field indicates the minimum time before a schedule starts when the attendees can book @constraint:Number {minValue: 0, maxValue: 14340} decimal cushion?; + # This field indicates the extra time before or after the booked schedule SchedulerschedulesBuffer buffer?; @jsondata:Name {value: "segments_recurrence"} SchedulerschedulesSegmentsRecurrence segmentsRecurrence?; - # The event portion of the event's URL that identifies a specific web page. + # The event portion of the event's URL that identifies a specific web page @constraint:String {maxLength: 256, minLength: 3} string slug?; + # The schedule time range. Unlimited means forever and fixed means using `startDate` and `endDate` @jsondata:Name {value: "interval_type"} "unlimited"|"fixed" intervalType?; + # The schedule's start date @jsondata:Name {value: "start_date"} string startDate?; + # The method of the type of `addOn`, such as Zoom meeting, Zoom phone, or offline @jsondata:Name {value: "add_on_type"} "zoomMeeting"|"zoomPhone"|"offline" addOnType?; + # The URL of the user's scheduling site where invitees book this event type @jsondata:Name {value: "scheduling_url"} string schedulingUrl?; + # This field sets the frequency of available time slots for invitees @jsondata:Name {value: "start_time_increment"} decimal startTimeIncrement?; - # The event's summary. + # The event's summary @constraint:String {maxLength: 256} string summary?; + # The creator of the schedule. The field is read-only InlineResponse2011Creator creator?; + # This field indicates if the schedule type is **one** (belongs to an individual user) or **multiple** @jsondata:Name {value: "schedule_type"} "one"|"multiple" scheduleType?; + # This field contains the custom question @jsondata:Name {value: "custom_fields"} InlineResponse2011CustomFields[] customFields?; - # This field indicates if the schedule is active. + # This field indicates if the schedule is active boolean active?; + # This field sets the maximum events allowed per day @jsondata:Name {value: "booking_limit"} decimal bookingLimit?; + # the timezone of this availability rule. @jsondata:Name {value: "time_zone"} string timeZone?; + # The organizer of the schedule. This field is read-only InlineResponse2011Organizer organizer?; - # The information for a custom location. + # The information for a custom location @constraint:String {maxLength: 1024} string location?; + # The unique identifier of a schedule @jsondata:Name {value: "schedule_id"} string scheduleId?; - # The moment the schedule type was updated. + # The moment the schedule type was updated string updated?; + # This field indicates the use of the availability rule @jsondata:Name {value: "availability_override"} boolean availabilityOverride?; - # The status of schedule: confirmed or cancelled. + # The status of schedule: confirmed or cancelled "confirmed"|"cancelled" status?; }; diff --git a/docs/spec/openapi.json b/docs/spec/openapi.json index 2373479..d8a9165 100644 --- a/docs/spec/openapi.json +++ b/docs/spec/openapi.json @@ -15,10 +15,10 @@ "url" : "https://swagger.io" }, "servers" : [ { - "url" : "https://api.zoom.us/v2" + "url" : "https://api.zoom.us/v2/scheduler" } ], "paths" : { - "/scheduler/analytics" : { + "/analytics" : { "get" : { "tags" : [ "analytics" ], "summary" : "Report analytics", @@ -27,7 +27,7 @@ "parameters" : [ { "name" : "to", "in" : "query", - "description" : "The upper bound (exclusive) for an event's start time to filter by. Optional. The default is not to filter by start time. It must be an RFC3339 timestamp with mandatory time zone offset. For example, 2011-06-03T10:00:00-07:00, 2011-06-03T10:00:00Z. Milliseconds may be provided but are ignored. If `timeMin` is set, `timeMax` must be greater than `timeMin`.", + "description" : "The upper bound (exclusive) for an event's start time to filter by. Optional. The default is not to filter by start time. It must be an RFC3339 timestamp with mandatory time zone offset. For example, 2011-06-03T10:00:00-07:00, 2011-06-03T10:00:00Z. Milliseconds may be provided but are ignored. If `timeMin` is set, `timeMax` must be greater than `timeMin`", "required" : false, "style" : "form", "explode" : true, @@ -38,7 +38,7 @@ }, { "name" : "from", "in" : "query", - "description" : "The lower bound (exclusive) for an event's end time from which to filter. Optional. The default is not to filter by end time. It must be an RFC3339 timestamp with mandatory time zone offset, for example, 2011-06-03T10:00:00-07:00, 2011-06-03T10:00:00Z. Milliseconds can be provided but are ignored. If `timeMax` is set, `timeMin` must be smaller than `timeMax`.", + "description" : "The lower bound (exclusive) for an event's end time from which to filter. Optional. The default is not to filter by end time. It must be an RFC3339 timestamp with mandatory time zone offset, for example, 2011-06-03T10:00:00-07:00, 2011-06-03T10:00:00Z. Milliseconds can be provided but are ignored. If `timeMax` is set, `timeMin` must be smaller than `timeMax`", "required" : false, "style" : "form", "explode" : true, @@ -73,7 +73,7 @@ } ], "responses" : { "200" : { - "description" : "If successful, this method returns the scheduler analytics or the user ID or account ID provided.", + "description" : "If successful, this method returns the scheduler analytics or the user ID or account ID provided", "content" : { "application/json" : { "schema" : { @@ -112,7 +112,7 @@ } } }, - "/scheduler/availability" : { + "/availability" : { "get" : { "tags" : [ "availability" ], "summary" : "List availability", @@ -121,7 +121,7 @@ "parameters" : [ { "name" : "page_size", "in" : "query", - "description" : "The maximum number of availability returned on one result page.", + "description" : "The maximum number of availability returned on one result page", "required" : false, "style" : "form", "explode" : true, @@ -133,7 +133,7 @@ }, { "name" : "next_page_token", "in" : "query", - "description" : "The token that specifies which result page to return.", + "description" : "The token that specifies which result page to return", "required" : false, "style" : "form", "explode" : true, @@ -145,7 +145,7 @@ }, { "name" : "user_id", "in" : "query", - "description" : "The return of the specific user's availability.", + "description" : "The return of the specific user's availability", "required" : false, "style" : "form", "explode" : true, @@ -157,7 +157,7 @@ } ], "responses" : { "200" : { - "description" : "Successful availability of the schedule query result of given user.", + "description" : "Successful availability of the schedule query result of given user", "content" : { "application/json" : { "schema" : { @@ -198,7 +198,7 @@ "description" : "Inserts a user availability schedule. \n\n**[Scopes](https://developers.zoom.us/docs/integrations/oauth-scopes-overview/):** `scheduler:write:admin`,`scheduler:write`\n\n**[Granular Scopes](https://developers.zoom.us/docs/integrations/oauth-scopes-overview/):** `scheduler:write:availability`,`scheduler:write:availability:admin`\n\n**[Rate Limit Label](https://marketplace.zoom.us/docs/api-reference/rate-limits#rate-limits):** `LIGHT`", "operationId" : "insert_availability", "requestBody" : { - "description" : "In the request body, it supplies an availability resource properties.", + "description" : "In the request body, it supplies an availability resource properties", "content" : { "application/json" : { "schema" : { @@ -209,7 +209,7 @@ }, "responses" : { "201" : { - "description" : "If successful, this method returns a availability resource in the response body.", + "description" : "If successful, this method returns a availability resource in the response body", "content" : { "application/json" : { "schema" : { @@ -245,7 +245,7 @@ } } }, - "/scheduler/availability/{availabilityId}" : { + "/availability/{availabilityId}" : { "get" : { "tags" : [ "availability" ], "summary" : "Get availability ", @@ -254,7 +254,7 @@ "parameters" : [ { "name" : "availabilityId", "in" : "path", - "description" : "The UUID of the availability schedule.", + "description" : "The UUID of the availability schedule", "required" : true, "style" : "simple", "explode" : false, @@ -265,7 +265,7 @@ } ], "responses" : { "200" : { - "description" : "If successful, this method returns an availability resource in the response body.", + "description" : "If successful, this method returns an availability resource in the response body", "content" : { "application/json" : { "schema" : { @@ -311,7 +311,7 @@ "parameters" : [ { "name" : "availabilityId", "in" : "path", - "description" : " The UUID of the availability schedule.", + "description" : " The UUID of the availability schedule", "required" : true, "style" : "simple", "explode" : false, @@ -322,7 +322,7 @@ } ], "responses" : { "204" : { - "description" : "If successful, this method returns an empty response body." + "description" : "If successful, this method returns an empty response body" }, "404" : { "description" : "**HTTP Status Code:** `404`
\n Not Found \n\n **Error Code:** `404`
\n notFound
\n" @@ -352,7 +352,7 @@ "parameters" : [ { "name" : "availabilityId", "in" : "path", - "description" : "The UUID of the availability schedule.", + "description" : "The UUID of the availability schedule", "required" : true, "style" : "simple", "explode" : false, @@ -362,7 +362,7 @@ } } ], "requestBody" : { - "description" : "In the request body, supply availability resource properties.", + "description" : "In the request body, supply availability resource properties", "content" : { "application/json" : { "schema" : { @@ -373,7 +373,7 @@ }, "responses" : { "204" : { - "description" : "If successful, this method returns an empty response body." + "description" : "If successful, this method returns an empty response body" }, "400" : { "description" : "**HTTP Status Code:** `400`
\n Bad Request \n\n **Error Code:** `400`
\n invalidArgument
\n" @@ -405,7 +405,7 @@ } } }, - "/scheduler/events" : { + "/events" : { "get" : { "tags" : [ "scheduled events" ], "summary" : "List scheduled events", @@ -414,7 +414,7 @@ "parameters" : [ { "name" : "to", "in" : "query", - "description" : "The upper bound (exclusive) for an event's start time from which to filter.", + "description" : "The upper bound (exclusive) for an event's start time from which to filter", "required" : false, "style" : "form", "explode" : true, @@ -436,7 +436,7 @@ }, { "name" : "page_size", "in" : "query", - "description" : "The maximum number of events returned on one result page.", + "description" : "The maximum number of events returned on one result page", "required" : false, "style" : "form", "explode" : true, @@ -448,7 +448,7 @@ }, { "name" : "order_by", "in" : "query", - "description" : "This field indicates the start time or the time when the event has been updated.", + "description" : "This field indicates the start time or the time when the event has been updated", "required" : false, "style" : "form", "explode" : true, @@ -460,7 +460,7 @@ }, { "name" : "time_zone", "in" : "query", - "description" : "The time zone in the response.", + "description" : "The time zone in the response", "required" : false, "style" : "form", "explode" : true, @@ -472,7 +472,7 @@ }, { "name" : "next_page_token", "in" : "query", - "description" : "The token that specifies which result page to return.", + "description" : "The token that specifies which result page to return", "required" : false, "style" : "form", "explode" : true, @@ -484,7 +484,7 @@ }, { "name" : "show_deleted", "in" : "query", - "description" : "Whether to include deleted events (with status equals `cancelled`) in the result.", + "description" : "Whether to include deleted events (with status equals `cancelled`) in the result", "required" : false, "style" : "form", "explode" : true, @@ -496,7 +496,7 @@ }, { "name" : "event_type", "in" : "query", - "description" : "Whether to return the pending events.", + "description" : "Whether to return the pending events", "required" : false, "style" : "form", "explode" : true, @@ -521,7 +521,7 @@ }, { "name" : "search", "in" : "query", - "description" : "This field returns search results from meeting ID or summary.", + "description" : "This field returns search results from meeting ID or summary", "required" : false, "style" : "form", "explode" : true, @@ -562,7 +562,7 @@ } } }, - "/scheduler/events/{eventId}" : { + "/events/{eventId}" : { "get" : { "tags" : [ "scheduled events" ], "summary" : "Get scheduled events ", @@ -580,7 +580,7 @@ }, { "name" : "user_id", "in" : "query", - "description" : "This field indicates whether the admin handles certain users. It's only for admin.", + "description" : "This field indicates whether the admin handles certain users. It's only for admin", "required" : false, "style" : "form", "explode" : true, @@ -592,7 +592,7 @@ } ], "responses" : { "200" : { - "description" : "If successful, this method returns the scheduled event resource in the response body.", + "description" : "If successful, this method returns the scheduled event resource in the response body", "content" : { "application/json" : { "schema" : { @@ -641,7 +641,7 @@ }, { "name" : "user_id", "in" : "query", - "description" : "This field indicates whether the admin handles certain users. It's only for admin.", + "description" : "This field indicates whether the admin handles certain users. It's only for admin", "required" : false, "style" : "form", "explode" : true, @@ -653,7 +653,7 @@ } ], "responses" : { "204" : { - "description" : "If successful, this method returns an empty response body." + "description" : "If successful, this method returns an empty response body" }, "401" : { "description" : "**HTTP Status Code:** `401`
\n Unauthorized \n\n **Error Code:** `401`
\n Unauthorized
\n" @@ -689,7 +689,7 @@ "parameters" : [ { "name" : "eventId", "in" : "path", - "description" : "The opaque identifier of the scheduled event.", + "description" : "The opaque identifier of the scheduled event", "required" : true, "style" : "simple", "explode" : false, @@ -700,7 +700,7 @@ }, { "name" : "user_id", "in" : "query", - "description" : "This field indicates whether the admin handles certain users. It's only for admin.", + "description" : "This field indicates whether the admin handles certain users. It's only for admin", "required" : false, "style" : "form", "explode" : true, @@ -711,7 +711,7 @@ "x-ballerina-name" : "userId" } ], "requestBody" : { - "description" : "In the request body, it supplies the relevant portions of event resource.", + "description" : "In the request body, it supplies the relevant portions of event resource", "content" : { "application/json" : { "schema" : { @@ -722,7 +722,7 @@ }, "responses" : { "204" : { - "description" : "If successful, this method returns an event resource in the response body." + "description" : "If successful, this method returns an event resource in the response body" }, "400" : { "description" : "**HTTP Status Code:** `400`
\n Bad Request \n\n **Error Code:** `400`
\n InvalidArgument
\n" @@ -748,7 +748,7 @@ } } }, - "/scheduler/schedules" : { + "/schedules" : { "get" : { "tags" : [ "schedules" ], "summary" : "List schedules", @@ -757,7 +757,7 @@ "parameters" : [ { "name" : "to", "in" : "query", - "description" : "The upper bound (exclusive) for a schedule's start time from which to filter.", + "description" : "The upper bound (exclusive) for a schedule's start time from which to filter", "required" : false, "style" : "form", "explode" : true, @@ -768,7 +768,7 @@ }, { "name" : "from", "in" : "query", - "description" : "The lower bound (exclusive) for a schedule's end time from which to filter.", + "description" : "The lower bound (exclusive) for a schedule's end time from which to filter", "required" : false, "style" : "form", "explode" : true, @@ -779,7 +779,7 @@ }, { "name" : "page_size", "in" : "query", - "description" : "The maximum number of schedule results returned on a result page.", + "description" : "The maximum number of schedule results returned on a result page", "required" : false, "style" : "form", "explode" : true, @@ -791,7 +791,7 @@ }, { "name" : "next_page_token", "in" : "query", - "description" : "The token that specifies which result page to return.", + "description" : "The token that specifies which result page to return", "required" : false, "style" : "form", "explode" : true, @@ -803,7 +803,7 @@ }, { "name" : "show_deleted", "in" : "query", - "description" : "Whether to include the deleted schedule (with status equals \"cancelled\") in the result.", + "description" : "Whether to include the deleted schedule (with status equals \"cancelled\") in the result", "required" : false, "style" : "form", "explode" : true, @@ -815,7 +815,7 @@ }, { "name" : "time_zone", "in" : "query", - "description" : "The time zone in the response.", + "description" : "The time zone in the response", "required" : false, "style" : "form", "explode" : true, @@ -827,7 +827,7 @@ }, { "name" : "user_id", "in" : "query", - "description" : "The return of the specific user's schedules. Ths setting is only for admin.", + "description" : "The return of the specific user's schedules. Ths setting is only for admin", "required" : false, "style" : "form", "explode" : true, @@ -839,7 +839,7 @@ } ], "responses" : { "200" : { - "description" : "If successful, this method returns a response body with this structure.", + "description" : "If successful, this method returns a response body with this structure", "content" : { "application/json" : { "schema" : { @@ -879,7 +879,7 @@ "parameters" : [ { "name" : "user_id", "in" : "query", - "description" : "This field indicates that the admin handles certain users. This setting is only for admin.", + "description" : "This field indicates that the admin handles certain users. This setting is only for admin", "required" : false, "style" : "form", "explode" : true, @@ -890,7 +890,7 @@ "x-ballerina-name" : "userId" } ], "requestBody" : { - "description" : "In the request body, it supplies the schedule resource properties.", + "description" : "In the request body, it supplies the schedule resource properties", "content" : { "application/json" : { "schema" : { @@ -901,7 +901,7 @@ }, "responses" : { "201" : { - "description" : "If successful, this method returns an schedule resource in the response body.", + "description" : "If successful, this method returns an schedule resource in the response body", "content" : { "application/json" : { "schema" : { @@ -934,7 +934,7 @@ } } }, - "/scheduler/schedules/{scheduleId}" : { + "/schedules/{scheduleId}" : { "get" : { "tags" : [ "schedules" ], "summary" : "Get schedules", @@ -943,7 +943,7 @@ "parameters" : [ { "name" : "scheduleId", "in" : "path", - "description" : "The schedule's unique identifier.", + "description" : "The schedule's unique identifier", "required" : true, "style" : "simple", "explode" : false, @@ -954,7 +954,7 @@ }, { "name" : "user_id", "in" : "query", - "description" : "This field indicates that admins handle certain users. This setting is only for admin.", + "description" : "This field indicates that admins handle certain users. This setting is only for admin", "required" : false, "style" : "form", "explode" : true, @@ -966,7 +966,7 @@ } ], "responses" : { "200" : { - "description" : "If successful, this method returns an schedule resource in the response body.", + "description" : "If successful, this method returns an schedule resource in the response body", "content" : { "application/json" : { "schema" : { @@ -1006,7 +1006,7 @@ "parameters" : [ { "name" : "scheduleId", "in" : "path", - "description" : "The unique identifier of the schedule.", + "description" : "The unique identifier of the schedule", "required" : true, "style" : "simple", "explode" : false, @@ -1017,7 +1017,7 @@ }, { "name" : "user_id", "in" : "query", - "description" : "This field indicates that the admin handles certain users. This setting is only for admin.", + "description" : "This field indicates that the admin handles certain users. This setting is only for admin", "required" : false, "style" : "form", "explode" : true, @@ -1029,7 +1029,7 @@ } ], "responses" : { "204" : { - "description" : "If successful, this method returns an empty response body." + "description" : "If successful, this method returns an empty response body" }, "400" : { "description" : "**HTTP Status Code:** `400`
\n Bad Request \n\n **Error Code:** `400`
\n invalidArgument
\n" @@ -1065,7 +1065,7 @@ "parameters" : [ { "name" : "scheduleId", "in" : "path", - "description" : "The schedule's unique identifier.", + "description" : "The schedule's unique identifier", "required" : true, "style" : "simple", "explode" : false, @@ -1076,7 +1076,7 @@ }, { "name" : "user_id", "in" : "query", - "description" : "This field indicates that the admin handles certain users. This setting is only for admin.", + "description" : "This field indicates that the admin handles certain users. This setting is only for admin", "required" : false, "style" : "form", "explode" : true, @@ -1087,7 +1087,7 @@ "x-ballerina-name" : "userId" } ], "requestBody" : { - "description" : "In the request body, it supplies the relevant portions of a schedule resource, according to the rules of patch semantics.", + "description" : "In the request body, it supplies the relevant portions of a schedule resource, according to the rules of patch semantics", "content" : { "application/json" : { "schema" : { @@ -1098,7 +1098,7 @@ }, "responses" : { "204" : { - "description" : "If successful, this method returns an empty response body." + "description" : "If successful, this method returns an empty response body" }, "400" : { "description" : "**HTTP Status Code:** `400`
\n Bad Request \n\n **Error Code:** `400`
\n InvaildArgument
\n" @@ -1127,7 +1127,7 @@ } } }, - "/scheduler/schedules/single_use_link" : { + "/schedules/single_use_link" : { "post" : { "tags" : [ "scheduling links" ], "summary" : "Single use link", @@ -1144,7 +1144,7 @@ }, "responses" : { "201" : { - "description" : "If successful, this method returns a scheduling link URL in the response body.", + "description" : "If successful, this method returns a scheduling link URL in the response body", "content" : { "application/json" : { "schema" : { @@ -1180,7 +1180,7 @@ } } }, - "/scheduler/users/{userId}" : { + "/users/{userId}" : { "get" : { "tags" : [ "users" ], "summary" : "Get user", @@ -1198,7 +1198,7 @@ } ], "responses" : { "200" : { - "description" : "If successful, this method returns user information in the response body.", + "description" : "If successful, this method returns user information in the response body", "content" : { "application/json" : { "schema" : { @@ -1290,7 +1290,7 @@ } } }, - "description" : "The week of available time rule." + "description" : "The week of available time rule" }, "SchedulerAvailabilityBody" : { "required" : [ "name", "time_zone" ], @@ -1298,23 +1298,23 @@ "properties" : { "owner" : { "type" : "string", - "description" : "the owner's ID.", + "description" : "the owner's ID", "readOnly" : true, "example" : "easonfsxsysks3lgchitiw@scheudler.zoom.us" }, "default" : { "type" : "boolean", - "description" : "The default availability schedule in use." + "description" : "The default availability schedule in use" }, "name" : { "minLength" : 1, "type" : "string", - "description" : "The name of this availability schedule.", + "description" : "The name of this availability schedule", "example" : "Working hours" }, "availability_id" : { "type" : "string", - "description" : "The unique ID of availability.", + "description" : "The unique ID of availability", "readOnly" : true, "example" : "x3h1u4id4liffdyszsp8kpxl80", "x-ballerina-name" : "availabilityId" @@ -1327,43 +1327,43 @@ }, "time_zone" : { "type" : "string", - "description" : "The timezone for which this availability schedule originates.", + "description" : "The timezone for which this availability schedule originates", "example" : "Asia/Shanghai", "x-ballerina-name" : "timeZone" }, "segments" : { "type" : "array", - "description" : "The date on which the rule needs to be applied outside of the availability rule.", + "description" : "The date on which the rule needs to be applied outside of the availability rule", "items" : { "$ref" : "#/components/schemas/ScheduleravailabilitySegments" } } }, - "description" : "The availability schedule set by the user." + "description" : "The availability schedule set by the user" }, "InlineResponse2011Creator" : { "type" : "object", "properties" : { "self" : { "type" : "boolean", - "description" : "This field indicates if you created the schedule. The field is read-only.", + "description" : "This field indicates if you created the schedule. The field is read-only", "readOnly" : true, "example" : true }, "display_name" : { "type" : "string", - "description" : "This field indicates the creator of the display name.", + "description" : "This field indicates the creator of the display name", "readOnly" : true, "example" : "name", "x-ballerina-name" : "displayName" }, "email" : { "type" : "string", - "description" : "This field indicates the creator's email address.", + "description" : "This field indicates the creator's email address", "example" : "easonfsxsysks3lgchitiw@scheduler.zoom.us" } }, - "description" : "The creator of the schedule. The field is read-only." + "description" : "The creator of the schedule. The field is read-only" }, "SchedulesSingleUseLinkBody" : { "required" : [ "schedule_id" ], @@ -1371,7 +1371,7 @@ "properties" : { "schedule_id" : { "type" : "string", - "description" : "The unique identifier of a schedule.", + "description" : "The unique identifier of a schedule", "example" : "kb1i8qrplqn7r3zmmhphz4uxd0", "x-ballerina-name" : "scheduleId" } @@ -1382,7 +1382,7 @@ "properties" : { "use_custom" : { "type" : "boolean", - "description" : "This field indicates the use of custom availability instead of the rule.", + "description" : "This field indicates the use of custom availability instead of the rule", "example" : false, "x-ballerina-name" : "useCustom" }, @@ -1411,7 +1411,7 @@ }, "segments" : { "type" : "array", - "description" : "The available time segments of the event.", + "description" : "The available time segments of the event", "items" : { "$ref" : "#/components/schemas/SchedulerschedulesSegments" } @@ -1426,7 +1426,7 @@ "maxItems" : 50, "minItems" : 1, "type" : "array", - "description" : "The invitee's option(s) for `single_select` or `multi_select` type of responses.", + "description" : "The invitee's option(s) for `single_select` or `multi_select` type of responses", "items" : { "maxLength" : 8192, "minLength" : 1, @@ -1438,7 +1438,7 @@ }, "custom_field_id" : { "type" : "string", - "description" : "The ID of this question.", + "description" : "The ID of this question", "example" : "0l6imf50il8jchyapni3p5ckc0", "x-ballerina-name" : "customFieldId" }, @@ -1450,28 +1450,28 @@ }, "name" : { "type" : "string", - "description" : "The custom question the host created for the event type.", + "description" : "The custom question the host created for the event type", "example" : "Please share anything that will help prepare for our meeting." }, "include_other" : { "type" : "boolean", - "description" : "This field is true if the custom question allows invitees to record a written response in addition to single-select or multiple-select type of responses. This field is false if the custom question does not allow invitees to record a written response.", + "description" : "This field is true if the custom question allows invitees to record a written response in addition to single-select or multiple-select type of responses. This field is false if the custom question does not allow invitees to record a written response", "example" : false, "x-ballerina-name" : "includeOther" }, "position" : { "type" : "number", - "description" : "The position of this question.", + "description" : "The position of this question", "example" : 0 }, "enabled" : { "type" : "boolean", - "description" : "This field is true if the question the host creates is ON and visible on the event booking page. This field is false if it's OFF and invisible on the event booking page.", + "description" : "This field is true if the question the host creates is ON and visible on the event booking page. This field is false if it's OFF and invisible on the event booking page", "example" : true }, "required" : { "type" : "boolean", - "description" : "This field is true if a response to the question created by the host is required for invitees to book the event type. This field is false if a response to the question created by the host is not required for invitees to book the event type.", + "description" : "This field is true if a response to the question created by the host is required for invitees to book the event type. This field is false if a response to the question created by the host is not required for invitees to book the event type", "example" : false } } @@ -1481,14 +1481,14 @@ "properties" : { "add_on_type" : { "type" : "string", - "description" : "The method of `addOn`, such as Zoom meeting, Zoom phone, and offline.", + "description" : "The method of `addOn`, such as Zoom meeting, Zoom phone, and offline", "example" : "zoomMeeting", "enum" : [ "zoomMeeting", "zoomPhone", "offline" ], "x-ballerina-name" : "addOnType" }, "end_date" : { "type" : "string", - "description" : "The schedule's end date.", + "description" : "The schedule's end date", "example" : "2023-12-28", "x-ballerina-name" : "endDate" }, @@ -1496,24 +1496,24 @@ "maximum" : 720, "minimum" : 5, "type" : "number", - "description" : "This field sets the frequency of available time slots for invitees.", + "description" : "This field sets the frequency of available time slots for invitees", "example" : 30, "x-ballerina-name" : "startTimeIncrement" }, "summary" : { "maxLength" : 256, "type" : "string", - "description" : "The event's summary.", + "description" : "The event's summary", "example" : "daily meeting" }, "color" : { "type" : "string", - "description" : "The hexadecimal color value of the event type's scheduling page.", + "description" : "The hexadecimal color value of the event type's scheduling page", "example" : "#fff200" }, "custom_fields" : { "type" : "array", - "description" : "The custom question.", + "description" : "The custom question", "items" : { "$ref" : "#/components/schemas/SchedulerschedulesscheduleIdCustomFields" }, @@ -1527,20 +1527,20 @@ }, "active" : { "type" : "boolean", - "description" : "This field indicates if the schedule is active.", + "description" : "This field indicates if the schedule is active", "example" : true }, "booking_limit" : { "maximum" : 96, "minimum" : 0, "type" : "number", - "description" : "This field sets the maximum events allowed per day.", + "description" : "This field sets the maximum events allowed per day", "example" : 0, "x-ballerina-name" : "bookingLimit" }, "secret" : { "type" : "boolean", - "description" : "This field indicates if the event type is hidden on the owner's main scheduling page.", + "description" : "This field indicates if the event type is hidden on the owner's main scheduling page", "example" : false }, "time_zone" : { @@ -1551,7 +1551,7 @@ }, "availability_rules" : { "type" : "array", - "description" : "The availability time rule.", + "description" : "The availability time rule", "items" : { "$ref" : "#/components/schemas/SchedulerschedulesscheduleIdAvailabilityRules" }, @@ -1561,12 +1561,12 @@ "maximum" : 200, "minimum" : 1, "type" : "number", - "description" : "The maximum invitees per event.", + "description" : "The maximum invitees per event", "example" : 1 }, "segments" : { "type" : "array", - "description" : "The available time segments of the event.", + "description" : "The available time segments of the event", "items" : { "$ref" : "#/components/schemas/SchedulerschedulesSegments" } @@ -1575,20 +1575,20 @@ "maximum" : 1440, "minimum" : 15, "type" : "number", - "description" : "The duration of meeting in minutes, range: [1, 1440].", + "description" : "The duration of meeting in minutes, range: [1, 1440]", "example" : 30 }, "cushion" : { "maximum" : 14340, "minimum" : 0, "type" : "number", - "description" : "The minimum time before a schedule starts that attendees can book.", + "description" : "The minimum time before a schedule starts that attendees can book", "example" : 0 }, "location" : { "maxLength" : 1024, "type" : "string", - "description" : "The information for a custom location.", + "description" : "The information for a custom location", "example" : "AAA office" }, "buffer" : { @@ -1604,31 +1604,31 @@ "maxLength" : 256, "minLength" : 3, "type" : "string", - "description" : "The event portion of the event's URL that identifies a specific web page.", + "description" : "The event portion of the event's URL that identifies a specific web page", "example" : "sales" }, "interval_type" : { "type" : "string", - "description" : "The schedule time range. Unlimited means forever and fixed means using `startDate` and `endDate`.", + "description" : "The schedule time range. Unlimited means forever and fixed means using `startDate` and `endDate`", "example" : "fixed", "enum" : [ "unlimited", "fixed" ], "x-ballerina-name" : "intervalType" }, "availability_override" : { "type" : "boolean", - "description" : "This field indicates the use of the availability rule.", + "description" : "This field indicates the use of the availability rule", "example" : false, "x-ballerina-name" : "availabilityOverride" }, "start_date" : { "type" : "string", - "description" : "The schedule's start date.", + "description" : "The schedule's start date", "example" : "2023-12-21", "x-ballerina-name" : "startDate" }, "status" : { "type" : "string", - "description" : "The status of schedule, confirmed or cancelled.", + "description" : "The status of schedule, confirmed or cancelled", "example" : "confirmed", "enum" : [ "confirmed", "cancelled" ] } @@ -1640,12 +1640,12 @@ "summary" : { "maxLength" : 256, "type" : "string", - "description" : "The event's summary.", + "description" : "The event's summary", "example" : "daily meeting" }, "attendees" : { "type" : "array", - "description" : "The attendees of the event.", + "description" : "The attendees of the event", "items" : { "$ref" : "#/components/schemas/InlineResponse2003Attendees" } @@ -1653,31 +1653,31 @@ "meeting_notes" : { "maxLength" : 1024, "type" : "string", - "description" : "The meeting notes of the event.", + "description" : "The meeting notes of the event", "example" : "meeting notes", "x-ballerina-name" : "meetingNotes" }, "description" : { "maxLength" : 8192, "type" : "string", - "description" : "The event's description.", + "description" : "The event's description", "example" : "15 Minute Meeting" }, "end_date_time" : { "type" : "string", - "description" : "The scheduled event end date time.", + "description" : "The scheduled event end date time", "example" : "2023-12-21T16:30:00+08:00", "x-ballerina-name" : "endDateTime" }, "event_id" : { "type" : "string", - "description" : "The unique identifier of event.", + "description" : "The unique identifier of event", "example" : "woft7torlatbw8ek24bmit5k60", "x-ballerina-name" : "eventId" }, "event_type" : { "type" : "string", - "description" : "This field indicates the type is default(scheduled) or pending event.", + "description" : "This field indicates the type is default(scheduled) or pending event", "readOnly" : true, "example" : "default", "enum" : [ "default", "pending" ], @@ -1685,7 +1685,7 @@ }, "tracking_params" : { "type" : "array", - "description" : "The information to track the source of invitee. This occurs when you add UTM parameters in schedule links.", + "description" : "The information to track the source of invitee. This occurs when you add UTM parameters in schedule links", "items" : { "$ref" : "#/components/schemas/InlineResponse2003TrackingParams" }, @@ -1693,7 +1693,7 @@ }, "guests" : { "type" : "array", - "description" : "The guest's collection.", + "description" : "The guest's collection", "items" : { "type" : "string", "description" : "The guest's email.", @@ -1703,28 +1703,28 @@ "location" : { "maxLength" : 1024, "type" : "string", - "description" : "The information for a custom location.", + "description" : "The information for a custom location", "example" : "AAA office" }, "start_date_time" : { "type" : "string", - "description" : "The scheduled event start date time.", + "description" : "The scheduled event start date time", "example" : "2023-12-21T16:00:00+08:00", "x-ballerina-name" : "startDateTime" }, "schedule_id" : { "type" : "string", - "description" : "The unique identifier of schedule.", + "description" : "The unique identifier of schedule", "example" : "ygfx661g9x8dwcgeusdqhsplc0_20231220T160000Z", "x-ballerina-name" : "scheduleId" }, "updated" : { "type" : "string", - "description" : "The moment the event was updated.", + "description" : "The moment the event was updated", "example" : "2023-12-21T06:19:28.309Z" }, "external_location" : { - "description" : "The meeting details for when users have scheduled appointments.", + "description" : "The meeting details for when users have scheduled appointments", "readOnly" : true, "oneOf" : [ { "type" : "object", @@ -1765,7 +1765,7 @@ }, "status" : { "type" : "string", - "description" : "The status of event: confirmed or cancelled.", + "description" : "The status of event: confirmed or cancelled", "example" : "confirmed", "enum" : [ "confirmed", "cancelled" ] } @@ -1779,7 +1779,7 @@ "maxItems" : 50, "minItems" : 1, "type" : "array", - "description" : "The invitee's option(s) for single_select or multi_select type of responses.", + "description" : "The invitee's option(s) for single_select or multi_select type of responses", "items" : { "maxLength" : 8192, "minLength" : 1, @@ -1791,7 +1791,7 @@ }, "custom_field_id" : { "type" : "string", - "description" : "The ID of this question.", + "description" : "The ID of this question", "example" : "0l6imf50il8jchyapni3p5ckc0", "x-ballerina-name" : "customFieldId" }, @@ -1803,28 +1803,28 @@ }, "name" : { "type" : "string", - "description" : "The custom question the host created for the event type.", + "description" : "The custom question the host created for the event type", "example" : "Please share anything that will help prepare for our meeting." }, "include_other" : { "type" : "boolean", - "description" : "This field is true if the custom question allows invitees to record a written response in addition to single-select or multiple-select type of responses. This field is false if the custom question does not allow invitees to record a written response.", + "description" : "This field is true if the custom question allows invitees to record a written response in addition to single-select or multiple-select type of responses. This field is false if the custom question does not allow invitees to record a written response", "example" : false, "x-ballerina-name" : "includeOther" }, "position" : { "type" : "number", - "description" : "The position of this question.", + "description" : "The position of this question", "example" : 0 }, "enabled" : { "type" : "boolean", - "description" : "This field is true if the question the host creates is ON and visible on the event booking page. This field is false if it's OFF and invisible on the event booking page.", + "description" : "This field is true if the question the host creates is ON and visible on the event booking page. This field is false if it's OFF and invisible on the event booking page", "example" : true }, "required" : { "type" : "boolean", - "description" : "This field is true if a response to the question created by the host is required for invitees to book the event type. This field is false if a response to the question created by the host is not required for invitees to book the event type.", + "description" : "This field is true if a response to the question created by the host is required for invitees to book the event type. This field is false if a response to the question created by the host is not required for invitees to book the event type", "example" : false } } @@ -1834,7 +1834,7 @@ "properties" : { "use_custom" : { "type" : "boolean", - "description" : "This field indicates the use of custom availability instead of the rule.", + "description" : "This field indicates the use of custom availability instead of the rule", "example" : false, "x-ballerina-name" : "useCustom" }, @@ -1863,7 +1863,7 @@ }, "segments" : { "type" : "array", - "description" : "The available time segments of the event.", + "description" : "The available time segments of the event", "items" : { "$ref" : "#/components/schemas/SchedulerschedulesSegments" } @@ -1875,7 +1875,7 @@ "properties" : { "use_custom" : { "type" : "boolean", - "description" : "This field indicates the use of custom availability instead of the rule.", + "description" : "This field indicates the use of custom availability instead of the rule", "example" : false, "x-ballerina-name" : "useCustom" }, @@ -1904,7 +1904,7 @@ }, "segments" : { "type" : "array", - "description" : "The available time segments of the event.", + "description" : "The available time segments of the event", "items" : { "$ref" : "#/components/schemas/SchedulerschedulesSegments" } @@ -1916,31 +1916,31 @@ "properties" : { "self" : { "type" : "boolean", - "description" : "This field indicates if this user is the organizer. This field is read-only.", + "description" : "This field indicates if this user is the organizer. This field is read-only", "readOnly" : true, "example" : true }, "display_name" : { "type" : "string", - "description" : "The organizer's display name.", + "description" : "The organizer's display name", "readOnly" : true, "example" : "name", "x-ballerina-name" : "displayName" }, "email" : { "type" : "string", - "description" : "The organizer's email address.", + "description" : "The organizer's email address", "example" : "easonfsxsysks3lgchitiw@scheduler.zoom.us" } }, - "description" : "The organizer of the schedule. This field is read-only." + "description" : "The organizer of the schedule. This field is read-only" }, "SchedulerschedulesscheduleIdAvailabilityRules" : { "type" : "object", "properties" : { "use_custom" : { "type" : "boolean", - "description" : "This field indicates whether to use the custom availability instead of the rule.", + "description" : "This field indicates whether to use the custom availability instead of the rule", "example" : false, "x-ballerina-name" : "useCustom" }, @@ -1969,7 +1969,7 @@ }, "segments" : { "type" : "array", - "description" : "The available time segments of the event.", + "description" : "The available time segments of the event", "items" : { "$ref" : "#/components/schemas/SchedulerschedulesscheduleIdSegments" } @@ -1982,33 +1982,33 @@ "properties" : { "start" : { "type" : "string", - "description" : "This field indicates the start date to override.", + "description" : "This field indicates the start date to override", "example" : "2024-01-07T09:00:00Z" }, "end" : { "type" : "string", - "description" : "This field indicates the end date to override.", + "description" : "This field indicates the end date to override", "example" : "2024-01-08T09:00:00Z" } }, - "description" : "The date interval to override." + "description" : "The date interval to override" }, "InlineResponse2004TrackingParams" : { "type" : "object", "properties" : { "label" : { "type" : "string", - "description" : "The scheduler tags that correspond to UTM parameters one by one.", + "description" : "The scheduler tags that correspond to UTM parameters one by one", "example" : "UTM_Source" }, "value" : { "type" : "string", - "description" : "The value of UTM parameters set in schedule links by host.", + "description" : "The value of UTM parameters set in schedule links by host", "example" : "zoom" }, "key" : { "type" : "string", - "description" : "The UTM parameters in schedule links.", + "description" : "The UTM parameters in schedule links", "example" : "utm_source" } } @@ -2018,7 +2018,7 @@ "properties" : { "owner" : { "type" : "string", - "description" : "The owner's ID.", + "description" : "The owner's ID", "example" : "easonfsxsysks3lgchitiw@scheudler.zoom.us" }, "default" : { @@ -2052,56 +2052,56 @@ "properties" : { "created" : { "type" : "string", - "description" : "This field indicates when the attendee attended this event.", + "description" : "This field indicates when the attendee attended this event", "readOnly" : true, "example" : "2023-12-21T06:19:23.899Z" }, "attendee_id" : { "type" : "string", - "description" : "The ID of attendee.", + "description" : "The ID of attendee", "readOnly" : true, "example" : "z7q0q2962w8iyj87249zbi7t10", "x-ballerina-name" : "attendeeId" }, "last_name" : { "type" : "string", - "description" : " The attendee's last name.", + "description" : " The attendee's last name", "example" : "tom", "x-ballerina-name" : "lastName" }, "display_name" : { "type" : "string", - "description" : "The attendee's name.", + "description" : "The attendee's name", "example" : "bob", "x-ballerina-name" : "displayName" }, "time_zone" : { "type" : "string", - "description" : "The attendee's time zone.", + "description" : "The attendee's time zone", "example" : "Asia/Shanghai", "x-ballerina-name" : "timeZone" }, "no_show" : { "type" : "boolean", - "description" : "Whether to show events or not.", + "description" : "Whether to show events or not", "example" : false, "x-ballerina-name" : "noShow" }, "booker" : { "type" : "boolean", - "description" : "Whether the attendee is the booker.", + "description" : "Whether the attendee is the booker", "readOnly" : true, "example" : true }, "first_name" : { "type" : "string", - "description" : "The attendee's first name.", + "description" : "The attendee's first name", "example" : "green", "x-ballerina-name" : "firstName" }, "email" : { "type" : "string", - "description" : "The attendee's email.", + "description" : "The attendee's email", "example" : "abc@zoom.us" } } @@ -2159,7 +2159,7 @@ } } }, - "description" : "The rules of this availability schedule." + "description" : "The rules of this availability schedule" }, "InlineResponse2001SegmentsRecurrence" : { "type" : "object", @@ -2220,73 +2220,73 @@ "properties" : { "all_host_available" : { "type" : "integer", - "description" : "The number of \"all host available\" type schedules.", + "description" : "The number of \"all host available\" type schedules", "example" : 10, "x-ballerina-name" : "allHostAvailable" }, "scheduled_events_rescheduled" : { "type" : "integer", - "description" : "The number of rescheduled scheduled events.", + "description" : "The number of rescheduled scheduled events", "example" : 10, "x-ballerina-name" : "scheduledEventsRescheduled" }, "scheduled_events_completed" : { "type" : "integer", - "description" : "The number of completed scheduled events.", + "description" : "The number of completed scheduled events", "example" : 10, "x-ballerina-name" : "scheduledEventsCompleted" }, "schedules_canceled" : { "type" : "integer", - "description" : "The number of cancelled schedules.", + "description" : "The number of cancelled schedules", "example" : 10, "x-ballerina-name" : "schedulesCanceled" }, "one_off_meeting" : { "type" : "integer", - "description" : "The number of \"one-off\" type schedules.", + "description" : "The number of \"one-off\" type schedules", "example" : 10, "x-ballerina-name" : "oneOffMeeting" }, "meeting_poll" : { "type" : "integer", - "description" : "The number of \"meeting poll\" type schedules.", + "description" : "The number of \"meeting poll\" type schedules", "example" : 10, "x-ballerina-name" : "meetingPoll" }, "one_to_many" : { "type" : "integer", - "description" : "The number of \"one to many\" type schedules.", + "description" : "The number of \"one to many\" type schedules", "example" : 10, "x-ballerina-name" : "oneToMany" }, "any_host_available" : { "type" : "integer", - "description" : "The number of \"any host available\" type schedules.", + "description" : "The number of \"any host available\" type schedules", "example" : 10, "x-ballerina-name" : "anyHostAvailable" }, "scheduled_events_canceled" : { "type" : "integer", - "description" : "The number of cancelled scheduled events.", + "description" : "The number of cancelled scheduled events", "example" : 10, "x-ballerina-name" : "scheduledEventsCanceled" }, "one_to_one" : { "type" : "integer", - "description" : "The number of \"one to one\" type schedules.", + "description" : "The number of \"one to one\" type schedules", "example" : 10, "x-ballerina-name" : "oneToOne" }, "scheduled_events_created" : { "type" : "integer", - "description" : "The number of created scheduled events.", + "description" : "The number of created scheduled events", "example" : 10, "x-ballerina-name" : "scheduledEventsCreated" }, "schedules_created" : { "type" : "integer", - "description" : "The number of created schedules.", + "description" : "The number of created schedules", "example" : 10, "x-ballerina-name" : "schedulesCreated" } @@ -2299,7 +2299,7 @@ "properties" : { "attendee_id" : { "type" : "string", - "description" : "The ID of attendee.", + "description" : "The ID of attendee", "readOnly" : true, "example" : "z7q0q2962w8iyj87249zbi7t10", "x-ballerina-name" : "attendeeId" @@ -2312,7 +2312,7 @@ }, "email" : { "type" : "string", - "description" : "The attendee's email.", + "description" : "The attendee's email", "example" : "abc@zoom.us" } } @@ -2323,14 +2323,14 @@ "properties" : { "add_on_type" : { "type" : "string", - "description" : "The method of the type of `addOn`, such as Zoom meeting, Zoom phone, or offline.", + "description" : "The method of the type of `addOn`, such as Zoom meeting, Zoom phone, or offline", "example" : "zoomMeeting", "enum" : [ "zoomMeeting", "zoomPhone", "offline" ], "x-ballerina-name" : "addOnType" }, "end_date" : { "type" : "string", - "description" : "The schedule's end date.", + "description" : "The schedule's end date", "example" : "2023-12-28", "x-ballerina-name" : "endDate" }, @@ -2338,31 +2338,31 @@ "maximum" : 720, "minimum" : 5, "type" : "number", - "description" : "This field sets the frequency of available time slots for invitees.", + "description" : "This field sets the frequency of available time slots for invitees", "example" : 30, "x-ballerina-name" : "startTimeIncrement" }, "summary" : { "maxLength" : 256, "type" : "string", - "description" : "The event's summary.", + "description" : "The event's summary", "example" : "daily meeting" }, "schedule_type" : { "type" : "string", - "description" : "This field indicates if the schedule type is \"one\" (belongs to an individual user) or \"multiple\".", + "description" : "This field indicates if the schedule type is \"one\" (belongs to an individual user) or \"multiple\"", "example" : "one", "enum" : [ "one", "multiple" ], "x-ballerina-name" : "scheduleType" }, "color" : { "type" : "string", - "description" : "The hexadecimal color value of the event type's scheduling page.", + "description" : "The hexadecimal color value of the event type's scheduling page", "example" : "#fff200" }, "custom_fields" : { "type" : "array", - "description" : "This field contains the custom question.", + "description" : "This field contains the custom question", "items" : { "$ref" : "#/components/schemas/SchedulerschedulesCustomFields" }, @@ -2371,25 +2371,25 @@ "description" : { "maxLength" : 8192, "type" : "string", - "description" : "The schedule's description.", + "description" : "The schedule's description", "example" : "15 Minute Meeting" }, "active" : { "type" : "boolean", - "description" : "This field indicates if the schedule is active.", + "description" : "This field indicates if the schedule is active", "example" : true }, "booking_limit" : { "maximum" : 96, "minimum" : 0, "type" : "number", - "description" : "This field sets the maximum events allowed per day.", + "description" : "This field sets the maximum events allowed per day", "example" : 0, "x-ballerina-name" : "bookingLimit" }, "secret" : { "type" : "boolean", - "description" : "This field indicates if the event type is hidden on the owner's main scheduling page.", + "description" : "This field indicates if the event type is hidden on the owner's main scheduling page", "example" : false }, "time_zone" : { @@ -2400,7 +2400,7 @@ }, "availability_rules" : { "type" : "array", - "description" : "The availability of the time rule.", + "description" : "The availability of the time rule", "items" : { "$ref" : "#/components/schemas/SchedulerschedulesAvailabilityRules" }, @@ -2410,12 +2410,12 @@ "maximum" : 200, "minimum" : 1, "type" : "number", - "description" : "This field indicates the maximum invitees per event.", + "description" : "This field indicates the maximum invitees per event", "example" : 1 }, "segments" : { "type" : "array", - "description" : "The available time segments of the event.", + "description" : "The available time segments of the event", "items" : { "$ref" : "#/components/schemas/SchedulerschedulesSegments" } @@ -2424,20 +2424,20 @@ "maximum" : 1440, "minimum" : 15, "type" : "number", - "description" : "This field indicates the duration of the meeting in minutes, range: [1, 1440].", + "description" : "This field indicates the duration of the meeting in minutes, range: [1, 1440]", "example" : 30 }, "cushion" : { "maximum" : 14340, "minimum" : 0, "type" : "number", - "description" : "This field indicates the minimum time before a schedule starts when the attendees can book.", + "description" : "This field indicates the minimum time before a schedule starts when the attendees can book", "example" : 0 }, "location" : { "maxLength" : 1024, "type" : "string", - "description" : "The information for a custom location.", + "description" : "The information for a custom location", "example" : "AAA office" }, "buffer" : { @@ -2451,7 +2451,7 @@ }, "interval_type" : { "type" : "string", - "description" : "The schedule time range. Unlimited means forever and fixed means using `startDate` and `endDate`.", + "description" : "The schedule time range. Unlimited means forever and fixed means using `startDate` and `endDate`", "example" : "fixed", "enum" : [ "unlimited", "fixed" ], "x-ballerina-name" : "intervalType" @@ -2460,18 +2460,18 @@ "maxLength" : 256, "minLength" : 3, "type" : "string", - "description" : "The event portion of the event's URL that identifies a specific web page.", + "description" : "The event portion of the event's URL that identifies a specific web page", "example" : "sales" }, "availability_override" : { "type" : "boolean", - "description" : "This field indicates the use of the availability rule.", + "description" : "This field indicates the use of the availability rule", "example" : false, "x-ballerina-name" : "availabilityOverride" }, "start_date" : { "type" : "string", - "description" : "The schedule's start date.", + "description" : "The schedule's start date", "example" : "2023-12-21", "x-ballerina-name" : "startDate" } @@ -2530,24 +2530,24 @@ } } }, - "description" : "The week of the available time rule." + "description" : "The week of the available time rule" }, "InlineResponse2003TrackingParams" : { "type" : "object", "properties" : { "label" : { "type" : "string", - "description" : "The scheduler tags that correspond to UTM parameters one by one.", + "description" : "The scheduler tags that correspond to UTM parameters one by one", "example" : "UTM_Source" }, "value" : { "type" : "string", - "description" : "The value of UTM parameters set in schedule links by host.", + "description" : "The value of UTM parameters set in schedule links by host", "example" : "zoom" }, "key" : { "type" : "string", - "description" : "The UTM parameters in the schedule links.", + "description" : "The UTM parameters in the schedule links", "example" : "utm_source" } } @@ -2559,18 +2559,18 @@ "maximum" : 240, "minimum" : 0, "type" : "number", - "description" : "This field adds the time after the booked schedule.", + "description" : "This field adds the time after the booked schedule", "example" : 0 }, "after" : { "maximum" : 240, "minimum" : 0, "type" : "number", - "description" : "This field adds the time before the booked schedule.", + "description" : "This field adds the time before the booked schedule", "example" : 0 } }, - "description" : "This field indicates the extra time before or after the booked schedule." + "description" : "This field indicates the extra time before or after the booked schedule" }, "SchedulerschedulesscheduleIdBuffer" : { "type" : "object", @@ -2579,30 +2579,30 @@ "maximum" : 240, "minimum" : 0, "type" : "number", - "description" : "This field adds time after the booked schedule.", + "description" : "This field adds time after the booked schedule", "example" : 0 }, "after" : { "maximum" : 240, "minimum" : 0, "type" : "number", - "description" : "This field adds time before the booked schedule.", + "description" : "This field adds time before the booked schedule", "example" : 0 } }, - "description" : "The extra time before or after booked schedule." + "description" : "The extra time before or after booked schedule" }, "SchedulerschedulesscheduleIdSegments" : { "type" : "object", "properties" : { "start" : { "type" : "string", - "description" : "The start date-time of the segment.", + "description" : "The start date-time of the segment", "example" : "2023-12-21T06:00:00Z" }, "end" : { "type" : "string", - "description" : "The end date-time of the segment.", + "description" : "The end date-time of the segment", "example" : "2023-12-21T06:00:00Z" } } @@ -2612,22 +2612,22 @@ "properties" : { "owner" : { "type" : "string", - "description" : "An URI reference to a user.", + "description" : "An URI reference to a user", "example" : "easonfsxsysks3lgchitiw" }, "default" : { "type" : "boolean", - "description" : "The default availability schedule in use.", + "description" : "The default availability schedule in use", "example" : false }, "name" : { "type" : "string", - "description" : "The name of this availability schedule.", + "description" : "The name of this availability schedule", "example" : "Working hours" }, "availability_id" : { "type" : "string", - "description" : "The unique ID of the availability.", + "description" : "The unique ID of the availability", "example" : "x3h1u4id4liffdyszsp8kpxl80", "x-ballerina-name" : "availabilityId" }, @@ -2639,76 +2639,76 @@ }, "time_zone" : { "type" : "string", - "description" : "The timezone for which this availability schedule originates.", + "description" : "The timezone for which this availability schedule originates", "example" : "Asia/Shanghai", "x-ballerina-name" : "timeZone" }, "segments" : { "type" : "array", - "description" : "The date on which the rule needs to be applied outside of the availability rule.", + "description" : "The date on which the rule needs to be applied outside of the availability rule", "items" : { "type" : "object", "description" : "The date interval to override." } } }, - "description" : "The availability schedule set by the user." + "description" : "The availability schedule set by the user" }, "InlineResponse2004Attendees" : { "type" : "object", "properties" : { "created" : { "type" : "string", - "description" : "This field indicates when the attendee attended this event.", + "description" : "This field indicates when the attendee attended this event", "readOnly" : true, "example" : "2023-12-21T06:19:23.899Z" }, "attendee_id" : { "type" : "string", - "description" : "The ID of attendee.", + "description" : "The ID of attendee", "readOnly" : true, "example" : "z7q0q2962w8iyj87249zbi7t10", "x-ballerina-name" : "attendeeId" }, "last_name" : { "type" : "string", - "description" : " The attendee's last name.", + "description" : " The attendee's last name", "example" : "tom", "x-ballerina-name" : "lastName" }, "display_name" : { "type" : "string", - "description" : "The attendee's name.", + "description" : "The attendee's name", "example" : "bob", "x-ballerina-name" : "displayName" }, "time_zone" : { "type" : "string", - "description" : "The attendee's time zone.", + "description" : "The attendee's time zone", "example" : "Asia/Shanghai", "x-ballerina-name" : "timeZone" }, "no_show" : { "type" : "boolean", - "description" : "Whether or not to show the event.", + "description" : "Whether or not to show the event", "example" : false, "x-ballerina-name" : "noShow" }, "booker" : { "type" : "boolean", - "description" : "Whether the attendee is the booker.", + "description" : "Whether the attendee is the booker", "readOnly" : true, "example" : true }, "first_name" : { "type" : "string", - "description" : "The attendee's first name.", + "description" : "The attendee's first name", "example" : "green", "x-ballerina-name" : "firstName" }, "email" : { "type" : "string", - "description" : "The attendee's email.", + "description" : "The attendee's email", "example" : "abc@zoom.us" } } @@ -2719,7 +2719,7 @@ "popular_schedules" : { "maxItems" : 5, "type" : "array", - "description" : "The most popular schedules in the given time range.", + "description" : "The most popular schedules in the given time range", "example" : { "Popular schedules" : [ { "Test 1-1" : 5 @@ -2738,7 +2738,7 @@ "users_with_least_events" : { "maxItems" : 5, "type" : "array", - "description" : "The users with the least scheduled events.", + "description" : "The users with the least scheduled events", "example" : { "Users with the least events" : [ { "Dan Smith" : 5 @@ -2761,7 +2761,7 @@ "popular_time_of_day" : { "maxItems" : 7, "type" : "array", - "description" : "The distribution of number of events scheduled in a day.", + "description" : "The distribution of number of events scheduled in a day", "example" : { "Popular times (hour of day)" : [ { "11" : 16 @@ -2786,7 +2786,7 @@ "event_distribution_by_duration" : { "maxItems" : 5, "type" : "array", - "description" : "The event distribution by duration.", + "description" : "The event distribution by duration", "items" : { "type" : "object", "properties" : { }, @@ -2806,7 +2806,7 @@ "popular_time_of_week" : { "maxItems" : 24, "type" : "array", - "description" : "The distribution of number of events scheduled in a week.", + "description" : "The distribution of number of events scheduled in a week", "example" : { "Popular times (day of week)" : [ { "Fri" : 20 @@ -2833,7 +2833,7 @@ "users_with_most_events" : { "maxItems" : 5, "type" : "array", - "description" : "The users with the most scheduled events.", + "description" : "The users with the most scheduled events", "example" : { "Users with the most events" : [ { "Dan Smith" : 65 @@ -2902,7 +2902,7 @@ } } }, - "description" : "The week of available time rule." + "description" : "The week of available time rule" }, "EventseventIdBody" : { "type" : "object", @@ -2916,18 +2916,18 @@ "meeting_notes" : { "maxLength" : 1024, "type" : "string", - "description" : "The meeting notes of the event.", + "description" : "The meeting notes of the event", "example" : "meeting notes", "x-ballerina-name" : "meetingNotes" }, "status" : { "type" : "string", - "description" : "The status of event: confirmed or cancelled.", + "description" : "The status of event: confirmed or cancelled", "example" : "confirmed", "enum" : [ "confirmed", "cancelled" ] } }, - "description" : "The portions of the event resource." + "description" : "The portions of the event resource" }, "AvailabilityavailabilityIdBody" : { "required" : [ "name", "time_zone" ], @@ -2935,12 +2935,12 @@ "properties" : { "default" : { "type" : "boolean", - "description" : "The default availability schedule in use." + "description" : "The default availability schedule in use" }, "name" : { "minLength" : 1, "type" : "string", - "description" : "The name of this availability schedule.", + "description" : "The name of this availability schedule", "example" : "Working hours" }, "segments_recurrence" : { @@ -2951,19 +2951,19 @@ }, "time_zone" : { "type" : "string", - "description" : "The timezone for which this availability schedule originates.", + "description" : "The timezone for which this availability schedule originates", "example" : "Asia/Shanghai", "x-ballerina-name" : "timeZone" }, "segments" : { "type" : "array", - "description" : "The date on which the rule needs to be applied outside of the availability rule.", + "description" : "The date on which the rule needs to be applied outside of the availability rule", "items" : { "$ref" : "#/components/schemas/ScheduleravailabilityavailabilityIdSegments" } } }, - "description" : "The availability schedule set by the user." + "description" : "The availability schedule set by the user" }, "SchedulerschedulesscheduleIdSegmentsRecurrence1" : { "type" : "object", @@ -3018,31 +3018,31 @@ } } }, - "description" : "The week of the available time rule." + "description" : "The week of the available time rule" }, "InlineResponse2005Creator" : { "type" : "object", "properties" : { "self" : { "type" : "boolean", - "description" : "This field indicates if you created the schedule. The field is read-only.", + "description" : "This field indicates if you created the schedule. The field is read-only", "readOnly" : true, "example" : true }, "display_name" : { "type" : "string", - "description" : "This field indicates the creator of the display name.", + "description" : "This field indicates the creator of the display name", "readOnly" : true, "example" : "name", "x-ballerina-name" : "displayName" }, "email" : { "type" : "string", - "description" : "This field indicates the creator's email address.", + "description" : "This field indicates the creator's email address", "example" : "easonfsxsysks3lgchitiw@scheduler.zoom.us" } }, - "description" : "The creator of the schedule. This field is read-only." + "description" : "The creator of the schedule. This field is read-only" }, "InlineResponse2012" : { "required" : [ "scheduling_url" ], @@ -3050,7 +3050,7 @@ "properties" : { "scheduling_url" : { "type" : "string", - "description" : "The scheduling link URL.", + "description" : "The scheduling link URL", "example" : "https://scheduler.zoomdev.us/manage/xu3o9skk6ygg8gk5hjvokjm2c0", "x-ballerina-name" : "schedulingUrl" } @@ -3061,29 +3061,29 @@ "properties" : { "end_date" : { "type" : "string", - "description" : "The schedule's end date.", + "description" : "The schedule's end date", "example" : "2023-12-20", "x-ballerina-name" : "endDate" }, "color" : { "type" : "string", - "description" : "The hexadecimal color value of the event type's scheduling page.", + "description" : "The hexadecimal color value of the event type's scheduling page", "example" : "#fff200" }, "description" : { "maxLength" : 8192, "type" : "string", - "description" : "The schedule's description.", + "description" : "The schedule's description", "example" : "15 Minute Meeting" }, "secret" : { "type" : "boolean", - "description" : "This field indicates if the event type is hidden on the owner's main scheduling page.", + "description" : "This field indicates if the event type is hidden on the owner's main scheduling page", "example" : false }, "availability_rules" : { "type" : "array", - "description" : "The availability of the time rule.", + "description" : "The availability of the time rule", "items" : { "$ref" : "#/components/schemas/InlineResponse2011AvailabilityRules" }, @@ -3093,12 +3093,12 @@ "maximum" : 200, "minimum" : 1, "type" : "number", - "description" : "This field indicates the maximum invitees per event.", + "description" : "This field indicates the maximum invitees per event", "example" : 1 }, "segments" : { "type" : "array", - "description" : "The available time segments of the event.", + "description" : "The available time segments of the event", "items" : { "$ref" : "#/components/schemas/SchedulerschedulesSegments" } @@ -3107,14 +3107,14 @@ "maximum" : 1440, "minimum" : 15, "type" : "number", - "description" : "This field indicates the duration of the meeting in minutes, range: [1, 1440].", + "description" : "This field indicates the duration of the meeting in minutes, range: [1, 1440]", "example" : 30 }, "cushion" : { "maximum" : 14340, "minimum" : 0, "type" : "number", - "description" : "This field indicates the minimum time before a schedule starts when the attendees can book.", + "description" : "This field indicates the minimum time before a schedule starts when the attendees can book", "example" : 0 }, "buffer" : { @@ -3130,32 +3130,32 @@ "maxLength" : 256, "minLength" : 3, "type" : "string", - "description" : "The event portion of the event's URL that identifies a specific web page.", + "description" : "The event portion of the event's URL that identifies a specific web page", "example" : "sales" }, "interval_type" : { "type" : "string", - "description" : "The schedule time range. Unlimited means forever and fixed means using `startDate` and `endDate`.", + "description" : "The schedule time range. Unlimited means forever and fixed means using `startDate` and `endDate`", "example" : "fixed", "enum" : [ "unlimited", "fixed" ], "x-ballerina-name" : "intervalType" }, "start_date" : { "type" : "string", - "description" : "The schedule's start date.", + "description" : "The schedule's start date", "example" : "2023-12-21", "x-ballerina-name" : "startDate" }, "add_on_type" : { "type" : "string", - "description" : "The method of the type of `addOn`, such as Zoom meeting, Zoom phone, or offline.", + "description" : "The method of the type of `addOn`, such as Zoom meeting, Zoom phone, or offline", "example" : "zoomMeeting", "enum" : [ "zoomMeeting", "zoomPhone", "offline" ], "x-ballerina-name" : "addOnType" }, "scheduling_url" : { "type" : "string", - "description" : "The URL of the user’s scheduling site where invitees book this event type.", + "description" : "The URL of the user’s scheduling site where invitees book this event type", "example" : "https://scheduler.zoom.us/zoom_us/sales", "x-ballerina-name" : "schedulingUrl" }, @@ -3163,14 +3163,14 @@ "maximum" : 720, "minimum" : 5, "type" : "number", - "description" : "This field sets the frequency of available time slots for invitees.", + "description" : "This field sets the frequency of available time slots for invitees", "example" : 30, "x-ballerina-name" : "startTimeIncrement" }, "summary" : { "maxLength" : 256, "type" : "string", - "description" : "The event's summary.", + "description" : "The event's summary", "example" : "daily meeting" }, "creator" : { @@ -3178,14 +3178,14 @@ }, "schedule_type" : { "type" : "string", - "description" : "This field indicates if the schedule type is \"one\" (belongs to an individual user) or \"multiple\".", + "description" : "This field indicates if the schedule type is \"one\" (belongs to an individual user) or \"multiple\"", "example" : "one", "enum" : [ "one", "multiple" ], "x-ballerina-name" : "scheduleType" }, "custom_fields" : { "type" : "array", - "description" : "This field contains the custom question.", + "description" : "This field contains the custom question", "items" : { "$ref" : "#/components/schemas/InlineResponse2011CustomFields" }, @@ -3193,14 +3193,14 @@ }, "active" : { "type" : "boolean", - "description" : "This field indicates if the schedule is active.", + "description" : "This field indicates if the schedule is active", "example" : true }, "booking_limit" : { "maximum" : 96, "minimum" : 0, "type" : "number", - "description" : "This field sets the maximum events allowed per day.", + "description" : "This field sets the maximum events allowed per day", "example" : 0, "x-ballerina-name" : "bookingLimit" }, @@ -3216,30 +3216,30 @@ "location" : { "maxLength" : 1024, "type" : "string", - "description" : "The information for a custom location.", + "description" : "The information for a custom location", "example" : "AAA office" }, "schedule_id" : { "type" : "string", - "description" : "The unique identifier of schedule.", + "description" : "The unique identifier of schedule", "example" : "ygfx661g9x8dwcgeusdqhsplc0", "x-ballerina-name" : "scheduleId" }, "updated" : { "type" : "string", - "description" : "The moment the schedule type was updated.", + "description" : "The moment the schedule type was updated", "readOnly" : true, "example" : "2023-12-21T06:18:32.087Z" }, "availability_override" : { "type" : "boolean", - "description" : "This field indicates the use of the availability rule.", + "description" : "This field indicates the use of the availability rule", "example" : false, "x-ballerina-name" : "availabilityOverride" }, "status" : { "type" : "string", - "description" : "The status of schedule: confirmed or cancelled.", + "description" : "The status of schedule: confirmed or cancelled", "example" : "confirmed", "enum" : [ "confirmed", "cancelled" ] } @@ -3250,7 +3250,7 @@ "properties" : { "use_custom" : { "type" : "boolean", - "description" : "This field indicates the use of custom availability instead of the rule.", + "description" : "This field indicates the use of custom availability instead of the rule", "example" : false, "x-ballerina-name" : "useCustom" }, @@ -3279,7 +3279,7 @@ }, "segments" : { "type" : "array", - "description" : "The available time segments of the event.", + "description" : "The available time segments of the event", "items" : { "$ref" : "#/components/schemas/SchedulerschedulesSegments" } @@ -3291,12 +3291,12 @@ "properties" : { "start" : { "type" : "string", - "description" : "The start time of this day.", + "description" : "The start time of this day", "example" : "09:00" }, "end" : { "type" : "string", - "description" : "The end time of this day.", + "description" : "The end time of this day", "example" : "17:00" } } @@ -3306,78 +3306,78 @@ "properties" : { "all_host_available" : { "type" : "integer", - "description" : "The number of \"all host available\" type schedules.", + "description" : "The number of \"all host available\" type schedules", "example" : 10, "x-ballerina-name" : "allHostAvailable" }, "scheduled_events_rescheduled" : { "type" : "integer", - "description" : "The number of rescheduled scheduled events.", + "description" : "The number of rescheduled scheduled events", "example" : 10, "x-ballerina-name" : "scheduledEventsRescheduled" }, "scheduled_events_completed" : { "type" : "integer", - "description" : "The number of completed scheduled events.", + "description" : "The number of completed scheduled events", "example" : 10, "x-ballerina-name" : "scheduledEventsCompleted" }, "schedules_canceled" : { "type" : "integer", - "description" : "The number of cancelled schedules.", + "description" : "The number of cancelled schedules", "example" : 10, "x-ballerina-name" : "schedulesCanceled" }, "one_off_meeting" : { "type" : "integer", - "description" : "The number of \"one-off\" type schedules.", + "description" : "The number of \"one-off\" type schedules", "example" : 10, "x-ballerina-name" : "oneOffMeeting" }, "meeting_poll" : { "type" : "integer", - "description" : "The number of \"meeting poll\" type schedules.", + "description" : "The number of \"meeting poll\" type schedules", "example" : 10, "x-ballerina-name" : "meetingPoll" }, "one_to_many" : { "type" : "integer", - "description" : "The number of \"one to many\" type schedules.", + "description" : "The number of \"one to many\" type schedules", "example" : 10, "x-ballerina-name" : "oneToMany" }, "any_host_available" : { "type" : "integer", - "description" : "The number of \"any host available\" type schedules.", + "description" : "The number of \"any host available\" type schedules", "example" : 10, "x-ballerina-name" : "anyHostAvailable" }, "scheduled_events_canceled" : { "type" : "integer", - "description" : "The number of cancelled scheduled events.", + "description" : "The number of cancelled scheduled events", "example" : 10, "x-ballerina-name" : "scheduledEventsCanceled" }, "one_to_one" : { "type" : "integer", - "description" : "The number of \"one to one\" type schedules.", + "description" : "The number of \"one to one\" type schedules", "example" : 10, "x-ballerina-name" : "oneToOne" }, "scheduled_events_created" : { "type" : "integer", - "description" : "The number of created scheduled events.", + "description" : "The number of created scheduled events", "example" : 10, "x-ballerina-name" : "scheduledEventsCreated" }, "schedules_created" : { "type" : "integer", - "description" : "The number of created schedules.", + "description" : "The number of created schedules", "example" : 10, "x-ballerina-name" : "schedulesCreated" } }, - "description" : "The stats of the last N days.", + "description" : "The stats of the last N days", "example" : "\"last_n_days\":{{\"created_scheduled_events\":65},{\"completed_scheduled_events\":34},{\"created_schedules\":20},{\"cancelled_scheduled_events\":14},{\"rescheduled_scheduled_events\":8},{\"cancelled_schedules\":3},{\"one_to_one\":10},{\"any_host_available\":5},{\"one_off_meeting\":2},{\"all_host_available\":1},{\"meeting_poll\":1},{\"one_to_many\":1}}" }, "SchedulerschedulesscheduleIdCustomFields" : { @@ -3388,7 +3388,7 @@ "maxItems" : 50, "minItems" : 1, "type" : "array", - "description" : "The invitee's option(s) for single_select or multi_select type of responses.", + "description" : "The invitee's option(s) for single_select or multi_select type of responses", "items" : { "maxLength" : 8192, "minLength" : 1, @@ -3412,28 +3412,28 @@ }, "name" : { "type" : "string", - "description" : "The custom question that the host created for the event type.", + "description" : "The custom question that the host created for the event type", "example" : "Please share anything that will help prepare for our meeting." }, "include_other" : { "type" : "boolean", - "description" : "If the custom question lets invitees record a written response, in addition to single-select or multiple-select type of responses, then it's true. Otherwise, it's false.", + "description" : "If the custom question lets invitees record a written response, in addition to single-select or multiple-select type of responses, then it's true. Otherwise, it's false", "example" : false, "x-ballerina-name" : "includeOther" }, "position" : { "type" : "number", - "description" : "The position of this question.", + "description" : "The position of this question", "example" : 0 }, "enabled" : { "type" : "boolean", - "description" : "If the question created by the host is turned ON and visible on the event booking page, then it's true. If it's turned OFF and invisible on the event booking page, then it's false.", + "description" : "If the question created by the host is turned ON and visible on the event booking page, then it's true. If it's turned OFF and invisible on the event booking page, then it's false", "example" : true }, "required" : { "type" : "boolean", - "description" : "If a response to the question, created by the host, is required for invitees to book the event type, then it's true. If it's not required, it's false.", + "description" : "If a response to the question, created by the host, is required for invitees to book the event type, then it's true. If it's not required, it's false", "example" : false } } @@ -3443,12 +3443,12 @@ "properties" : { "start" : { "type" : "string", - "description" : "The start date and time of the segment.", + "description" : "The start date and time of the segment", "example" : "2023-12-21T06:00:00Z" }, "end" : { "type" : "string", - "description" : "The end date and time of the segment.", + "description" : "The end date and time of the segment", "example" : "2023-12-21T06:00:00Z" } } @@ -3459,23 +3459,23 @@ "properties" : { "start" : { "type" : "string", - "description" : "The start date to override.", + "description" : "The start date to override", "example" : "2024-01-07T09:00:00Z" }, "end" : { "type" : "string", - "description" : "The end date to override.", + "description" : "The end date to override", "example" : "2024-01-08T09:00:00Z" } }, - "description" : "The date interval that needs to overridden." + "description" : "The date interval that needs to overridden" }, "InlineResponse2001" : { "type" : "object", "properties" : { "next_page_token" : { "type" : "string", - "description" : " The token for a later to retrieve only the entries that have changed since this result was returned. It's omitted if further results are available, in which case `nextPageToken` is provided.", + "description" : " The token for a later to retrieve only the entries that have changed since this result was returned. It's omitted if further results are available, in which case `nextPageToken` is provided", "example" : "Cj8KLwotCgsI3ujvqgYQgIXUGxIeChwKGjBzNzAyZWVtbjBzOTdlZXFhNXE1NWg4ZWJtGgwIzIPVrAYQwM3WrAPAPgE=", "x-ballerina-name" : "nextPageToken" }, @@ -3487,14 +3487,14 @@ } } }, - "description" : "The availability of the schedule query result of given user." + "description" : "The availability of the schedule query result of given user" }, "InlineResponse2003" : { "type" : "object", "properties" : { "next_page_token" : { "type" : "string", - "description" : "The token to access the next page of this result.", + "description" : "The token to access the next page of this result", "example" : "ffffffff97c5b97f_53slvrhet2n0xkxurl5ybgde40", "x-ballerina-name" : "nextPageToken" }, @@ -3511,23 +3511,23 @@ "properties" : { "owner" : { "type" : "string", - "description" : "The owner's ID.", + "description" : "The owner's ID", "readOnly" : true, "example" : "easonfsxsysks3lgchitiw@scheudler.zoom.us" }, "default" : { "type" : "boolean", - "description" : "The default availability schedule in use.", + "description" : "The default availability schedule in use", "example" : true }, "name" : { "type" : "string", - "description" : "The name of this availability schedule.", + "description" : "The name of this availability schedule", "example" : "Working hours" }, "availability_id" : { "type" : "string", - "description" : "The unique ID of availability.", + "description" : "The unique ID of availability", "example" : "x3h1u4id4liffdyszsp8kpxl80", "x-ballerina-name" : "availabilityId" }, @@ -3539,19 +3539,19 @@ }, "time_zone" : { "type" : "string", - "description" : "The timezone for which this availability schedule originates.", + "description" : "The timezone for which this availability schedule originates", "example" : "Asia/Shanghai", "x-ballerina-name" : "timeZone" } }, - "description" : "The availability schedule set by the user." + "description" : "The availability schedule set by the user" }, "InlineResponse2005" : { "type" : "object", "properties" : { "next_page_token" : { "type" : "string", - "description" : "The token that accesses the next page of this result.", + "description" : "The token that accesses the next page of this result", "example" : "aec369a4fce6ae655749b00fc7260bfd", "x-ballerina-name" : "nextPageToken" }, @@ -3569,12 +3569,12 @@ "summary" : { "maxLength" : 256, "type" : "string", - "description" : "The event's summary.", + "description" : "The event's summary", "example" : "daily meeting" }, "attendees" : { "type" : "array", - "description" : "The attendees of the event.", + "description" : "The attendees of the event", "items" : { "$ref" : "#/components/schemas/InlineResponse2004Attendees" } @@ -3582,31 +3582,31 @@ "meeting_notes" : { "maxLength" : 1024, "type" : "string", - "description" : "The meeting notes of the event.", + "description" : "The meeting notes of the event", "example" : "meeting notes", "x-ballerina-name" : "meetingNotes" }, "description" : { "maxLength" : 8192, "type" : "string", - "description" : "The event's description.", + "description" : "The event's description", "example" : "15 Minute Meeting" }, "end_date_time" : { "type" : "string", - "description" : "The scheduled event's end date time.", + "description" : "The scheduled event's end date time", "example" : "2023-12-21T16:30:00+08:00", "x-ballerina-name" : "endDateTime" }, "event_id" : { "type" : "string", - "description" : "The unique identifier of event.", + "description" : "The unique identifier of event", "example" : "woft7torlatbw8ek24bmit5k60", "x-ballerina-name" : "eventId" }, "event_type" : { "type" : "string", - "description" : "This field indicates whether the type is default(scheduled) or a pending event.", + "description" : "This field indicates whether the type is default(scheduled) or a pending event", "readOnly" : true, "example" : "default", "enum" : [ "default", "pending" ], @@ -3614,7 +3614,7 @@ }, "tracking_params" : { "type" : "array", - "description" : "The information to track the source of invitee. Only use this setting you add UTM parameters in schedule links.", + "description" : "The information to track the source of invitee. Only use this setting you add UTM parameters in schedule links", "items" : { "$ref" : "#/components/schemas/InlineResponse2004TrackingParams" }, @@ -3622,7 +3622,7 @@ }, "guests" : { "type" : "array", - "description" : "The guest's collection.", + "description" : "The guest's collection", "items" : { "type" : "string", "description" : "The guest's email.", @@ -3632,28 +3632,28 @@ "location" : { "maxLength" : 1024, "type" : "string", - "description" : "The information for a custom location.", + "description" : "The information for a custom location", "example" : "AAA office" }, "start_date_time" : { "type" : "string", - "description" : "The scheduled event's start date time.", + "description" : "The scheduled event's start date time", "example" : "2023-12-21T16:00:00+08:00", "x-ballerina-name" : "startDateTime" }, "schedule_id" : { "type" : "string", - "description" : "The unique identifier of schedule.", + "description" : "The unique identifier of schedule", "example" : "ygfx661g9x8dwcgeusdqhsplc0_20231220T160000Z", "x-ballerina-name" : "scheduleId" }, "updated" : { "type" : "string", - "description" : "The moment the event was updated.", + "description" : "The moment the event was updated", "example" : "2023-12-21T06:19:28.309Z" }, "external_location" : { - "description" : "The meeting details for when users have scheduled appointments.", + "description" : "The meeting details for when users have scheduled appointments", "readOnly" : true, "oneOf" : [ { "type" : "object", @@ -3694,7 +3694,7 @@ }, "status" : { "type" : "string", - "description" : "The status of event: confirmed or cancelled.", + "description" : "The status of event: confirmed or cancelled", "example" : "confirmed", "enum" : [ "confirmed", "cancelled" ] } @@ -3705,29 +3705,29 @@ "properties" : { "end_date" : { "type" : "string", - "description" : "The schedule's end date.", + "description" : "The schedule's end date", "example" : "2023-12-28", "x-ballerina-name" : "endDate" }, "color" : { "type" : "string", - "description" : "The hexadecimal color value of the event type's scheduling page.", + "description" : "The hexadecimal color value of the event type's scheduling page", "example" : "#fff200" }, "description" : { "maxLength" : 8192, "type" : "string", - "description" : "The schedule's description.", + "description" : "The schedule's description", "example" : "15 Minute Meeting" }, "secret" : { "type" : "boolean", - "description" : "This field indicates if the event type is hidden on the owner's main scheduling page.", + "description" : "This field indicates if the event type is hidden on the owner's main scheduling page", "example" : false }, "availability_rules" : { "type" : "array", - "description" : "The availability of the time rule.", + "description" : "The availability of the time rule", "items" : { "$ref" : "#/components/schemas/InlineResponse2005AvailabilityRules" }, @@ -3737,12 +3737,12 @@ "maximum" : 200, "minimum" : 1, "type" : "number", - "description" : "This field indicates the maximum invitees per event.", + "description" : "This field indicates the maximum invitees per event", "example" : 1 }, "segments" : { "type" : "array", - "description" : "The available time segments of the event.", + "description" : "The available time segments of the event", "items" : { "$ref" : "#/components/schemas/SchedulerschedulesSegments" } @@ -3751,14 +3751,14 @@ "maximum" : 1440, "minimum" : 15, "type" : "number", - "description" : "This field indicates the duration of the meeting in minutes, range: [1, 1440].", + "description" : "This field indicates the duration of the meeting in minutes, range: [1, 1440]", "example" : 30 }, "cushion" : { "maximum" : 14340, "minimum" : 0, "type" : "number", - "description" : "This field indicates the minimum time before a schedule starts when the attendees can book.", + "description" : "This field indicates the minimum time before a schedule starts when the attendees can book", "example" : 0 }, "buffer" : { @@ -3774,32 +3774,32 @@ "maxLength" : 256, "minLength" : 3, "type" : "string", - "description" : "The event portion of the event's URL that identifies a specific web page.", + "description" : "The event portion of the event's URL that identifies a specific web page", "example" : "sales" }, "interval_type" : { "type" : "string", - "description" : "The schedule time range. Unlimited means forever and fixed means using `startDate` and `endDate`.", + "description" : "The schedule time range. Unlimited means forever and fixed means using `startDate` and `endDate`", "example" : "fixed", "enum" : [ "unlimited", "fixed" ], "x-ballerina-name" : "intervalType" }, "start_date" : { "type" : "string", - "description" : "The schedule's start date.", + "description" : "The schedule's start date", "example" : "2023-12-21", "x-ballerina-name" : "startDate" }, "add_on_type" : { "type" : "string", - "description" : "The method of the type of `addOn`, such as Zoom meeting, Zoom phone, or offline.", + "description" : "The method of the type of `addOn`, such as Zoom meeting, Zoom phone, or offline", "example" : "zoomMeeting", "enum" : [ "zoomMeeting", "zoomPhone", "offline" ], "x-ballerina-name" : "addOnType" }, "scheduling_url" : { "type" : "string", - "description" : "The URL of the user's scheduling site where invitees book this event type.", + "description" : "The URL of the user's scheduling site where invitees book this event type", "example" : "https://scheduler.zoom.us/zoom_us/sales", "x-ballerina-name" : "schedulingUrl" }, @@ -3807,14 +3807,14 @@ "maximum" : 720, "minimum" : 5, "type" : "number", - "description" : "This field sets the frequency of available time slots for invitees.", + "description" : "This field sets the frequency of available time slots for invitees", "example" : 30, "x-ballerina-name" : "startTimeIncrement" }, "summary" : { "maxLength" : 256, "type" : "string", - "description" : "The event's summary.", + "description" : "The event's summary", "example" : "daily meeting" }, "creator" : { @@ -3822,14 +3822,14 @@ }, "schedule_type" : { "type" : "string", - "description" : "This field indicates if the schedule type is \"one\" (belongs to an individual user) or \"multiple\".", + "description" : "This field indicates if the schedule type is \"one\" (belongs to an individual user) or \"multiple\"", "example" : "one", "enum" : [ "one", "multiple" ], "x-ballerina-name" : "scheduleType" }, "custom_fields" : { "type" : "array", - "description" : "This field contains the custom question.", + "description" : "This field contains the custom question", "items" : { "$ref" : "#/components/schemas/InlineResponse2011CustomFields" }, @@ -3844,7 +3844,7 @@ "maximum" : 96, "minimum" : 0, "type" : "number", - "description" : "This field sets the maximum events allowed per day.", + "description" : "This field sets the maximum events allowed per day", "example" : 0, "x-ballerina-name" : "bookingLimit" }, @@ -3860,30 +3860,30 @@ "location" : { "maxLength" : 1024, "type" : "string", - "description" : "The information for a custom location.", + "description" : "The information for a custom location", "example" : "AAA office" }, "schedule_id" : { "type" : "string", - "description" : "The unique identifier of the schedule.", + "description" : "The unique identifier of the schedule", "example" : "ygfx661g9x8dwcgeusdqhsplc0", "x-ballerina-name" : "scheduleId" }, "updated" : { "type" : "string", - "description" : "The moment the schedule type was updated.", + "description" : "The moment the schedule type was updated", "readOnly" : true, "example" : "2023-12-21T06:18:32.087Z" }, "availability_override" : { "type" : "boolean", - "description" : "This field indicates the use of the availability rule.", + "description" : "This field indicates the use of the availability rule", "example" : false, "x-ballerina-name" : "availabilityOverride" }, "status" : { "type" : "string", - "description" : "The status of schedule: confirmed or cancelled.", + "description" : "The status of schedule: confirmed or cancelled", "example" : "confirmed", "enum" : [ "confirmed", "cancelled" ] } @@ -3894,13 +3894,13 @@ "properties" : { "scheduling_url" : { "type" : "string", - "description" : "The URL of the user’s scheduling site where invitees book this event type.", + "description" : "The URL of the user’s scheduling site where invitees book this event type", "example" : "https://scheduler.zoom.us/zoom_us", "x-ballerina-name" : "schedulingUrl" }, "logo" : { "type" : "string", - "description" : "This field enables users to upload their company's logo on Zoom.", + "description" : "This field enables users to upload their company's logo on Zoom", "example" : "user logo" }, "display_name" : { @@ -3911,51 +3911,51 @@ }, "time_zone" : { "type" : "string", - "description" : "The time zone to use when presenting time to the user.", + "description" : "The time zone to use when presenting time to the user", "example" : "America/New York", "x-ballerina-name" : "timeZone" }, "slug" : { "type" : "string", - "description" : "The portion of URL for the user's scheduling page where invitees book sessions that renders in a human-readable format.", + "description" : "The portion of URL for the user's scheduling page where invitees book sessions that renders in a human-readable format", "example" : "zoom_us" }, "picture" : { "type" : "string", - "description" : "This field enables users to upload their personal avatars on Zoom.", + "description" : "This field enables users to upload their personal avatars on Zoom", "example" : "base64 encoding string" } }, - "description" : "The user's information." + "description" : "The user's information" }, "InlineResponse2006" : { "type" : "object", "properties" : { "end_date" : { "type" : "string", - "description" : "The schedule's end date.", + "description" : "The schedule's end date", "example" : "2023-12-28", "x-ballerina-name" : "endDate" }, "color" : { "type" : "string", - "description" : "The hexadecimal color value of the event type's scheduling page.", + "description" : "The hexadecimal color value of the event type's scheduling page", "example" : "#fff200" }, "description" : { "maxLength" : 8192, "type" : "string", - "description" : "The schedule's description.", + "description" : "The schedule's description", "example" : "15 Minute Meeting" }, "secret" : { "type" : "boolean", - "description" : "This field indicates if the event type is hidden on the owner's main scheduling page.", + "description" : "This field indicates if the event type is hidden on the owner's main scheduling page", "example" : false }, "availability_rules" : { "type" : "array", - "description" : "The availability of the time rule.", + "description" : "The availability of the time rule", "items" : { "$ref" : "#/components/schemas/InlineResponse2006AvailabilityRules" }, @@ -3965,12 +3965,12 @@ "maximum" : 200, "minimum" : 1, "type" : "number", - "description" : "This field indicates the maximum invitees per event.", + "description" : "This field indicates the maximum invitees per event", "example" : 1 }, "segments" : { "type" : "array", - "description" : "The available time segments of the event.", + "description" : "The available time segments of the event", "items" : { "$ref" : "#/components/schemas/SchedulerschedulesSegments" } @@ -3979,14 +3979,14 @@ "maximum" : 1440, "minimum" : 15, "type" : "number", - "description" : "This field indicates the duration of the meeting in minutes, range: [1, 1440].", + "description" : "This field indicates the duration of the meeting in minutes, range: [1, 1440]", "example" : 30 }, "cushion" : { "maximum" : 14340, "minimum" : 0, "type" : "number", - "description" : "This field indicates the minimum time before a schedule starts when the attendees can book.", + "description" : "This field indicates the minimum time before a schedule starts when the attendees can book", "example" : 0 }, "buffer" : { @@ -4002,32 +4002,32 @@ "maxLength" : 256, "minLength" : 3, "type" : "string", - "description" : "The event portion of the event's URL that identifies a specific web page.", + "description" : "The event portion of the event's URL that identifies a specific web page", "example" : "sales" }, "interval_type" : { "type" : "string", - "description" : "The schedule time range. Unlimited means forever and fixed means using `startDate` and `endDate`.", + "description" : "The schedule time range. Unlimited means forever and fixed means using `startDate` and `endDate`", "example" : "fixed", "enum" : [ "unlimited", "fixed" ], "x-ballerina-name" : "intervalType" }, "start_date" : { "type" : "string", - "description" : "The schedule's start date.", + "description" : "The schedule's start date", "example" : "2023-12-21", "x-ballerina-name" : "startDate" }, "add_on_type" : { "type" : "string", - "description" : "The method of the type of `addOn`, such as Zoom meeting, Zoom phone, or offline.", + "description" : "The method of the type of `addOn`, such as Zoom meeting, Zoom phone, or offline", "example" : "zoomMeeting", "enum" : [ "zoomMeeting", "zoomPhone", "offline" ], "x-ballerina-name" : "addOnType" }, "scheduling_url" : { "type" : "string", - "description" : "The URL of the user's scheduling site where invitees book this event type.", + "description" : "The URL of the user's scheduling site where invitees book this event type", "example" : "https://scheduler.zoom.us/zoom_us/sales", "x-ballerina-name" : "schedulingUrl" }, @@ -4035,14 +4035,14 @@ "maximum" : 720, "minimum" : 5, "type" : "number", - "description" : "This field sets the frequency of available time slots for invitees.", + "description" : "This field sets the frequency of available time slots for invitees", "example" : 30, "x-ballerina-name" : "startTimeIncrement" }, "summary" : { "maxLength" : 256, "type" : "string", - "description" : "The event's summary.", + "description" : "The event's summary", "example" : "daily meeting" }, "creator" : { @@ -4050,14 +4050,14 @@ }, "schedule_type" : { "type" : "string", - "description" : "This field indicates if the schedule type is **one** (belongs to an individual user) or **multiple**.", + "description" : "This field indicates if the schedule type is **one** (belongs to an individual user) or **multiple**", "example" : "one", "enum" : [ "one", "multiple" ], "x-ballerina-name" : "scheduleType" }, "custom_fields" : { "type" : "array", - "description" : "This field contains the custom question.", + "description" : "This field contains the custom question", "items" : { "$ref" : "#/components/schemas/InlineResponse2011CustomFields" }, @@ -4065,14 +4065,14 @@ }, "active" : { "type" : "boolean", - "description" : "This field indicates if the schedule is active.", + "description" : "This field indicates if the schedule is active", "example" : true }, "booking_limit" : { "maximum" : 96, "minimum" : 0, "type" : "number", - "description" : "This field sets the maximum events allowed per day.", + "description" : "This field sets the maximum events allowed per day", "example" : 0, "x-ballerina-name" : "bookingLimit" }, @@ -4088,30 +4088,30 @@ "location" : { "maxLength" : 1024, "type" : "string", - "description" : "The information for a custom location.", + "description" : "The information for a custom location", "example" : "AAA office" }, "schedule_id" : { "type" : "string", - "description" : "The unique identifier of a schedule.", + "description" : "The unique identifier of a schedule", "example" : "ygfx661g9x8dwcgeusdqhsplc0", "x-ballerina-name" : "scheduleId" }, "updated" : { "type" : "string", - "description" : "The moment the schedule type was updated.", + "description" : "The moment the schedule type was updated", "readOnly" : true, "example" : "2023-12-21T06:18:32.087Z" }, "availability_override" : { "type" : "boolean", - "description" : "This field indicates the use of the availability rule.", + "description" : "This field indicates the use of the availability rule", "example" : false, "x-ballerina-name" : "availabilityOverride" }, "status" : { "type" : "string", - "description" : "The status of schedule: confirmed or cancelled.", + "description" : "The status of schedule: confirmed or cancelled", "example" : "confirmed", "enum" : [ "confirmed", "cancelled" ] } @@ -4122,7 +4122,8 @@ "openapi_authorization" : { "type" : "apiKey", "name" : "Authorization", - "in" : "header" + "in" : "header", + "x-ballerina-name" : "authorization" }, "openapi_oauth" : { "type" : "oauth2", diff --git a/gradle.properties b/gradle.properties index e0fa520..97cf7fb 100644 --- a/gradle.properties +++ b/gradle.properties @@ -4,4 +4,4 @@ version=1.0.0-SNAPSHOT releasePluginVersion=2.8.0 ballerinaGradlePluginVersion=2.2.4 -ballerinaLangVersion=2201.12.0 +ballerinaLangVersion=2201.12.7 From 699fdc7614cb7790be41aa86dfd22949de5b1bf7 Mon Sep 17 00:00:00 2001 From: linukaar Date: Thu, 19 Jun 2025 15:11:22 +0530 Subject: [PATCH 06/22] Add tests --- .gitignore | 3 + ballerina/Dependencies.toml | 4 - ballerina/tests/mock_service.bal | 225 ++++++++++++++++--------------- ballerina/tests/tests.bal | 123 +++++++---------- 4 files changed, 171 insertions(+), 184 deletions(-) diff --git a/.gitignore b/.gitignore index 32d4c58..64ea86f 100644 --- a/.gitignore +++ b/.gitignore @@ -53,3 +53,6 @@ build # Ignore Docker env file docker.env + +## Ignore Ballerina test configuration file +.ballerina-test-config.toml \ No newline at end of file diff --git a/ballerina/Dependencies.toml b/ballerina/Dependencies.toml index 2a98f8e..a7942f4 100644 --- a/ballerina/Dependencies.toml +++ b/ballerina/Dependencies.toml @@ -306,9 +306,6 @@ version = "2.7.0" dependencies = [ {org = "ballerina", name = "jballerina.java"} ] -modules = [ - {org = "ballerina", packageName = "time", moduleName = "time"} -] [[package]] org = "ballerina" @@ -344,7 +341,6 @@ dependencies = [ {org = "ballerina", name = "log"}, {org = "ballerina", name = "os"}, {org = "ballerina", name = "test"}, - {org = "ballerina", name = "time"}, {org = "ballerina", name = "url"}, {org = "ballerinai", name = "observe"} ] diff --git a/ballerina/tests/mock_service.bal b/ballerina/tests/mock_service.bal index 2853732..51cb41c 100644 --- a/ballerina/tests/mock_service.bal +++ b/ballerina/tests/mock_service.bal @@ -17,43 +17,10 @@ import ballerina/http; import ballerina/log; - listener http:Listener httpListener = new (9091); http:Service mockService = service object { - # Delete availability - # - # + availabilityId - The UUID of the availability schedule. - # + return - returns can be any of following types - # http:NoContent (If successful, this method returns an empty response body.) - # http:Response (The request has failed.) - resource function delete scheduler/availability/[string availabilityId]() returns http:Response { - return new http:Response(); - } - - # Delete scheduled events - # - # + eventId - The event ID - # + user_id - User ID query parameter - # + return - returns can be any of following types - # http:NoContent (If successful, this method returns an empty response body.) - # http:Response (The request has failed.) - resource function delete scheduler/events/[string eventId](string? user_id) returns http:Response { - return new http:Response(); - } - - # Delete schedules - # - # + scheduleId - The unique identifier of the schedule. - # + user_id - User ID query parameter - # + return - returns can be any of following types - # http:NoContent (If successful, this method returns an empty response body.) - # http:Response (The request has failed.) - resource function delete scheduler/schedules/[string scheduleId](string? user_id) returns http:Response { - return new http:Response(); - } - # Report analytics # # + user_id - The specific user's web user ID @@ -63,7 +30,7 @@ http:Service mockService = service object { # + return - returns can be any of following types # http:Ok (If successful, this method returns the scheduler analytics.) # http:Response (The request has failed.) - resource function get scheduler/analytics(string? user_id, string? 'from, string? to, string? time_zone) returns json|http:Response { + resource function get analytics(string? user_id, string? 'from, string? to, string? time_zone) returns json|http:Response { return { "last_n_days": { "scheduled_events_created": 10, @@ -104,7 +71,7 @@ http:Service mockService = service object { # + return - returns can be any of following types # http:Ok (Successful availability of the schedule query result.) # http:Response (The request has failed.) - resource function get scheduler/availability(int? page_size, string? next_page_token, string? user_id) returns json|http:Response { + resource function get availability(int? page_size, string? next_page_token, string? user_id) returns json|http:Response { return { "items": [ { @@ -124,7 +91,7 @@ http:Service mockService = service object { # + return - returns can be any of following types # http:Ok (If successful, this method returns an availability resource.) # http:Response (The request has failed.) - resource function get scheduler/availability/[string availabilityId]() returns json|http:Response { + resource function get availability/[string availabilityId]() returns json|http:Response { return { "owner": "test-owner@example.com", "default": true, @@ -134,6 +101,45 @@ http:Service mockService = service object { }; } + # Delete availability + # + # + availabilityId - The UUID of the availability schedule. + # + return - returns can be any of following types + # http:NoContent (If successful, this method returns an empty response body.) + # http:Response (The request has failed.) + resource function delete availability/[string availabilityId]() returns http:Response { + http:Response response = new; + response.statusCode = 204; + return response; + } + + # Patch availability + # + # + availabilityId - The UUID of the availability schedule. + # + return - returns can be any of following types + # http:NoContent (If successful, this method returns an empty response body.) + # http:Response (The request has failed.) + resource function patch availability/[string availabilityId](@http:Payload json payload) returns http:Response { + http:Response response = new; + response.statusCode = 204; + return response; + } + + # Insert availability + # + # + return - returns can be any of following types + # http:Created (If successful, this method returns an availability resource.) + # http:Response (The request has failed.) + resource function post availability(@http:Payload json payload) returns json|http:Response { + return { + "owner": "test-owner@example.com", + "default": true, + "name": "New Working Hours", + "availability_id": "avail-new-123", + "time_zone": "UTC" + }; + } + # List scheduled events # # + to - The upper bound for filtering @@ -149,7 +155,7 @@ http:Service mockService = service object { # + return - returns can be any of following types # http:Ok (If successful, this method returns scheduled events.) # http:Response (The request has failed.) - resource function get scheduler/events(string? to, string? 'from, int? page_size, string? order_by, string? time_zone, string? next_page_token, boolean? show_deleted, string? event_type, string? user_id, string? search) returns json|http:Response { + resource function get events(string? to, string? 'from, int? page_size, string? order_by, string? time_zone, string? next_page_token, boolean? show_deleted, string? event_type, string? user_id, string? search) returns json|http:Response { return { "items": [ { @@ -172,7 +178,7 @@ http:Service mockService = service object { # + return - returns can be any of following types # http:Ok (If successful, this method returns the scheduled event resource.) # http:Response (The request has failed.) - resource function get scheduler/events/[string eventId](string? user_id) returns json|http:Response { + resource function get events/[string eventId](string? user_id) returns json|http:Response { return { "event_id": eventId, "summary": "Test Meeting", @@ -184,6 +190,32 @@ http:Service mockService = service object { }; } + # Delete scheduled events + # + # + eventId - The event ID + # + user_id - User ID query parameter + # + return - returns can be any of following types + # http:NoContent (If successful, this method returns an empty response body.) + # http:Response (The request has failed.) + resource function delete events/[string eventId](string? user_id) returns http:Response { + http:Response response = new; + response.statusCode = 204; + return response; + } + + # Patch scheduled events + # + # + eventId - The opaque identifier of the scheduled event. + # + user_id - User ID query parameter + # + return - returns can be any of following types + # http:NoContent (If successful, this method returns an event resource.) + # http:Response (The request has failed.) + resource function patch events/[string eventId](@http:Payload json payload, string? user_id) returns http:Response { + http:Response response = new; + response.statusCode = 204; + return response; + } + # List schedules # # + to - The upper bound for filtering @@ -196,7 +228,7 @@ http:Service mockService = service object { # + return - returns can be any of following types # http:Ok (If successful, this method returns schedules.) # http:Response (The request has failed.) - resource function get scheduler/schedules(string? to, string? 'from, int? page_size, string? next_page_token, boolean? show_deleted, string? time_zone, string? user_id) returns json|http:Response { + resource function get schedules(string? to, string? 'from, int? page_size, string? next_page_token, boolean? show_deleted, string? time_zone, string? user_id) returns json|http:Response { return { "items": [ { @@ -213,6 +245,26 @@ http:Service mockService = service object { }; } + # Insert schedules + # + # + user_id - User ID query parameter + # + return - returns can be any of following types + # http:Created (If successful, this method returns a schedule resource.) + # http:Response (The request has failed.) + resource function post schedules(@http:Payload json payload, string? user_id) returns json|http:Response { + json schedulePayload = payload; + return { + "schedule_id": "schedule-new-789", + "summary": schedulePayload is map && schedulePayload.hasKey("summary") ? schedulePayload["summary"] : "Default Summary", + "description": schedulePayload is map && schedulePayload.hasKey("description") ? schedulePayload["description"] : "Default description", + "duration": schedulePayload is map && schedulePayload.hasKey("duration") ? schedulePayload["duration"] : 30, + "capacity": schedulePayload is map && schedulePayload.hasKey("capacity") ? schedulePayload["capacity"] : 1, + "active": schedulePayload is map && schedulePayload.hasKey("active") ? schedulePayload["active"] : true, + "availability_override": schedulePayload is map && schedulePayload.hasKey("availability_override") ? schedulePayload["availability_override"] : false, + "status": "confirmed" + }; + } + # Get schedules # # + scheduleId - The schedule's unique identifier. @@ -220,7 +272,7 @@ http:Service mockService = service object { # + return - returns can be any of following types # http:Ok (If successful, this method returns a schedule resource.) # http:Response (The request has failed.) - resource function get scheduler/schedules/[string scheduleId](string? user_id) returns json|http:Response { + resource function get schedules/[string scheduleId](string? user_id) returns json|http:Response { return { "schedule_id": scheduleId, "summary": "Test Schedule", @@ -233,40 +285,17 @@ http:Service mockService = service object { }; } - # Get user - # - # + userId - The user ID - # + return - returns can be any of following types - # http:Ok (If successful, this method returns user information.) - # http:Response (The request has failed.) - resource function get scheduler/users/[string userId]() returns json|http:Response { - return { - "display_name": "Test User", - "scheduling_url": "https://scheduler.zoom.us/test-user", - "time_zone": "UTC", - "slug": "test-user" - }; - } - - # Patch availability - # - # + availabilityId - The UUID of the availability schedule. - # + return - returns can be any of following types - # http:NoContent (If successful, this method returns an empty response body.) - # http:Response (The request has failed.) - resource function patch scheduler/availability/[string availabilityId](@http:Payload json payload) returns http:Response { - return new http:Response(); - } - - # Patch scheduled events + # Delete schedules # - # + eventId - The opaque identifier of the scheduled event. + # + scheduleId - The unique identifier of the schedule. # + user_id - User ID query parameter # + return - returns can be any of following types - # http:NoContent (If successful, this method returns an event resource.) + # http:NoContent (If successful, this method returns an empty response body.) # http:Response (The request has failed.) - resource function patch scheduler/events/[string eventId](@http:Payload json payload, string? user_id) returns http:Response { - return new http:Response(); + resource function delete schedules/[string scheduleId](string? user_id) returns http:Response { + http:Response response = new; + response.statusCode = 204; + return response; } # Patch schedules @@ -276,56 +305,38 @@ http:Service mockService = service object { # + return - returns can be any of following types # http:NoContent (If successful, this method returns an empty response body.) # http:Response (The request has failed.) - resource function patch scheduler/schedules/[string scheduleId](@http:Payload json payload, string? user_id) returns http:Response { - return new http:Response(); - } - - # Insert availability - # - # + return - returns can be any of following types - # http:Created (If successful, this method returns an availability resource.) - # http:Response (The request has failed.) - resource function post scheduler/availability(@http:Payload json payload) returns json|http:Response { - return { - "owner": "test-owner@example.com", - "default": true, - "name": "New Working Hours", - "availability_id": "avail-new-123", - "time_zone": "UTC" - }; + resource function patch schedules/[string scheduleId](@http:Payload json payload, string? user_id) returns http:Response { + http:Response response = new; + response.statusCode = 204; + return response; } - # Insert schedules + # Single use link # - # + user_id - User ID query parameter # + return - returns can be any of following types - # http:Created (If successful, this method returns a schedule resource.) + # http:Created (If successful, this method returns a scheduling link URL.) # http:Response (The request has failed.) - resource function post scheduler/schedules(@http:Payload json payload, string? user_id) returns json|http:Response { + resource function post schedules/single_use_link(@http:Payload json payload) returns json|http:Response { json schedulePayload = payload; + string scheduleId = schedulePayload is map && schedulePayload.hasKey("schedule_id") && schedulePayload["schedule_id"] is string + ? schedulePayload["schedule_id"] : "default-id"; return { - "schedule_id": "schedule-new-789", - "summary": schedulePayload is map && schedulePayload.hasKey("summary") ? schedulePayload["summary"] : "Default Summary", - "description": schedulePayload is map && schedulePayload.hasKey("description") ? schedulePayload["description"] : "Default description", - "duration": schedulePayload is map && schedulePayload.hasKey("duration") ? schedulePayload["duration"] : 30, - "capacity": schedulePayload is map && schedulePayload.hasKey("capacity") ? schedulePayload["capacity"] : 1, - "active": schedulePayload is map && schedulePayload.hasKey("active") ? schedulePayload["active"] : true, - "availability_override": schedulePayload is map && schedulePayload.hasKey("availabilityOverride") ? schedulePayload["availabilityOverride"] : false, - "status": "confirmed" + "scheduling_url": "https://scheduler.zoom.us/single-use/" + scheduleId }; } - # Single use link + # Get user # + # + userId - The user ID # + return - returns can be any of following types - # http:Created (If successful, this method returns a scheduling link URL.) + # http:Ok (If successful, this method returns user information.) # http:Response (The request has failed.) - resource function post scheduler/schedules/single_use_link(@http:Payload json payload) returns json|http:Response { - json schedulePayload = payload; - string scheduleId = schedulePayload is map && schedulePayload.hasKey("schedule_id") && schedulePayload["schedule_id"] is string - ? schedulePayload["schedule_id"] : "default-id"; - return { - "scheduling_url": "https://scheduler.zoom.us/single-use/" + scheduleId + resource function get users/[string userId]() returns json|http:Response { + return { + "display_name": "Test User", + "scheduling_url": "https://scheduler.zoom.us/test-user", + "time_zone": "UTC", + "slug": "test-user" }; } }; diff --git a/ballerina/tests/tests.bal b/ballerina/tests/tests.bal index 8786537..2de0be3 100644 --- a/ballerina/tests/tests.bal +++ b/ballerina/tests/tests.bal @@ -10,38 +10,33 @@ // Unless required by applicable law or agreed to in writing, // software distributed under the License is distributed on an // "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY -// KIND, either express or implied. See the License for the +// KIND, either express or implied. See the License for the // specific language governing permissions and limitations // under the License. import ballerina/os; import ballerina/test; -import ballerina/time; configurable boolean isLiveServer = os:getEnv("IS_LIVE_SERVER") == "true"; -configurable string userId = isLiveServer ? os:getEnv("ZOOM_USER_ID") : "test"; -configurable string token = isLiveServer ? os:getEnv("ZOOM_TOKEN") : "test"; -configurable string serviceUrl = isLiveServer ? "https://api.zoom.us/v2" : "http://localhost:9091"; +configurable string userId = isLiveServer ? os:getEnv("ZOOM_USER_ID") : "test-user-123"; +configurable string token = isLiveServer ? os:getEnv("ZOOM_TOKEN") : "test-token"; +configurable string serviceUrl = isLiveServer ? "https://api.zoom.us/v2/scheduler" : "http://localhost:9091"; ConnectionConfig config = { auth: { - Authorization: "Bearer " + token + authorization: "Bearer " + token } }; + final Client zoomClient = check new Client(config, serviceUrl); -final string testUserId = "test-user-123"; final string testScheduleId = "test-schedule-456"; @test:Config { groups: ["live_tests", "mock_tests"] } isolated function testGetSchedulerAnalytics() returns error? { - map headers = {}; - - InlineResponse200 response = check zoomClient->/scheduler/analytics.get(headers, - userId = userId - ); + InlineResponse200 response = check zoomClient->/analytics.get(userId = userId); test:assertTrue(response.lastNDays !is ()); } @@ -49,61 +44,48 @@ isolated function testGetSchedulerAnalytics() returns error? { groups: ["live_tests", "mock_tests"] } isolated function testGetSchedulerAvailability() returns error? { - map headers = {}; - - InlineResponse2001 response = check zoomClient->/scheduler/availability.get(headers, - userId = userId - ); + InlineResponse2001 response = check zoomClient->/availability.get(userId = userId); test:assertTrue(response.items !is ()); } +// This test is enabled only for mock server, as getting a specific user by a test ID is not feasible on the live server. @test:Config { - groups: ["live_tests", "mock_tests"] + enable: !isLiveServer, + groups: ["mock_tests"] } isolated function testGetSchedulerUser() returns error? { - map headers = {}; - - InlineResponse2007 response = check zoomClient->/scheduler/users/[testUserId].get(headers); + InlineResponse2007 response = check zoomClient->/users/[userId].get(); test:assertTrue(response.displayName !is ()); } +// This test is enabled only for mock server, as creating arbitrary schedules may not be desirable or permissible on the live server. @test:Config { - groups: ["live_tests", "mock_tests"] + enable: !isLiveServer, + groups: ["mock_tests"] } isolated function testCreateSchedule() returns error? { - time:Utc utc = time:utcNow(); - string scheduleSummary = "Test Schedule at " + utc.toString(); - SchedulerSchedulesBody schedulePayload = { - summary: scheduleSummary, + summary: "Test Schedule", duration: 30, capacity: 1, - availabilityRules: [ - { - email: "test@example.com", - timeZone: "UTC" - } - ], + availabilityRules: [{ + email: "test@example.com", + timeZone: "UTC" + }], availabilityOverride: false }; - map headers = {}; - - InlineResponse2011 response = check zoomClient->/scheduler/schedules.post(schedulePayload, headers, - userId = userId - ); + InlineResponse2011 response = check zoomClient->/schedules.post(payload = schedulePayload, userId = userId); test:assertTrue(response.scheduleId !is ()); } +// This test is enabled only for mock server, as it relies on a hardcoded, non-existent schedule ID. @test:Config { - groups: ["live_tests", "mock_tests"] + enable: !isLiveServer, + groups: ["mock_tests"] } isolated function testGetSchedule() returns error? { - map headers = {}; - - InlineResponse2006 response = check zoomClient->/scheduler/schedules/[testScheduleId].get(headers, - userId = userId - ); + InlineResponse2006 response = check zoomClient->/schedules/[testScheduleId].get(userId = userId); test:assertTrue(response.summary !is ()); } @@ -111,12 +93,7 @@ isolated function testGetSchedule() returns error? { groups: ["live_tests", "mock_tests"] } isolated function testListSchedules() returns error? { - map headers = {}; - - InlineResponse2005 response = check zoomClient->/scheduler/schedules.get(headers, - userId = userId, - pageSize = 10 - ); + InlineResponse2005 response = check zoomClient->/schedules.get(userId = userId, pageSize = 10); test:assertTrue(response.items !is ()); } @@ -124,39 +101,35 @@ isolated function testListSchedules() returns error? { groups: ["live_tests", "mock_tests"] } isolated function testGetSchedulerAnalyticsWithDateRange() returns error? { - map headers = {}; - - InlineResponse200 response = check zoomClient->/scheduler/analytics.get(headers, - userId = userId, - 'from = "2024-01-01", - to = "2024-12-31" - ); + string fromDate = "2024-01-01"; + string toDate = "2024-12-31"; + + InlineResponse200 response = check zoomClient->/analytics.get(userId = userId, 'from = fromDate, to = toDate); test:assertTrue(response.lastNDays !is ()); } +// This test is enabled only for mock server, as it uses a fake pagination token. @test:Config { - groups: ["live_tests", "mock_tests"] + enable: !isLiveServer, + groups: ["mock_tests"] } isolated function testListSchedulesWithPagination() returns error? { - map headers = {}; - - InlineResponse2005 response = check zoomClient->/scheduler/schedules.get(headers, + InlineResponse2005 response = check zoomClient->/schedules.get( userId = userId, pageSize = 5, - nextPageToken = "test-token" + nextPageToken = "test-pagination-token" ); test:assertTrue(response.items !is ()); } +// This test is enabled only for mock server to validate complex payload structures. @test:Config { - groups: ["live_tests", "mock_tests"] + enable: !isLiveServer, + groups: ["mock_tests"] } isolated function testCreateScheduleWithComplexRules() returns error? { - time:Utc utc = time:utcNow(); - string scheduleSummary = "Complex Schedule at " + utc.toString(); - SchedulerSchedulesBody schedulePayload = { - summary: scheduleSummary, + summary: "Complex Schedule", duration: 60, capacity: 5, availabilityRules: [ @@ -165,17 +138,21 @@ isolated function testCreateScheduleWithComplexRules() returns error? { timeZone: "UTC" }, { - email: "user2@example.com", + email: "user2@example.com", timeZone: "America/Los_Angeles" } ], - availabilityOverride: true + availabilityOverride: false }; - map headers = {}; - - InlineResponse2011 response = check zoomClient->/scheduler/schedules.post(schedulePayload, headers, - userId = userId - ); + InlineResponse2011 response = check zoomClient->/schedules.post(payload = schedulePayload, userId = userId); test:assertTrue(response.scheduleId !is ()); +} + +@test:Config { + groups: ["live_tests", "mock_tests"] +} +isolated function testListScheduledEvents() returns error? { + InlineResponse2003 response = check zoomClient->/events.get(userId = userId, pageSize = 10); + test:assertTrue(response.items !is ()); } \ No newline at end of file From 0ef3d5ad9cb0a13b1ecb479c238e3d1131bd56cc Mon Sep 17 00:00:00 2001 From: linukaar Date: Fri, 20 Jun 2025 11:08:57 +0530 Subject: [PATCH 07/22] Update authentication mechanism --- ballerina/client.bal | 144 +++++++++----------------------------- ballerina/tests/tests.bal | 2 +- ballerina/types.bal | 25 +++++-- ballerina/utils.bal | 16 +++++ docs/spec/openapi.json | 42 ++++++----- docs/spec/sanitations.md | 37 +++++++--- 6 files changed, 117 insertions(+), 149 deletions(-) diff --git a/ballerina/client.bal b/ballerina/client.bal index e9c118a..34c07b5 100644 --- a/ballerina/client.bal +++ b/ballerina/client.bal @@ -1,26 +1,35 @@ // AUTO-GENERATED FILE. DO NOT MODIFY. // This file is auto-generated by the Ballerina OpenAPI tool. +// Copyright (c) 2025, WSO2 LLC. (http://www.wso2.com). +// +// WSO2 LLC. licenses this file to you under the Apache License, +// Version 2.0 (the "License"); you may not use this file except +// in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, +// software distributed under the License is distributed on an +// "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY +// KIND, either express or implied. See the License for the +// specific language governing permissions and limitations +// under the License. + import ballerina/data.jsondata; import ballerina/http; # The Scheduler APIs let you programmatically interact with [Zoom Scheduler](https://developers.zoom.us/docs/zoom-scheduler/) features. They allow you to schedule, manage, and retrieve details about meetings, webinars, and other events on the Zoom platform. With powerful tools for integration, these APIs streamline event management and automate workflows in external applications. public isolated client class Client { final http:Client clientEp; - final readonly & ApiKeysConfig? apiKeyConfig; # Gets invoked to initialize the `connector`. # # + config - The configurations to be used when initializing the `connector` # + serviceUrl - URL of the target service # + return - An error if connector initialization failed public isolated function init(ConnectionConfig config, string serviceUrl = "https://api.zoom.us/v2/scheduler") returns error? { - http:ClientConfiguration httpClientConfig = {httpVersion: config.httpVersion, http1Settings: config.http1Settings, http2Settings: config.http2Settings, timeout: config.timeout, forwarded: config.forwarded, followRedirects: config.followRedirects, poolConfig: config.poolConfig, cache: config.cache, compression: config.compression, circuitBreaker: config.circuitBreaker, retryConfig: config.retryConfig, cookieConfig: config.cookieConfig, responseLimits: config.responseLimits, secureSocket: config.secureSocket, proxy: config.proxy, socketConfig: config.socketConfig, validation: config.validation, laxDataBinding: config.laxDataBinding}; - if config.auth is ApiKeysConfig { - self.apiKeyConfig = (config.auth).cloneReadOnly(); - } else { - httpClientConfig.auth = config.auth; - self.apiKeyConfig = (); - } + http:ClientConfiguration httpClientConfig = {auth: config.auth, httpVersion: config.httpVersion, http1Settings: config.http1Settings, http2Settings: config.http2Settings, timeout: config.timeout, forwarded: config.forwarded, followRedirects: config.followRedirects, poolConfig: config.poolConfig, cache: config.cache, compression: config.compression, circuitBreaker: config.circuitBreaker, retryConfig: config.retryConfig, cookieConfig: config.cookieConfig, responseLimits: config.responseLimits, secureSocket: config.secureSocket, proxy: config.proxy, socketConfig: config.socketConfig, validation: config.validation, laxDataBinding: config.laxDataBinding}; self.clientEp = check new (serviceUrl, httpClientConfig); } @@ -31,13 +40,8 @@ public isolated client class Client { # + return - If successful, this method returns the scheduler analytics or the user ID or account ID provided resource isolated function get analytics(map headers = {}, *ReportAnalyticsQueries queries) returns InlineResponse200|error { string resourcePath = string `/analytics`; - map headerValues = {...headers}; - if self.apiKeyConfig is ApiKeysConfig { - headerValues["Authorization"] = self.apiKeyConfig?.authorization; - } resourcePath = resourcePath + check getPathForQueryParam(queries); - map httpHeaders = http:getHeaderMap(headerValues); - return self.clientEp->get(resourcePath, httpHeaders); + return self.clientEp->get(resourcePath, headers); } # List availability @@ -47,13 +51,8 @@ public isolated client class Client { # + return - Successful availability of the schedule query result of given user resource isolated function get availability(map headers = {}, *ListAvailabilityQueries queries) returns InlineResponse2001|error { string resourcePath = string `/availability`; - map headerValues = {...headers}; - if self.apiKeyConfig is ApiKeysConfig { - headerValues["Authorization"] = self.apiKeyConfig?.authorization; - } resourcePath = resourcePath + check getPathForQueryParam(queries); - map httpHeaders = http:getHeaderMap(headerValues); - return self.clientEp->get(resourcePath, httpHeaders); + return self.clientEp->get(resourcePath, headers); } # Insert availability @@ -63,15 +62,10 @@ public isolated client class Client { # + return - If successful, this method returns a availability resource in the response body resource isolated function post availability(SchedulerAvailabilityBody payload, map headers = {}) returns InlineResponse201|error { string resourcePath = string `/availability`; - map headerValues = {...headers}; - if self.apiKeyConfig is ApiKeysConfig { - headerValues["Authorization"] = self.apiKeyConfig?.authorization; - } - map httpHeaders = http:getHeaderMap(headerValues); http:Request request = new; json jsonBody = jsondata:toJson(payload); request.setPayload(jsonBody, "application/json"); - return self.clientEp->post(resourcePath, request, httpHeaders); + return self.clientEp->post(resourcePath, request, headers); } # Get availability @@ -81,12 +75,7 @@ public isolated client class Client { # + return - If successful, this method returns an availability resource in the response body resource isolated function get availability/[string availabilityId](map headers = {}) returns InlineResponse2002|error { string resourcePath = string `/availability/${getEncodedUri(availabilityId)}`; - map headerValues = {...headers}; - if self.apiKeyConfig is ApiKeysConfig { - headerValues["Authorization"] = self.apiKeyConfig?.authorization; - } - map httpHeaders = http:getHeaderMap(headerValues); - return self.clientEp->get(resourcePath, httpHeaders); + return self.clientEp->get(resourcePath, headers); } # Delete availability @@ -96,12 +85,7 @@ public isolated client class Client { # + return - If successful, this method returns an empty response body resource isolated function delete availability/[string availabilityId](map headers = {}) returns error? { string resourcePath = string `/availability/${getEncodedUri(availabilityId)}`; - map headerValues = {...headers}; - if self.apiKeyConfig is ApiKeysConfig { - headerValues["Authorization"] = self.apiKeyConfig?.authorization; - } - map httpHeaders = http:getHeaderMap(headerValues); - return self.clientEp->delete(resourcePath, headers = httpHeaders); + return self.clientEp->delete(resourcePath, headers = headers); } # Patch availability @@ -112,15 +96,10 @@ public isolated client class Client { # + return - If successful, this method returns an empty response body resource isolated function patch availability/[string availabilityId](AvailabilityavailabilityIdBody payload, map headers = {}) returns error? { string resourcePath = string `/availability/${getEncodedUri(availabilityId)}`; - map headerValues = {...headers}; - if self.apiKeyConfig is ApiKeysConfig { - headerValues["Authorization"] = self.apiKeyConfig?.authorization; - } - map httpHeaders = http:getHeaderMap(headerValues); http:Request request = new; json jsonBody = jsondata:toJson(payload); request.setPayload(jsonBody, "application/json"); - return self.clientEp->patch(resourcePath, request, httpHeaders); + return self.clientEp->patch(resourcePath, request, headers); } # List scheduled events @@ -130,13 +109,8 @@ public isolated client class Client { # + return - If successful, this method returns a response body with the following structure: resource isolated function get events(map headers = {}, *ListScheduledEventsQueries queries) returns InlineResponse2003|error { string resourcePath = string `/events`; - map headerValues = {...headers}; - if self.apiKeyConfig is ApiKeysConfig { - headerValues["Authorization"] = self.apiKeyConfig?.authorization; - } resourcePath = resourcePath + check getPathForQueryParam(queries); - map httpHeaders = http:getHeaderMap(headerValues); - return self.clientEp->get(resourcePath, httpHeaders); + return self.clientEp->get(resourcePath, headers); } # Get scheduled events @@ -146,13 +120,8 @@ public isolated client class Client { # + return - If successful, this method returns the scheduled event resource in the response body resource isolated function get events/[string eventId](map headers = {}, *GetScheduledEventsQueries queries) returns InlineResponse2004|error { string resourcePath = string `/events/${getEncodedUri(eventId)}`; - map headerValues = {...headers}; - if self.apiKeyConfig is ApiKeysConfig { - headerValues["Authorization"] = self.apiKeyConfig?.authorization; - } resourcePath = resourcePath + check getPathForQueryParam(queries); - map httpHeaders = http:getHeaderMap(headerValues); - return self.clientEp->get(resourcePath, httpHeaders); + return self.clientEp->get(resourcePath, headers); } # Delete scheduled events @@ -162,13 +131,8 @@ public isolated client class Client { # + return - If successful, this method returns an empty response body resource isolated function delete events/[string eventId](map headers = {}, *DeleteScheduledEventsQueries queries) returns error? { string resourcePath = string `/events/${getEncodedUri(eventId)}`; - map headerValues = {...headers}; - if self.apiKeyConfig is ApiKeysConfig { - headerValues["Authorization"] = self.apiKeyConfig?.authorization; - } resourcePath = resourcePath + check getPathForQueryParam(queries); - map httpHeaders = http:getHeaderMap(headerValues); - return self.clientEp->delete(resourcePath, headers = httpHeaders); + return self.clientEp->delete(resourcePath, headers = headers); } # Patch scheduled events @@ -180,16 +144,11 @@ public isolated client class Client { # + return - If successful, this method returns an event resource in the response body resource isolated function patch events/[string eventId](EventseventIdBody payload, map headers = {}, *PatchScheduledEventsQueries queries) returns error? { string resourcePath = string `/events/${getEncodedUri(eventId)}`; - map headerValues = {...headers}; - if self.apiKeyConfig is ApiKeysConfig { - headerValues["Authorization"] = self.apiKeyConfig?.authorization; - } resourcePath = resourcePath + check getPathForQueryParam(queries); - map httpHeaders = http:getHeaderMap(headerValues); http:Request request = new; json jsonBody = jsondata:toJson(payload); request.setPayload(jsonBody, "application/json"); - return self.clientEp->patch(resourcePath, request, httpHeaders); + return self.clientEp->patch(resourcePath, request, headers); } # List schedules @@ -199,13 +158,8 @@ public isolated client class Client { # + return - If successful, this method returns a response body with this structure resource isolated function get schedules(map headers = {}, *ListSchedulesQueries queries) returns InlineResponse2005|error { string resourcePath = string `/schedules`; - map headerValues = {...headers}; - if self.apiKeyConfig is ApiKeysConfig { - headerValues["Authorization"] = self.apiKeyConfig?.authorization; - } resourcePath = resourcePath + check getPathForQueryParam(queries); - map httpHeaders = http:getHeaderMap(headerValues); - return self.clientEp->get(resourcePath, httpHeaders); + return self.clientEp->get(resourcePath, headers); } # Insert schedules @@ -216,16 +170,11 @@ public isolated client class Client { # + return - If successful, this method returns an schedule resource in the response body resource isolated function post schedules(SchedulerSchedulesBody payload, map headers = {}, *InsertScheduleQueries queries) returns InlineResponse2011|error { string resourcePath = string `/schedules`; - map headerValues = {...headers}; - if self.apiKeyConfig is ApiKeysConfig { - headerValues["Authorization"] = self.apiKeyConfig?.authorization; - } resourcePath = resourcePath + check getPathForQueryParam(queries); - map httpHeaders = http:getHeaderMap(headerValues); http:Request request = new; json jsonBody = jsondata:toJson(payload); request.setPayload(jsonBody, "application/json"); - return self.clientEp->post(resourcePath, request, httpHeaders); + return self.clientEp->post(resourcePath, request, headers); } # Get schedules @@ -236,13 +185,8 @@ public isolated client class Client { # + return - If successful, this method returns an schedule resource in the response body resource isolated function get schedules/[string scheduleId](map headers = {}, *GetScheduleQueries queries) returns InlineResponse2006|error { string resourcePath = string `/schedules/${getEncodedUri(scheduleId)}`; - map headerValues = {...headers}; - if self.apiKeyConfig is ApiKeysConfig { - headerValues["Authorization"] = self.apiKeyConfig?.authorization; - } resourcePath = resourcePath + check getPathForQueryParam(queries); - map httpHeaders = http:getHeaderMap(headerValues); - return self.clientEp->get(resourcePath, httpHeaders); + return self.clientEp->get(resourcePath, headers); } # Delete schedules @@ -253,13 +197,8 @@ public isolated client class Client { # + return - If successful, this method returns an empty response body resource isolated function delete schedules/[string scheduleId](map headers = {}, *DeleteSchedulesQueries queries) returns error? { string resourcePath = string `/schedules/${getEncodedUri(scheduleId)}`; - map headerValues = {...headers}; - if self.apiKeyConfig is ApiKeysConfig { - headerValues["Authorization"] = self.apiKeyConfig?.authorization; - } resourcePath = resourcePath + check getPathForQueryParam(queries); - map httpHeaders = http:getHeaderMap(headerValues); - return self.clientEp->delete(resourcePath, headers = httpHeaders); + return self.clientEp->delete(resourcePath, headers = headers); } # Patch schedules @@ -271,16 +210,11 @@ public isolated client class Client { # + return - If successful, this method returns an empty response body resource isolated function patch schedules/[string scheduleId](SchedulesscheduleIdBody payload, map headers = {}, *PatchScheduleQueries queries) returns error? { string resourcePath = string `/schedules/${getEncodedUri(scheduleId)}`; - map headerValues = {...headers}; - if self.apiKeyConfig is ApiKeysConfig { - headerValues["Authorization"] = self.apiKeyConfig?.authorization; - } resourcePath = resourcePath + check getPathForQueryParam(queries); - map httpHeaders = http:getHeaderMap(headerValues); http:Request request = new; json jsonBody = jsondata:toJson(payload); request.setPayload(jsonBody, "application/json"); - return self.clientEp->patch(resourcePath, request, httpHeaders); + return self.clientEp->patch(resourcePath, request, headers); } # Single use link @@ -289,15 +223,10 @@ public isolated client class Client { # + return - If successful, this method returns a scheduling link URL in the response body resource isolated function post schedules/single_use_link(SchedulesSingleUseLinkBody payload, map headers = {}) returns InlineResponse2012|error { string resourcePath = string `/schedules/single_use_link`; - map headerValues = {...headers}; - if self.apiKeyConfig is ApiKeysConfig { - headerValues["Authorization"] = self.apiKeyConfig?.authorization; - } - map httpHeaders = http:getHeaderMap(headerValues); http:Request request = new; json jsonBody = jsondata:toJson(payload); request.setPayload(jsonBody, "application/json"); - return self.clientEp->post(resourcePath, request, httpHeaders); + return self.clientEp->post(resourcePath, request, headers); } # Get user @@ -306,11 +235,6 @@ public isolated client class Client { # + return - If successful, this method returns user information in the response body resource isolated function get users/[string userId](map headers = {}) returns InlineResponse2007|error { string resourcePath = string `/users/${getEncodedUri(userId)}`; - map headerValues = {...headers}; - if self.apiKeyConfig is ApiKeysConfig { - headerValues["Authorization"] = self.apiKeyConfig?.authorization; - } - map httpHeaders = http:getHeaderMap(headerValues); - return self.clientEp->get(resourcePath, httpHeaders); + return self.clientEp->get(resourcePath, headers); } } diff --git a/ballerina/tests/tests.bal b/ballerina/tests/tests.bal index 2de0be3..012096b 100644 --- a/ballerina/tests/tests.bal +++ b/ballerina/tests/tests.bal @@ -24,7 +24,7 @@ configurable string serviceUrl = isLiveServer ? "https://api.zoom.us/v2/schedule ConnectionConfig config = { auth: { - authorization: "Bearer " + token + token } }; diff --git a/ballerina/types.bal b/ballerina/types.bal index 7024e85..1ceabf4 100644 --- a/ballerina/types.bal +++ b/ballerina/types.bal @@ -1,6 +1,22 @@ // AUTO-GENERATED FILE. DO NOT MODIFY. // This file is auto-generated by the Ballerina OpenAPI tool. +// Copyright (c) 2025, WSO2 LLC. (http://www.wso2.com). +// +// WSO2 LLC. licenses this file to you under the Apache License, +// Version 2.0 (the "License"); you may not use this file except +// in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, +// software distributed under the License is distributed on an +// "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY +// KIND, either express or implied. See the License for the +// specific language governing permissions and limitations +// under the License. + import ballerina/constraint; import ballerina/data.jsondata; import ballerina/http; @@ -272,8 +288,8 @@ public type InlineResponse2011CustomFieldsAnswerchoicesItemsString string; # Provides a set of configurations for controlling the behaviours when communicating with a remote HTTP endpoint. @display {label: "Connection Config"} public type ConnectionConfig record {| - # Provides Auth configurations needed when communicating with a remote HTTP endpoint. - http:BearerTokenConfig|http:OAuth2RefreshTokenGrantConfig|ApiKeysConfig auth; + # Configurations related to client authentication + http:BearerTokenConfig|http:OAuth2RefreshTokenGrantConfig auth; # The HTTP version understood by the client http:HttpVersion httpVersion = http:HTTP_2_0; # Configurations related to HTTP/1.x protocol @@ -613,11 +629,6 @@ public type InlineResponse2003TrackingParams record { string 'key?; }; -# Provides API key configurations needed when communicating with a remote HTTP endpoint. -public type ApiKeysConfig record {| - string authorization; -|}; - # This field indicates the extra time before or after the booked schedule public type SchedulerschedulesBuffer record { # This field adds the time after the booked schedule diff --git a/ballerina/utils.bal b/ballerina/utils.bal index 859a6d2..c7e28d2 100644 --- a/ballerina/utils.bal +++ b/ballerina/utils.bal @@ -1,6 +1,22 @@ // AUTO-GENERATED FILE. DO NOT MODIFY. // This file is auto-generated by the Ballerina OpenAPI tool. +// Copyright (c) 2025, WSO2 LLC. (http://www.wso2.com). +// +// WSO2 LLC. licenses this file to you under the Apache License, +// Version 2.0 (the "License"); you may not use this file except +// in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, +// software distributed under the License is distributed on an +// "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY +// KIND, either express or implied. See the License for the +// specific language governing permissions and limitations +// under the License. + import ballerina/http; import ballerina/url; diff --git a/docs/spec/openapi.json b/docs/spec/openapi.json index d8a9165..0fa70eb 100644 --- a/docs/spec/openapi.json +++ b/docs/spec/openapi.json @@ -103,7 +103,7 @@ }, "security" : [ { "openapi_oauth" : [ "scheduler:read", "scheduler:read:admin", "scheduler:read:analytics", "scheduler:read:analytics:admin" ], - "openapi_authorization" : [ ] + "bearer_token" : [ ] } ], "x-extensions" : { "x-permissions" : [ ], @@ -184,7 +184,7 @@ }, "security" : [ { "openapi_oauth" : [ "scheduler:read:admin", "scheduler:read", "scheduler:read:list_availability", "scheduler:read:list_availability:admin" ], - "openapi_authorization" : [ ] + "bearer_token" : [ ] } ], "x-extensions" : { "x-permissions" : [ ], @@ -236,7 +236,7 @@ }, "security" : [ { "openapi_oauth" : [ "scheduler:write:admin", "scheduler:write", "scheduler:write:availability", "scheduler:write:availability:admin" ], - "openapi_authorization" : [ ] + "bearer_token" : [ ] } ], "x-extensions" : { "x-permissions" : [ ], @@ -295,7 +295,7 @@ }, "security" : [ { "openapi_oauth" : [ "scheduler:read:admin", "scheduler:read", "scheduler:read:availability", "scheduler:read:availability:admin" ], - "openapi_authorization" : [ ] + "bearer_token" : [ ] } ], "x-extensions" : { "x-permissions" : [ ], @@ -336,7 +336,7 @@ }, "security" : [ { "openapi_oauth" : [ "scheduler:write:admin", "scheduler:write", "scheduler:delete:availability", "scheduler:delete:availability:admin" ], - "openapi_authorization" : [ ] + "bearer_token" : [ ] } ], "x-extensions" : { "x-permissions" : [ ], @@ -396,7 +396,7 @@ }, "security" : [ { "openapi_oauth" : [ "scheduler:write:admin", "scheduler:write", "scheduler:update:availability", "scheduler:update:availability:admin" ], - "openapi_authorization" : [ ] + "bearer_token" : [ ] } ], "x-extensions" : { "x-permissions" : [ ], @@ -553,7 +553,7 @@ }, "security" : [ { "openapi_oauth" : [ "scheduler:read:admin", "scheduler:read", "scheduler:read:list_scheduled_events", "scheduler:read:list_scheduled_events:admin" ], - "openapi_authorization" : [ ] + "bearer_token" : [ ] } ], "x-extensions" : { "x-permissions" : [ ], @@ -616,7 +616,7 @@ }, "security" : [ { "openapi_oauth" : [ "scheduler:read:admin", "scheduler:read", "scheduler:read:scheduled_event", "scheduler:read:scheduled_event:admin" ], - "openapi_authorization" : [ ] + "bearer_token" : [ ] } ], "x-extensions" : { "x-permissions" : [ ], @@ -673,7 +673,7 @@ }, "security" : [ { "openapi_oauth" : [ "scheduler:write:admin", "scheduler:write", "scheduler:delete:scheduled_event", "scheduler:delete:scheduled_event:admin" ], - "openapi_authorization" : [ ] + "bearer_token" : [ ] } ], "x-extensions" : { "x-permissions" : [ ], @@ -739,7 +739,7 @@ }, "security" : [ { "openapi_oauth" : [ "scheduler:write:admin", "scheduler:write", "scheduler:update:scheduled_event", "scheduler:update:scheduled_event:admin" ], - "openapi_authorization" : [ ] + "bearer_token" : [ ] } ], "x-extensions" : { "x-permissions" : [ ], @@ -863,7 +863,7 @@ }, "security" : [ { "openapi_oauth" : [ "scheduler:read:admin", "scheduler:read", "scheduler:read:list_schedule", "scheduler:read:list_schedule:admin" ], - "openapi_authorization" : [ ] + "bearer_token" : [ ] } ], "x-extensions" : { "x-permissions" : [ ], @@ -925,7 +925,7 @@ }, "security" : [ { "openapi_oauth" : [ "scheduler:write:admin", "scheduler:write", "scheduler:write:insert_schedule", "scheduler:write:insert_schedule:admin" ], - "openapi_authorization" : [ ] + "bearer_token" : [ ] } ], "x-extensions" : { "x-permissions" : [ ], @@ -990,7 +990,7 @@ }, "security" : [ { "openapi_oauth" : [ "scheduler:read:admin", "scheduler:read", "scheduler:read:get_schedule", "scheduler:read:get_schedule:admin" ], - "openapi_authorization" : [ ] + "bearer_token" : [ ] } ], "x-extensions" : { "x-permissions" : [ ], @@ -1049,7 +1049,7 @@ }, "security" : [ { "openapi_oauth" : [ "scheduler:write:admin", "scheduler:write", "scheduler:delete:delete_schedule", "scheduler:delete:delete_schedule:admin" ], - "openapi_authorization" : [ ] + "bearer_token" : [ ] } ], "x-extensions" : { "x-permissions" : [ ], @@ -1118,7 +1118,7 @@ }, "security" : [ { "openapi_oauth" : [ "scheduler:write:admin", "scheduler:write", "scheduler:update:patch_schedule", "scheduler:update:patch_schedule:admin" ], - "openapi_authorization" : [ ] + "bearer_token" : [ ] } ], "x-extensions" : { "x-permissions" : [ ], @@ -1171,7 +1171,7 @@ }, "security" : [ { "openapi_oauth" : [ "scheduler:write:admin", "scheduler:write", "scheduler:write:single_use_link", "scheduler:write:single_use_link:admin" ], - "openapi_authorization" : [ ] + "bearer_token" : [ ] } ], "x-extensions" : { "x-permissions" : [ ], @@ -1225,7 +1225,7 @@ }, "security" : [ { "openapi_oauth" : [ "scheduler:read:admin", "scheduler:read", "scheduler:read:user", "scheduler:read:user:admin" ], - "openapi_authorization" : [ ] + "bearer_token" : [ ] } ], "x-extensions" : { "x-permissions" : [ ], @@ -4119,11 +4119,9 @@ } }, "securitySchemes" : { - "openapi_authorization" : { - "type" : "apiKey", - "name" : "Authorization", - "in" : "header", - "x-ballerina-name" : "authorization" + "bearer_token" : { + "type" : "http", + "scheme" : "bearer" }, "openapi_oauth" : { "type" : "oauth2", diff --git a/docs/spec/sanitations.md b/docs/spec/sanitations.md index 736df38..6663c22 100644 --- a/docs/spec/sanitations.md +++ b/docs/spec/sanitations.md @@ -1,24 +1,43 @@ _Author_: LinukaAr -_Created_: \ -_Updated_: \ +_Created_: 20-06-2025 \ +_Updated_: 20-06-2025 \ _Edition_: Swan Lake # Sanitation for OpenAPI specification This document records the sanitation done on top of the official OpenAPI specification from Zoom Scheduler. -The OpenAPI specification is obtained from (TODO: Add source link). +The OpenAPI specification is obtained from the official Zoom API documentation. These changes are done in order to improve the overall usability, and as workarounds for some known language limitations. -[//]: # (TODO: Add sanitation details) -1. -2. -3. +## Sanitization Details + +1. **Security Scheme Update**: Changed authentication mechanism from API key to Bearer token + - **Before**: Used `openapi_authorization` with `apiKey` type in header + ```json + "openapi_authorization" : { + "type" : "apiKey", + "name" : "Authorization", + "in" : "header", + "x-ballerina-name" : "authorization" + } + ``` + - **After**: Updated to `bearer_token` with `http` type and `bearer` scheme + ```json + "bearer_token" : { + "type" : "http", + "scheme" : "bearer" + } + ``` + +2. **Security References Update**: Updated all security references across endpoints + - **Before**: Referenced `openapi_authorization: []` in endpoint security + - **After**: Changed all references to `bearer_token: []` to maintain consistency with the new security scheme ## OpenAPI cli command The following command was used to generate the Ballerina client from the OpenAPI specification. The command should be executed from the repository root directory. ```bash -# TODO: Add OpenAPI CLI command used to generate the client +bal openapi -i docs/spec/openapi.json --mode client -o ballerina ``` -Note: The license year is hardcoded to 2024, change if necessary. +Note: The license year is hardcoded to 2024, change if necessary. \ No newline at end of file From 9005883d5905eeac6cbe1b45e78528b4cb4a6b96 Mon Sep 17 00:00:00 2001 From: linukaar Date: Fri, 20 Jun 2025 13:58:36 +0530 Subject: [PATCH 08/22] [Automated] Update the toml files --- ballerina/Ballerina.toml | 2 +- ballerina/Dependencies.toml | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/ballerina/Ballerina.toml b/ballerina/Ballerina.toml index b830c62..df6c698 100644 --- a/ballerina/Ballerina.toml +++ b/ballerina/Ballerina.toml @@ -13,4 +13,4 @@ repository = "https://github.com/ballerina-platform/module-ballerinax-zoom.sched observabilityIncluded = true [platform.java21] -graalvmCompatible = true +graalvmCompatible = true \ No newline at end of file diff --git a/ballerina/Dependencies.toml b/ballerina/Dependencies.toml index a7942f4..9eb18bb 100644 --- a/ballerina/Dependencies.toml +++ b/ballerina/Dependencies.toml @@ -5,7 +5,7 @@ [ballerina] dependencies-toml-version = "2" -distribution-version = "2201.12.0" +distribution-version = "2201.12.7" [[package]] org = "ballerina" From aa4c4070175804e0c511525a6f618c4c5434aca8 Mon Sep 17 00:00:00 2001 From: linukaar Date: Tue, 24 Jun 2025 10:43:16 +0530 Subject: [PATCH 09/22] Address PR review comments --- ballerina/icon.png | Bin 0 -> 66211 bytes ballerina/tests/mock_service.bal | 4 ++-- build-config/resources/Ballerina.toml | 4 ++-- docs/spec/sanitations.md | 7 +++++-- gradle.properties | 2 +- 5 files changed, 10 insertions(+), 7 deletions(-) create mode 100644 ballerina/icon.png diff --git a/ballerina/icon.png b/ballerina/icon.png new file mode 100644 index 0000000000000000000000000000000000000000..c52d1b09273ce9b2b3c80ad7e55d5c39c52af62b GIT binary patch literal 66211 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 knQRpKX!xfZ~y=R literal 0 HcmV?d00001 diff --git a/ballerina/tests/mock_service.bal b/ballerina/tests/mock_service.bal index 51cb41c..edd3768 100644 --- a/ballerina/tests/mock_service.bal +++ b/ballerina/tests/mock_service.bal @@ -17,7 +17,7 @@ import ballerina/http; import ballerina/log; -listener http:Listener httpListener = new (9091); +listener http:Listener httpListener = new (9090); http:Service mockService = service object { @@ -349,4 +349,4 @@ function init() returns error? { log:printInfo("Initiating mock server"); check httpListener.attach(mockService, "/"); check httpListener.'start(); -} \ No newline at end of file +} diff --git a/build-config/resources/Ballerina.toml b/build-config/resources/Ballerina.toml index 5231604..433dd1e 100644 --- a/build-config/resources/Ballerina.toml +++ b/build-config/resources/Ballerina.toml @@ -5,8 +5,8 @@ name = "zoom.scheduler" version = "@toml.version@" license = ["Apache-2.0"] authors = ["Ballerina"] -keywords = [] # TODO: Add keywords -# icon = "icon.png" # TODO: Add icon +keywords = ["Zoom", "Video Conference", "Scheduling", "Calendar"] +icon = "icon.png" repository = "https://github.com/ballerina-platform/module-ballerinax-zoom.scheduler" [build-options] diff --git a/docs/spec/sanitations.md b/docs/spec/sanitations.md index 6663c22..e795081 100644 --- a/docs/spec/sanitations.md +++ b/docs/spec/sanitations.md @@ -1,4 +1,4 @@ -_Author_: LinukaAr +_Author_: @LinukaAr _Created_: 20-06-2025 \ _Updated_: 20-06-2025 \ _Edition_: Swan Lake @@ -28,10 +28,13 @@ These changes are done in order to improve the overall usability, and as workaro "scheme" : "bearer" } ``` + - **Reason**: The original API key authentication method was not suitable for OAuth 2.0 based authentication that Zoom uses. Bearer token authentication provides better security and aligns with Zoom's OAuth 2.0 implementation, allowing for proper token-based authorization. 2. **Security References Update**: Updated all security references across endpoints - **Before**: Referenced `openapi_authorization: []` in endpoint security - **After**: Changed all references to `bearer_token: []` to maintain consistency with the new security scheme + - **Reason**: Updated to maintain consistency with the new bearer token security scheme. This ensures all endpoints use the correct authentication mechanism and prevents authentication errors when the client is generated. + ## OpenAPI cli command @@ -40,4 +43,4 @@ The following command was used to generate the Ballerina client from the OpenAPI ```bash bal openapi -i docs/spec/openapi.json --mode client -o ballerina ``` -Note: The license year is hardcoded to 2024, change if necessary. \ No newline at end of file +Note: The license year is hardcoded to 2025, change if necessary. diff --git a/gradle.properties b/gradle.properties index 97cf7fb..6a06b19 100644 --- a/gradle.properties +++ b/gradle.properties @@ -3,5 +3,5 @@ group=io.ballerina.lib version=1.0.0-SNAPSHOT releasePluginVersion=2.8.0 -ballerinaGradlePluginVersion=2.2.4 +ballerinaGradlePluginVersion=2.3.0 ballerinaLangVersion=2201.12.7 From 2fd43fdbeb474d748eac243ac31db7b07e393a13 Mon Sep 17 00:00:00 2001 From: linukaar Date: Tue, 24 Jun 2025 11:08:39 +0530 Subject: [PATCH 10/22] Switch to zoom genaral app type --- ballerina/tests/tests.bal | 16 ++++++++++++---- 1 file changed, 12 insertions(+), 4 deletions(-) diff --git a/ballerina/tests/tests.bal b/ballerina/tests/tests.bal index 012096b..1a6b6dc 100644 --- a/ballerina/tests/tests.bal +++ b/ballerina/tests/tests.bal @@ -19,12 +19,20 @@ import ballerina/test; configurable boolean isLiveServer = os:getEnv("IS_LIVE_SERVER") == "true"; configurable string userId = isLiveServer ? os:getEnv("ZOOM_USER_ID") : "test-user-123"; -configurable string token = isLiveServer ? os:getEnv("ZOOM_TOKEN") : "test-token"; -configurable string serviceUrl = isLiveServer ? "https://api.zoom.us/v2/scheduler" : "http://localhost:9091"; +configurable string serviceUrl = isLiveServer ? "https://api.zoom.us/v2/scheduler" : "http://localhost:9090"; + +configurable string clientId = isLiveServer ? os:getEnv("ZOOM_CLIENT_ID") : "test-client-id"; +configurable string clientSecret = isLiveServer ? os:getEnv("ZOOM_CLIENT_SECRET") : "test-client-secret"; +configurable string refreshToken = isLiveServer ? os:getEnv("ZOOM_REFRESH_TOKEN") : "test-refresh-token"; +configurable string refreshUrl = isLiveServer ? os:getEnv("ZOOM_REFRESH_URL") : "https://zoom.us/oauth/token"; + ConnectionConfig config = { auth: { - token + clientId, + clientSecret, + refreshUrl, + refreshToken } }; @@ -155,4 +163,4 @@ isolated function testCreateScheduleWithComplexRules() returns error? { isolated function testListScheduledEvents() returns error? { InlineResponse2003 response = check zoomClient->/events.get(userId = userId, pageSize = 10); test:assertTrue(response.items !is ()); -} \ No newline at end of file +} From 48868b7758560427f65503522ece9c27ee71f61c Mon Sep 17 00:00:00 2001 From: linukaar Date: Tue, 24 Jun 2025 11:52:22 +0530 Subject: [PATCH 11/22] [Automated] Update the toml files --- ballerina/Ballerina.toml | 6 +++--- ballerina/Dependencies.toml | 2 +- 2 files changed, 4 insertions(+), 4 deletions(-) diff --git a/ballerina/Ballerina.toml b/ballerina/Ballerina.toml index df6c698..23b19b2 100644 --- a/ballerina/Ballerina.toml +++ b/ballerina/Ballerina.toml @@ -5,12 +5,12 @@ name = "zoom.scheduler" version = "1.0.0" license = ["Apache-2.0"] authors = ["Ballerina"] -keywords = [] # TODO: Add keywords -# icon = "icon.png" # TODO: Add icon +keywords = ["Zoom", "Video Conference", "Scheduling", "Calendar"] +icon = "icon.png" repository = "https://github.com/ballerina-platform/module-ballerinax-zoom.scheduler" [build-options] observabilityIncluded = true [platform.java21] -graalvmCompatible = true \ No newline at end of file +graalvmCompatible = true diff --git a/ballerina/Dependencies.toml b/ballerina/Dependencies.toml index 9eb18bb..3458f4f 100644 --- a/ballerina/Dependencies.toml +++ b/ballerina/Dependencies.toml @@ -76,7 +76,7 @@ dependencies = [ [[package]] org = "ballerina" name = "http" -version = "2.14.1" +version = "2.14.2" dependencies = [ {org = "ballerina", name = "auth"}, {org = "ballerina", name = "cache"}, From 4904d84515242f8b23ff77a109d57a86dc7dd38c Mon Sep 17 00:00:00 2001 From: linukaar Date: Tue, 24 Jun 2025 15:22:25 +0530 Subject: [PATCH 12/22] Add setup instructions --- README.md | 179 +++++++++++++++++++++- ballerina/README.md | 173 ++++++++++++++++++++- ballerina/tests/README.md | 92 +++++++++++ docs/setup/resources/activate-app.png | Bin 0 -> 138431 bytes docs/setup/resources/app-credentials.png | Bin 0 -> 164936 bytes docs/setup/resources/app-type.png | Bin 0 -> 236386 bytes docs/setup/resources/redirect-URI.png | Bin 0 -> 177304 bytes docs/setup/resources/zoom-marketplace.png | Bin 0 -> 445951 bytes docs/setup/resources/zoom-scopes.png | Bin 0 -> 178494 bytes 9 files changed, 432 insertions(+), 12 deletions(-) create mode 100644 ballerina/tests/README.md create mode 100644 docs/setup/resources/activate-app.png create mode 100644 docs/setup/resources/app-credentials.png create mode 100644 docs/setup/resources/app-type.png create mode 100644 docs/setup/resources/redirect-URI.png create mode 100644 docs/setup/resources/zoom-marketplace.png create mode 100644 docs/setup/resources/zoom-scopes.png diff --git a/README.md b/README.md index 66d49e4..ea102b5 100644 --- a/README.md +++ b/README.md @@ -4,31 +4,193 @@ [![GitHub Last Commit](https://img.shields.io/github/last-commit/ballerina-platform/module-ballerinax-zoom.scheduler.svg)](https://github.com/ballerina-platform/module-ballerinax-zoom.scheduler/commits/master) [![GitHub Issues](https://img.shields.io/github/issues/ballerina-platform/ballerina-library/module/zoom.scheduler.svg?label=Open%20Issues)](https://github.com/ballerina-platform/ballerina-library/labels/module%zoom.scheduler) -[![Build](https://github.com/ballerina-platform/module-ballerinax-twitter/workflows/CI/badge.svg)](https://github.com/ballerina-platform/module-ballerinax-twitter/actions?query=workflow%3ACI) -[![codecov](https://codecov.io/gh/ballerina-platform/module-ballerinax-twitter/branch/main/graph/badge.svg)](https://codecov.io/gh/ballerina-platform/module-ballerinax-twitter) -[![License](https://img.shields.io/badge/License-Apache%202.0-blue.svg)](https://opensource.org/licenses/Apache-2.0) - ## Overview [Zoom](https://www.zoom.com/) is a video communications platform that enables users to schedule, host, and join virtual meetings, webinars, and conferences. -The `ballerinax/zoom-schedular` package offers APIs to connect ant interract with [Zoom](https://developers.zoom.us/docs/api/) endpoints. specifically based on [Zoom API v2]() +The `ballerinax/zoom.scheduler` package offers APIs to connect ant interract with [Zoom Scheduler](https://developers.zoom.us/docs/api/scheduler) endpoints. specifically based on Zoom API v2. ## Setup guide -[//]: # (TODO: Add detailed steps to obtain credentials and configure the module.) +To use the Zoom scheduler connector, you must have access to the Zoom API through [Zoom Marketplace](https://marketplace.zoom.us/) and a project under it. If you do not have a Zoom account, you can sign up for one [here](https://zoom.us/signup#/signup). + +### Step 1: Create a new app + +1. Open the [Zoom Marketplace](https://marketplace.zoom.us/). + +2. Click "Develop" → "Build App" + + Zoom marketplace + +3. Choose **"General App"** app type (for user authorization with refresh tokens) + + App Type + +4. Fill in basic information + +### Step 2: Configure OAuth Settings + +3. **Note down your credentials**: + * Client ID + * Client Secret + + App Credentials + +2. **Set Redirect URI**: Add your application's redirect URI (e.g., `http://localhost:8080/callback`) + Scope + +3. **Add Scopes**: Make sure your Zoom app has the necessary scopes for the Scheduler API: + * Add `scheduler:read`, `scheduler:write` and `user:read` in the scope + + Scope + + +### Step 3: Activate the App + +1. Complete all required information +2. Activate the app + + Activate App + +### Step 4: Get User Authorization + +1. **Direct users to authorization URL** (replace `YOUR_CLIENT_ID` and `YOUR_REDIRECT_URI`): +``` +https://zoom.us/oauth/authorize?response_type=code&client_id=YOUR_CLIENT_ID&redirect_uri=YOUR_REDIRECT_URI&scope=scheduler:read scheduler:write user:read +``` + +2. **User authorizes the app** and gets redirected to your callback URL with an authorization code + +3. **Exchange authorization code for tokens**: +```curl +curl -X POST https://zoom.us/oauth/token \ + -H "Authorization: Basic $(echo -n 'CLIENT_ID:CLIENT_SECRET' | base64)" \ + -d "grant_type=authorization_code&code=AUTHORIZATION_CODE&redirect_uri=YOUR_REDIRECT_URI" +``` + +This returns both `access_token` and `refresh_token`. + +* Replace: + * `CLIENT_ID` with your app's Client ID + * `CLIENT_SECRET` with your app's Client Secret + * `AUTHORIZATION_CODE` with the code received from the callback + * `YOUR_REDIRECT_URI` with your configured redirect URI + +### Step 5: Verify Your Setup +```curl +curl -X GET "https://api.zoom.us/v2/users/me" \ + -H "Authorization: Bearer YOUR_ACCESS_TOKEN" +``` +This will give you the user ID needed for API calls. + +### Step 6: Configure the Connector +#### Option 1: Use Config.toml (Recommended) + +```toml +isLiveServer = true +clientId = "your_client_id" +clientSecret = "your_client_secret" +refreshToken = "user_refresh_token_from_step4" +refreshUrl = "https://zoom.us/oauth/token" +userId = "user_id_from_step5" +``` + +#### Option 2: Use Environment Variables +```bash +export IS_LIVE_SERVER="true" +export ZOOM_CLIENT_ID="your_client_id" +export ZOOM_CLIENT_SECRET="your_client_secret" +export ZOOM_REFRESH_TOKEN="user_refresh_token_from_step4" +export ZOOM_USER_ID="user_id_from_step5" +``` + +### Benefits of This Setup + +**Long-lived tokens** - Refresh tokens don't expire like Server-to-Server tokens +**Automatic refresh** - Connector handles token refresh automatically +**User consent** - Users explicitly authorize your app +**Secure** - Follows OAuth2 best practices + +### Alternative: Server-to-Server OAuth + +If you prefer automated access without user interaction (tokens expire hourly): + +1. Choose **"Server-to-Server OAuth"** in Step 1 +2. Use account credentials grant: +```curl +curl -X POST https://zoom.us/oauth/token \ + -H "Authorization: Basic $(echo -n 'CLIENT_ID:CLIENT_SECRET' | base64)" \ + -d "grant_type=account_credentials&account_id=ACCOUNT_ID" +``` +3. Configure with bearer token: +```toml +isLiveServer = true +token = "your_access_token" +userId = "your_user_id" +``` ## Quickstart -[//]: # (TODO: Add a quickstart guide to demonstrate a basic functionality of the module, including sample code snippets.) +To use the `Zoom` connector in your Ballerina application, update the `.bal` file as follows: + +### Step 1: Import the module + +Import the `zoom.scheduler` module. + +```ballerina +import ballerinax/zoom.scheduler; +``` + +### Step 2: Instantiate a new connector + +1. Create a `Config.toml` file and, configure the obtained credentials in the above steps as follows: + +```bash +token = "" +``` + +2. Create a `zoom.scheduler:ConnectionConfig` with the obtained access token and initialize the connector with it. + +```ballerina +configurable string token = ?; + +final zoom.scheduler:Client zoom.scheduler = check new({ + auth: { + token + } +}); +``` +### Step 3: Invoke the connector operation + +Now, utilize the available connector operations. + +#### Schedule a meeting + +```ballerina + +``` + +### Step 4: Run the Ballerina application + +```bash +bal run +``` ## Examples The `Zoom Scheduler` connector provides practical examples illustrating usage in various scenarios. Explore these [examples](https://github.com/module-ballerinax-zoom.scheduler/tree/main/examples/), covering the following use cases: -[//]: # (TODO: Add examples) +* **[Meeting Scheduler](https://github.com/ballerina-platform/module-ballerinax-zoom.scheduler/tree/main/examples/meeting-scheduler)** - Create scheduled meetings, generate single-use scheduling links, and manage team meeting schedules with automated booking capabilities. + +* **[Availability Manager](https://github.com/ballerina-platform/module-ballerinax-zoom.scheduler/tree/main/examples/availability-manager)** - Configure availability schedules, analyze scheduler analytics, and manage working hours for different time zones and business requirements. + +## Issues and projects + +The **Issues** and **Projects** tabs are disabled for this repository as this is part of the Ballerina library. To report bugs, request new features, start new discussions, view project boards, etc., visit the Ballerina library [parent repository](https://github.com/ballerina-platform/ballerina-library). + +This repository only contains the source code for the package. ## Build from the source @@ -122,3 +284,4 @@ All the contributors are encouraged to read the [Ballerina Code of Conduct](http * For example demonstrations of the usage, go to [Ballerina By Examples](https://ballerina.io/learn/by-example/). * Chat live with us via our [Discord server](https://discord.gg/ballerinalang). * Post all technical questions on Stack Overflow with the [#ballerina](https://stackoverflow.com/questions/tagged/ballerina) tag. + \ No newline at end of file diff --git a/ballerina/README.md b/ballerina/README.md index d3aaed5..ab4c2b9 100644 --- a/ballerina/README.md +++ b/ballerina/README.md @@ -1,17 +1,182 @@ ## Overview -[//]: # (TODO: Add overview mentioning the purpose of the module, supported REST API versions, and other high-level details.) +[Zoom](https://www.zoom.com/) is a video communications platform that enables users to schedule, host, and join virtual meetings, webinars, and conferences. + +The `ballerinax/zoom.scheduler` package offers APIs to connect ant interract with [Zoom Scheduler](https://developers.zoom.us/docs/api/scheduler) endpoints. specifically based on Zoom API v2. + ## Setup guide -[//]: # (TODO: Add detailed steps to obtain credentials and configure the module.) + +To use the Zoom scheduler connector, you must have access to the Zoom API through [Zoom Marketplace](https://marketplace.zoom.us/) and a project under it. If you do not have a Zoom account, you can sign up for one [here](https://zoom.us/signup#/signup). + +### Step 1: Create a new app + +1. Open the [Zoom Marketplace](https://marketplace.zoom.us/). + +2. Click "Develop" → "Build App" + + Zoom marketplace + +3. Choose **"General App"** app type (for user authorization with refresh tokens) + + App Type + +4. Fill in basic information + +### Step 2: Configure OAuth Settings + +3. **Note down your credentials**: + * Client ID + * Client Secret + + App Credentials + +2. **Set Redirect URI**: Add your application's redirect URI (e.g., `http://localhost:8080/callback`) + Scope + +3. **Add Scopes**: Make sure your Zoom app has the necessary scopes for the Scheduler API: + * Add `scheduler:read`, `scheduler:write` and `user:read` in the scope + + Scope + + +### Step 3: Activate the App + +1. Complete all required information +2. Activate the app + + Activate App + +### Step 4: Get User Authorization + +1. **Direct users to authorization URL** (replace `YOUR_CLIENT_ID` and `YOUR_REDIRECT_URI`): +``` +https://zoom.us/oauth/authorize?response_type=code&client_id=YOUR_CLIENT_ID&redirect_uri=YOUR_REDIRECT_URI&scope=scheduler:read scheduler:write user:read +``` + +2. **User authorizes the app** and gets redirected to your callback URL with an authorization code + +3. **Exchange authorization code for tokens**: +```curl +curl -X POST https://zoom.us/oauth/token \ + -H "Authorization: Basic $(echo -n 'CLIENT_ID:CLIENT_SECRET' | base64)" \ + -d "grant_type=authorization_code&code=AUTHORIZATION_CODE&redirect_uri=YOUR_REDIRECT_URI" +``` + +This returns both `access_token` and `refresh_token`. + +* Replace: + * `CLIENT_ID` with your app's Client ID + * `CLIENT_SECRET` with your app's Client Secret + * `AUTHORIZATION_CODE` with the code received from the callback + * `YOUR_REDIRECT_URI` with your configured redirect URI + +### Step 5: Verify Your Setup +```curl +curl -X GET "https://api.zoom.us/v2/users/me" \ + -H "Authorization: Bearer YOUR_ACCESS_TOKEN" +``` +This will give you the user ID needed for API calls. + +### Step 6: Configure the Connector + +#### Option 1: Use Config.toml (Recommended) + +```toml +isLiveServer = true +clientId = "your_client_id" +clientSecret = "your_client_secret" +refreshToken = "user_refresh_token_from_step4" +refreshUrl = "https://zoom.us/oauth/token" +userId = "user_id_from_step5" +``` + +#### Option 2: Use Environment Variables +```bash +export IS_LIVE_SERVER="true" +export ZOOM_CLIENT_ID="your_client_id" +export ZOOM_CLIENT_SECRET="your_client_secret" +export ZOOM_REFRESH_TOKEN="user_refresh_token_from_step4" +export ZOOM_USER_ID="user_id_from_step5" +``` + +### Benefits of This Setup + +**Long-lived tokens** - Refresh tokens don't expire like Server-to-Server tokens +**Automatic refresh** - Connector handles token refresh automatically +**User consent** - Users explicitly authorize your app +**Secure** - Follows OAuth2 best practices + +### Alternative: Server-to-Server OAuth + +If you prefer automated access without user interaction (tokens expire hourly): + +1. Choose **"Server-to-Server OAuth"** in Step 1 +2. Use account credentials grant: +```curl +curl -X POST https://zoom.us/oauth/token \ + -H "Authorization: Basic $(echo -n 'CLIENT_ID:CLIENT_SECRET' | base64)" \ + -d "grant_type=account_credentials&account_id=ACCOUNT_ID" +``` +3. Configure with bearer token: +```toml +isLiveServer = true +token = "your_access_token" +userId = "your_user_id" +``` ## Quickstart -[//]: # (TODO: Add a quickstart guide to demonstrate a basic functionality of the module, including sample code snippets.) +To use the `Zoom` connector in your Ballerina application, update the `.bal` file as follows: + +### Step 1: Import the module + +Import the `zoom.scheduler` module. + +```ballerina +import ballerinax/zoom.scheduler; +``` + +### Step 2: Instantiate a new connector + +1. Create a `Config.toml` file and, configure the obtained credentials in the above steps as follows: + +```bash +token = "" +``` + +2. Create a `zoom.scheduler:ConnectionConfig` with the obtained access token and initialize the connector with it. + +```ballerina +configurable string token = ?; + +final zoom.scheduler:Client zoom.scheduler = check new({ + auth: { + token + } +}); +``` +### Step 3: Invoke the connector operation + +Now, utilize the available connector operations. + +#### Schedule a meeting + +```ballerina + +``` + +### Step 4: Run the Ballerina application + +```bash +bal run +``` ## Examples The `Zoom Scheduler` connector provides practical examples illustrating usage in various scenarios. Explore these [examples](https://github.com/module-ballerinax-zoom.scheduler/tree/main/examples/), covering the following use cases: -[//]: # (TODO: Add examples) +* **[Meeting Scheduler](https://github.com/ballerina-platform/module-ballerinax-zoom.scheduler/tree/main/examples/meeting-scheduler)** - Create scheduled meetings, generate single-use scheduling links, and manage team meeting schedules with automated booking capabilities. + +* **[Availability Manager](https://github.com/ballerina-platform/module-ballerinax-zoom.scheduler/tree/main/examples/availability-manager)** - Configure availability schedules, analyze scheduler analytics, and manage working hours for different time zones and business requirements. diff --git a/ballerina/tests/README.md b/ballerina/tests/README.md new file mode 100644 index 0000000..e3b1538 --- /dev/null +++ b/ballerina/tests/README.md @@ -0,0 +1,92 @@ +# Running Tests + +## Prerequisites +You need a Access token from Zoom developer account. + +To do this, refer to [Ballerina Zoom Connector](https://github.com/ballerina-platform/module-ballerinax-zoom.scheduler/blob/main/ballerina/README.md). + +And You need Find Your User ID For run some of the tests. +Via This Website you can find it. + +# Running Tests + +There are two test environments for running the Zoom connector tests. The default test environment is the mock server for Zoom API. The other test environment is the actual Zoom API. + +You can run the tests in either of these environments and each has its own compatible set of tests. + + Test Groups | Environment +-------------|--------------------------------------------------- + mock_tests | Mock server for Zoom API (Defualt Environment) + live_tests | Zoom API + +## Running Tests in the Mock Server + +To execute the tests on the mock server, ensure that the `IS_LIVE_SERVER` environment variable is either set to `false` or unset before initiating the tests. + +This environment variable can be configured within the `Config.toml` file located in the tests directory or specified as an environmental variable. + +#### Using a Config.toml File + +Create a `Config.toml` file in the tests directory and the following content: + +```toml +isLiveServer = false +``` + +#### Using Environment Variables + +Alternatively, you can set your authentication credentials as environment variables: +If you are using linux or mac, you can use following method: +```bash + export IS_LIVE_SERVER=false +``` +If you are using Windows you can use following method: +```bash + setx IS_LIVE_SERVER false +``` +Then, run the following command to run the tests: + +```bash + ./gradlew clean test +``` + +## Running Tests Against Zoom Live API + +#### Using a Config.toml File + +Create a `Config.toml` file in the tests directory and add your authentication credentials a + +```toml + isLiveServer = true + clientId = "your_client_id" + clientSecret = "your_client_secret" + refreshToken = "user_refresh_token_from_step4" + refreshUrl = "https://zoom.us/oauth/token" + userId = "user_id_from_step5" +``` + +#### Using Environment Variables + +Alternatively, you can set your authentication credentials as environment variables: +If you are using linux or mac, you can use following method: +```bash + export IS_LIVE_SERVER="true" + export ZOOM_CLIENT_ID="your_client_id" + export ZOOM_CLIENT_SECRET="your_client_secret" + export ZOOM_REFRESH_TOKEN="user_refresh_token_from_step4" + export ZOOM_USER_ID="user_id_from_step5" +``` + +If you are using Windows you can use following method: +```bash + setx IS_LIVE_SERVER true + setx ZOOM_CLIENT_ID "your_client_id" + setx ZOOM_CLIENT_SECRET "your_client_secret" + setx ZOOM_REFRESH_TOKEN "user_refresh_token_from_step4" + setx ZOOM_USER_ID "user_id_from_step5" +``` +Then, run the following command to run the tests: + +```bash + ./gradlew clean test +``` diff --git a/docs/setup/resources/activate-app.png b/docs/setup/resources/activate-app.png new file mode 100644 index 0000000000000000000000000000000000000000..e692cfacf52db59d601d93c70be42e9952f1bd18 GIT binary patch literal 138431 zcmeFYhf@^Yw>FA`A|Q-{fMf*$$vI~f$$7}a5Cq9c4g-uxQnKWn^N@2Mf`DYnFl3M% zhBTyMn9Die?>*=Js&3W&2kx$#>gwG+ySjI;z4o)7^{gKnYVw5ml=xU!ScHlS@3pY7 zaKB<-WLS}S1c?t z#{c>~P}F*JeBT*t1JrlZcC`7TYUyV7$;{2{z7GovOmAUt^F_nS#?j4{UepLo??o@l zAtK05?|pydhq*X-tmEEgytv`C+kK6->B_jBwUDJiMMix&wb62KSg zni?8J8qaXziAh-|z=&6j=Rt|fo|kDDvDyKqdFh7_VmGh7T~ksr?punn$7Kozm6}fZ z?D@Z&=FiW9cf|khd9L}qA1nF$zuRwRZY(DHf45WOr(b{k`*2<-iAblb8cu%I1y_d!lB&whUWDWpA~T2G|IC4JM2WOF(vgZUZo zR(zO@M1_e@g&T@773{KcS>Gvndm!pX%!0?Fpc)kr%|hCBM-=op?b$=ITfYZsz2A&c zQS0HAMf98^CY4x%ilkM2C71+Tv$%$isxTYjGxfIA?L++sD)0YkvpOF?5~ukwwT$Ld z?5vtXEcR}GM6^ATk^%*V@ZKUlczEy>)YRlsczYv7-ZzKO(cl>kOddPmly(e_z`^kY zZ$_kyOnHsg_)~biw|vPe*Dr}6kc97N%DI%VC4wTe!6 z^Z6ruHbP8Ag!Gz!pxZsWv?4_W(6kkmsJkI|sug8)lTrgUat_Gi+%MwOeAbPsp{V zn}p1<4jz5*yOU@^Qk8{VLn`>U$nL+cBE`ZsB@wl#)ne*o6XLU_!NrON6Gh{TvYol6 zi2k<`sF9_wA|Bmt7DWGXB%0%IM!JZ{Bc0np5Mp7}m3{#L*^ETfYN;TO(i zV6}9)s$PJME}N|$D}kM1s?koG!1c6lQ7FvODbRVFB!UOw`tITCH0o;t_)PNs2P)6= zSB7GOb^xq6%;OIIC%4sv!jzVa$@0#Moh^Z#@td9c4m4{<0q+dbXkq!a)i)LpVe;hm zteHg#`iK~O`=2v0m{T?A!>_pS2x*tm3OW|l26`2qJw zR8jE!Ml-}G7o{No3;|yn;q>UQ0)HNtQ9PP@Ycc$XS_<$qi)h%uY4~@c?Mv=0p4E!J zzNdgU`m~bR$<^@WpQ^#coe>0!5^GzRgR4I@_S_h$$?SA zwCbI}8o^W1l3qd`*H@|*od08bBpjqP!7;ZgK6_Iv2P-hTah~xfPo7A(w;(l2v=}#V zce~fRg9(HwonIiG9I!wjIt$0~R}20-$FJ)_*x1;S%_14%?!-JiJjKRP!HL6N{T8

?OV`~F=4Sh9Z6Bf0bf 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 z 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

CIh3ExsKIUD2iLR(N&F`1+HX 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 A9smFU literal 0 HcmV?d00001 diff --git a/docs/setup/resources/app-credentials.png b/docs/setup/resources/app-credentials.png new file mode 100644 index 0000000000000000000000000000000000000000..a48827f2072037655bed1c6871ed25b2de5b8c6f GIT binary patch literal 164936 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%0A%O4KT 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 literal 0 HcmV?d00001 diff --git a/docs/setup/resources/app-type.png b/docs/setup/resources/app-type.png new file mode 100644 index 0000000000000000000000000000000000000000..6ef5a347acc852082d45eb2bc47b81e8ed2c46e6 GIT binary patch literal 236386 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

JOZs1J`A%(pxOeu;BzTo13H;K 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%0AfCbcq`UwN?1ucmRDm z?c;x`#mM_eP9jUas35ZfL5|4o=^{O^K}sJ%XCyzl>=?M6$VjC!^gEOBu3JgWM2Fxr zE5VrGg3VA@^jrvgF8|HiA>IJ9iP>p4FutYn%%@>zI(geeh3a`uP%05@ZC+{^|xOXQ=Lc=9b`&MKT`m%&eNVh8LXr zTi$vR65{5nD-E-t)OIVWZcDm;Rgp)39Wp43(peyZX6l{7U{;Fva zQI9Ibo%hzNsl-lX#0U8Xv!-$XBbm2xdZzfiqPii0AG|Z0Fu!1N=|C^sx?xJM=X?u@ zWW_PJsoyVKD-5B*pO&YTXhm*kb(e!0$2A4ZQ{-v2P*vrV^Rw7L%S)mQT|2xkO~dl! z7S%#e!`aFWO;zpZyp2k7NogqR?X+!V6LxN;t%Z5^d}QEl1(wki3$+?nUkTEt#473m?pQJAnKKtc6`ZR}NJeSteuPelvWEPeCk zkhS1}HpD$6cTe|-j>s{;@+>ed9E_oKpcvl9&bv#?!w^>&v&|f7Y;qnu@w9{?pLgf zgBrr$>jwOmY}L=icJ#i=`kYV3kQ^nWx@&J1U!xh9cBuSuf;h7a>@_9TjX&*~)q48$ zxY!vC^@AIwwp^YeNc?JCV9uiu%Qu=2d&PF;A`uMaOo2A9erFknkp%0idHV(Czjx*0 zG_vqxoNh93KLZ%zxBCKH@kN}R?L(Tfr>A}U&%F;{p9T+8GaRk1P?hg!n@-uj%cBnF zw=N$TK*U`13n+Hd{&Fh-rF=iDjOPd_AIeG8a<%$0kV6DwkkwkN4Q=FVeKY-? zR0z%_!?r=i`Dt=?SW}B~FyY!7qZw|i5A6oWi@P5NXjXCcp=#e#aaA_a5z&%U|3cY+ zk#d97cccA~O*`pG0abNvGJovPbxT)h1aK|$DL?#$nY8_rrn|v{etR*Voa`YeCnEt=DjTjX5#M3VUzL{>=O}-8wHAjRH1&TtI*wO_URpLY z%@W{_#1{s6HDK|v)#Tuil$b75%+(&^O1$&Z=YYCRcbxIGZL#0c>5u2vvf`aLSQJ!o zrMdQ=dKguK9AVcuukAs@haSOMR8F&L2*XN2RE@+B-L+DB~Htx2sMFgpRC*O-h ziP$tQJa#vB+MaHGn#``%3zX0D-VNtPQ!a4;I=r+!hoBaH^*IXJhWXm=DQuOn|T?aE~$-)TfvJJr7cw;Kg8zqaQSLx5^YUp46VD)Me6zjF1e5+@LYu9Nq?OU3EuldEVz6A z!|zQohGZKeOJSvd>BxV^YX(4u=$efo-QMgK*FQvE!c;nWxNLv;xpUgk9SxjuM`v|< z`+u5p>vt%smZjX02w!jbHiADMf)^{1kjeUJ@BN6-_`pfI5J=yz^j!wA6iD9y9%q+Oh z;Yd7QH0Ki$-oK6<5;d1CHT0VxT(lGOIzWn~-^XFt`BE8);!4^9YK1DpU$Dh)x0tbz zgzV}jVPpg>SL|RT1TZ+1?#UcY8!L(RB3?q`#rHmjziz84b}qQn)8KeW+9XQm5&{q3 zY=_!`4U0cBrM#p?Hse3RgE!sJGDck+SxRmx4~@l6XrFvqiv^zeOD3c~sQQ{*_~g#D z@62Z6XJzF#AmmhGq(S{ZP8{68%S&&x)*pM(a$)UP=dbd+y;X0;+gu46NK+C=VQ$FQ z?w_Pnj|63}YOi@d#WA~EU9G$-HSu=Rq&u!%1V*{O>3!Iy=^Fg|VHEoSO5Cwr$CM4@ z0pW_xZg^JfJD%ke9>yvA$~u0Y1QZ1)EnyH=x;nNE{;rWv6<7BWTe-T)bORUv$GKNOJqkzS7|Z zI05)|EfH%ad912CD;jw1T(w~Aop%`7Obo4%;HkO9{H3|%HZVD$AbSJG5fP0&4?S#A z4$ZcGgxX0=j+JX$!)6uvY7v)hEgPSy8=!_B4m)<^xEGAU*1Wyc5R7SWTo3s?dy<=P zC3rN1u?Tl5xk$0^yozQ{R#QZ2*9$-CP~GV8I_P%td~D#}fAWC}^b3w2 zk&6o=W`{Mj*?WmJzg~cx&Fa-gCV4K&h#P({+VPqV&-H3QSX(Jxs5|}H^_U!V#2`v} ziJhPz6$AxT^SYYJ$4wr2|t0-*L z+_R7F?tPJ!T1Upw+53&mseX0mM0h|mmcpx(;$2*iLF0t&s#@H_8Rg|deKCFi+?ZU` z%C@1WU%p3^42Q-3wg|eyRdi6M0D#kgyup#)CE)_-jUvpeek<4o5Y>Cq|ABumB8nGj z_ZdZig40nedJ2>{K*KGZ!j#KWBs(kC!`QBTP?%IGLAK2}{~;2-~Uf8mNUNeVB|@~vv>QjOxV1P)aEm1 z{vUQ!)??aV0vv`tQTITs>oYUYyw6XRN*$j13%-H8CWFRzBzr=BK}Dc$bSjm1eUPoC zOg2q9W3#go>Gi=Cb?Xg5<5bZ11JZ~we}cXZ0_k4g-dTHUTOpS1o96y(N%-Zf!B?zo zG2g7p&l5Lg(+la1YAt)coTt1NZEcN~-5_Nq23|I=a7xq|ukZjEP9w@pS4n7RKbm$j zxT9~Ykl8si9@R(4?Pxf=ei$eeBEB?N89 z^|9P=N`C*8uy{-9?w80qaP|H!=TO$-kN~nU64YcBM&XpLYI}ZXQ(|0>sovs8yft+P zVaHGTG~oq@Y<}AnI}*Gq3f_?&pKV#Lus)WjNj4l7IQ`_0gzWocj#OO`&1fmQ$#UGt z!eqC`Spw01Hq?E1vv+@kC{@DFz+<{-q*8w0hi%HyN-#S%beJ%!Kxuh*`&F*=pODNC ze6jeyz)D#z7^r_gduJV9^AT9Ff)&((hg?MBbDL z3W&^HQ}D1bb+2=kuREZb7fg9|&y=JB+AnA}KkjYdv)PO@MQ*m&8hhKX+d@()ag33< zB7V0Nzss9-yCTDOwvM!dD{QH)*H_t+8g}0@D$_DVBD~ojgfxVsI_V1vI+ND#M4rhX z#+&#Zyq#?uBByIa*py@297>&nbC;-5J5Ki}Vf2!NpyI_=O}C}4l3s~%+uJ%yYBWeeqpKCD;Qssx)zI>6W9_DP zUu^;3HKUz>oOHUl?cd?q_*?*px(L?O1Ef^a>I934_ml4?0PjfnYwaVI4&x|mfjL)y zS5&EvkdAQI8W7WXW^q^QDXAYNRV60y31Jx!6!Iav%yds{CeAjPtn*=7W6zV^|CSGS zQuh6UyXqL}tfijrWkqUMT00)ANibRNMSAze)B4pTrtFE2RodCF#!k9&ooBNwxp22!1R$~QSdht6!zKPS+}dyQs3 zo;D&}q15*@rk_VU%L0d#fC$vHzY!+j41e(t%|xD9Hr%GoUwFqqD2QCH$Tk8|+49_~ zmuF79nWCkg!Xo~m_C@-a56su|qJk2%V=}Nu05G^@aX0PMNCEc*gDUr9ebf884=nyn z8LpTN(|wWy5~mkW`m?q1mJ;$$Az{gotnq}IL-B_Na%|u6N@OONz+SS0+wr}NjKqJE zCx1WI%++@$>HV#rHzHOH*kRZ*M~c@%2G^~4K#vjEyjH4wV@3fHM!My7v%Jqt($-Wx zf5>V0HK5|Y2~^y#@>KpK#JZ?|%=PuhD~xcez&8Cag6eZ69sKF?BNlDs({%Hf!zu`& zKTXyDhkR|7;E_i$Dyit|5}yczxZUje2D5V?M3u0da*Rz%$Zv{y1q}*KVHYf8wI>p| zN_<9OEBEvBIKOISJbicnBH*4M|McKHS!~k3xsAVQ7Z0HFaL>&HTtC$p@pjp!M*u|~ zQ2GT|hUmTV_^7=-Gmo0*f@RDJ_*dxcpKt8$)eEX>0idE%Cfp|s9X^QE)cE(b5K1~4 zKKBy2y<{@x5a@?aPN*g75Tfk*IUnN1Sg0jjw6J}VTR=uzOBS(eEc}JXpRT+8OV|R` zfY1Gg^>`B&uP$Y}{eOS3LEwY+=v2!uI$kjWj=^`!{~sjz4$$4%#SwQ3@jTr`BFk*O zxrUj=W$Wwfoj8a9uCOz;&%MK79sk&Yfa7YxS%+X5VtrWm5KMsC5s@+L5 z-|>QV^~CogHTEY}9y;<;7^q+?434te3*4WWiK&i~0!>3s2MLR=uRMRTcPHrr#pcD2 zEN)-Zo3T+h8O#S6SkX_-nd9!86$Skwncr~8As{P%WgFILR|C?)^P zl<*(v4%@3Mit8^{e!NL9WJ}bt8cFCd1ZZZ8VTF7DyRtt}r53N=!yhkK4i%+U1 z_4TZRNf%WQxh%1umA2T~Z?m&b5)_@Qw_)3&M?doRf9-KoB$N_QqMd4k5++#XRx6-e zsUsDF9*Xbcbrt&&`X1(QnrwTY-b*HGOh#ub6#Eo?{l@HO zy$w=B_PJbl<#-YsjY|f(*yBmH99|w>3OM%Jtb4zorF}>A!F#qMUjfTE3lSb)46BrZ?UtoM)>RRtKi=x zJKg1N0xVF#C=F9{u1YlQ_3o!(&iL?~rZ$-XgOZ+xV%ShgsoP)E9qR9Yetynn39B2K-1G6eoR!W$?=XL{(hW=ka8i{Tx2LYV%@6D*&f z&*c}ZpNofsZ~XZM+FNZz1gl>(@)H2f96+I2+|T%r-xP?%|4meUbxr+ag<^XFu-^f6 zApv*GoXyg0b_KI(!VCWuQlT$h?!h%6X#s1n-z3*7-B4vZHXudo{8*j=xY7(T)5?M* z`G4^2Epo$u_S^tV=$qdtI4R)V8$-x?5{QfR54~DWtd47siQcXQ!tE0^aN6i_uC!c| z1-B$3DnBKOqnrA!XTtmr*jq`OIx0VU<^vbP%FLQYlT7^{l!hf#?nLxoa9BS-*{Qvb z=#^S2oU969cHc190YI`BN=jL|KX;7IX;^m;qJ>5V7C4iZcYzpVR~mD0CatxbrVE7_ z{`BPrYMdkGApupAZHij6)eW_(>9{nLlHCJ0mr%?!L zm2y!lCaJBO!3ip<;iLdV+boqNl(TRS;BO0Xv4+&d*sm-2v*W>D&UzD$hmYs)evZv? zVB;1Nnm=n5G4OEU8f_8wgMYe}gJ6tA!0R!6a@_S;wj&HlhLF?lz2U}Y@vsbxko9!o z$gtcp63zw|>hGaXoLrF*J>BVu>fJe$J%@ZO13xXpe>mIP+*HM_+Ub;fQQywlEA-sZ zvPlz{;KA4pCv$2PrY0pB#Pb((z&2zi5%MUTs`Xfs3AH?|y}i?Ir8EVl+`U^khRrJw z8@p3Qq+WMCq==(EdXRc8@fkB5RTp5cJtH+C`3n!LW3k&=14T#|V zoc2%57-xdQn8a1GxO>TB%H&nOv7GJiR7~6%oLtDZ?MI$!Keig~t8t(BkYT-k|6!J? zO?Gi}OTXf(5@tuo1+p(Xjj6a(czGv9HKUq$c z;WYF@Y81MM#ah;z8oCD1aK|ZK^g$5ZCJTOMrQkFfZzcz_l^SHa6PLwEoRMLddkJ_<79l^ogfx9cx<;= zW;%OWeU@QnubS2{g%}KvU-}gIKJBj8CC*A`%NCcaCk_CWy5m0prrPHrKGu#ZtdD*Mh?q#(Y(@N-j2-yamQzAa9k zWwM)3|snXa1OWT69Ah02oJphz7orJIZh#y@> zOnWeUh9cuJ%9F*EtmF+MOmk@Ia0}*u(}1$ z_8s5N_{@>yNE>04r#M)y`fb8vw_f{+`mDe+&vVwhs3f*2J0jpzqc$3jciahB)`n*x zpb(eKSdC<*6*))^SOX7{DJP(Syuo2Sj_uqx!^%AozY=-FkS(qcSQxNXbw|D^En-|n zUTwnJ5rxa1+f|;>ee1^B5T+la-rLv3uX&#@;|NA2DjkNbb(O&gG}okyomk)4khE=~ zHpczcbylTD5h4VWt;%Q|Ys_F=eNAL%&%GBE5Zj>Cdj!kh1GGozd6yM`XM7~k=PpG34!#J7{wuQnH#xR&ui2t7u6y^2!=Pw?xy+BlEX6ymYa|LQj@!9& zb>jC-7XaUkbbN&x*W$ZBL&yJQav?Y7@D1MZdHQ%>>+1@MJVSQ_ABaMTLPGq>i7sV@ z9f)_OV6X`S#vF3+Xd2pnfOsnQr=qgOQH%_*+hQp%psuW5_*$B1qinZ}pVN%%Ch-cV zVO;?7=`xq@3ycRQpv)urHhr)>4Y9Daw$&ehzIZXFJu@+)2vA=SyA$}Ln5+!X z5|m2(N5V>DAE*B}CbjL1W=cebCx3tWff!zC)~xrlyF2B?!PIWn0+^$&MuBmZP}`!K z`I|Zwj#Qfy_2IE?1G6xQzGt)Beu`ybI^R;a29AH(ecxK~B2Nyc|3iYfY-A>zfe0JKa2OKt9_v7D`RaeVFJL99>?Ci-{)D)@(T%RS&m z8@Ebhh#|}U=UPX=D=si5*?|q}Q+%2+I`dn6*xFx4mukEKiL4$M&Yc-_ZNg+7>0_D24y0x zZ?*t&=fBBoN`1N&*(`-iY6_|Dfb4YG{mCVR@6>Z9rWWJU z^NgTwuQi{1eGrLd>Os2?vymOtI{ObZYe9l29~LlC^oa9G(timcAho_~1_i0ZRLpOV zC+`e>bl$N11rNIBM0QRlr=JfGN4pj48xI$gzZEm-3##!>d;?6`wMt-KZ>C|eAI-tU z^xr`(_qktN_jeifk3_NSx(f3gQO9V0iFJ@JCK_cTLlrcC-(L|Djqq~-Q}GJ~krN{n zq@~jg;}ewZa0BWIlpph&zyE;61TwZyKX=onhq9oz0|x1r+jrl;Jn@YO7&s9%j}J_! z42#CrPYwws!%ja>Uduj;!x0~}=*RjvAR#Wrjm5J9usaEZN@BR17ZlB%h=!vDLqgUM z!wvDg@ShP2g@tEy&~~b7XiCX5eQyf8FGs*|rw#vJgoqWH##TDymW$lZ22S~Jou^-4VP;!gF#g=g)~*{dBrALT1=MOy0EIe1daUV6zID^CU}8b$`A74mNOD2V@& zg#IgkyI&S;4ai^q#Tf!A`*`=Hl?fKWp-}KA#$TZG?qZ=jCECE;>^1VLxkrIlgy8@6 zdZ3fsM!c$Hyrmf13!hIj^5&Nty6vTh!tp4$ySqPN<@0B?8o*rD;$m*Md9JLvHC1h~q+hpf==3h#MaGdsr zl_(^swIQDG^Mb@P7jCuAkCDiwd!exI>IrjGd`AxxQ-dj)w<*HZTvEeHMen@v6Ktuz zcCjEwfCVYXI?^E5`cD1*)y2i7?J`;v*~kr)Q22_?IeerIj>V`HB7*HtUlo6TL& zvP?vbYBp&>vk7ICdyP zXm}leH+pWq6y1Lk=po~nO5~oUSWd)3bQz=sd(%|SWG)Oc3ht1W-u}Zn?e{YlE^S_g z5zgx;p6?$eXJNb+&Xr9~g$fML1-bpB2&J~qrk5pTB(Oaar87Tc^Igi~-*{Z0N>TzB zs1oeU-9Wx!<=18*drWCsG+Zw@7jxep3Y18Ca#5=}M->q!KQxwUy#=aE%bh5cF6O%I^aud~b@jDGpxADps5Y(Yb%iF* z99d^X`Vn}u)`24!C9AvB#L!%AQ$3JZnBg_vt?qp#Qd=X;pvzq(_M|Mlm<;nskp^-V zz0$_h(qnuXBaVt_g;6f(d}|gU7_5?Qy$-6Qd*(4cse62v05ZVax&xf7+#p+D2mM>h z!)f|l%xc}Hr5oQk65gnwrWzDM8`0x^2tlV1gIDCtBEJ+3Al+2a-X|X1zk@7oYIYdB zT-;Kd!d*u`2Y^zKfgqp3s*SxWTB0m1Wj`UQE zelpOnI`ZYcz?}7~B$mQLJ!Kpz9#tWZ7lPwVwg0yI83VRN8z{mroWW-3jGZ65qwR^z|T10-5S^|n4m=Uu_k!B6n#r?(sBZcWy$gu2xg(B*1#qwHwO$-X8; zA!TfB$9v%J-w&^e0gTe23PiT$2s%=^@vE(Dt-SKex+P}i_XG6p-lF+cEr>@a%S5@U z_gs|^Oje%K(E zen0Czd7dLUL>Q9*oGRUb*rO5+#9(l6;L5T%*7KmIauuMq!h&3j^65~^iQ>)$i;Sxk zv(s&u_akwm+(JB#g3R(`nhp_6jc?X|KQGf%kaG0nJ*{Jel^IWWzF{^s@WF>R45BVo zoPVV?SXwvC2b!k|cTr3;w-I~S`+w6hU20if$Cua*3IhGWU+>e<6$NzdwT9(X>#f_p z5U+q+lKOnSgvVn8Z{r0Vo=7}sYWR5Vn26}PzRi!%F*eomul%wida9Gv;ux!?-(JW7 zzb4TXbM*){%&h!jh5kwu4?Yh#1-A|*0~64g{!Y%oe`GlBS499X$rY1GVET2ZtO7B3 zBQ@)0sSbDcy1~U1G|uf}62W48IOR55c`?_Kg5e6sMrb^5ifMe(^NI@-A&Ul@C4`}~ zp8^Jd#WwCggbI0{I%XWO9#t(vYXerp|z}>(g4|`>#r7C^Y zfW_d>wG4D48R~{ZU77d8h2ln zSuR~5R(xkOX=&R}%H7yJ=?cI`WFOzO@sw)yE-2|vo~BNCN#FTVT?0GQ%TWJ8f_n?( zb5}OICs*rAV|TZ+fnSPbVuJr&*V?Lc-h3{QnEByyZhc3f0^AW9ski~ zhvk#&WY6?|_L>WsZkWq;xjf^Wn`3fd$Pv@wviq<`oi43=Kb9GHOR($Pw z>819_O}oTZ!bh2B_eWDV=nkwa2;h3; zcCRcSSbEBA*LN_K-Js}vGaWn-xW|C==sMIF{c`$QW^eOz3O>+%#X&E2o99L$CxnK@ zn!1ocF%d;y(QSSHhB@%Cy?lB@SM&~AkDWz;U0vy$si9|phUocC=u*FCgYRWTl3>wo z#eIRREzt{iW0r@?U4Rg@<4GHBAAmp2TV5%w=dL>y34iJvd38I2Jh8$ITGoP0vzff! zw+ulfC?QiVXT0f?O))gGyI#M0U1rn72VKFH6;6axq*7DGzMcF(dwVlJszY4bcf}W~ z>qNEWyeUQvQ68SsK&Nxp_^O4;_jDOW6NWJER?0>5p=sW4F?rtEp(Q#WmdCXn^qqGB z72O|8XnAdCyz?W{u?y4ng}&zE_#CvK^;h!O{jzR^slu5p4dZXB+me(&Qf*CNt*t!^LWBhTxyDfX z!nJzO-}p#6+J27KRD7em77u@Y)J)q~%XKQzS%u+1Mnl4Szcxv_n}iyD-j;_8|fx zVDiu-sQf$cc3o767irecwlU}NbpEL4+!GJQ2L>R%ek{*~J$IAy8#=o>hq2B00OLx- z1LdkkjK)y1n)BI0GfCxoDkDtm9B99$TNb&4k=3rgPUK6AH^wVJn#s-gvnQ+Kszbz2 ziWz6raWFuC@fgsTAAD_3qXLN!JoVa;PFh%j36P-RZB&N$5ZDo zI9^IN1AoJ_k{`-%VY8yzrA|`r_YI*hrOinr+TCEd&wNoQ z`Ck&8Et6cJ2e1K^LL?<|OH=l};WklLP(F_&<4{`s7jtob`&D^Uy>-+P^G9x^#wzYKWov6KEN%PSX}6D#`Z(YQ}~d3 zYBY;;^lVmxtH)H##qa>#}It5xP!xMBj%X4`Co(UABVM9?)PKawfkHm50xL`c$iZUJVbH#L48jX zrVs!9O*ss%9G#5atpkFMhlwe!cE6<8TgYI0! zf>**5@+*j_cIa$8P+Rq<2C(sby)CEyy@X za8c>@MV6Vj0M~a^$LPSFFH`*2WthABuUimdWkzX{Bf6WmB; zNh0!$&ivUl?s7^khke$=t8eo3S?shX7Y_dc+kxv^go67#&KGG_ozyeL1xF1N|l!Y2Z>x>kwBlV+^hm!gi23n z0Dm6K=&laVBin9PFn1Lx|B_Z+*`m=dGiXi7HnrXErFo}xZH5R-q^VA8k#eqJGl|RQjpLO3*BjeCI z3Y)nsmQ4|~1*7Z}VB9LRqcq*gzBd*M_#3n6Q!QcZtfWlVGFz0%M4d61 z$!3i=$;xpw?1ej9v_ic6Ri^HtA886fqiE}i`e;F`X@zps#Pjg<4O`o9@hv9M+h>aE zjWO}c)kOho-^@czHZe9S?klXH8FUU$@3ed`xO<#aioP?P^nJ#*8stG&#FLY>uGsimr<2^;Y6XM=d4cH4eLHUWyuu>yueW3R%tkO zDQhtTz7{wB3VOtxvSedQ`rmNaXI7v`3p5`ea6+RvINJxNga@b@WwJNuRy)1#0C zlFLP;GQz80kR%ilH#`*mwx~@Bd2TKNW!wd6uhR?MSa@MpedZGP@H-h`r|BDZ+P$vY zOR5j(QQ1BK*2jOz^Z#)#T7;z^yaKojR$yS!WG?mHgeYVs=z~Dd&mHXo+94-y+VQmy zN_)uy>^bjTk`SlwyZ*Em!iQWg;h@>&0^uA#NjK<;R@?YD>m1A{=qyXlj}>(q7wAqt zvGtXiQ)hpxjSnR z(qRhI{7na^Ln@^o1({aUe(Xe<+siz5VxExJrC7I%o^~=unL@$SPVNZntb^Kwht^gC z3Pl`QWiiubUbW>4t821#M=Q!A;~`j@vn3Icv3NzdYvD{QnVIcuYZZbYSaT|EXOyx^ zzIZv^zwJ2Ewxq_b2h)}#Lqdin|en((pb4#=)*#bwJ{RkYCHXSI1{GysN!PDSV zBQ^1DMfin)6J9NU0#eTs5`SouE~aoOMB@!*n)?3n(B<7=)k8k>pIQ&97d!b6RSL4^_<@p&HqzWM^0g)m_b(PiPxHqMS4%7 z3dfDm_ZxjXm3@&?NHt+oaRuhA5q$&2sO6rlj}1Dx0WEyBi5x$HjpDiOx8!&wK~)4t ztZ6UFd{!o_#=V2n&KHK(FaO>hDLwCAT_C2QrmHF?AZsxsK6PplFHjt7K`t0sRGVb6 zwr4i-%YMFyXDSdBUjZwu?^fqu4%Jp$ThDy@l8@7@J@L7Pcg|uopPFt-PPI&TMlNSFq2oWvf87Ta6!b`RTCqclMurKk2%+_napK-;WyLvjJ_oEQZ)++V?^S$4IJqe|cQW6&4k?;e5oO+cC z;;R{zG|&(U>vTGkCnC$TyR+6^a;(tW1%a4-?c@}_knYR4z+(Rv(LmrPVZOYO-Q9%1 z=nGRJ;Nr(p{;>!Hr!e3K=zsdtf2E`vdIkTwJ?=uLd}NO2c8&NG{msE#s-O>TE{#e0 zKXjdCRF!Sptpx;>6p=0g1(cHR?pk!Wba%J3l!$i$? zid=%KT=@gGNDVujTfCM2td{epIV=`t4nlN8Ke;}1sS{*^Ck0BBK<~RRn8oSS$HyHx zC(&%oIb$PevkowaRDPWDGo@J4WfvX`Ewq~N|IL*&e&_TzR??;}cA~`>vt>dYUbN=R zPJ+^`^EcMR{G35EaKXGzj}=v6dWAV3!f)!l4`9^1T8QqBhq!Mz${MnSJEsvq1gUNT znVXqs-UzWwy&5C+31*`D<2Ty`+fQ(&-l^{bsO>af#zN%RrH%0-kR4;vG&JWXaY*@U zws{o_h_Zz02tell%F%(6YrvcL)Z`IJN7lL?kmmxe2FQ$5(~|<0gUG_o>ezgf^^@Xn z{vDp6b-FP?M)_Z)SP1LCA!Ft`dZiExZTfTOEvbJWJbKuG*`Z|AjH@)x0lROu3sCeP zfNyk<-ag@f0qkRPyjb9bD3SI>HJpzR$@SjW#KFxzAZ!zbxD*F!+*IZ}dg3LtfQ11e zp(6Em&V@=2o;YuR5mm-Kd)dC5a+TR}N1zI)173>9g;rt6o7v*p5g;ktZ$Hq;_2<6cjBeGovh1?6j=2Blg#pTXU~3fr2b|-S21^h-k(F=OiAaP*)p0{Y@M544@14A#vT#tcqQg3Hda83?%dD7yaw4K0e$OV#W zFUKlwjHv~|UDLuItd?2sXpNS6L7l)3^$3{aT@Z$TYDpLwRK^g0XJaelUuefxSVzg( z7RRD1dmkw-ifv?MGS|0l=$MiI?Q7#)@z(e=@14D^+%K?m1qnKmSZlZW1qCVO@?q5d z9qh8FRAuQ=oSZ^k`Bhaz!$84N{-|zZ{6TTuoX-dx-Rv}Bb(lZT5cp$pN}`9rM_Hfm z`o@!Cf8ZgeHy?=iOYxfWObonS3#ZO$I%~U{91}>ptb2{fYjIaH0kPct5PxzqS+r1DatBHl1OO+L=(~d5 zZO6(b`ib-9`Q@C$>#U;2;8e9^*oD)!EG3`4dLFhKQvkG3dkEQ`ZSh09s5#&&JCAuk z&Jb}r%55x<*84@&hM@mfwE1+bp?J+b#f#3DXs0o78Lh={{$wi}i{{7UjJ09{LMa`9 zck+z-%ji#%qgUv(yI49Og{Vn+HjN=Fh!1wH>~ZjxPmEt6x(3Q3t^`=bz<~x>#$gnD zfbzk)v~1W6kOcok3?B^u&DoVDR~_~A&)tA58_t3GODeTVtmV%`(-zBM18X$#xEN zh!++YDGDuKIJt|xYfPpH-_7;+KvR%X1#rqvifb+YjvefZlGH^X?oClAoo1euV zha_L?{^Lv!Z2$eA&DM;=$IY^!Y`*z>UzWlls`Q$Y2bX{7{MprzD8# z=_FmGO$KmO_m@7NVf*6X*+~&uo=Y;8RCcowx6Mxm5W|CM-N)%x#PPb;W2{0d5-FTy z57zZR0UlHij%&5DhzLiotm#wAYHvGEhjUjm1wACpkB`xH2X6Ci2am#MndWcwz;Q%p zI|LSc1xI>mmh(+1l2TvIZijhFqnl!iinj9jt|&+vTW_{o!A>MiU!WCxPW$RbI*e4; zGU@_*T3d@=@jW&H_7oJ9*ERW3w9UNcz|JSMOZ2duwQGA9w_#*ILH}DN0dIX)NQWeM zobsH!D)^Ch(03Dh2N z06_Mt8&@o@1%$O678)!LAiOQvrGi1bVsd-+|7&tJzMIS_E=E^4(E9^z&qamLI&69^ z4d<~YxGAZq%fwKC();^Enay?#3uy+(9kLV8=3f^Ur;1~K{FrZkqEtxpF|#7(W5G9` zV7HHap*@_Qer^VoWAAzg2QwuTmDEkS;;@ARhhy0VC} z@>&56Uj(NtVNRshq)p&dBGbvho`Ds&OfqvUg)CJDKU;IBZDXLB1u_~DF}28!r{n9B zZYcF1^iGY^>FPh0@;@%#qjja>_T=AJ_44PTP+_PSnadcdH$3B{!stRFGdG6ztc!_$ z^gjesD!wJihK#1mXerNa0YEZ6fVL2;^{=KTcNcTb6e;9IgPdFfw`%iJ-J-vSg}H`I z0gb>+JD~f{h>4ze2&sx9_P)c@I0tMBbJMbu%CUY8xCqXG^S{tb7QAzAqv-C=sjM7{ zem4|3<&8>61BhM7hFg$h382IF_q<^EN-h?4?96w$T4dgM zJ0pQm0*K8gn`IEK7HeZp>09n7c&_)5=RrWjF%%(a_I?+0B!3@Y=&<#!d7k%G2_FC! zYaVG-Ze0Rs4ZlX@N#^dRDbsRr_F5QOWaNA<7x8xhk$CUm+Syb?1gTZqafR_cMIw_$ z5Cn1U7uwCs$Tk2qJGRo`?ra`~r?}i8i+plAS<&!4GT)xvSwF9kcc6dpt6Afq0p5N) zU>@qaQEfTHCm}G(d4IM_Z8Mr>?h%z{npqGN>peB<^<{r1D-vgqX#op&5$Bd*t`_il zIDh?2l0_7P;I$r610XRs-IlKIy$^7j50lgH%xfZ{#uq3McJs}R^Ufdhsa{sI`F%ZyIm2(5yZuPVwtlnn@n_I%*zBX?p7usjX zI)^=~KZ1F9S?WchJ_jv?UN}fd!wN+IfQ=Amtdu3X7Au{XnZ$FVp@me?d%UZ#yf^mK z4Q}6U^xVUliKMKQ$!4)L>#}+KG>YM#&F&3;CT&}rjqMe&yieNB%{_OCgz9=f<2Y%r zVLn#!*4eSUv9h6}ozC)fq8!5HQp7M!amXB#VY55LT9xc=5L!)hWR8^Dh~+n_PKDeQ z{TJZ9>|^N>%k)YeM0xk-g{Kxy)$Q2rL-liidv_6ho|K<8tBwZrHtIv8W<-~}co*is z_)?0PsOY)`pBjG0x^N#(4!?}a{GnHq9mgn6E%ueb-5bLrjq8fDB(^`lv z!Rv+SmzSy}EPGlqn&@@kZz2P1jwS%QK(MBLLH0ZLz1l#p;=pTbz|#m^Tl8QN$4L&o zeJ@DZh1s-Dy%V`S5EdS%Dc$f13rn(eA1^@8f?CeU@O#OP`;m=Xt_GO&WdQP0sIqjn zJb{k=&@vH_Wdl}W0(^W~TfB0oUTaP$S`{0of(d9M^7xU;rg27TsyXN z{f38mZe8*C34AVlJqq$|QM3We{~r67PUn$D{HbTWX;CSGThmgDRmskW1sQxxkK%f6 z??yLnZr0A)sp)g1Z#O<^G{RgU5{lTiefHU#sR{Nzy={cUNSfI!YpMvEvYsCtK%8ja zwwZKpgW+?4yoqe03e6s?EmJDDa!TUg&(FvgV4oIR=LwX6L(MLP9vQ;)LRIUO*e}7Qu^Mn+dQ;6EqScCDaq^fZ1NEHJuSygUi-!=VTejOAne#W z#-g76<$Zojuh{#Cf|sNm9iCLj{03pmm$Me%bEjdIBwNSnZJ-AWcIj8OMb1y+Vv{Tu zx@A!p7uWd`GD%LhRGHGPcG915w}2iGvy&xj#1Q%;TyT`nyNZRz+BEVl$BUk0{X(}a zQy_$9_N^6BXd@Ja08O^>n|%ZHQOB4FUSwH*1YDc{yMYR1x?mxxIH-(+L)CYqUsIc4 zgiXE-0BO2!G`)*i2(4eNC_PX!fig)2KxM(QuM{FJ3zM1Rzsm0CpyE1v>}$9;)+Y6D z(q;D*Tyru#UDHHghOk>$S>yqX<{ukF34M{j=^uwEXYpV*+jfhl$AIa-MLzBGZCJDR z2NWbSI=HR41+YLZ;WHWF;T;Et*v10~;_VFIk!|#-hG)^vIUn1ze^}o0Qv`{Pn*liz zV}QsR3`nOnYF1uzLX`nFy!QUuLwa{s5P#pDkrk7jlXv>5e#W|ZO=w!HZ#cj9 z!nrYkD}*Ls?Fayj{4o`lsdi?oOU`s6U^{g$2c7kr@LkJ0Gqz(C_6-c7R^J-1X$fuP zZ9DdP3>)yAktCM}lQ%Wal+}`S&S!E@IRFH)O5TeCOhOx<$GWtQ^Y&k!fM~=1&F)G= zR_X1V(>OYv^vD5EXGmt$G2P_T%7SCBFRMQzYxtKQ8oU6|LtVM#58zar;x8p!&~<1q zk*1=kr0@9!RaMzGaR$?b@FFXuD*ze=*p@@)YYot8xed_JMZ5vA zT2mz8>IJ?EkQgH8aQdOexeJ*%mHl!r$M60O5bW!lSQ>yOrq?LOcD1wDFfC`QW3$Fv zuV$03>l;<}vx-Wan1QNvmpwp4FIoP!(_4j2pN%|mGbT!CKteISD8fbuXc+4}w#$RLpAizQbZuGcSRv5Uw-4<_60~KHnh2OAjs}2n6r(;}mRdEOR zM1^v%ipZ*#gA$$JA`sYM{RoR#V8#IrpL_DwCmY6&{}354 zy*^n_9@geeqlgzJxsiPW0Fb`6mDZyghw8n954w-4vDW%I$WVtTZ-PXLDIE8MWVn-Q zX~-xr7?3F`e1#~bVyD|G;1Q>RdtJSyq61S3_pG2v+OOYq7=Lijl-<}TnQz?v%I_wwN5*WE7cl08Flqga}Rmx zLu!#*P0cx1D$RXB1b-knX+tr5Zfs(LZb!%|U`Vz2f%BI;SxPf=^+;9?L8P=W9~r(T z93>VR5qhCly1-*5p}4H<+O}s6J@Z;mq*1RYd$E&-kO3SDV)$0KDA)M-b97Yce^93O zSAS8aQ*FmM$Q9P{r|i#W5Vu@>y#n- zYC~HG_|}zD&jt8E`Gh04Hl4XvXMpK&JjsG>Jl*FTQ5^_hmigFQNY{KcYNHx+^Z3pF zU59-!5SPo|h>+<`%>m)%6Ra-7M2SW*IsD=_bsTZ;`@)>PLgv$(6IpL>F0V_my7AWg z<<{+}OYYwoB~`}KRZ?BS9E48lW(-_wogBY0n-@hmd83!J1J}5?xYQ6M)htzMy4<0Y z6c_eBf@Rlj#(YngJvjwE>4jj^a`={Fd@h|+#216huC})<`35Zl+MSWNpZ4=qYKj$U zg?^c;S_(g}o7qgDphOg+lUp=Nw5Wq@-?RL(gS)T&j?= zti~U(@5?uz9wmHgJfcVWdap?-7+!IA$b;6Q` z84}yBRh~Ku+)~`m6?gb4eQU1dDsfl(vX~kIR`9%HG8d?whjaR@2B6`vI5)_Yb1 zPp=6Dg=xuFR`^+ne&Y)xK8_q7WT!oj5LLVFqJ31b()?so+w4d+6Tj6NezrWCZ+m16 ziM&<|arV~dh(skM?<+T&19jYbLAftmBoF6^XNP>(@6)nyzeCQf*1Q^g9s^~;d|vCP zXAwSEWcODdOX+|`Cl%xRp7HM{mdJi#JN#amlwc@{{JYgJbgQCUrdn@hl3_DAt^*c5qQJFU z0W2mHb!0Vwu(7RY|KLE4sc7#=Oq{*uQ@eg`Edji4;W7S`X&3&=mQ4R@^grarNEFTM zaSOr^Aub+tI_y!rx1mu1*#M@J`STAeGl`cn3Cz(%eB#I(BgQ5rF~Dne76zU&xaW}M zkD0I_StVK|6-wETWhY>duJ^3JK&ONj9&&Sy%@1GH5?}<_+AGTz8;X^ldgb52McfOa zWFj0N=%Tb1wUe>0euoj_YrX0xfX2Oysl|(rn(p^J_^uHj=1;!;iXj9841$i|mR>PX zHq32oXe?+do=7!-q2$Q?MDKGLcy?aq?f0aZ7ISC{pK$)=#~Yl5CzMHkV-GOJOVMP6 zzdAcQjzPuiXV;q6pL;3E_&WU@;5zRZzTpg*tm@>;roCpklbq_f!6-%-Cn; z)3`TRw@Wt~Z@mEW_?33uM){Jh4o=Z2&e)3hvFHh<5O6It?WN2NWO&}_!0srFM5fCUHVKLOrWodz?5;=T;S#UooK zzbjjgw6>aOXB)!qpxC9ut-OX%_|k6U>6j{IP~WXW)~LXu%Lke zX)3|I{d!eswb9=^+R+K%y!cBzI%s06+7tiiue8>~?@8Toy8swDf=Fclk`mex_~0qN z2LRb#e-VerM>)@iXHrv%Bjo~4KhGwF0e%jf)YhI_{62bCT$E`B( zv|c66Sm0Osw3zkl^ZG|`S*qmpqG_va=!>AW4y$wX^X~=aGJp?BX>mPwmX)^9b66BH z@nG9_JUxr&X!;&DNJ+$TpSrAU#hKKOAok+yL(FVKz`h`}HQ?&MY{#TlsqB2wmJo31 z*K)C;v6vdCSW=j_l-+!besUuGDcD=5!PJk3?FV#{w2jW$qHW*%xonbsWSr-fel9Gz znZAmgMNc-B;J=?;Kafthv)g>K9FfRp$GAAJ;wQUQ~${;Un3y(6`{O;0`5%xvXZI#H(?JTN@)N& zrThOANv*eo8efWI>w^!J6roB0Uv(bVANnN|tEGxi+1Q^Lvd~d6Ba=-7$4I`qd z;Cdu(&VqrL^@osukvNMrM|G-PVf5t}*$KXLo=h(p{9F!oTo-2@0brEi(#?a<*roR! za-?+g-s-8_^@)*5CEVI(-93rdS|i`eI&S3I_e+}1^=RL$uoU;$HDE0drV=16dfXlp zlo=uRw?5p;ZtpHVphLl-TMg(fQM;==B_VI-D?I4$PhGr=$D_6iOmwr+b=*F1sb$qH zNl4f+q%=DMk-;s&TRz^GdA>rdI)lz$_j7!!)lR*14eOXBxvQ&!&NEte+a6a78K%=^ zkCz|~$Da9bq#+|3l_9*I_sV;=H{JU_dU;#7^sO^G_rT*>bTF1-bpl*j_R40r@sgrT3|GS4*uA zL^8^!9e(#tr($JU5t_9H4yV0mHbAJuM>?A9!j~0dfudZk<#(8XeU^m$#&x#E0-dDJ zT{orC@}(G27SJi#+i=6z>R_{(>+{l*C-w}c9X%A&X|oOLn(BSQ|3n!ZdX?iOF}jKjhcp6q9>@@QBe@v6N7z*AQiwB-9k1%StDUVQdDs|&EE=0& z(b@o7AHWyIw6_fCENTgL^!5{uIvo>lnvPMsfFX04o8zLQ=VM#3P-490ufsTmc(d(w zx)1=6Mg{x!_sr?^uSr#M+G@yYU5Q>AU-3mgz&cq`EBAgj6Xjel;Fbg;>iky2d7}7= zxszMHc)VHAclp0i&-QD^g?-qQZhMX`ERsUkDcI4FAF`1&#oCi?lHCC1cvZp0c00Z9 zMK6wbrHOC2FYx=8rQ6*88l`_5%k0eY^VE$oo`;)D(U?2_=E>Dd4&JqIN!&1jPdClb ze`1hbd$U? z2NNNORZdmEA_@5>+-1ey3mATMp7p-Wbn)j~41&!Qsb41_Yq3q&4rN!;alLjTPQ>aI zT2o?o-(zpS+0aPjEO4JmX??5F2$Z4e+c-aOb5+AwN%XWA;Dzo>A`o_l?1gt;;S8zutFsqr^Boe;4QFdmnnAILPub!7F|4%6c}qZ9X|4FQOpv{?){M4EZ*E~xORl2qLZck^=Z7GJ z6O{X``Frs$<6p@Kun}7evf~?(hzjWcqsfBT007Z3qG7mG=W6gE0*oTL@`kGKsi1j{ zUt8-Pnkh$S_YS(mK8$59#bIW3+41myqrF>afVmD7Kbs6Hcv^D7stfn)8$EDW^*H3UWLM&y{;drgDVu8n*?Rrcwg*tZCNbc!7MoUYBSpmOE&;~g~pMm6J77+wq5wxQVT zJHi}n7JzjKRs6S25YR1Tmy4V^6u|uVC+WdvxK-3dm>NuiCQ~1;6dTDPZtncl=Aq<3 zW=W|E>E3xRm`BTVF6%_|01xs8Hw%l#T_2W;Q5L&ZD~dwgkXSRB=Mx#Np^zkI`q{$;&{ z6zp~HKQYI`@5KXWZr#w#P5X%xHn-%w$jH*Imh4+aIc14T58{#n8l289+E^!wWvLma z-pt%K2Kf|-Mm$qjtT;u2adltV@A-{W*IdHe&avU24SjU%zs3{a06+2lyPm)K!7D^? zEnbC&K2m`K!t_Bdbks6T$*oyYf{ptn3l}|q=STS48)D(57!pj*LvoKs-f}QX39Y^<5pWawHv&|2YAFN`**0Ep(SP)UtC|fk4x)d z)RofxF;?#AjQqc`gwU*s_j97a^Yke}0$=Dj-xRg%j9G&oN<*(@xP+<;6TZDoX{zt?#?31y+D(<|gj?SkUcN!G&6BZx%)c@npU&L4rGYQGK^F%pK7In*-IW8)o ztFYFzNWw@Vdm5Bam0KRKykr^YZU2;Lj-x@^&PFSD;2woG)K4*1EZ(2%zvtSSPPB;! z@7ih@mave;eCngF#{_=Ip0V<(Ozml@(d#aN&wIi%`Wor) z|0^zC`=xgNu(Jn$C(rqr&%d^g}IvF+Jr&t2@eoVr64;#S{AR13TFAV+%0$FLL4M)*Ai~Fev zcuGQ35x8ygUK{Xq20gtmRa|<1G0#^U9p5wm1kTsbQ%V3i7Yq$PM~r#EasLLHl5W%L zc}lU=_!kqYujEgk%E<3aVJz6up|V-2?-qVur} zr`?_S{uRrRzc}ErMTb4(>9fruD%<c}x{iNx{$Z(=DJIK}@}|4{zm zhHSku2*|Z{v>Kpv&o4KF*_%xN*mHw{+fmPil=!qfhouiEurt2+3Ds$1{l%ij0#AMd z7awziFD#g8Dy!^j9v|%plq7^@DPM6~ZNonX(nawdbNQeWY|Yq8#52(TU%&CS=gNdG z3*raL;QZ{FEKRQW5br{NG!kx68PuVPF^B{Yj~C&-g~%h>$#mok6|;9gwW9?#Wd^b@ z76lqyw99x@|BmTZdo$vJfGzzOkMGgGMCCAuv>q0;!89g9@yC2dlZfc>fE6;wtQLZX^^ZQ6x!8MEVM*y%(fD7MjAwjEHh`Gr)fOp{k^-{4`m?4{w zPktE#>?U0w-xMDdC;#lO>4uiHUZm8PY4kMxd9C~Sjjh;Xe84w#<9Rhy2ua%o%>xHk z)Tf;nP7lULn6W=x9Wj;OFER$r-z|8X0XUILApQ%zj*#bMErMRpN2 zhh>|@0g#Yo0I*ZVYV!F9EO@MV0Nl~p3f8MBAPkq`waIbFfBq_Xqo`T;Jb4PfN<84R zonFE7^W;KzP6i9@&f;Vd8X$#*a|pfXZJDe)xZ!5~IJOU~1Gdh_bXXg4auN?}Mqy^sAdHAUI;AN9&%pfMbGM(ncFCehshLtDMn`4xc{Ph1jze8d^Yo%9UPI(N+z`N{hHt!oFQWqZC>)u$xh#`&);*C%i(6XWl7Yk}MKbAcn`c?005 zJ&hi@1kI&R14^+bEGc+Hx<|{L!Um66Ijr8%Ngs^gcNXIS1pxeeLd0Y{IvLHi%-u3Q z6%C*du_s>eW;HyY-seqV!~FMmJZ#p|lp4Bx7XM=--tpN0znmra*SDnqUS}GIpXL0L|EldghmX) zQoEw9jh_d~yv1@V+$Ayjke(W%P?O41KZiDD`+6tp)ZzLzDy^kEEjgfLVdwsLlTca|OuzJ#-Yw>2f2VG&e?Y zP0oY7c<%iUt2ppndu>wBtMrzoN@bP{Ho*gFd^|x*-E}wVQKdIataxY|PaCCd8xQ;e zt!l()0Nj=nTzkAv-ve?a}S4GSz4+ zIa*?EXvyaRhh1F8f})PG6j~)dfAY=}w(bCT$LDs9fdxfHRSp%3+S*o|UyiuKfR+0C zk84(no0$GW9EVpaAn{r=_{La;U}mWv)I7*fi>$(8?;N*e^@cxIImUI<#>8`nM?S6d~+T6R2e}CSA7lD3Z$vC8b&aYV@BXtOn#fV=UKalb0J%#UwD( zNp-9}aww06b%h@~t~J#i-9J+f^Xwv>d(Gbr6FMrWEoIq}7!R#+)K zjb9YfY-n7%I7g6nYwaY=gvof_4v#Sv?}G%VvH6v(7Am~{T=w2P)5l+5kIXo!H18h@ z<-zBUc6N5Gl@l_E;4zAhR~5$W8Iil~T7Td}vh5)*St>a=_t@ux;l(NJB}BIYB#PiWHe?ZbRa0kjV_!b@N1wWfLU0Be0*g6H1b!w;mJ4I^gYQ&0(9OV=Eu%HQV`J0J5jn350&@B`!qygZ zl|j!%9zPCVd$ikj^d&J&dz6%4PHDSpcfKCc+&-vjHjFa<8zK4%W1eYw5$5t0U zscT367tEGe0o#4FEdbg(=VW6u`{TnFkK%O)J6|^3Yz{{?Uq%h}H&$D0Y9(;dX%E(t2 z@)c=7dAMO|WNevawsRGp#gNf27NrApPl?EX4p`A`;QL9K#5xAPgs6u!w~cfzW`}EoOwQp zv>Z`j7L;W*>j-m_@sQ0_L`v6dE-vNPTC9}7TtI+*VWt|w?Jh?{0&7ZsdXALR^?^I2 z=~wi}IGT(??nZt!_k8bDik;-9WaHS`D$#IkNL@o5(r5F$x2{o1VFG_&<*t_~FeNQY zC(Ja9_er9Gf%>Is=5FPM(N$F&uSWeJ1UNN3k{dXWO$j&h29U+mlS@gl!36@iA%> z@YFAUbo=_e9sD$A#_T<>^bwzFD%F`X0Z5B*vg@@Hc?`NR<8Fu!@}0_hcsHKrs%m#% z!9&^rs;oK%FmZ&EBjv$MuC74>*%&0q+q3I+q8 z(d|nL5Q->H%4iH^L3wedWuD2ewP-sQdcx2a_iygf#KcL!8yWm|*?Q*mMp?0-MeNWf zFNhp*n_q^9C)0Q1b<6>U!T+Q z&-0q1hHH5EAKi<_BsFZzaz4k;`+1$dnVX}5LuACJb| zpNQAt54_$Hjfi(rFpwcXU(c1_UBQR=c=}5AM3BzI25Q>?#vUS0QQ8#k3Gk8>Q48Tm zf*6^UUW+a9yx6)B{bu-IfK4IlVqf)sbs)2&gS($OiSC8IEtfP9(6gtt_XZ1V_Saiz z8UQICkn1$aMRX4zv;P(gD_1cHk({|MZ6{qZW%|$ z9A|0M>)>g+zBP{!rPWK9dCdCD%H+b@PBz<^TpE*_fyq0i=R1(J3s|rKK|MXvuih$) zpH)9enFK3vgqC)1O9Ia2F!mWsU_oQGk;Z~Q3K0&k0BK+6Snd1nHNfqtq#)pp;p9>m zvqZwV$3$3dfFwD|fJLY^Hn0zzgeHiz-fR-0(`B_4&CMUO@6{7Hn2n_qc4GAA)^du9 zVj)~0h~fbX3QBnu2Q^b%c}j-sY#N2muHXoJ)9c7q_SXIRV1d_uqY&*J0QX%pih8l*4^!UOMP$pmB z6Z*9B^~_uWn>}a-*TBG_?Hy*|s~4}tVSmVjTsXBMjdKfgbA%=)#*gP-%9Gj)U?$*S zBZRAYWIhQ1TRO=cYMnQg7FOHbel|*)i_Po1zZ^GUTBtq^CzezUqKG0)k0II|$7-DP z{bq8)D^W#@I#FvzU}bKRb#Q>)AIoWN9i2& z9qKjTeL>+gPdgDaer>R=?bywPKy_uA_4dtc7SCurph#o+Je8Qq_Z&sDM75yBIu-#@ zkuXv?=avKX`?*!KC!K63qL`VP*(~+c*nEizZvH3AYnz<~)1_}|S+E3V2<1^SdhMoOgJ#imU=PSONVFg zi3~jp%Cg@bwVrH6z2Rp^b>QE7^sxLB+P2t=3oz3>Sy^(BeToCXPG)A2*w`kn*cCYi z1+fqfPB-<<&wrGXu$8qRzM&Q)G!_PJx zN?_+PliBTjH_E%JV3_i`xDZX<-IcoU;>b$MTs+eGI+q>zeSWzxMnnw#u(n+JA#I!* zpHvIlqnN}gDOqUpl6hmhM_(`^9Y2jInwCYZ)<-v%4AzZ^keQf*NTC*{t@)nn>ZB_6 z%B9&1w+1bj+sLQcC@Layc4be2Dn?S6EL-EYmOd+~HPJ}SRTX=1o#PbK{k}Jc!>0FV zDb@5m>_Y(_t*m5|d^j~A!gc$y9X z0G0hVL~3lbE{3k*N)W;_A*8L%Q*Cq!+DRqJd%5^Yt?DOnCbBa+ycG#UEsogMs2b)z zw+{|#!QJ8mDa2`oc!%BYTM$lt1DO!5CSAHiZQ+Geoo$sAaa~4W!_8!yAAWv`=IojA z9cLG}_1f~U9bAgXd7=qMCQu9>P(lQDosJIz29W0CVzl{Ikj&ugi^rO5#i1XCHYoE` z_V3zB=%CkI;HWkCjS+}idG%TMd3giEOez|MdwVCvwx8Wj~np zeQTrSb?`e)IZeI9D{9BGJ<-n@KEUbad|^&lutQjPO%U8f5Oa;0MOn2rb-L0#&h2=b zlz1cTJaku_q z=5=#ee<C78%xYPiMf*5)Do@nkQ9lbX#QDu79DFECayPW(=&aY z%)EA8Nd+3=gZ*Sg1hZler!f@Wd1{!Q+qMs%RTzzjMJpN-voI;qu!hP4*Vo;gVH>NN zT?##7vCYl4KYhR-1PvQvBi+`_glbH9{r>YuK5EjX+Ac0*nr9EMFREPVyR^nYMFYaiu$Rm zfeKO?E6!A&f4)CDM{qT@yb)Pf)n+L0?R%i#UQ;9A-`I3GX$b#a>t~__JeGXZjNGG- z9}7gyHHH*cd=><-qj-et7TnPHxp*aF5=3|K_Hxpx@jMIz5IiFHrA1La6O%q%C2Qh~ zP{q(5G)FqjD=2wrJ*^E^&Z3P=*wfQAcZ*^t3r-^gcl*ebVO$sw-}aYUZ(6ol-fG?3 z;QsyQg3^ijc{K(D1RkV%WT0~X-ZquG@9!iaPFBiBBP#Yz@ zeSj%wfCzVh(;&{So-mRD=lJ?Fo;eM@_R_0GL)r5f^T*ZI>d@Xc!tsaMsttY&7=0ps z${Udm9?Vj$gxU+w#!)x_vfgev0rKpEs zi*tTqvVBz%DoAPVoJ`z$E5O;amcqKTrKRLwvW#hZ9mt_!X_1AE8D$(NiZ%isy&lO7 z8(t7;tVKVzAJD(tKJ&CCuCQqQ)$G4RnH&2)-YqeSbjK96!NhBosP4@q(NhIDKruQf z2$D*pqcc3Z_k%ChEMH3AVPa1g2N;Wb{iiW|u0Ld|#UnhljcKu}(iT!#D{o}?y?VE{ z>SNV?@6iN1S65MJX|U-?7a$Okx!P1&u3FtekGouOi6@H7;cB9sSLXm9ePFzg^^^x` zkta=T3DF|&Ow{y29RbduZBS=vmI0>Kf;&t~#!Y#vk62erYY{UO6ZX$of^&?`36l`U z87|k;xKpz^JRESYpEkUd3LLxp0^YD`FYL(F1)uJo+kC4T<=kxLzTjj_n3vOYL)v~sGZ(EKG zZ>*y^zf11@$&P%q#@SsvIs}-FXIztE(U#qJX5CoNK|COIZU%v{jmOiwj_3P6wj@Ir zX(F1C=6NiaKXal0LMJ!TG7ll(61SgK$w+>{N(Z&Qa2)X{}HnsigRg9kQy^-<1YpIdZh4 zMO)UQlQrn2P}9@^@9z++q9QgEXb0m4zjpcO3ImDO;1Q*j$ub{|b@3E`F~N#dv>^EJ z@MiSS2d|?9o-mxcSl-#TfA6)m@90BbR_hw?O(DA9dm-ZPbI59Ly-GrZM?=0a$R z5PyWST$vv;DkX+U09l-p5`t^IzOt3Bt8oU8z9me~$?H-=N*=MzZD3||k@FJznlzCf z8BrhRjIY}8#);_s%rd8?Wq&W*%2Zs@wHs_QWj9?+Xazw!ZnpE?#&qt!rv}lu2Bw%MOuMVzM%iR(z$q@K35@rA%PoT*^f2mK zotS}RpA_<-;|*@uxE%9xSrn~Xa3)x=d*n?#C z`Eah(CTo9$Js8q+sCYis!?o2ihCO+ZG9h0bzeZRWT)S_YX@Fj2z{@QPKQf^F?_lN&RNON%A(T6SNC^EG1CJK0Ora ztEqo~w?8!x(wsHr>ZAXvMJIK7s<@{W2;4Eoe$T`>9{u*OUS@}*P1*OF0F>rr3p3Ji zUUO#YkJ6lQOtvHS-yjfo_K}=i2ZlD%=5QV-qGAU;CL-d?S_@uP zcqdI&XM?K;Lzdgisyd-d`4nv-K>f>b=Ibm@Ex=dvmg0(`wXk1~E17&dU(+G)hj`7FrvV-R^5gu*3zjn3&wKUW`F_Ka zDyY8Tg4M-c&(z9U?#Vo*gs;izg*u{mvN<1=Gl?&VhS$WvWJV{mDC<-?2pV?i#E13k z`FHhSC=nNJ|Ll9iZ39 z?<+ed9qKuqqX`X6A7ZvwZnw&X{KFDDZnQB%id@do$vG4``HvRoC#a}Y)MV$FAOmzX zsvpW#vHTG5_Vuy`65Q~4TgvoQOtdsKIn7MXJ*LES$E@PeQin5kMfhz_JNqIh3y-9-c}sxV0ew9q35U0tC`ih#jVU;nNjd+> zy`!ZeD@!*2+apY;`utMa?F%XAC_*1@+dB%UVSl)>&188m&O*p8F-g@=wt|xjrqpD1 zK_;dwLg#kkk*!B#Cz*6K!s*zHqRDRS!`w-PgS4Bg#b!+WF8^LyWKt?zGGEbc4L*?XUT z&XsMmtDrk;D`vOPeS`DG-F6K`ToUT)zbY!w3|PQKB1$er=N}tDYWT{GLzqNnv9kscj_T44WK|p zh9G@EW~4UfiYyNd5GpDX5B}PdS^G8Tu{PEpVD4=luW?`+>0OZpEpzem$9-i%ReXD4 zndbp9>}UVprVdudJUX^wbtAUT(PUOK=EKvtnV^s_4k^haDf4GHc;vwz+24Yym63&0 zAty&c-(g$OiS7gMdV=;%pNiDdQ`{5uCuQ+2Mn3qq0 zv=uEsz?eOrSzyH<>KE}s=2RK-!{W`sLsT5T%Yk2bQ?zN(`@@vE0PTQ;bi14q*r%9A z0a3T^?H0)6hT_c63ludPoexvl}=+T?z zFA5w`gfnJ<#v>R+guTB@OVbkcyyW~QOlX)yJ)1pZ4U&s$Dlnj!(`g1tNF|sIS`H$_ z^8^qT*mCU!0!Iju@YZeeTb9g198X4B5+kq+STcdV7bLq8vus?da( zSO#`1I7~r6)hGr`RVLJEEWupT$u?IT&aiRugA4Wol z_I8X~6{wWWg-ice*3QCyjA_CzVH1vx(P=8Aq%JJ9OkVcy8!$DlO`!vWXqEnrbBPZr z*Q(qr5BfH1sn~9>A)dGEjOU>d1@HMuj3ZoIwe#qkc$?txsiEl+((faYoDnNKHUvQ| z%FD});rcWG-0l3wj3CKrnW4;d)oOiXs>4}si-PbQKgTWV1OzE%Qx4_Q`%mJVV7;xN z_l1&jkYgK8!wecJ&Zw03b_!B9qT?kZQ8x}Ywm@9BRo$&qoX_IbB_*%U^bQkI<6k6N zyi~`oIyE-dnWu)7#OtAbkp<*^$23v>BXII}hSy4RSp-mgF0S5UdeFl`g$4=Xw7XKpb=}a z{bzKrrTnPf*clq1?8%7|LbzhrWaKDb8?`BmZ`dmgk@h{1l?+$MFbU=Vy=NO8>)$8` z6J9j6m1DR2+q~ftEzA2~UZx_(y!SEw( zz36Yli8rkE&|lIAg;I`=R#uJ4h?%=(pp(eQ6QvH}a#bFTwk8H`9-QUZ6m}IEbqIWV zN3J2ostDim6632XFVM`QvPHax-ipI4ZG_?cgJrD$Q2$pUE#m#cFpMuLQYu#NX0;?e ze#BK_);`7QEx7SoFP;i@dnyS3m`<7ZRt zGaCjho+P>#@w0UoH!7cQ$Pw#OsocJs`)U)3un+x@?j@KpEG9CFFI@Y#ibi|C#-9Y8 zI6X8vs+yaUI1tQYVIik#=|C!weJZ`M4kdP#ASfs={nY9Ni|rM|kyQ(=rg_6(`cgO! z=Mp)mUbm60!Z>@sPH1%Q#lrL%@X}XcOY4b z85z}n6@*)Yd|>&7*w0e?W4}nT@Y${4#N#bvZkLM>rs>Br(&|I;1h)=ji8@z`e;7?z zQFOO0^2ElAn3+%-BtG#N$~>|F7YTrcBq0m<>QsIZqcR(F+sc~vT}fL!PyJ`Co^!hGo0Me!-3vg$Qjw`LZLAkC;sGfd}8aObcu=L zckzvecp=jm@1vM1ALjLsqHg=&*H7%iZW&pU2*`k1?YvTfhdht5-+Vy#j^V-jc21{v zw`zzG2Cdfd_Wfv;Co3LHChatbdqmSwpW#uNua2-QNKzahp2|2i#w`h{N#4(uyoo~L z&n;a4)c*ys=Wm7FS_=PoaIo6^PDiILl%vKuF{9i*`=}QWg+QeE6BlI(NJFy?9YtIAh;#FJH zRPc*lhdvVUK5Ma$m`5vOdrdd!gR}`~ni9%P%{AHai*S#*rRgXpln)3ngxc&_Qxo+u zH6r+~WGvJvVXA;!NYH7tyE!{a!;jQoY_q!s!~SS*G8lGjh-In-p>*cXAuA&Cdmrl1LxdN!Ek7%SWvSP5(>tE4yX-+Te;jgE;=Gj+y% z6tR#KP=)w8W616|(1p~b@P`Fi+Ws9bv*wakmy}blJDVmZh^KhTOQF7D5-0GhSUzRPrb2% zg!`*Hrx?vli&((hh1skY5=1mgONS#Jn!H=whBYd6o`96*_}lk?Yo)qbTZ;{x1@h|a z$EgRl@TvKw4_)0i<46l7Q={w6k?4w+u$PRhogH$LU;?>{+7U*qly-G%(}9og(1`Ef zq7gm6KS7AjOAA3NHXMwaQNRn8PeeFaTp_a*&niX!M#x7XKnzvapV@*S@^->5CFXu<2@L^YR%D zjkv7h8b6$3bAitBFYKQGSd7zg|B1Yjf^TuVs-pgc@GCg96k!S0gnhXuRhcA1RAB2a z{D>lqVGZ?xL-S{#BpS-bGLN=z@!29#pBX29#L}jZ)$0o znHq^K)Q&ZH%>#X2SE6+lk4kY>a->ad0&-P78976S2TOx>bVL-s;Wx}I7;IlY>U0$&PI!RMBPY%?8A5}0NdaB z>{K-MydyYXnG&mtLr=IX$bC0)mdAo>`ph^}Qjh)S)AbwLEBU1>m_+kK6D#*!biu~< z6#-DW8oS#w=1(q+MGdC0cV8Lq#XTP8aG8!at%D6}Kj4e*J%bC+^fZiwmyV{R#j_>w zK^-@L2o+ZuFGG`{6)WNjPTw*S-1)$o7BY@bI|l>NBfYZxq#rQzR6L{pu`Tdh((9HX zAo%=+`Xbhis+Tt8x(GoURN~{etcZd=c_(&*X*!=fU}b%RHTCsvX7{MNfBN}89=X|1 z0?h`WRDRL^O(LM@9=8ZS7Cmqk*}}?SSUS0dWH0FZfz#t4V`G( zNWqqwknKYI+e-4~xL%3++A2vW_jXtaWqhQ>Y5QIR+#ieg)j|?HI zH2@DtpY*kEc^}J>m%bKxJ<^0Vl z#_OP@G8Q(c6Ohmqkt++Tmp-tFhoUQI#8Sv%o8iM--J6Mb9%hY`SJHO*7n~lac1Mh8d?42Ku+C=WA!nejx#UG}n3HqncBfNC#Q#JZCPT3{NP+P! z%%PV$fP)NJB3nvsAwFe!0*vbRn!mJ#mHEhz=#v19J&G}f*=gu|ZrU-1(PD>y>vzR* ze*XKl#YMuS6UTqE+$RAn2w{)__j1$NLJo8|?u=lCE1O>YSl3eX!v?GD032IaV7xRU zSder<%fq{>2!X9ukm4@;vrN}P6mFVEaL&hmvql=qvCp>{N0cCK24Ry))OYUQ+4#Bo z()-AkfvQkpLLEC9{zr3j1etST0bf=4VYaQcNOersTEsM=k@D1Md>r0zS}vsp`2Q%+ z+7tY%sYla{5VFnlYogMSB zFb_NvZX>30?+Dz}pZlgnxW@Wom@=1q7Ol%xD_|UC3)boN{r;gS#8+4RuAXkjriOb@ z+eA)Kv0_?1jus#-;#9gj-L_otXhRPP3pNVEw<6iHfbtDZWx;zWbIbH=%8y}A!k#{Y z;f7lteh?JTydH47U;fu?4v&{<5M{fgg8i?8_&(+?LyfS%H|mBZ3Do#W9~k^$TbDs6q6-FCmtea%!FSW3_Lj zK(gnNphI!@Z@vyjSwew|qU9*r`=83C{zvn<&RQR?FK-Am=q*$+Gxmyl6`x?3jC8ic{85*Ryp1+} zd48Rzby&!Ee&t=D=4?aaRp5x^g<)mt$$tBTx-?oAv}LSnn3AJ8eG9BJG;X96G=hVA zpn_xy6Es!GV4K&$Y!EqroLV50MK+HP(q($68gqeM{dq+}R#!YC2~K@CLmY47lx^FN zuAKKT8>vFyV}3k3GN}n_R4L~3E|3OVoQJ;o^~(H;Ql&YeRth+HaNC&Uzd;KvEcdJ( zvzV5dqmH7mtt_lkY90kgD~B=Ea&qITnOHH#@M7zpuk{`OtS#u zPhP}sj~rwOs0g!EwXC zZD?3b{JtY0<4w^^W0i3`D=bgV?DF2n`{Z^&`n!qL@u}<_X6DA$vY!u$o|;_?jtI>O zR^6JUU$*C=Y0MF^*fvi_rtk}tXJsR%EAK!L=B)rH4@V!b*)?LJcco>3x4eQs=3hj3 z?#pwh4HlqId zW=+MF`6AZKOUhATtiV zp5vt&tK&iCRt+VvE+U6&nwwdDC1d1EEI6ve(lDFS0fwXzqwB>{{75>I|T}juc#} zGcQenUNk52{BeyvU$E~E*)ODqu<+&q6{@(~W?KH$Zn%oB5TkanNe zLdxddAIfiVw#%)sWc$poG^~VS)5xUMbCCUBCNAIW3?$Mi4Esc(Mkin$xh;#fm(5T3 ze}gkt%U6*Q7qD6_5QxR~^Ywu1xN6&HfIY7lZxtg7dQMyu^flh>3!U!$PgVanwLpx$ zzeYxJUue#ZWv;6Xz14JwE$)gx)A(j>&3AF>oQ~Zs-s)B-R{3&}UcQV!F2hqoPq)(! ztUpua-TK>8Liy;3*Yi(>(Dt%g3UTA54 z&@KPA{#q8Dm|<31QPK~ffIj08+n0Csu`A7k=8J(JF#MZXu>R)FhtX$cA^MhpY78Vz zz*BaM=6EwFWa)eTo9Z<9WM{bGs%=pli`BfG3>a$tp#>_EP{MQlRTv^^>>udZ_E@+)C)kQsArIEjQL_3?-5-;(IbSGrWxx0Nsb;Eoh>J; z@F(|qGqg7^ba;4qU&bhOw2g!|iPzq+{j44?=diFa#~H5^RWk-DKR-Xmy>{~Ar*(C8 z`M^U1yb<3uD>O=fL|O%(=&XXe9Go5}TM!Ks0H`SAZ$fni(7^qX$Fs4r9|5}Zu+%c>-<*Q; ziPX=|N7{1ijZ+P;hsKMXs)}3=Ci*HDQ;!hhJ4W!9do-+`h6H5GD{Flzem9%k*VT0{ z3b69~a&~f{4|8MUuCq@Q9FXH>mZO~OTN_LDnm`}IbbTOF!wp|8Cg(ScY96&b|NgGH z7LSJmOEiveK6wl(kJBOi&r8h@mW+2tS`vr9jtNK$D*5=!<1aY-=O-lw zg+NFDO^hY4W$y^e*eF5}q%ri-Uv&cQ&4=y)An-X~y7N9u=(*`E>EO;P8*S zMqnFU<6%`+_=9{ z9(~ykQ21{MIO(6;V~F_MAOBYP=%_hPb8^LBuR?;guv)xobZ0=}=6W0mU-gwCzjnO$ z@2=we`WIn-%DPXREu1DGN{={X=DHVF>&~I&ftY%p4U{S0^ZyAB^iT6~R$nz%dD)JdKq6p#p(BIsU4N)-?XhFF z98UriimBoI&@Fe1#${&op&j;(WHP?nINggxsu&32Q7e!mdMiGW=qQDbW=P{vv#iyA2-Z*XedE%VaRmO=j_ilP3kv zHfg2jb7jcEMU2PVG(E-olS!os{8$)fw*Ihb&P`wD&$&p!j*X>KymL~O7jDRLrKO!a zPPg5>Rtt()a+g%oyFQqWvmzc-16R(@{rlp}T#j$2>Go`o{{qR_TVC(AuIw)B(?<$8 z^|IdoKe-S03I-gP|FG8|`sLtbpZw)R5$9LVMNJaTlD)3780GGN6a~=t`sR|SDBJYH zi-Gkq#je`3okklaGzH2BcHGr#X3YSQwPlmP%PkZNrRpHhSCF6I2PBL{qe8aswh9rMHK1a_sC?e7#idYN|L5 zzw<0JM=Y=H>2ZP^*47i1vn^Qa5|4<;h_naiMw7uy++qCrkj%eKa4HvngM1X-*&z65>icKHd*0;|0CCA`(IT9-Q2KR(|9Z z2Hx>!9v+w1?=I!v*xH$X5zIoWwg}BKugLhZuS&|#WBuM)d#R`YBvzff zPyiF;Gf+)qO%6;d1O^6%D`l+(@m07DObzzVXQmK#Rg{&*qIqC6=^R_6{JfF>bSV#> zn#T%~IK?Q)`}4BaX5@^w5#>A*$gQ*bF{bxp`ueF82%(cfK-U1?O z>V3bHsdW2PP_QvJEhBzfr)Ao}T_o!zQXEQofyG8c`*HO`CF|*(SHTNUaEBW=?ISe~ zQuhCF$U80PY4|Yep)q_+SLpEDmI$33z(>7k!60@Uh(>(vj&~xY$(%QwQn+&b(MvJ>9$Os@Y`1}UgQZ;L9rh^9`xzfxHubL>)O=* zV`#a!x1z~v8w*gnLP+3O4xFue9PpmNd!$ zN&VZp>OUtot4dlk?>FA^%w8lU>1Z4WMgeYsoBKFI;NqD@_mJIlvG9I4vmvVlqCOW0 z+Ejkg3Q)!&+=JY7|6B&&spoLrfAf3W2CC>o5#l>*-s^cmw!4$6@@)tnpi}rp+#@pAIc6~rUho0rVgvM==)SIsFW10s zSZg>PWioAo%A3*q@B+HbtJXj>JL%NT-(HR@z%a6bYw^DmMg9@YQNwXMadH)^vqhT? zRkh7mo2nbR{gYLul#^GOw#?}gN)TaitTd)Gi0+77)?hCEausCt?GI`M^6qTN;HE<5 zK7{}Ovp`R}+)*_Ce-U5c&oX_>!vE;XjcEDgmAdlH?bGu3IxZkRk_zU?$oqWLo6sTT zM+CDNY$#{01yG-B%55_M?cTEm{Gcb(tz&`+nvt`K$su;6Az%d}yt!jTldo!>cTziP zed5g$#w!&S71_xaffQwjuJ;hih#O!m$6l{BH<#yoH+7%rh-@wLm~XYEbi(}7S9G;v z!X|BEyDC&#=eRFJR7An|&iaJ;1s^h{V((%#WMVs6RIR@Dm}6kpO*9+YdeZRci-FmS zNDYe(^S#STHZcMa#DsEk5z(^(C{Z>paXM7lNF=t#?`iSUmU<57pE$-;-7A_fZ~Lzr z@f00dr1&I6gDZ`m;#X%EV1>p51Q_C$bdR3M?eCqW!loTrD^Boofn>b+x}PzxS}LwP zJ}g)F)dz@8HxlU2=Wrn&kC87otnbex&zWn4bB^<7av$T6&gz zg@AY6=NFIU?j)+KSH&K`vWHa zA#}o$Y)_(?*N5}UQ*?bA*PmUACtBoWg*2BnaA~|Jv*+il>A5&PSDH~5XyKWwBU@kwoa_u~)um}xV-BAx(5)k>?D zd-gD|`tzG0B9H0U0AgF~Ts$A79GaD2J3XNgF^bTcX>8{zEYILZOi(Bk+;z~}Mo|*s z=dDNAMZ!MAg@%8R+d$|Mqp$t#y|t9%m^9o$6+;gO@u`oe~T4KJ|YC6e{d z%V^aOEW#2tZ4vKFP%pA~K+X(z#scUbOFs@FM%TH$5mYDtB=FQ?_36!M(i_`_^oP~9 zU$+$#%kt9mRaCvGGB$KUC};#t)0&1?8bRmIrmKJCN=XApi(>KJmg+nlG>cVN(O{Gm zW6uvUapzM`K%E>}kQoiVyvWMVstxo$FE32@_g@V-wyzfRnqwOsTpZ%RI_IkIP49r3 z*#DHc7)SN5H12}CIvyoB9FHG{7@ohbS&q#c<_WvtnRk2|)!i=+ZitdNF7`9)9lswSZ(MjECw8QZ_Zv;zSBzgYy#|v0JD)ix~U+T5lr*(H~ zp4nsqAHix)8ZLyr&z7S4C#LuLsFi*y=NtpfCp533(O?Uh=%uABh`@P5YZsgx+5 z)jMD}FV#d51k-UFwokvZyt(sXA8oK^KWsGd8!OtyiD*cx{zG|DR1=JBcHDvF`-?^m z?E+>?V;jW_z95e#R^mGAt^6NOHcZwpx5$Z4@`!G2ZI7&eZ-~-3DPPApaZooIy?_77 z-NS<=!9aI~>;BDT;0Rke;SacyT0W`%f0RCBdSGJ|&D=iwlLV;<22wSv=VswqC_1T5 z0Lt-IQWWlDH>9-%24if7Y|QGemqo9IytWSvlZEQ{veuF?dpp7f4}p1LH(h5h%x=lx zczB=9FLkx}du|cQl0Gwbpp~6a>`7dcSwofkUJS0y=#YeaiaND=)>fpD0d=np(bm(Y zwDR`Q4VT92tX1#n#J|5OYj?u!@vMFNr_hBrb21DU-TvL|Q5)Eq0z z>c2p6qL_9ut}83j!Cs=FAxZ=B_5w&NB4Utyb0g3+iRVCwlQ~et?&Nld0;=&euhDE} zXQV)P%=avfZc?G~M6|J2XnUr9&ExQl%dN-=5(^YN8l#t@OvEm4fh z{%{lpIOivoD)9M4krRgOn1^9FMT~YkuQHYXUOr!4C@G3}@o|d?JgQrYL@`P<}*OpsgFqB1AOalYOc1%u=w=+{G*LibGC-5 zB6VOB7UJ4TU$IHoc^7QYn2vhDzShGjpuye;hR!* z*VKq&uB>UXGxAZ=j{c?M%wS{kibI^m;?1Z7P2qjg%RTu{D;=#Q+R3wp3pdn^Nwb*1yx*A7$Nn9Pxcz!U0Zk5ct`!nyq zU7nc15Z5m*70&Lqw0vYqL2x{lMn^SVJ`S1jzM!${MozaE_dCb?i6g<@r%5=ScMo=3 zLv8Efx|IX9Ge_6`ZYzo1rRm^9-^P@wT9cJwj*ZAo3pl7pRW|vm&mwgd@6vfHtul$_T%+hPGUwf3AG-Q; z_0fGCEW^tdC@^;>tS|uOeSDCKw+FpjJ1dN;{+4*P3ALk}%0@#A31%x=#VfXO7E=h# ztbAsre7fCQWkLr8xUTLh5jb=vxVRmAuekUmh0usv+o$GaCJ1@$T-3eiKPTI_xyI0K zt`?@p16O&F{9vj}u6_@E(kwwVj~J5cJ+@-dWNY?$j2Lrdys7v9S}Ni9+~g6lJ;i*W zru2^HrSP#*{k9h-qor5-{XahPFRHm=U}U#QauT0RD9eOQ8a|Z?mB`0%86Iw`n^Zmm zPIpA`pYp`(+cx=5eW6;8lRldxM6d$wjGldL#SpspTbWSzLoP<$pXVot^e~8R zXE#ci{+^o^i3~pxb8Lnevyjj7*Skz#v|)){*NHQd(G87ft#@FRdQz#lj|fDLc&(-c z+~wm`W!>`Ixwfpi?sOSUx&m)`wr=)S0>`WW`s^C>o#sb$%H7VHkWKmKEXUl@prWN| zdbBRQ;c~dpPQ(n>aP3EzO5V81R5u>y?9Y5W@3mrc&B+C!Nt_Gh9>}LBmWM&^8V$Xk zmccBgP5wEXNtp4A)yIX0QFn;LEQY+C4##-T51|s>Uf7(qhblE!0hI$BGuMdq>jO|h z}exjf=aK%!q3-s(z7yx?!)w=3vFr zZeosBRBVEruR>o2v%1QhRo%pbaj?0@b($2d-ev+{&3MB7yQ|d(k&PDtKIt=O_2Ait z&zC+vr`GN}Nf_|QzSQ3FM1DQVy>==%@v_X(PO4Y}~iYj;w0z=sP<>8Hs>v94Iy zNW+=Mb#$@%?cf}efM0{w|NX@AGgH&~c(Zu}inj{nX?g(ZXj%LEKc^WET2$AKv8bNK zK)d&?##e$#`k1r)${nsZm4a`jYIglWt8&G~gQLy%_9j2^dZx1?K8P&jT2mLDutc8W z+OjvSwsU2`MUnH`#WOW~6TaF(TK6dVUb$?JNecPw)H<3hGJ9>NUAHJL`keo21RA@Q zV}DYz(_aE{1m8gAd_bNvb4B8WHBs_j*3uP;Sd;1T_C#l?m@WX{K6ANBa3uwqhTBbo zPwQtg=A@Jd8anAxR>V)L4;RDmS0Qv4E(mC|N}Hzmg?8Pe1H-F!;4NNRlnA~pBg98@ zlbnEiV%4YqK&To{cRA6xa5!_db=})py*4qE+Rz|@yomBS8-24fWodY2;ofn! zVmEDgxnww~?SWhxue#Ivz&z(jtio#iC6_DaKzK(~XsV4bEh;K%O{Q`N2}5~IJHTvh zKhW%$bD5P&*zSn)yKmmP>ZfZ6OqilOoej80ojQkV!&Mqxpr@zqn66y~lV9GifSyn4P_u!nx?sdl5eA_C_mkh=*jgn&q&71kavuw*%%wJv`mP^OQs0q3PIF#LR`|~ zcw48;asR+iZ>{c+`(dh`YuR0ZVYv{qlcbST13aH)S`iG12f1mDyM|{%J6sj!5)k*; zIeG`Oa|x*U_?XPqmprnu57tkCzf$saGdL@s*ZtjiOe|&p(T~jMN!_`}G#L>=-fs!F z5>!^aHc!(WO)hVlYLE%j*d{3u50=FILqrO~50|06J-4(ZERusRJ z+Osd_p)`0oc~?g-I=%Qur@0$Uy4)oubNK9iM8&MDYM4xT zu#6T|ebNNZ&V?HIUF^l)y)Lp#*_*%5(;;&LEW~meSN}23aEI)mbi%?Y7XoOw+3V{u z9C^!V&1J%cYO8)5&M93DcoRMilKwAc;LXZ}r4)FH<&n=ay7LHSZU0E1`=&-2-&o2N zS?@7>?k{4o0aw9$DTJEtEe}n4@1vr&^SS-g!^?G1@0bRs*3mTvE;k-ghqR z=EU0L(T3Qlk zJ|NN6VTihYIbK&S#R3OiBIIFI#k2q-bIpFwF zDqCqau3&hL)?8JdK9J$(=l=z>ed@is1I&x4pO2|K8+n6Fl=N1kv z3<(PA!yys-1uOLG&4bxne7hj2J5#h-)IK?-MpU1__ME&@roF>HL)4NaTVP~%GK#nm z3E*nn&a1O`&sYtnqQ68fQP)J{I)F+mju&q+? z1!}dK)TiKkAydU+0Yh2^zBRRY<8Gqv^S71~?2hW>bhYB=E&=rH`=y--rYSy06VIGcg_3IY2Z#G-ze>**a=nO%Sk~XJsA_7SGeOHt z-OoWzIT+cDL#fY2wLi7rc6!Heq;d3hhJu$lPzkE=&!n1_PTvQD3s`BbHa=Q(e_Bsc z1C%56YlWPJpkQ&ym+o}ti z^-g!G3;5Pc^`gPQ`O;N`d+U7mTUwq^tnf~D)cXpCgl-Nd@$5$gkFPz5O`^#fsgSTx z8y){mdJ#k zs2{f4=E{1Lt{~vOu(>tg|7BECN)@7^{x#I|o;*#)9k3!Y|6u`p-r;BV06V^TYwKjk zyqz9hj>BH&XQawh=N=yBR+BTzf}Gid0KCHm+cvQrk1PB93?ZSLA5Q^aj8xjvMn1<} z_*`;}e%>mn8)G`5AlL8O@5xJ)Kbdx+%YvBY5m47~Mkie0@rmvuYIo+e!(1kv$U6;> z2ck+y$%w@+-{7t63vhW=yTs365@r_cw|i7=JC6CXOG&$t>Ui-EMnu2gd!qk z9Mtq1J>JfeF)o-9n?9+N8F}Sxk06QT{?NV{XrgTNKL=4hSEHMEl;_1}wHi<71IPLS zxhE}D9Cj+4&ySm6u1fGBGiZt$)CgkZywDryr- zm5sBzopzG0jdN8?fZ~>D5N#K$;?9`RkN3%{N4bF35>-w`pgT4kVnn$9EeikJ+QYGR z4L$A!XRFKaOsa$Q>(TCboMv4uECef@)cJAem8A!L30~s^lag`g6?xZL9@&*1f!``U zh-c5w9}!uja~9c;uDzm4%DUd=5Ied5bsLbJ+ydz4TAOjZP>t|UNEi2bOdhK8oGyl?d+g2kh z4h;;wo+z%B<6C!t!PZi@6FG)*kyMl`pw=W*?&yfYu*Raxe6;uk$WTJ7_ytIdky+>e!1*ORjZ~CvVB(}TmGOlerrWN3(?9sEX1)++0LV*1I#eV4vm?y z#XC9PNfmS|0DRV}g*6?w(2Z4~3}kUkjmK~`+Xc(JnoBA09Pfx=y) zc=MUYHBsEoQ)IBvTc5|>Cgczci&za_jJ=02-v;)@Gl*ar0d*=JCd+3TQ{u7Y?Cdt+@|=*h zCGPEk`3=ePt@woDQiEI6>lB05?DSg?EB}xh0zQ9LIaE5|1Du!M`OdijrKv_gP*^5V zSj92c$3nz#E3RoI##nwnxmL%oT;j1D`A89K`_vr*#SPW3D!w=5U{*Kp3kK=^navYM z+FHg9&cH)reo>fm$A!1bsSpL{^9&ehYcF4#L6uESc~@Zobgzm)sLi zN?*+dl`;7)OYY)za+9S|6#XP4(`i1_z;ycLd*{ja0>ty! zA&H57MVH9U332(n5u49)4~HaD1Je(8u|@av1g*TU-yD$7mPsg;7fD!lZn8VwKDoRr z`Vi}UcR9{xsiBn}jX)sUkPD_<9xN#9_J{3;r%7D)aX#})Tq||frq`1P$faEp?^F79 z^(0aNcir;9fh-?q+qriv4Hq^S^iw>`nXhb}tX=Xs=m$oM(m6wD`Cqx|& zytjo{`eeZS%7=SC7n)?Be&99OwF;f-y(0;6x`i)tPEZ`>@dP z)4Aqy#mDPsA;DpDRO7yY^Rop$iO!+oHV$B`b`M+Vvd06itSF}op1(FZ&VP``<2XC# z2N?GOliJp58sJM)PzRqC>=aWILIS zTf+OI?>$J+Av`29yEe(>j#R))#2wZu8+B^H*<#joTaUM!#)TJH&f3LoBo~rhUYX-> zJmdNS$0fOC)KPMEA(ufp&Jv1QX2?Ig&HqL!POmSisQaqG(b`nlhz_RcNfe0>dAhOr zddid@#EJfu@T94&{=F4JxH^0w#1<@N8PUDf41GK-on%y>T!EdsaGWtgHGp^&j>U+? z4k~yS-X$8*pOgfc4DJ5s>W%H69+%^QyZ_cGDyexTT)GmD3#RS~=2EqOef{=hT<38E zLk;Z*{#Z%l>H?6#!I%wj&mD{UCElO5YaI#ZQ`-!>53*~ zLt9Cov+#^~t;+#zc@^38US6Ygq4$(>aUF)p=6xp{8q(dd6kmF@512;mnDo7uO5J=G zpyCH|?rZV}^ECMKOoq05rk>W($83`tu60SOd}OCLOL*0EaUBacaRwpn2KzL&g+w>b#CI@K?sEi*D5W`%?S_Cs zTSPPuW?fUi`y=J>nmPk z_O54L1=P?=QJr)i@r8j7Np?R@C=4Brh8@42Q|tZ5gZ>X$Zyna;-@kE-l!Agv$3R6v zr9^6yA_@uu64H%ycZVP%QU=}KH3y>^jdXX69yOW`24l~K-|v0@?&o>_;_%=P4zKO{ zeBN=Mud~BmZiB&<-S|IWc3G%oE7`RzGKaom4svpSu`En@334R&0_3Hn>t-xNWsyf_ zSYYnvRx3|ku$X< zL}K;M#QK(h@XY|NmMdrLnapUkVD8ITc`~11t*2pbhOuQOrrhb=;K;e%iQm6}XLray zj+vmJQs3SnuP_12=*Urj%A)JEv_<9WkEN9wmg%izUCeI3&DqRRIfpjOb#1`|$8BF2s#yr#^@7SVEIduQ3^}4Vx|P=HDYH^?~tJ=>ED$ z43P{xqeMvBS8Ov;XDF@8GRwM7=dF2q#JC~QI9$E}6!{~%C^@x+YeqT*=haE>B6F>P zOD6jNj5iD?%IS4g{0`*FUCSZS3#$94=TEr%i}#}Vt_YvmHYoU%>0%#mj2yyFBg(uV zDkv(9n8Q8vx)Q$sk!FZ~ol-3zBs83cpGq6Xdm-)b#6Bf)JDnEyb{nCC?`e6R_ULyz zf=S`%G2Wq^INg^VN~zgpKF8L@W!2|Szy|K(7clMWUF~+9GL0Kv>yu{w(st zt$Uu=Ndz6-&e91+DqSG`2TkMjyElx!Um()34=@DfzQJ2eu#07cWXIVuyDN*P@iYun zzx|MRF(-o?2%6<@VQC|!WXUcwz~4;OI!n}mf4ews#W&d&L~H1s$<^)@8KC=z0!DhB45bIQtjag`1kvbt7FqA)$_g(svmXyAj z6;-}W>wE2!auGptBGh?Vtgf=AK#!wPjEneY=hN69Bo=2YD}2ZP)}#Z}9XE7)onA9- z_YQ`JX04qk6Gk`l;AY1v6F^R|T$)BY%dJ)404S$d4ztDf>)Gk?J__S)cwPSVx7BEZ zX|lX$X1OhInXPZAW?qXNGD9^L^Jn9)mYeBhI=i_>x{T@mW8Y=a9h+ zZ--m4bjiGs!6aPS%H>t!o_e53xL`<;S9FS98Q*}pK>$BoY?p+H^|H>$F zgOW1oy${TmGa2+Sh)U{~l~Kj-F?FTeN9E!E)eHXBmScfT``kLc&n(f3LN~g-n#Dk( zK7ngybk9K*0xl}jDW1kNlO;-H$`kL&c?lwni)zFaB70TMy86LQHzhZ->LU-8PYhB= z&@44f4A%Y4i^?L-GwGovpfvo!@zEcXv-MLAy|>7;st}Ui3y8_`ay^na*0-YT!C-(e#7xZm;vQr6O*5vU*PR?qeuNH(A z6)m#sQd@AhjJiC;Yf_j2s*{oR1}pZBK-Q8S+M9Mgx&N)<0A%*~{bPsZEV}MWsc%kOHO(hB}-L(0jGI~OkJ7&mD#R(;s_67tzQ!?uS#jWM@6{CW{sUGz+vbY~D0Eo>{59s4`UZeQDX7BSaC;_8 zK)N)!PDKoL=O!eq^OWJ_2~0>(cH5i=Xmiy?)_>~$431yVD?t^Oh;L4=Tldz3lx?Mw zQI9M5-G5-Q$H?FY8>MjZW~jYq*UGK(=S9<3ICv;Rb8>WMylNz$#%->g{Mx>?yED~c z8<<7iIVn&s50aGU_#jzXfzIDQyDmZO;|F$g4#U}~PccYzAp^XN#ReYid@y~g%A`1( z({8z`;cE=^5fXjnGgTX0f|29$$^!*L{po3HOu!y_da|USiQfeo9wE`$!NuHB$m;b@ zGF^$ild_zUsp)aJm@ezAj4Mu2>BRP(aHX?^87apnfElLTxg04x!QJ`XaR1rW#9d{= zd@#P1sh{AdDl+e4T==0g#nwP!t>3X5?=4*&^qJ_1I1liu{nbD`3}uwKG%bCO2mlAL zz0jh1g?h&>FPqvHArTwKrvJORvKj2I7U;HpN3c@xJu=tKhtC;1d`_ki)#nVFA)#<| zL>-L@Dk+gZ1$$V;@0{=BDlnmhE>158Cf9dS89>E#kP3H<^Q9%q04qn%J^EW@Xj%&u z5^CN&2+yMEzfwQZsuWC5cTDE|C-;~eEOzF(9{R9v7shT!ILM6h1bjXfb=Fv)>b=ojPI_4P@=%^k)}+5v`*AV-Tk9p1TIUP@J(kwvO?p0x1raNzk&;@; zvFFukaC@1l0VCe|7V#iKSRPlfV|EkC?yp`P5oC4Avf_66O%6Ss3G`6sEUA8Dj&A*} zv63C5ZW>Ae@5Q>e@jfv#QK=DA|9XCV~a2ASCd4-5!4+&b6yVy=HM&A;2#?r`d)&xKxMdT_TZ*#-;Fg?khc{^Dw(} zKbG6|Dz-i>TIkeHhsr+hIf>{rIOFS;B2fLs4O8scrUx&=0?B)gi97s|uimd*_BZf+ z!1?zUU2NwnhMXw~EdZFY*h@9Ill&=EP(-f9R2LvVZd8ZKtsXE|ZH^Y#V8mkrs6^w0 zkt=C&Ko9ZwzdZ!w$k>R~&6^kB?M+=1K+OcCrC4FfhF&Eq!dW#KMxY=Gx1O=Iv2j2{ zWYn;+yPLN=>p>`f-qcV}=g9X@Eh`e}n2=JC7vlvLxo6lFGdXz)h5<4djd&?PyWY^H z0;J5}Dt|z5({dPRWxl`Ul**p_j2$(4H>v%d&F6*5wFkhe==XoEg97Yx(V2}>+rfp)4i{zz zVQc6~{{b_n`Xgv#0lQod)1$fRg;_4bn9eC!>ZPwpjRNiT#o67#p?u|H{GZJsXh>R+ z-w;@56f0iSEbLA!S=s!)M?dyY760JVOmsGi-FU$EZuGD+E_5noQpe+PaB6gN(&kzB za^l;cz;De482M@e4E@!YwGc=Q$(Md3l(|*K)=vScps5EOecDoqW?>+V( zWPpaYPIDc_Oq~0V+G(0g!FB&tpCZPhAnMt|`x&K*qKaei(_k^s^Tt2WPjRu%Oq~qH z{i10-L)~&;o-y>Qbx0sCQsL^rD7#zvvXX&IHBJE_!mqDxa(oF1QFtUV1EblAdlW=- zS<1Nd5-D;XmA~T+4ffw`H(D37oey7ad*?^}$UM-dDPYN&|Ip?9&-LA0SO(AQzGK@$ zYNi!|QOk{Ys@|+-llR1x$e|305|DJKgU|l6?8n17uG902-r&Y@W@eTg{;Hda|8a2t zPBr;al=i%7St4C>TJ?_0HIdwdWIr6l&pVx}4bcO}qFHA`~8=QR58p;S5POH{njL8~w#6}D1^rd>Kezs~g za>?JctAF28mj4X$VAONl#Z@3L?v75!SmbAe#q&4GAGf$xLyT^f2AO=2d=d1N9J!Qp z(0y$}R&%UOeWCZ5*s>g%OEV1!i@yf_XSF2s)WGkAXRy)0_3k61Wi6ZVU7h4ABlMBy!}Q6T8p&fSH3 z`4s9h)z>?2efcGpU2!Q3p#K&6Bbz%eamMnmf#t8V5AYD`>Ht*yuGA8niU#&Mznj;t zSujCfbvhzGN++&VP{cejC$8Rq2`S63|MtK~`AMH!12{U=IWg4R^o3)@cR$khiZHq5 zj~{xNLn`lVS(us^-F7Q)S={`l+E2y|zs2O1Qn{b=iCAd%=nIJj_=~GfR@>4S;FfFo z@3BUGPbZ788Up!I>m~Z`Mv*Y`aZ+dM%NH{pXG`Z~+2d?gbtn$9d%syJa zfJKUUB^9_klUBlnoy7kUY8tT_c7|0(FcEN#etb9@9eCaEl0Og+BzK^+tN?rWrDNy6 z|6y-yQ{n5?k{}eQ2{`%atH(Imbmcp7YU21Yr2>VS(~7@ng;$*oQ#FOs&$so8-?R5y zvhTzYv|#70`fC^+(d4&*UWtokzqaYu?q+h>Ox^ z>o8i5z!aw|8p23oD%`8$cin5Q|I387;#=lZclhY>BQYR2u^8}dL8ICkZ?4j;14EdH zpRDaYJyV}05L0my^-QlhaTfO|{|^oZ6w7}oM>fz`l1lVnr}T4?yO&H3orY&El`gYN zl^GvhKya5gmvy2`JxtSFSIpR4yhzZpThOKJ?+em4Mqd(5_`>nPs{-v&Tu5oa?tlLqej& z)u-Pw|NI7t35T`r23`OLQ)|M0bGek6(dg&G*}>VDK$5q;0Nb@iVvt4 zl}4zO5B9m?ev>s6{YDz^d5W#6QAd^hz*Er;DOU*6oCOr#FZuo!eC-vLl?m^~{{3n| zllRS6#;*dVElX<^;Rx(FFcm|pL$MMw0Shfa&PC+F@WB$0+!)!Vfs z=>{l*F1H0+5w2uvyUZ{83avsYZErx*?gLbbzb0W_Z|2gXyo_c&u4~A}Td88S&#ht9 zf>k57)X_}tfI|1SgG3Nvo#w4I0k*eBm!OhFhzv8xvn0^CmdF7_5*Ex!!_Qb!B8aea zsTmgG@~EP96^l2hvFOYmx1rmA1o0$h1W5XWu*uZW&JhWb*A3oU*B*s!#?P9u3F*HZ z)yb~r_vDPpU;fRDe_O(Os)IKjd;A0RsQ-?r(1&QzXMdpbNiW zJkJbo6J-E?ZH0x3wo^ZsK!;kPoUQzf4A`!c4}M9;8AuXJsWFT>h%S`B7q^`Fq1*JZ zLID0U%({GG6*>)p{p~3DWRwKKEhW?_OAW z{dQa1Q*Q1)KzC0UHA6?6yS~x|?7KOp{AwXuWBIDKfD5f-^tnL38_TN6-SET2gm%X- zkCSxNQC5f3f}-w$<~+hVGZsdUiEA+^fhryUc;_dq$l?6R#VKIaBawlfXXPp1a+L4plkRUI0b#?=xCG}`vKp2+y7w2$RsOu zrn7_k)F;v`CZ#L1wW0!?wJlgE@#y!H6mQ>5ujtZGj76L_(gI%NMXZ!U6<(;Bl2R1go|AFY=7;Kpp|o%b@3{>!~R6!7EuO0*8e?l zl9Fv~Y&;f)(w#m6wl84YjUzz0{+yUNQ&7?n z*8^bFTO#MskrGzcC?nY?$-`G7SEp)z3Gg|pRYHS69UPsMBkSu_$%v_%x0Tjk0NV4u z%o*7I+MkcKmX40v!RMj`EB8Q67s8nzYaAY@7& z6-R3J)RZI7%n&3L)W8olNv1q=SdT37`!rGuwSGTm-#Zct!6lPE;|$yOkZC}}^sQ{S zG77qkjy)rtBqAN1&aa4udV5s?mgl^0tj6Yk4{{xSe4PTaq)@;`dZ&7c@WBXd%LYyrFW;DO9kw$2V7T{8!HTj@hCvmu?RNV z%rA3ia&@yY)&cmdlaAjQiiuHbpij$9>Hv+>%DQ#;iD>h)P}Zk;)zBYFu&D+EWGV$^ z{&^y1`g8bRdd}LL4FDqcLuH2Ev6KNmVH@00yy3&slV+fSp><1U^M3)Nv>lD9{LSdQ z{cU2w`0CYZ87_cn!;RMOiUka*X+88t5LfYXV9F}IU;#Ph_ac&$83{+mhb$lp@; zCBdQxc&+>!+=Np?h*rxSbi1?c?zPIlRx+#1ni{RS*`uLYZXF9CbD{XQY%OqCeZS#T zXFl)bnHe0s5G6D=JURJB9G9~BMWyp_^NY8sVAe~l&_u)3nDC6qzi15`wc@OFrw{@w zH8oD3M?f7<|En|MvYh*5U8?f5t^xuHjdShjozdlKRn*~fy%B;sIJhd9&8W3>6&bGA z$gn^l?>719u?2_wHA_Zb4wB<-n@MR;2 zG-dItm-A->qZ0i`HkGlPL;iI`e*xS7R?o+ z>HjK^R5ffYBJ-mb2fwbJU|J4jh-3W((mClFkyD|gQ|HP8Z@sRbZIH~+^R+JRri2o> z%K@*VVW5P=nJc>wsOyt>t(=&+oS$UP4^JDNU{?alE*}_)-SO~e`PZF}G*jQ%8T6)0 z0XFDPn6Ib*QK=howP$!J^q;3S?Lw@{T3i%UZa;3p-8ceM`F~N{%kMSoWshCUPm=xx z`~5p{mTSRfr>EQHF40|!H>m!prNx&+)O=BFPT~}P zv(7Rnv`~*GL)yg0@(YC6GxZ-JjJUS;^cZH5tglb$y|XiuD2_>){rq3N z7I|`m@(QGI-q_eR&o4HU1l{=}@u%8|!50nUI-Xq?8p8@DKRO>PKBa=FwS^<|cPBi| z$OoAC*=dSVaNlH65fkuMC{d7m^5C8?%`5%)W66DBKGB~l;bHF>hI1FQ%m5&<)N z;q0S#AHgH#Z7%pGp6OcDeYfoa#Vzr`*1h8{f=H`NAcFjYIxmo9<}y1=?DXbWIFIcm zp9a(3STE_NQKwRT!{xJwn>c~v(vWr>Ssu_MB&YtTIW!`qsunz+-?XsfdETk6VNWVp zWxV0%Te1DbPxCsix}I@ylLoKynv0uvr1RpC|7ae5E~<2~r-c7yp`$n}QPUk5n*=^{S`3+8<#EI&4tsWfhWqDf~J9TH@0*N?9OYBAAyKA+- zL`4iX;z$*2Om1DAXEi;?FU#V8<(i-44u}-kp)V=Lj_3g^ZBld|YZgbxhP=TU`fwFC2rVM(bupM2R z#lV$hBjV;~7Z}On``KygU7KTgR;$Yw=Ygozc0h>k7R>;i| z9%k4TU$Cffzmd#`CP#=s1y2yEKF1h-jvNqoZ%p-Y@eU?$1daKm0;*b7IbZ#V0y8&S zR#EKJfpC&?(!AfU6gq6{5=GB--@V}LBf9@2cVOmQnn4O0W%(ao+6fJpM$O)DL?l`S z7C-q+dHTm*&j6w0l2nQGxC$8VRRJ{kpCkUy(ZX5?!sM`q6dgEJN4k_(~ArYT^E-LxpKv$F96Q>PJmKE7P_oF?zbUp{58bf80EPzy z)1hcu@AqsJ@N=}VH(uk##ZKA9XML~ZLyJxZosHx<^8}Tak(4o!bAwwfVN*j|=X{KE z>Vlb2fd52f($n-=;{7|Ik1M5J2)D6CtxRQX$cPbzGQbp~t=_51JBM^v&14ZtHI()f zFiJju2RJ>7JM4x`9LpkRuity8t)n9h5^ap5V5yA*#L++w>plHM5i+%Azv?8RlrBZB z(ND?A^lJ>wI}-K#k8J3edr_zc0TC<_NCn1cQdL>mvm!J0wdpZ6Pn1?YclSIbD{AmZ zD`sflBx=+5J7^Fd-{)gLpE|CcKjQ2W&71eU5idQ&4g#How5;fbYcr-tcsz2wC z{FKmclI8tj9>*1LIy*m9#>vDs-+2}E5MU5oH=8~aNHgwOvP9^g*w@|xIC|y2#D_(6 z`W^H}va;X$2!;Buk}Zp@0W)>ie4m=Tt4ks|Pd{9S1r0i&Ymf~SpMg7#OtVKSeB1fn zwU^vB0oNtB0ze~o{Raj zrq-hxUf&cu_?G_W&SrLNYiE8#NuQ`$JezD3ln{$$vS0d5i1Qt_V}4S8JUNf6s87yN z^4;OIfkLxVuxHqMgnf&e@vf}y%8ggoxX`!^Lv?=qb5nv zOM<(g+(|Ff#dFu9N?D5stsc4`yU}lYcfFd(Bf*0=?DEK0P^;g=r_$)TWi6%fun@&8T@K zWjQm~rqAjYLdExKbJ}z4Np}xVZmbzDO9;DGgg6oMRd`z+aYE(4)D?6jX;72ecs!?L zVf^xV5pAn484T$>8=kORU>IIcqHtBXGU;`+?|T$n<`ZOBdn#K|jP;m_z1P@JfTi)> zU!Uh#4+G9;1E#8r_5Pp8Fy4AOoBNc$w@CbDC+7A*7h+2JPm`Nrl=8<)k7wb+Vq90u z5ezz2dxAvYeEXX&^pk?W=vwdqIPQ?E z+HP)_{)km##OT;P%$k~Co^;HdEUEpXaS*10dgMCizud74=_6(Fd*^E|cmUaUzm7fZ z_uk1H@IT!;7q)~mz2_|il{*gjQhM5cbH>q#PCPx)Iq!%-AmR2$qD`KQhtE}gB~BXK zhp`6uHTQzbnqat6DSljGmeL!;ny%yLL5de=5tnGe-Dn=3Iq?@r>)GGmZNx}5s-K-@ znx6+x`7hkXM>H;0N_L@O(RF@d$30R&O{4lTqnrI4ST-eQVm%lUTn$Tl6T{Rt)mM_#8 z&(_@X56UBaz!4AufeB^PIuQksw2pNY%=!gOr1?y6&d+;^A`+OL9d544G&-d1R%_QR z!|$ltQr~E)v&?>`3F2)4-~f?^)mifk7I}DkOJc;$h)g={<3!w)b{V=AB|{wj(9S?y za+a=J0#-QXb;{+%xq}_&t7>&CpX5Wl2!P3}W}P?)Y7u`lp#R3TTnzNxm51TUYD5j&hJO;A^DT~S6bS+ zF=IDO4;i{kN(bdAC`>Z6_gc??ky5Jq`}0=9nnJ%Dbxw3$_wN!12e5ehup&PJhAHFg zK?wau$7O}1m@WH{c>^?Y`fr4N&dyv;*7;O3Z*hg3Md1(9&RZ|64Njj49YBtI>lz6}wC1{pPZK(-G)pW>%jSN9?FM zytjW3kf+sDlvlsOpWEYUYTgMYKQ&LONl8phthN=cvdT4nHX&^3fDn?&vA zDfz60Z99ZO*Rt^YmbJ^J-W#3+jXzTldwVuIcIV`T=UvDr=3u7$qNWSg9q&ZJvMp_v zoc(k?_6R?W@6oKeL9?xt!8uA2$HaTvyN^6oTIUOiT8h%|5ok?KXdJWw*z;9OHnp_e z7lkf-ZK3SjK}IbD8O#Y&S`re|pB_5SO|4wgcM$$7%iBcK3}D!MbC-9#bzcV#mea6e zqLuR}wbnq|vof}q4&DK4F*I29znJ7W^{_wPm{0-YA8?&{jSDHe!tg_1w=bzsbGo$M z6wGX1X&kQyY;dQnXn+yQX0VrRK0LUP`x~iKpfK@cJ8djmEvzEz6KvyT$U( zV-k+#KaH=&(-(BFU=gHO+ z9S|s3Ei;%YLjaf4M#837z}@q%0l(10Z47;B!u$@;af8oor2mP5WHT~kz~0I$Q6gjd z)MZBgLhW8v;f24733#F)%rQB##&RhAGbfD+XK;npoiOvszuTYJocZdslXBCkW3N#n z4D|jcX1p#B*b{)ou=eH$&^1}GG%2A7I}I)Gb(I8X8IqPvpT4GdJ%3T2^T`maO?5pmjoCxHPyudKNB$Fg zXi14sDip@ZXkFK@VIErfcr5>}c44i-KRv|jOtc_1inv0<>_dck`2zvw7Kih~?~Ye` zC|hEjwrt&pz2`AfvF>;{e38M@-h1TlR6XMq03QuJ^*&T;NYp=XK@J|4*8Yrp)5nB- zLtQs8-Q05>e`IaYB_G#_o{l@*mI4!S_ieCyjck?WAjP(vc-;G^%!ddmC9Rx-+8`n5 zbUh1Jpz6(>vyco}MsLrFPIW-b>Z9i``0Witx+(o!=#X{UBM~k`#7Jdt9ZuAAO;D8O z*=>F={lo4!Pv8AojfUiuR0sV`14i9%$S+)6@DrHuFtoJ#^I7HSsk${kS+;>obIo?KD1KJlr*u7ScmANY$^4q{ z#_NG}d;eYa0f=UJP)Ow9DxJZbfe-#n)o2ItjEEELXKB{7D$G>-Qu=BiZe9nK$_8Ha;fJpIpytpMQOmPWN@3u7`wZH349yvpfxxJd?R7HrSgrccRCy zt{&86`XgzU3C`yx6bP z1tXMh@Xqem%W%a1zzP)ttKIlo ztD2r)2bTRsn@U9hyRq#N3lm^9)ZyFgiNI`D8aRC`*At^xr$jpH+L(m%%%mAL|3?jg z;lES^6pqA9K>^!nr67i;KZ-l|@Txa{S}}qx@}`pL9lzj1a$@SJ8Fxt%tBGqg)4&9K zQnNUSa54{K&yfN}Ca2pddcj$6)LY+vuC|1X|1+FZ-Vlv(Prkqp*ETte7_?`mntbcl7t*MV*q8kj|{{nk3at@-W9PYkWBR3O_36cj9Bj`Bv_$I>c$Lk>`n_{!i<8OyZ|D)5{4z}J3z7|&X=lc#ST!KA*6?+ovy0YL0$!a6D)2L0qI^&P|(G zN*MyQMkK3oJo-RcVbNN1gOm+R(=XU7@&!5y15wz5pU}k}1$8f4Q%`VA8>d7rQ&G)E za`M#WTO~OZ+Wm6`@UG+`;oQjo$<>& zSjWM({^EnARLO1rz1D?A3bBfS)gEpKtO0f>h?I z3Ejk9=BjG-mi~2>>Q31Pu(#*(bS?6N^t74Wr&D`L7v3o=bIMFQhA4RLPwIZ){sY)J zneF+0qIqmHQ(IfkY9-#+$LpXw`DS!PCAXyQ{kv7_fupa=ZJo4km2A}{r(XY^2J^}d zqjkHd+IvU2lLnL#S+~z{KyHa-3YO{&Lvb^ub@~o$W}dI9M-m9>{(aFwSz8jOpML=}- zxIzQ2LCO+?iTu+aK6nwbyF69rj=)?)NlM6T;j8Ym!@+Mm(cx5ZO4kvGOE0Yif8g{un5X+ z4b-o^fJ>#3R6en*br*im%+3HcmmA8(y=r+sBcUn1vLU#Cwleq&%r-N%k;h7TKX*+a zC+3B)ps-5q>x~M@SgNH@T7K~b#LdHP@N;MTwJFV=@D8hhtg8zlUgRy~4D`fk4<8KP zThjL!YY!z{J$FXGSBlzAE{O)C7q(qzi1Ka{ow;7+!hCziSFdF1_~GbP z%oFUUq>vrlZ8!wEj6r#pamDzhAl5a%SN@sY7Lv(9Xt0B>tt8>uE-^;Q?Xhd)*yQ%+ zb~fUy#C^~kaXgb+zp{x;n7zBs3dV_!B6o*}hhLtK)njisZ{NkYBJh0y;ztZkKkMM= zF#F}*RXlb(?qs?X5rDJV+Y7Q4CW1b42f6{tE#qW&G>=;*3xh;%|M9If4zyNjyV*~* z8450{3nc5wQ{R>4v?cMv{q$>QKXmq{mhDN;u4)iYe}=d3AqXXAj46ww2@!e@_f2v! zI7;zu=rAOkf7{6Oqu3RQ`GlgXmu(Y*7QN~_z8W{EWxgq1#O+vWaKve5vP?ivj-~h2 z>)q#07FpTa!xvp7abj=2UqL>4FjJi92O(o<#)Cdx_x)cwvb@4&LPXjQE}>cv2ptHf zG`ysp%@*=~<7~;vTy|40NHa)6mwYgu0HS#=MTB0A-EGhNfOxF*YMD3iplQLE!Dz14 zrQqt=?l?dT;bEnvLF(|BHcI@JySPt4hZ(IWdZ&9yAOfUjNeN=xLgWOS91Z$L4Q1?m z>dADSuRIm^LrA;apv)>vN?r}u-wD@xo$%20FzD$)a`ioUCaRb#DG0pUK`Hh!gnf`j zk3*fw`Bw#gK4d+>cKMuM+z-DjuqN=2ye5NvbAd>mw`h#qlHBTr)4|6tKPRc^4X@8d zmI`gMZs*$0kZy#hBw3y%NXt)* zp%3|5`vVya;~Qv+&GL0_~Xgp_3T?~;Yhk8K5cfBtL zL^qI#gAp-lD)|E$0#YUx-IF=QxvAFx>p5>?nnCu=4wlcrzuK+L_cV+=GWemTyz;hB z5#%~jn0YMT)GlYzl@RId?ajF>zZEF)ip5OI7{-pBszmlrx7n;#HSAX&s@~VH5CYFKnKo=K?j8{toPw--0eS8AV zkZbQs@%R>4$pIcypvb-}VMt8p@R_Olt9kXCjc$lccnAO8bLOv?KGs{NfI_hD?f3YS z!7kdPzd+}^h1z$j-G1GDtHT3;Wr1w&Qh)&{rB?ZOCD%6x3K6KZwCA<U;b!qZ{kPoW>2((Cuchd>fJZu(dA5xIA{IG73jJc>$K~ z*L1c@BTi0KPJeF#5A94lp3^k%U!g>8KMM7q)K?_u?eCkW-cF|8woniB{j^A3TBfRE z-y-*UvnlFqWCVItl4O@r6HF{(GGpd8X#{`MTdJ$6n>j?ad^EOYA6|LHm&}|`PD;%j z;E?FE8_Nn=zE9SBwRQU?_@go{ss=evy3uy>`LQyCBg)9^DZ1`8L&YI52R07*xs`po z(L-9M|_jcHKlLzmVn_(0^VUVUOslB%q%h{l59fhk{FS2rT_6D@~iV2s-W4R$l! zusstbFrSNw(|adeu+;>+-FY?$j8F9NB}pgzCntFlvS}y1_;Tn?TnJ!3uTbvUnfDyP ziG@)?fjme|wa}s%0_MuU8~klx1kEsg46NenenV%%QtY{f!U*!xakGmHbw^9&9+Dqt zBnQ{a!crYsFa~@Mwm$2vtXcN?unffBcan?LMVHnf=1Ezavzh4u5)>ZzyGr=e4g8`X zFG=GtM3@I%(vFaf#Z;R?KHDQjd-<(H8kk8m6`6c3;7oTfhol?J zY3E{+)P|4I?vYx<)#}?A)^0;3!(Ko4vvQS%BXOZ;-HN{3_%Le{c`XxOd+?^bcy!>@ z7Q@3a<2b(#{WayzP-k4G!9M03r(=)7#++&5K*^O^d(C$isWW*L!g|on58Z7v8PAY} zAl!sD$wa`I+@3J~^!M4<0FOjJ*}%OUhZrDvD&4#b|p~4FVDkOL+sTRSkgGUGawh7l$PUCa45gctfn= zVxO^2XykpKmOhWDJR93cbdJoXdgu02N?Trq8zW%4o!mZYQ1n6f?c+4x>nT$sZ*E3x zcKF{{WMZ;#I=PlX@4AzHIH0yV3i7GViaE&25(q;WHMo(r6iA)xbag+5y#k;VFPSg3 zej8t~n-vCWgAV6j@ppHM=x8hX^J*+npo&X3w_rx4sg+r3t!Ng=DDSF6c{3zTD-vmw zPlmAgCIizD{Y85Gd0d%!$cC-^e5?F!i>K`X4L@!{vu5YZ?jVpe2KLuost_#1FJ!kA zj{`7YYnN8{MkV1nCnnTnW6bG8p=u{urzbB!D^s7oiq%sT02;_0SvV_*Na zZy~VJPSkkSFT%n++18I3@ZA@2do*|6Dp~_C^K5qZ$lYdf#bx-ePwe{PLyne7SyVhV zhD_-U{@@m2b2*czO9a2HY-NUKKbzXqc?_6uL&=d-=n|d!i<i-`+#ec60ZpPd@^?!~F!Wu8(ErU*?mioiI6JtX!~P z{1n2nI+ZivjgC2QxMBsdgiN5Gd%Nu;KC0pG-RvP*7G>MqC7)0#aC@bP@%TeHF^=~+ zCb>xRUV-@5M+?V3?SSwx(f4=T7r@z=$#Ku~F0z0R)1U{zsf+@=L3OY zysB}xLoK_9eQE2b2Qm*Q1vJ>EzD6$heb&=^D5y@^)Hl-n%0UV8qz*WjNY6%q1L*%3 ztCSuOr~@qVu|D4z!t#8*b9#vXCTNx!`W+j?-Rr|f^~=>;JexYSUKr_i&Yn*Tylh7S zaT?@Oq4_G}pw%s4i%~4>I?=dxY<-^J{Qy;m;+v1FGTkCR3crWx8uPMxFYJ`Cj2UVO zp;OQ%;uc*WmWRDRJRm}82!Asnzs;|W9mpv{FN9o0dd%?V$iosjCg`Gud@-QR*H#&z zxD#j~2WCzt%F)O<{QhceWQU~*ufnW5FX$y-nKHdvrrne0 zk*zc;kZ2iJPrJc{KoGvUPIFFdSBeRo3_W=gCDwm*Wu97wX)?jTLQv%3gCTf zO+Q=4u9)9q7K;C*w|(-c)m9A$auw6%cjz^d9CDHtIATiPcF=tdiZWN^H80$pFfI;O zhy(l52RF9ODYYB z`@AAwm-?**xZkw4WoA5%5P-Nul9_y<%^q_mDDGW~ks|Jg-i=gF;=cU=MySbj%_{5s zfS87p{i6h*P_4N4l30ggIpG~4BxDFRMTMxwS#nz*rNpvQvJ^O>W{PA0aj#F5W~nwY zz(#)rEWD_pb-`}r58+Y`r*4`j?4 zle{qX5Mx2x*C6IPbtG?-qfyc5{*Mr?(DulXfvd=XfimWD0-ei$2!;B&YLO@LIAWiY zc{kA2#iEeOqyK%*?_sn5-)9^g(R%QNd2sV8GHiB;t7-G)Qp^*n%X}+#qC_L0PrUKu zk@jsn=+CCgI3UUD-+U`j5ZO2N&ojk9T)I`?42#j)6_v=D z2p%AnFTgN)m;W{l5WGeH%>Ny^K5l8-nnN5NwH2R~mdsNDED6f_v$r&K7I1{PUR(hH%LkO%W@Kr4&h`Sg)vMAs%@U=H zaRRd+rOnmVEv=r&vt`K(h(llY^mL(ab6s<6b}B^KmWY`=CfnwXSha^FZ^{b~~0W;tLMf`>w8TF|@3&^awKU4}B)rA(U}o)@V6>_ivVr%}MaC${N{#656@|qBp}7Bs#7e^A`$vkT7;HraBf&yq zs5d7x{k+ug#q9nc!oE7H%B}0yL@|&K2?c4SyG2S`x}HN;e9~M$)^Ujpv;Ayx({4b?}#iF<8%S)EoyH+Kk3${yp}F4bUc5w!iZjWv$B!j{b;)w_YywV?$xX|bSw98 z@@oM+O<9#KI;S@9{^GY!adhurtB0+mSw_F2BmfGox#OyL;r7?KN9B`^1Fl~Rsx(i6 zlCB*d9AZ&+Jxmf{(Nw;?Hr!7)t&`KvvKM2Mn~6miKVW{`eqQ)EBH|Sz&&HaF?gc%l zc_tv|qRJ+I|4p8%@+9X2dgWa8i-J@Yd9J-3pOj}spT6c2`tZ$91b)2+p75=q2Iopt ze6trZGSrT||H@$PHJd`Cm~i{Pxd}JnIqSi+^-1OZmzoqF)04V%nyFg4UnX0WOuu=5 z!n$vSWjm!k=Pmcu`fwGo_Fhz>#=|ot7JSxa(DN9-ny6Xu%SJf#*YPLYcSr3=^%b_Q^i%8}@wXm$<2{zB@cxUZu7bzn{vid7%Q2xE{+w4o8 zdT~}7tEyRNe0%`H+|!M`XyHd@995rnvtH(%!Ci^U_#qnN*{0k90h~KsPz!Akm-_YM zBCxLy~ez`fn6A0DE*52HyCM)BWwK&@*{6k|$ zqvu@js6%#5o7j|;x{sm%ZSwqg69km{_&=;7@BEPbtntv`4PkQAJRkqxEu=asDDKId z)nriXDA?ZlYIQi-pm5Ef^srsAOcSVPL^+;VXiMye#BX=AMy$9FV)Isn1Nw1u1b!jQA?U;Y#1m4lEl&d~sZQ0gr?Oj|?1&5#qpzSGL( zlh&LW5#Re6d;{k>kGRv>u5VtasBdy@P~^c+|AyZlhQCR{H_779qc0m6eFmJiP1kM? zY?wAuJ)=H9&%p>cx!gRX>SXlKuIafqm`vH-r>G?XjN%u`nbAE#f z(w}F0A{q~#9 zUsM~#&znxj~Zlq53`MloeZgt zdOS^c145cUb^{_Q1{8iXi9Je6PDDSo@d7*LlRHQ5v#}0!ZzTUF55;_J4$<|lO%eK` zc@7*Cf$Rr~qr~hTDyFzM=`;huYzLIKY2t?=!+-WaZM)w#`}g{%;Hn`~mNVDlm3}>F z{Pc6$chFN$a^KV~3eLoM76-V%vzTh4qctF*dVb^J)LERySHzkMu^z#;0Y3YZ7C zP99ooYrN}qF!2aCAfs^cu}m_S-`(Nnm3ZuAtrZhp&YaZ!BHf&8@5AJNbgf&a3Qo}O z5TKA5thq5hGLsR@Zlv$wI0DkRIN9qw8AsnwaB_-yue_06?S}c&yW3R!{$z5v(jl%y zA~sLqg-S9i@g?V+^7-!n6BK@Qw(^9BGkJA}rpmI{EnU_yHiioM457U9PssPSv9{;R z!l;st0*IEJJEhs@HU&6JTk=`=+9TDpBi`)2?3EM(13Atszxm;zl(p{s;I(3_62fDD zDL1Heu)gaGdHJP%5*#z7_XY;?69un7Y>wL9!s=(GhP_#mi!2q4z)V8;X|{J_eN)HJ z$!B?<;x4sef}z58byDKhr5{sivn`_!nwLcQLK;$%oZO-7x}E@rd_dY-+EiKv?=Sv! zUiQsZ1{4GGAdBmuLy(wY`;s_~9`^FM8;H-XlTVPgC_r|3PXcu39dzO3iiZqu&8< z(5jU8omIC&hR;jc+UJJ0L5mfU3AK z<+1GwQ)(!{SuAaMBzki(TN;dLf4q+0c80r%|H~(SJN`(5TR-t8-|eB=FD!+`XWWM8 zwXT=^m|RQk1p{umZ+vvt zb;08<g4{?XTutE7y%nl%3o0&^_#Y zXDGRxQjt^)xS^FX-&I)UNmx-fa6`bi=iE-!_orl**r@;d;}@3dl(c-htYD zii5A^$AVAhMM1^zVBhcGE3m=RP5VJGaC1uqXQlMnOR$9q=RE<;shjyGaYfnMpD<}y z>j6jc<}VCmVR?!Lrh5N1q2akwvd80f17q9#F`=iMy2o$nq0Z$0)Z=fpnubmKtq#5; zX0X>V8u&%sp4O3v6s2FkH?_359?+3EKeu{9;O6ey-x9I4SZ(fZ4;T9taVK-X9@r>Z zU-Wse-ynCJQrA~|jIZ9DQ-p}!zj0d9_dN2W&rlH$mzN(F-`?)d;FC`BJHiZFYoMs^(or58M;bTWywUc z&y))GEjg~KK?6$IBZ>i25`&;PCoS3uY!&W1E&_TL)$US7rhs|}xl0$Yn`X(yt$GAj zUt~n*OA0A8=z23Zv1gV#nYDEB0z;u0^t))#XMZYpcP!q&CDU~YDM292djJ)LkbHdJ zuqHp06S#>&_B+(iFXv{}1aE=r_mX$*eSOHSi|G+mb4-A9@UThImoE)NHoPlMy=T)7(m2&VpNPeDn;fFZ) zd-Vhn+W-BTW38&%Bn*8?W;McsSWDrO53L9IP{o(e9v9XHXDzGK5&FxeM^un*`Y8%KmZg+_*d_T(ky1ba>aJHHW~f^lO}VlxLl+(yleAL|%C4G?H$YAUwXJh7a7wAfMMmq1PFy#+XJk zl8n#1GyyOeth5ZXo(^1nvwE1%Bq zFmfm^UBVqly9Kn#t*ZQ9`yM0qd3#YYFfJ}Gx1b_=eqa12qtBLtan9@4(r{=pgkS0Q z_S7}b+)^m^2J)FM?;%qFEQ)KcxATB zb;yf>vt6sk3zjpOgWZ-MW<~xlq|8PIc3g8E+a{~jzF@ip6@C$EX47z{EN>ljRlJ;s z`dIClewD8-{wdPRAG@k)--iz!$nO4MBd2~4&WovZXUqun(9uZ}NQ z6=eGNjw9PXSlzz8w(7Urm;UAsNyo1Rw;DsWES-(Xn*70h3M7Vn?(o@}T21_=pI zuC}p1$65aFyMrtIilLyC71HKr^?=*BJ5Os#GufXNYTJc zsLJWYjhdSklaHSG(PE~q{xh%X{lKeJP_UDTEk)QQVBxzK&7&PBZJ(G!bGkq~tffwTP@!GEV#6^$Hw>?W%_AgTP^z|91 z$F0;bc>O43k0R8-bE3;}$S%--Z94Fx^{<@$Qv{s!r1-~|^M+brv10LOUHY{7@ryB< zL4E<}pgn%oDcDh!q6((&HR7>cLaSH|KBs@CmEex)51#1NkfF{ga1?)kZ+9^o)ZHNh z=EaO`^42sTo9$%)9Axswd;>Y&U(VJKLK6qPbi?h7*s8BtQJ3_22LtpUczlt|y6y4Z z*y$81wQn8@&42S0srIO)rX6P*+Q$prBz#&}U)0~L=i6LwK=3=M&r&D%P1Nq&8Y5== zvz|zEmcNsTPP+Q@qCBNKciyZ@qHpa!+eZ0j+dHSf4w}Q?I+CqiEh}jj!DTQqu&oo) zD3HnRPt7vGgmU+weVZ79=IT);XC=#vyVUum=1ETqWD*^(LrMXD)Exk3A$ z&C1yDvsHl*Xjw;9Cg})=<9RDN`#RsHy<4b|as6PVCDyLqt4MOOi)c*iN3rn$7?xJU z*wuS{^G~?-8z*Y$YFm{p6O}AuGN3mdYpMUay_3qaKt$48TFvor&F4jvm=b9)bvJ7% zJs!+-5$=p&Ks%W}(mtO*`nciT*o@vp5%yW;6++D$Q)@u7@{{%%=on6*{jUi z2us4C4c_XT^=e6KNyrM#u2@jd@F`s1cFoX@@y(|67s`!C0uh`}#NRqjo;|J`O_$%) z3+ceSwhVMC+5T^jIHgSGwzmpp0e^wpUFyOHE_Ya*exa08<9mIK?7_y-zpjno^umRZ zRZ`%_-nI6QYXzY-2;BNjzMlh~?j4_?u|1Q{a`h=+NKr1Xav;Jxi{8%0_V8FVPQImw zBQH!^;l*)3XnGl> zp>COL>G7-^HgsE0#f1mhF;jzz?6aW3IeC-CtQ3RDThpgu(BO7|Xa& zP~O&7OnGUc(DY7;oe-Cy7@@p}$o2|;%DW_+L@>DB1pjDbBxc_P-BJ9S?0O z-)jB%nM-pnQQ-nc_(6_lVeojuJiy0cf(AsDmb+~;>FnvkgGZP?)sQC?72Aru1+c%|-wj%=&$gY?mwwq4tS*Y2#KhU>l5ff{5&ul&`5uVXp2 z94c6^bqnA73S&6y95K6Y4=dx@qb|I@B~X-~9&h{UUq=Iv*HB+>yyDLiI7~+F?7-M& zv|xNy-7F*J#W6*m*(p<}qG{bMK56wNHdr5~m)biI-qv+AzYLclRb}W2uXy>e$R%`H zJ0GtceQi?@lajw@_0_TsH(%|Tj~t25JW@8tV_fZg~XbV|2$@rjUNR- z=Fk~0o2h{(!SdmYO=LCLRJT9;AJhqEh9qR6EyhT(f98y+o<$&5%{6UvdPxVB6oa&x z3Md39kM=2J{~j?jqKdD{_fVuREa^(dTo&&`3GYrTu-@gSbu%Pe^}mCULISk4+4nrN zJ*^)cZumO-XMVkbE*I)dYn*gUK;0|;K!pxKgERpMP}u;|#ahgKpAX@GB= z1MPo5Pl?8X$_ZaOX29pCK|*6%H=j?M01Ss{5-2>_)wCtqII!hKE#km&&t@zBKq#{+ zmT0X%7OVrW7u3A{G-Hdb9CPAiy?H@OJSq zm~0g`2ZF;?x@~u6GrPXqh%2QRzN}t-t4ULL0i4xnJRgKdoJS*pJWiEFxM8;5%yz$5 zz>u@HFAs(1Cc;_YdrbLW>9h_AL4oiennj@ZweJ`f{v+BU+*ua zr{9eWVgro%8tPv*S0iRIC8ZMUcME|*f@~3SPQXQh#;A0=Ua5zUsmC}N>(h+Y?gO@H zuCf03;i^{6r!bDte+-2=|xT8cH98Ui(vWG zV+Piq5Za{Zi!`bgN%GkqK8|L5j%yxD_kOeeoc-)o3SE_m-7s<_AZ*?hDnbS2wy7jBDG+t z)eGitx)39`H()`Q?TM$d@|i>_Ab z%01bn0~YoSqI9$$#g5Q80S106@1I1mVPJgQ4T#}N(C(sEf=yOw1sk5#U*2grxxh$2 zTiy>ZWd$Si7y<2rA#-g&1u}$Qkh1XQgk7vQcMO`8rOG^sHXrrwWglpr_4)bPXMfQMsypLV8a zzq@{={Vr)}A;Z?=LYn4zezVWYzbZ_JME`!kWoW)+L;cQ`4@X1z|1#-`(9?*4>g8NB zj73BmhoNMH-`kP4FKt6wKej%)%CknT%rruyiGVj-Jt{OZmIw;1+aL@CQHe54Ifd+# zQqt;%C?yZlL0pMg|A3ue?#TB!J7u?Pe?M}Qr(Z-xW#;!e%G9BWo;@-lJ`su0%gJeE zS@+C3tUQ{t?+>*8;MB|4|9ZaRjKLz=+HEWT#`*)-?ay;kZ7afgjQn&s*#B6ir^h-m z>D`+>j56qmbD+;GLv}v3j>j=pQESRK65Z^F(9j*I&Eh^U3Yaps6%`0=q1ns;S0Nzd zO9ah`Q1<9=f+w3ZX*iGvVa4K66_>fg@~+(bw;uL86Y!pXIsK*tRe|N`ITV60;vQiy zzyXh1r!|3>M0uyvuFCtDHibFlRK>ogpTp_iPPPDK0E!pf%X4c}g}+BD7a?~UmzPso=&#ZTEKUeZ>- zdlVA&XwzJ&YX?psjI2l=cM2r1Yk1&y_gCX`gZHZzywHV6nyl}#FScjA_hIe4Nao?#xe;C zEX1p34X;MCSv$15!oJfIEi7hK`S#o3fqzQkg6OwqZ$nMw-{2#=yLT^1$}1nweWe3H{6#gWK>k{9Dn5SLJ1F8$BNY`85o~qUQW^tDUUh_HlQiG zK8tz(A^TERL&^$SEMAk0p-xDK;;N#QloXHPq22sv-HvvDvAoITS$yw$TBl9J!4f83Kuuw@F&cvILwHKATZ4o%_dh%_xERyENQI07|nCwnWa>?EYOxjefvRc-`|5^-svMqItry-FOjcilDWsf^Y0CfOc^4^132V;hS`IWc zG#Q=!mgKU%LVQ#|C;}8RvUO7h4bPqT7UouIOi^en^r}@F zHnHt;+tiWv_u;2)$gS#0t)Jqen+8;@G;Sz6Y1^S;+XQ(^ZG{nfnncvn0s`KU)m3V0 zbZ0Fhg*y`9*Y%-n+ON`@()+1LV9=w4s%AD9l?!V#Ab zUH(Rv0tvt1vu6vM<`yS|YF!%@yPSbHiMJf1`J2$L<=u?J54fAoYQ{R#EB--2L7z39 z!>BuMJ9kreP;tZ5fbP?I!w3a&G&?eybyb=PwUp%NYRU9Fl3Wd-JCc8jQ3C>=&XKut zhdA;L_MX^kEnI~7NI>RQOUf2Om*=SD`5Rm{dKs%s>OvU3r_9X1r&6YK=SzHKW2gL6 zN)v=8-n^}g_1q#skvX%I2&<;I$ZBLQ3Ese>34CT_)ITb#K$W-O4{3!(N~d{!R&eZP zw#53aSF^Z6>(5MQCQ9SKIe*8-&_kPJo}}(HZyD z@Tj5+_j1*ik2^=vs`*~b?O!7a8o*zpy?w$X*qsH-D0emh&Rv*XcU%KCk(S0-e-~y7Y2{5~sl09{<`T4?A z%k;&EBr@uOi4w zEqk~B5u1Xf6pwBZY_#=0@c}CXfpcr@&RD9a4zVDfFm-`H5&Ps{LC6}DuV(2~~k^B1K9Hn6cBNOujRf%HWcRF>%2=`1!|76G||MZt|Ed=Ed)E zJ@T)7^R=>@eNrmom$&S*jo?UWOqw=VTKc)lrDSV711EzY-dE;&euJe8B4nh*) zgCstm8zd!sA++Y2rdlLGfj?2%;1@6~xQo;=wT-aoyXhUNk6HJdxH^TRwl}f~wM*U^9J=3foYQBoNdPX;9z8aVNIC(*~gyLh#u! z&~dIQIh8fsTAp4t;*~b?*DMrcN0<&&Ki2Dp~4I#q0KLeYSQK%Ds zfr{dGdx8th>idSOZ-17 zB($Tg()OLCaa6h$xoD%roN@Yg?N(uhz!9UCJ`vtDpNqZgsRm?xRTM_xhAzht2&3q{ zu&rpEyIfO6NxT!7XflEmZoYdN_tn(-F7H;=#0TGogg54q-)EI0tIH@ePI|BrhV6>e zqP646<>HBjCErF1Ka=b{@+}xuc{*&9diZ_L_<~UCz(DDt+13w7+@?s}hcZcW(0%QA zi2Shddb_wwBP@KqMsVUY&t!#?-n*Atzja{^2BNoV*1v2guI0j~hYy_}St6u2p1HUP zS;XO|m=qD;oAjLuu?{79#ykbjp$lWVzOaZ|=js0Ct~?m#kaItN;WYWdeq|5ZLvPY) zQ<%9EC+U~_+DpA-wpBpv4 z$8c)fD{_Cxb2NY}3}+3y+oG}&CM}CQGM#AYtD*6bpLsCkXO#`5`W}Dwh;Ie=d5q8T zPU(>9Q~L*=4mvmRd{`-Xi%Uc%E#&GSy}Xoh61`u+Jzs12WqTOzGCc5w7yhF-0kOTo zKAtlXL|q? z(?x|@{9ZN?n>F=eT)c!sq~iPdo-{FP^5IBr&^DrG*lu0Os4;kyizpme_8d!RTRc3& zLvWu!%!xFD>mE}H9VFWtPfv!Os#qdJs~f=KrFgK>{$hsY(&1Obs_ddRW~YGR^{!`X zLuerlkLhbwHX*nf*M5dMxIwV(Wz{2fC4mrd>e3Q1&R&EmitEC7a^|v1(dc$m$A~no zt*inVKbNn^Tu`*63v+p8(_YY%WuZT|eW+9!muCflR+y7JmFWZ#6vW1^cnpSzYXqL!<~UFERtzlQ#`VtpZ~qur4c27kH{T0tm7;=;@|aFxmNy z!c98WJ9#ka-!8oo#F5IvNWORUMq&ec*%{lF8Zhwst`mHM?uOv0_|Ujf1_7G_fNzWM zsji3**D+Gna-#Ysx5*gU^a4$TKO(m>;^q`8no8~j2#zVa0TzA4%sZ$3Jb+r!r6q|n z`;`!a$2*H)Joi-$bitnTSld0bWSCCXp$xYj4L)oual>13obFg9g_OYj%Z$@XNY?$&ca~2XGV0( zMvmm{@)kq_qbI@T{lvBuJ&)$FcNQ+T-FC$-(CYXlRBfjFA@!w)$<&jGb*wQ{L8Fc8 zlhympx(w8r;%0Ti+Rj)CCGd8o8TJ=Np&U78Rf7%q&lXA=1m1z3TBe5%mX(`Ytm;dd zk2GxaCYLC@scAA=|0vsCAF49X(Xs;$@?KWBT|^Pwme1}!5GI~d`0l5^T-e1!#a^!q z8{jX0C9ImS#qaz0N{wvKb+b>dPz){_N50KdHE(U>n~yybCKkyCPK4)x2zDwqM`k+h z?c|MM!kKMbLn%Aqtp?xCwi?A1cSSsl`$T;Sg8b89P^{}n@AF~JJe8<$NhRPx{^IE)=EAM`C524qq?#FR8#J>vQY zq*n6~8k^f6WY>%U#Qb$PM+xmVUbV{N%0Q`1fl~2$%YswTB$6jz@fzhceEK-eaWwkL zEzZ{*^NQLcV{>{EPkr;{D0Kh=0Vl}(LO~V}<+kglyaCJS0CZ0A(34vPX)e|oNL|^E zMj6|o1siW3QSA5DC1~#U`Tw5SKQr zU(!;LGp(Ui87po@_|cw)E!R5h1mDryB<&5$tiek%2cp_A_9FC@FzEP#J|TOScFi&+(4#=*HQW+< z0dsmR1t+<-z+$ncuts<>3t8?Uq#~IN8P?A5yT@a|x2%i7=%=W!+15!?;ffeq zNZIL>d*Ud_WAhhcf<-SW+o(%}rgWiRqYwtYokyEnj#>ErUxQTV_(h?yM@jDBr@-0>aB0$;JS7@E*(HOR? zO6R6WqODWWUGO}DF9G9B+M8gZPnD^zUXnR)6ulp6ybc0B3xlKjyx1FNZ}L5mLiPh) z0rmwn?NvQ-J_o}#34`1C5b$O`m7B|wk|MlyX6%?&c7rx8$qOdMFpkqRIa}^*7jKNY z^IDx309?e+|DB7_Q~Kg>rrRupy=uyC?}iW&Dc&> zb@O&cP!%QS8`~9y2EkCWr)$vRx?{VM%)r^Rn|P;E6vsr#?qmQ!LOzbxNM1^6n*)RD zF@9nw0q4=OZH}#{5J*5lb(GA$mF&?qdq-g^=nmwc#3U95?M%+$Xp1p<*KkbGNtAPGuO}ywl2(W zjaFwTJXhdpbA^Ga_oG?|)1h&_`F7}|DY)3ReVYV%3QVkATmN**X?a@2GcX80u~(8# z(1VU9v2c{nc8=!lS0m?hLXn`*;L$HX;`pP75whLD6_o3K8~CiOAgu0 zA@wo0r!5wNuM=B}CRzQq66a3!rcISfb2acjr~h8AL!oK2dI--!{%EN4TJA?KMdnf? z)lgW{S2@>jd1I?>Lu!cm5?(s3Po3ZU77TEfy+mNObG5L}=bq6)K^7!H(HZkrMV^~n zh!4s(r6>3_|3Y7Btfb@y`1WO8g0kN=52cPkLHuPh7uQPh#8@(RAqACqgnfjr`nPb%VX~Od|kfzv5HXi zov(dJ-C}3qt!j@YoZupcCs74iAUpw7^Uz1hYHd24oA(BiGx6~Vx_X4rz+ z@w~|$4x>$J3vNF>JtM_xQ!nX`02}}mm_&yQYcbK8Z`cfov6(fDe#4jb01mirsK721 zkR>;mq0s7jO6mn}^$SjJc%732rj7e0i6nVh<&!q4Bk-Sq@~DulpCMa$FgJY3+hahZ9{|h93uUaoVs|#(8PZ}h897x%^$cqcTvjq`7-UQ^C zOGzz!6ZsEwA(eVp@JJn{@Q_JZanQ9bC17jj#m~K48MPUN(wA#S4In2VI2yYDw`SJ` z+pAYLIt*lrt{kr7>lXhV&`nOk3(Usnm6(go7FWm9YLzp+Ctd4TLs)<}UsgUDQL9D3 z1l(diFCOd4x{7FfmBP4cuB>&blfeSFNLkB;JR;E@ev3jKihhlY9=vt1`G zV7=j^*?D7JS@Yo$1rTIB?YP8&k;TceDG-Gl7lL;)@iPH!PMu(vfR{xxPBf396NB6- z2h09eL85jB+aiQ{Jetmm)E&gmVNL_lpU`G(nZRCG^hM+`-2E>Kl@f&D(K@2kRr3={ zOvOeM`6H(q1lZu@a^oE@WpXxLy-hIzN8WJl=S=v9am+fe3TO;P7A41L4VV5MYG6a)RVVgd!eU@5wKAjLH0q#_PqE7)y;z|093ju<& zs8+-?xlC_6S$=`k;ThLm>p@;F{D-pI>|YeFC1AJ{Yw8YC=R)cZ3g-6r^1P|4#8betpq(pP!tyrYuO{nK2KbboXaQsYAC9g%xl#cD${dRG8}|VOp+ZiV zlf^#Rr0*8o@h1M{X?~;=^$CjphDB z3FSCmel3sED=8-u1$17HUpy#tYKyYTYgJ74Qw;^CY<#Jb2Hc0g&-hR0OievAxl}96 z$zjLaR$4E6WxzB|7TksG3U^pX%9(FyNaT4zAB0#6w}H=9+qC@wot>l-U0gi#B8HIY zM|mHlk3|?tb76cwqZ9|JL5I*Z#c75@HEQ}&J$d_%6lW0(-R)!CzM*0XNI#q-W@}d! z{rYP4S$7disZCkK0^r}Y4%en9Y+8|s7W07MM|&Nx;n`0iLKoH^d>U#f7Hqm%AMgEp zEhSO8tSxBR;=`k&oM@8BS{O0|Lvm)p3$kno@C;{`G%g4@rW2iSyz_CC&$TBCFFW&| z#QUdWHcPRYJmRNYH{4U2%XTkn*?R4z@S`JnVf=%me#*9!q7tqtVu4Eup4Q-_xMh0D zfj&G2j5h1eC8Q9J_dAehad-8fm)lh0Pot-Nm45eOx+)>jf}RVoj6vBE6fU33-ca~= z3#>m;&^&zKrK{o>VyRsFWwTlxo}-N%lZo^pvwZoXQ#YsSV{OtD+%{qvIQBu4X*SKO z0TuAsWNT!mO9~5!t~2G;_d<)@@XBD^sS~4nF(G^DVPpqMg;zCElU$Tc%~M>{qpU|e z5HBVG@nXha4Zt?X3dWqn`S#EoS5rajy+|D;ETxR>TVydkPbJRX;W58JNw-{KjR@{d z$sqLY2l|o(wSoRCA})ki&=j8{hget0%ZM59skjcu<{b?waqftR_P&IZN@+(MpgncU zi`Ve`VNUqz7mLth?YpQ(_OMkLrzt-vYOX$`|Ir;iWtAuTCzlzo@@1M&-Tiv5H|@Km zJJKbf-1A`Vu==QL3Qce3FDukL_xY8mfaCD#p}8;L!(y-LvB8&t*=((LMxV#gfi1bw zF!7<_$nmOBz@}(L?*?|H2tUVDp&wPDd{$@SH!sJ&g#LN+Mg~V(r!f>o2|903ciiP> z<%(BPxo#+^%s1v-r>S^yXFH4*7T&%8{QYwI&SNzVKM}J*CYHXLoO6N+qZcH{ z^5$2*DtRP?f?Yt?5P#7HycJZ+bobs+nHf zj9!q5C=T=)f5sPdVZu1}GO1wQtvVG~>Cu~LWcuQU6UF*Ydbt-ibN!}()-yub+D@<7 z0ufQub89-r&OQmALypATz0^87uM;P)J$0jK+4AZD$cxuQgWiqZq!ThJn0^wG6tJ~) zALP6^=pRVc~ge8eBIE`8&a zl;mWHQf3MA>Hm-zbH)2V(gE|jP54_XhEf^8R@ih3dehk?A;Po(2;_|b=kzb;X>HPI zZZBByh7=>fQ{{4@KR-1zgQXFd`FVUUd54+M6`4NmxtH>Q zIDeE?Qqz-3ewnp-5^)_*$OUUNbJY0~9<$La1n(jv@1X{(aRkxpO@R@L?-`w+9xL3N zEPwapWQTdAvC@W&uaNNpD$nIAX`ks9*-!xpqG^HXC;EuvF9+=(t;?b+X~NKP#J}q;_@}NWSQvA52JX-m$mdu8f^}44&#(%MUH4pU zV_r=$d{StJm~$d#zEw1RIah7h_v zR!Fc1g{$4GR)nIP%E2}JCEXQZ)3Nk^*%)%}co|Af8VSFEp+iQqJI9t{xPe&%gllJa z_$9~c>#!oD?lkQu$O;A3)UWqYlI!Vah> zrJ{Hw7R6V0K{Lz8${vB=CQ)PHemJ#zdNGvy z;wOiVk53p!$Vw7^OniM4KL$bso}(3)4?acTSm?)hE4-LZGNK~VtP_L_~3Y@OG3RK>k_k1FhjdwKzb z9u`-qYGfLjrT(S}V@ZDVBbV!5&Fu>7R+1{#M9dWa=6*YK&d#_;Yvr_GlVtorK(R8I z(RYupPbgJ%0~PIBmu;K5N&ckNq03d&oJ(Rpo|R?kJ~!mCCjdL|e4i_t=HiLQJqgS$ zu^nYsQ;x-Ypl`-}$u+~0zlOOd#n=CTN|8%mQzan^@aRur_p-|*HJ_ePkKEBQOzt8q zC<=j=f(}d?@FDcF)jB{F+#`s7C?&O(a1r}kY3)}B_dPuWgtIa!y91KA_rhF5>eeB@I!s$N9N`;oyZV4FH4ppZt4g#0p?!6c27)`<6DU-*+(E zcfCcs_EJ|IYbfh=1ydQ?4o!{M2fD0Qs~ar`yBBlwneXh&EH99J8k+DQ*XBPrL3z1m zejf`2##x^|kxmPR^PdA0TnnMce8z3M`k%;!&soWQQM?`=IJ-Bwl>=N_DIUoMQYpB! zMU2xYBJO^6qyKqtd*{AXLk{XjK~2-?uziOccWO3B!anX7=w-XsTLEe(DJUo^ z;RO4M8}>X!OdpFMI}3}RGc!kt>(x!L)ZzOhg4>A~mgu5ds9jSk@#tUiWedv>!FLIiY^t~UrKg;3-7oa%)|GzOa_rgsYpurjg8Q!y-qA_&4_S+f zhiUftJQ2p>=?L>w{uFVrd%a)R7kBw_cs`9S((uJ=dHl4&qb`pdJiOlws;?1kA2Q%2 z&T>Biq}NnN9|zSlz&GIv=1txd(ptcd8k*jijxM(NzJhfWeY$R_gZaQjKtgc`F$^Vm|RDCa$4E4RtH>S5w zqpYrM&dQ8+yVQ1BIe86Xk^PO;818mm#>u&AyS{y0wJ)XN221`RdCGc0?!!D)lI{|z zsirTfBEtq{*E~1f#`D+;8VKBqUKEa3U%G7V%k2DERsGeg=(;eN$Reo{2;F%araoU> z+kFF=IgFnz-4P-p;k;ejVW{-1^qH&wy<(ircqr{AHAL%tf31+gL?{9^6~^p?C#*+_|Kx-K$yccN9~m`$8J{(#Xkj-m3_oJQ!=0hfcKEnG>^PjMTt`&LEg88+ zsGlT?&z@$-sy+ZR3GSvA^$L>N%W9rA4p z7y042=}Wft@C2RtDSy2*gD31U$Bl@wq@_C%S-w|)SWwe1C|>On4a?cDX-U5;GwZg& zPBY|6)%;n44R7G7oBR2Dhw@}>!N*!r*n$t8kH$2F(#5Xx`Rfa z@2fq9tL`eXW|C|Gs4$QzI(6ygpFp*%CIytXq6x~@6NliAfh#xWaUUZ-j7GJoyc3;? z(IL;p@kt?HyYQ}MwI?O6+CJ)p>3aq0$Zf~uXP{LXY*#pZrvDEs7#=r3Q6=8-EUA>K zSPZTJI(1OnY}t0kSovK=Sa<{Xovkg7xzy>nMSoaiB^?tD{-&YzeO(qgbTUQdKpfo& zgueW%ezcYLGl`BNO2M^RtFDQPANwqkg?{ZMtQZBiB%++;)F0r59FiLLsK-j0IVKkj zhvwWxl;&#jQP*gW9xKVS5zs5}ld05#jMnBifwl?RH9*XeH!6PMHik$gS&GKzP>elqoi|ybjy&1Pl#;6W zoE5#-)%}WHc%p0jE(^aYVcp-Hr`(RiQuNR@%w(ACNRByT!|$+e!T15`&KHY5>uU~W(a%$Wlv*HPNx z!cyFzmvJJlG(RQ!yTYiE>A~OUVa{gZ2N_Pl5HyRiX`O9hB_n0>Ig&+qO#~G_yQ78Ew6^x*OC} z0pDxk2?DmFHnhQeaAbpWdI8W-A*&uj(5=fqxbs|a9s8~3lt>_y1lo$xl^Fi^h}T4E z{ZE=tq9due+J4|j-G(>MUjakLm>9#HO~*zv<^D(7(PE*b7|J`AP38w#2_KRc^_Z&{ zm@~V9>^3Sn+G?{V_bz`T6$4Eo3`34(2(mo$!+zp}EUS=WFvu{=BGZ0W@hqZFuO4pi z*gBH##=0>CnKYiB0$4Ed34!5!rT}<(K&c z%WP$38`tQ(KyD|vAV-lP&kYZbEHl%5itsNIGIBx#Z#v_*;BpQd@TT>WoO<%|{?yL+ zY!fZ%5dfXW#iW3EEX^%09C&KoyLo75W*PbBv)qV%e;JL++hmaZrh10(pq%~|R3M46 z6~)+J?z=PRbrXM#f zvcvYG@VVohERrU4#2>IS`A|^?&-PC6=#oZ0gd{QdWyA-a8jM4EfpKWq~zY)x-`=X8HH4P zsn&1R!cB}xt6FGRJ+ubWH!Gn0;R;QB^Q(ANhtrUofdD3*`F{v|%Ydfezwg^de+Ghr z(o%w?(meygfeO-%bc1w`DJb0tQxK*gUDC}Iq{UGqB!)C2Mvbw)zUc3N{;%`8AKb?S z*aIGnBR=(h9iL+?T#)zGQ5E!vED8UA@a1R>5PJUk;-a~FxVODo3at%);_`GLE>|_p zs`;b24$->AudLPBxOf*$j`_BP9#NdE06>)u;UkzD^VCX*M>#Uv08$iynVho_*VbXD zc?}XD|D}=32hPD(18xE0#!l0^LIlKW`ckTGqQhui@4F*#Q&p>#kA2VVbEqP*=Wy)2vUw6*%f!s<%1$P>iI6xX`m}ED6kb zW1QkvORyi!oi0N8W-yB~ALx;F0mEex@WJB0X;@vh{c zbK^}YD<3>K%R58SGC>bB4hT0LEOCyRdGjo^QLE=CdgldFL}qQ@O*zH7z!|EaTirJ4LAN=GV7P5srkW0!Bo{CtC{$W2D8jNn`x!#s1R?A!}Q{n>;WW$PXQ z)L7dQsVQ#<)zgn4;AY2$GTa7W>NvP@rtVN6%;d!3H9RP+Lw$WGW4+FLGlQv6P~32D z>erO#;Ui^>iMI1Dh816%(Ntz>_|bl%m&`ae8`A7~+dj`<-;ML^P0eE^9a6Du=bi_* z1guZ;$6~Lt`TxV0pbbrElJ&;86l-pAqN8DLeZ$Ro`W-1`mfbEL1@_if+4 zeBs2Wr1#e^HAD7u5w{8sYtx%D8?6koWx(AN*DkMlz`3$mvRnq(bUn)&i>s(V7yzAl z|Lsm8RT2=m6|g!Q$Do^2p!;A?hFRZn)1>z-H1}J%xmM)eSL%bPnQ$~|l~mSPMA=wD zeEn(Y_h}-E76~Vwe4GBZkZ|(k$wSO|Tf*Lo>2|s-;#_?jFg2D+xP2L=-6{3odxY&~ zE|OrnxTU=)ctagTxOK2G8EdBrn_K8on4Fv(OEGFfr;8fSQ}Au$8H%kzK|wocOR7Xu zQ`626ns9rpthwDJC3|elAOuSSea}r)w%?$+n>7YXZb6XB4NK{n@pzYc+4*6TEUHZd zX7&pk2_oJ(Ky4aszMrlKjxR-Qh2iVYShXfIh(WSExT{lFk>{TB@hcnIz+H(N7WC7# z+tCz-g(-RPH8;h)g;NJE^PLJW(+h#~h(6YhggbMv0pfnP@%!uxz8+{-t|Xff(Vl@j z^+4IO+!~nvl#HJzIgXr-HF#H$;~eQBV_mz9-IK0zhy8e|_;Y)pYCBQj1g5jONvorR zD0f_gF~g6J_4lA($i?AX7RtsxEQb1_A8ZFGIVGN=q9BMa0VquuLxUoSoyhH9nHIUr zSTyvQ|1`nx)QRIQxP5}l|oY&b7VPi3{s%X7}MrOwgQxI(G1 zmh;5*iViL4{>jCqC1XwCond?n$@~xlqfG(R%=d~EAv^Ob-+N_yfh&~Dqk$sh0`{sB z58WH=aE8Xk#Tj|$x`)oV>_EFhg>Q+~Eq`8twvqM86i_Jl5-`tvJLr(^sTXxc;9A2{ zqXhIclxuk)vjDg}Ayq$Md*U$NwCvQEomyl5!1!~7Gi7b+B^ARM?%h@eoodqkz+zS#=es1Fq-#Q(de$>|g~B6>zM0y^xlT8`W{-C$RlAU)vcU*NHC{{DS=N zZ-Fh#+-ad{Wc?9elIQRH%^6!8nD%esk)!)*hVBV**W1`PXX@$UL>l!GKlGZI(Mu?? z8>$_>>yKE^awbS3RU#3F;D?Ac&NzpXevXlL}5i*nnTdnJF&{gK6&{HtQ-^v?RXZ}sc+7sz$D>f(SN|!p-QH3TMk#Ug+9ZyTXO1{zzF6Kc zmKM!@W2YLwk8Xp|%~G<1D|h-zwwp}dJN?^8$`>wPEDC)Jydl(?7_KH-G+(@$vCUD5YL}{ui4?F0lnq;rgE48jL!a$eTiz*VkX;qV{y_(a@xD zkRB|$E|s#6^9a%9?{#r;K|NYUQx4U44w|?0cww{yZ@4~Xs~J09Sk1VOCQ<42S`ukn z0-keUOPm$=52U0%=s`a41(IphLoGc7h_Y{4xWZJm2`6lOW!r3OUXtRR~ipT)(+xh^($?GXu~ znvxRD_}!Uie|Xd4-h5}Q{;pO^SPu33xwQS#!osg(C3S^%mL#I=_E__l!MShVD;b{K zgH~jMW#}1v8!cQY+1Z~Qpgil1CG8CNijyP^z(ABU6CaO_fg|^=u(NLE>aX`5$ZRk>*%Z$trbGHDMmwS zNW&K!hdVW-$zBDCDnqq8jbZ#cjl`7JqOAiE|EeK)P^TQ(;zhxH<&9b#(Z}WQFKb zp`UAG8E6MbV3|HhPz8I&8Lzkc^@}8*Zb#`{Wk^5V)OgOwEpZ}Gafk|66*1f5}k0 zg!9B!v8d^29-N+I;+k$7KFgzMsO=YFZ-w`q6$_*|wQcst<64d@dDv)SHT90`7ZZz} zDv%}4qBEiVot?#xtPi;m+sK72t5SV^1M8wnuGev&(~^7re0@p0FqgKVlJ_F;nDN$w zo49Ot`4Clp-@NqAmbHAgGR_5M()6B?r}!ln%2L&sj?b{6*hNuTR9z~Gi_W#;VZL2< zi|kKTZ%a$Kw4H^5$(Fy!2fXG{?tL^E{~nwnJ1j<6cK*#~vtGM|`5(V4a9@p}asSTs z3&o#H+qx@~H1G8bYG*a19sR3DuG0cmWKFnt2Ma&bQYEy6}MvdD?$iL=&K0bN(u6^wMrk%?7i0uO6g*W~5t$8Q04S>Fj? zO&W%VGN8$biW1Gc{f?{H5Io6KJk`v|C<@=UGUFTs__uj)D9Im_GLoB{D+CAz&;zI1 zS&V+kb_Sb=HYMNsTiEG_-^6vj6I5CoK~x{@_&u%vK{qdKBy@jAV6?`yL$>WeKV-#} zRuJ>JUx^!=2wALsOgj_+>4PnA0eb|9s3L)97!AZn@S)oeYPFVpXK7zO^s0>2A}gw_ zk8VpGjejvWV7GMEp0D)7{c{wxm&zA`EsfR3vZ68`#`54Jn7n$eAm{8GU8^Zx2niD- z0pF$Uw)&YM;S;Zp&F-hy|E6$}Z@ahQ{6co|puCjGCA$T2kC2rqbhIy<>;iKxd^*xl zEpC>SjW^QNP2D6eVnfaNo%}Z@oW3{dnEMeI;D?_z)MmYr&6Q3I5rBavgs9+%D%7FG z!UF__bgg?vz$h5qitVJErKw0$X0Q-0VMEJTeVB&n#jcqN2+k zjgm#I#XAQ@)+&3!?cQ@~ExebUs18odNDmf8ENs;;xOucbV0s@q!iN5s-nzf*=Ue3X zWOkemx_5c3bn0WD7WBYdnzrfRc2Qco^4y$_dSVfzi5PS75O9hP(%AG&56*h6e*==J zQ-7&v)d+tCMRXOj^$ocdEV%aQx$#X1;0Yw3c?F``JZ`HO_c@}Uu;ubb#m2^t3O?t~ z4aU_Z;o5d;E9PvtfTsaJChlkzUZ=i>YX+2qwK#Jfn>KdGSN5tw1bO7z=z481MO1bnS{)iIESrfp@C%P?$p)d>(?oG& zWtF+G&1@+3p|pn4tR^JTqj?-bWlmE{f7UD^WSWZK6Q=E178aM@uir6d#3JymhwDhP z-H%7^J8z)mU^D+s>12ra-nvCBjfjM51!!6SIivt}++ufxIWJUH%k;li54&FLk=K15 z?th|j{l#Tvj^m5zOy6M7YhMUPy-;Irc|R7X+HUpwzLm|DmhIb+r?6MiXztsPpCETe z2J@|XbE-`CYf2nph`;WZi-ezYuE%Gm$M0zGMP2UIAZn)_OXQ2k))TF!beESr3Z~Zb z4MZ%AoNDut;#<&Dk%?mq(&KKOKm@666))uG;$esNTb(1X`;XV)pq9BlBH(i~EL}^=R8C{vqI=w!Lh8A?ZAVQmzOrXsG<} zvvbkE5VT`k4SSo;#NTvSL)bCcDK86mcU!)Oq*Fw;Ss%KLpIIG=&_hVt9Bh13y6wwR zq6L6fjyDHJE2EN1{Ci}*2$uCbf|egqcyAod3y1K=T_!+-KPN!6*VmmGHYPibF%Fcn{j#wZm#;=)E-T^$`iJbn_pJ z6-l29riEqncMTs|Hm-bOgC?b|q^>+k^LcVK4Td3&a4ecS1DXSjL6Qcw@2q_zxyG~? z9k2*VCMiv&BBFcN?f)RlN8!89dr2E3igc#ujPLmSrHnG8wDE{sb<-q+OAQ~H4K3@L zYEK&k54Sra1`}KnT#&NON4(}oJg%yD()74tN(-E_U$C7ArG5~Cx;^f1iJskqEhnU> zGn01>@ej8En*pUd9GTBislRrPVaV(bo!D{Z*UL>1$IN<`Oy-F#PwCOPlcc6+wSW*= z73U}Sx^2uG5Xsw*?P@D{a2E@cwO257&4WH;@0uOCH9m{CU&lCqYh0Gu|8z`Wy0*uC z@=cdnx3^q;-NJ;hsNgT7H`x@2-{=Mw>BcdMj=L@=o2r;UNleFFS^0H4ML!`1bGlHd zM(sl3=Jk8vGA>BG!_Y9@Vw!=~P`l2es?N@k+dAvOx0b;3U!I4)A}By*}_EpJ7k(oJiFvO7yqxis{u9joKQEvF< zs}`YAk`#tGGB|p4-1R%BG5XS6Tm$C%H6Pcnt*`Ss zC&jtc$RzC5!OtC-6Q^7Ed&yj*FMgr`s+m*M@=yPm{x_IJH>;|;DSeEP1~)YSR#D** zS3>;phJp7JW2sT=*`+15jbgirFFD6H3y{35D#y@dUn2v4q3bor1mfzuHY>0{O>$cwYI{?883hn3+Fd6%>4U z`q$vBjSTNUd&v${C9^4BSLyMe#2p9ja>nesUGq6u{PZJga>n7(y`SPD5*F)L>`F6X zhD(u!xRdAJ1IsD{ELTMima?(HH3k$r!(lY2C!- zY_U_-8rsiH073uyIqUE1zAZ24m2MrV&fOP2v3j2(e8l-Y^W#+OH@YtBW^O>AD&DVg z+2#HFZJwwkUxL$(^Tr9nt-VV#?c943Lv4Mv6HQje`EE0Nn@8DhS;5V%L>?5u-JiK0=$B4mY zy$vTC2320q=Vf}L(nW`=@>$ysWNOq?n!oluzu`CM2?Ygd-_UYlc{$X1GmhGJYL9_V^+^h`&6 z@X}*CnDem_xG$v3ruK2|>d*MXyd7NK9Qnnq<+PQFltHyy<#!+Y2`DtV-a?n_I<9_E z+lV;ns4)5Zh5qRr!*`eFKim<2UdD)V{MuX2qnFk@5EnV9SICThI}j@XO` z56*uPdFKB>E10c)iAfMyW3PIsuhXy>!p1{bs3P>Z%)Z%Fo8DAhADlOhz}21}yZ>9= zck=e7O{qHHZoiFUuDeS>Z|t6QJ9(o9FP4y%^*9`UjtNq+kcR4F{9hX=XHf!hbX%v! zHL}A20{->O$1D6fSI$O;U4L^;r9v@qyPUWw7lUeWe;6IZ@v|pvJX`9LRBn0sMW#%d zPYQ~0+JYCf!rU$5!_E$*qR6h1CK&)+Eh3;YhK>HGgrW%S(p zcYXz#CY1qJd8nf=m|-j#DB{&$R?n8m(uKFj{p(7VO(1Co^vPIMvckc=vWkL-HHc!7 zF(usP>Ki;WSnS#Xpil7Rtob_GT~nUj!P7l$Ul_=!J5};M0Zdg0RNB5dX^`katc(9& z`$X)?kK0X;_}w62Kc@(~Nn`o#ZQDoxYnC$3JU-T3=(xjdR@>0y+?lNVM%vUMH%4|J z=#}u_k>m9BZ+YeKf&)K?_yNK9zkdLH%F+B!%z5Mx{|wmKzqxRf{nv@>gHz*)~9Hh?WIymO_Wxa}IySt#sIvdiWa|8o#_(=IGS=GF&}DfRZJ}G{OO5 zB8Y5En@3`)hp>rC7r3;)vn|38zu!eh+=J;M(0>DE#$L0=pn;V#C!QQniP9hiTieGD zKEN8?;v&w`l@_g`W)xonjXg@F@fR-AFR-BrcR0zLsR0L_9K}kMY0Zgx+GT?>vxt^y zvl0jElnp{Bgg&?Jx0H;VQLI3H>&L$3`1QHHpfZcf(Ct*xpx>vHB?cn3%Vs7(hAQV( z%4y+olT2lo#_HKzq2f(J-&1})6coLsvv;$&sPS}}+oqtfXx*||XaWlUT`P3whBLE% zuC>K`Y5eeItaoY@-%1;Cfb02C7zPZ@p3aBD552v#l@Y@k>*YVo-9IQnx(-35Ex(h}81Ceg^4GPG0k^ z>h#J7H7+{>4?;aaRxMpP7vQnv*p&GqDCZ&`1%=?IFf=+M?P6086>Uupg+cCCcL3U1 z2vD<=;*^ZT4q%?O-7UecV1jFiLS>vh=n`Jvjc^l7tyo8>zHw zbV)!fGdE|3Cz`NgF>O^Vre#=a91SH!B6M(h_Dw3XFvdyQs>FT4h0}Y&JBe_TB zUC%Vs0n9@rx|Fxak6XOSX+O~dloC2Dp+sH59;7ZLpJz6B(VpD9ise!r2y>qH>vz#( zoW9tfK3WKuq|i>^+GQ2)>wghm=}}$npfdCa6;So&Qa^U(na)VymKgHFO`ayH7pGnX zElR+f54H?**Y+K!fBblyrW%NwduG&fRhoC;fF&=F6}$#&+k67Fi3ZNIrw_MmE6Y}pv0+Xs9(Hr zqR|Y;o9Ony!lIn@B7QxRv!ijD`A0>mHt9Q<2s-S!;tZ|v_xY4t!WQdtEvLSo%eR8l zU_?uKk1=#_HPso^tFmXpn-~6#L5Vc~RB5|sVWQ2Yq7vKgtY{l-%Y`ipX38>Gmh*38 z(r4Nmm67kwGq!s@FV1x+TBnSch=_l8zNBQ7B(%8OfPl=i)W*|Y;*g%@0rE z^1!X!t)m&zE9K0RaE7G@Sb}iy!2%#)mRdwYpfN=vu$7R-9k+K5Es?yRE^~%%IK553 zsy?d~NSVrpPOgrZt3mUF#0qRFc2IUni`*86Am2uE1>Y&V?zZCV-=fdZ80Bo0VdwPDbj8%ghQ-)+zha@scD_>l!sk##Z%RZ`(vT#^Ltl z%H1BKz|(94kZvM~qNJc0zjEiGh^qXlmxL?anG8k+gc4eBOz|Tu?GQakLPsK~%px+x zeyMe6=L%)|CNGWa5EYJi_-ZG#b!TimkHP}36<<_V_S!ggqU#_O+l^@d*3msmtg3+G zGSyKiK3m1jJ5EXo$DRW9vZDhj)hhQ_(OBh42CeqdpfpQhe)X&GyRQY8a z^*FnVK}C9WL~4AoTrU?5O8PDX?1n2s-(H}WaRK|i4xYM<}fzdBsCvJcm(G+!g(%q~298`X-qD5hGu=&qA+X?}3|Hy#aryZL=L|NxCiQ z@OtQeHA$aw5m(WAJp9$MBU^dbG&nNGN&t+_i*-rL$||dK0}tG{4fzVofYXpcCU5aB;&{1a#Kuq<&*g~VTc`N-${3F5O1Q&PU%jy_lb(u9g_fvMF=2) z>wvp#;hCzo!CWDS(XZkCdTRrRBtv5i(DlJ=6#6HTSsNW9lHG(TFFV=>^VZjcu0igP# zN3`W-gO;U>^>;0a@+cC&&gS_^e=p;;tYFOO?$8UP%~;FpQ*|NWGS)S5Z2X79qa6(- z>0JL7#UxkXY*x&9(+;_c$v8AEQ)9k`mR-*)>Fpf3oDw(HOuI3=mr(y3*lnD$7WMk( zV$!bsbo0h-H3sHSiRS*T4=Fpea>dz?YA?Zzs{OrvUCRFGSL+p%Im9xP#;bIf9;UwZ zTl=26nY@{@nY#IQGi@_{^IA%Sd1FX)jOXUqz~Nvpx+vwDcw396XnlX*u2n~qG+@y? zC4^sn!rMf2hbyAJf^98ZC}kenz29crRBE4K1Ew;!i?l)>@pmr?TFO5nkBNu;Z4%}9keX!FTB+RY#3j%q=O9%fg7kVLOM(Is#r>d;l3BC zwa}D34DaMU3VDxy{sV^BJBZ)NEs4XMr;z=2CAsmOSHq01OiyNVAr_vJ6gJ0OdmEqkRzkRL-f9$-7CW_>ahD!)F>Hm$oy zvq&h8Gvo{xeWgiv@FM)q!MQ)N^Z?{P%GwPUX#w8m&(l<5=8I3QClNt&^$Thr zp1d_{8eQ2d`W~OJzQfPMi(NL<|M+{ zz;Lvoi3xjSOKqXCQCUiq+gQ&N@Fh`G6Sl?^d2ugI5q?Y=8A$c5hZzZv6V>?@r5Z!Z zp56#lV(IcTD2B8Jqe~jFvWfF~S;4oNIdyw8d_H(M>Gob>$t&z#Px)RI$M|+LJ^6cz zV0u56y3rOnDySNKKa_`LAZMA%=e!v9@nQk8a3zTctOG9ZUAdPIyLv6B*ekm>BF??M zeZ~XA>qU{jHSVACI!nYw1zkL=3qIpvhA?QwUWrdDMtpw@XJYXb@c`?3$Ff!ibYhsU zUuRdX-hkRbH>Tang=_ipO@E20s(4gEac4E4PwQAK<>ll)|Jn&zCxJR>q*z4kRhDmM zsWZD~UM#+(6&=QQ;?Z^z=Y4EBU8!jvVPsKY)^5U>%7bc4(sb=734#QXnf}RL@s#d3akQQ=jqt^p0NKY5OTBGKu2z9@bj6RC0-|ozc zX@mWn^{|Fbr29`72YcNJ%7UBI)2mCHD`{z;3hI%6nxz88!LGkq*U*I&23rZDMvPg; zp$%6^B5NmqE;--YQ7)r!*w#dCl)uW`pMy%o(m3ckpJfIVrK3DUH5A43kA)hM`ih6olXau7Fb|;N+26Ku1zE!BoSedbt=##_^ zkH*JkZvz&Gzgiy78*bNP$&ca}->QyR@ekQnvIUWd`Z-`mBlQHh_Cqx(G3jh|#<(i8 zgRJRbxoo|4MevDd7Tr`s`rOv)D;yl=M%B)ZCNe`tYx}UpD!yNKS4;Ua`2&sgj0)8j zF0qj;)7O0SdZMfv4G$axyaaSx@aF#Wdr+Ku^6m~jLUz~q?Wr6zS1^}zV|^XfET6d1 zZ3`O5g)F9>RnM)5${b|yuyu4 z-q@2xp+UQnf>^D(P3g0ZssUA3Zf(evn#O}j9q5OiR>wJS*F7ljyMf<)x}tQMz}_d* z1DV<6n-q>-)Z?wmS{&{d6}>jf-=3A5rQ2%hzH$Cf_S;nRw}FeQ4?}OE7|TTg=p1Y) z=qG6)AwIq+MFadSxoNr}P7Y=J*;d^FhKk|OWwsk#Jj!vP#7M60;MpAmU+i43hHQ46 zSZZ>-NySh)sVLnPd=*?QS8uHL1#JCD4cmB6?ENn^C<;W&)ta~A3Zi#!UXsQ@-koJJ z7X>Q@qNN%Os%z}{;BhzKG6X;=1@QJrH2!JJL4->ezeB!8N@dE8x0+3Wk(*`GwY@r@ zb9!%RW+qpKF2gm`HP_Xp7?)+Mx0wE99rXy+bTTp-4rgPTk^i$^o3K-3RKvtVhDxt< zZj)!gUwR=%vgMYN?lX$BFJf6yax7kGE0)eOO{;sMwtR)tvQ2rl1FlA+XAKv;Z}m3$ zsE~G>W@%f^+x}3T0LH7?tH?4?9Prl0V)%?&L}C?Cn}+1rqU-AYb1FbY0tz9{EEZ+) z@VQV5gc=bMu1lrxg2H#3RkzNUfh8=&l(RPa==^p|YOO8gXK@GhbKX#D`Ic2DB|={SL6&?jII%bh(H%%zWhaey+Yt^Ot!8~4iOTU<^7b{Mp=@VLz+%ccZ`XPn{?XRC($q4*;68;mmTooG3hP@x z-dYpEhcTrDOa(2exk{>_iQdEGpqDfQ5~T7( zt@4b3T#CNt0U=e>qJTsa7z*YCg?lynQWUj_J&+f6whhz53QU2sSn}!$5Wz$97)Pqw zlwcdzRupahdpP%P%gtJs z_r|0chUA>4sm{ZT!;V01gNLk!bA8FrH}uCIi#fknHa5)*tnc@&qcnR$7g@ABt*NLN zwlwQMlcyHYtIT4zKOU>-w~*XjXXP<-&ny^apC*;|8paoe-vSlRn>RXf08SuJ?WNny zQ5<9}l)OKDV2;trPmvN95xnd9?D#+b?4l@|n~Ts6iM}16+M*p@RFECWkW!k=7tTlE z<911`5cd_?g?>rN2VP9$|jE~IAmon_gU3LEkS$c_&- zQ@esGUpus}llB6on+Qjt@^Zfym|fX@Lwyod6`%5<4L{>wgcm{)J>esVAHXS3``A2! zMR)gpkRtPAmfpHU!Hj*#S7w|6Kx8~-b{z|5I&5SFL(bWl|9 zoL;5IxN@?{chYo^ORTyIjC8=&E^R7PL>lcPncXC9jI&~!1@j z4tZNd-DL^IZ9gObG7{?z2)wwv*XZ0Sf%`!8&zSZ%@Cc^_+Nt{HAmJg|I+V63JZCTR zT>{+AHFbk7&~nMacpmQVs*@XSC}NsZCosA49M_lE62*R~A!S@%mKwJb` z_*Hp^=OYodnAa(`SQr)Z*40uDbY-`3wif?V2 zj}TDtmKOjxxR(ntlKg+yz!MrISgtHX?fXqGZ+eKz{&G$z#u05M4o0s?+}V68TWh^@ z-=a@~<7D`9&t34>&pg;%KE~0d0`L6L=q1}7&Y*p#9>`NDZGlT~^MxFHb$p5lVb~B6 zU*AfQF>Cb9(qQft1UJ$!K1s=_SKqkPZon2vw!LSO47}-Pof14}94%?yYsnp*k&_d4iy!)?g_%UL-b@koPTlCYMW$jT zlbtEi?;J~ul@G?iCCxvg#)xa|994E^Z>`^R1W`@<*t`QMt* z|7Z-WjNkr0x&Y5n&uPx;e222_N0)Q!%6|0x2$LOg*4C2)u8h8HJ2r>J^LERABU2sE z@>^8m%fV?PLA;s;GymZ$ zj=r<~7*L{~elar8h4)-gtR^BYO4Lz+O6>-;Q>yIeNIm0{y-5o2dFGR?3zVh_%J3-1 zmJb^uE-_J#%RgS7+P<8ze(>qebLrYrozZf$2uzr!Qm?Gi%bzdlIy}3hwW|SCSoSQ0)5axb82TMFO_gzy1<;*G7*1XRr0muH5%?`nSw&?zi15 z!46?cYJ#FdDiTI3>760UqB#_OyUOLF$akk1)PS&BrsDo`)~k$eOYX87}qn0HhZWsbT3SyLFN6FBs2= zJvr%E4ti7GbE)rsr^$lke?{^?+sr&-`SA(4i0+fnPN7oE#Rr-;=haFlc}Azgx^n5h zkiI^X%EmqrbQK+Jf3T{go7my&D;Gi*Q8+nt>15eOM@Nn?COlE)`Dbd3t8D{y$1g|x zVjIA*nG9Z&$oBqn(IIZ7RB`lWx`j=IdCJOzFXx|Jbh~~Q_bKo9Z4Bm8?zg%DUh^l8 zj%$%SuN_^Z+|^5O{CXgeHD~;xp1)Uj3$EJEy`SZwO8KO) z;5)YP*z{O}p>vYT#U0BMMj4B~NyoSYZkq&|mvs?0eJ+}i<{xSDd6v}?8XBP(WDWO6 zxX~tJZ?)t0FQgi}*%ND1g})2Jz8GBnw;hpW)^!bk#L?+9R}1^bz%CbX6+-c(f9&uE z5OdfSyx4Pdl|CMcfWXM-FJD(J!(%?YdbiTycx=;cz_Ab% z`P_=hnfdDT!;O0zZX3F>lGW$6Q&vv4gkEJzyCFWC_o0Kby0(*>qlC<`TDaAo;!^P~ zC8YYj7me?#>Qu71+yvwOdpJgsqMr}ud^j%2c9+W!`dqzuvdUwz_TaZ_R;BovvNv6A z8_pAv5QlKV!qR(B?2fDb-0Il6Vs5}F7nNOS@IhhrW%h@EMt_KhO|w{i#@+VgP)OAN z9U@{Z!4>#QZFKF~z<-h>EPJY+K4+9!>cZv1qT}@t_dw;fr6YaT|1ZH1e231o~2f&Vr5EYX4M0! zA#Z=~<p*Jx+;f2EFvJ3d|D+CYZ`>Y*ZA^^O} z!_-~WntPs}dH^PO39e+A-bM_|rAuemHy2!^2OUUhXvQSNJ+i+FRs>G%iL>oYRlfK} z{#^0Q!^7&H3TMFKIi=n2GQj;Eo1rl0+Qb76xz{U}znqky1(jK%7+;NK%I>11`1Lzn z-vGHtI|-h+Tcv{|1M$FGMz2jWmNpmJ#f$yZl2SEQvOxV<_w@~R`aUa)X#ZmG18_9m z48$wC>2^>MQCsgBtGCC*hg}nq_psZ(3KsVEJ_U9?Z|PN7ii;P&dc0=kOdl#(-XlP) z_Urs}MuZ?$h2qDQA5EM+3sF(M5Iez z#OR>L24|vjQtnS!YFK#QQ8I^U2SYzzd)1!*U^DC1tt7riFk0_X3PJkYV?^*d^xbO+n`w|mlZuvK)R#ln*x4=#UtR&u2DE}j5W zL;oKgY5TjR_*}Fb5>UhdO_~`*CQyvbsxMbGQk^%ZpqJ649dQPUOOF>*y8h@vfGSq$ zIRkXmaXQHfB?92a_JUCKuc66!aR|;7!`M?l?W0^=BD9S_6S@7ciXW}%!tb#wd70rx z7Il6`CZbC0bS#uZE`UfVkEGPB`0?2n7ZW%@(Eu6g;5)k&99?}9Fuw?|FWj>b@)qr1S%lgBUIpfkppe7hHSSRHR5QX$UvJL$9T zQliOABwO#;Q^`F-JJ7HSvlf${#KpvaAhLRuKoPtvPUMA|BrwSw#A?{)PlLd(PdbMB z0+-y1)T?(`!;JY01x0I^)#9h>Ex4-6Z0pGP806&>R*)%TXKyw#czz_@s6$lI;a1`y z*Y-bsuDW`_?&q}}Jcsmaajv+gax(y+KpZ1_&pG@@UO8*%F&X7j@80DGROr;#*+$R3 zmQe5mlKyFLJV(IZrtAXIrEV^ltA)~E2@y&{H+MXCM|$^qQU7g*>W$w z{o;l9cw>3bs%QKk>^@hwbOCGt#!6S6XIYR5&ib zy~1jmWckLfKV4qq^!#+Ce@cwD31>TD`R7h<#Dh(_I+Ffg_V-(OEk=r{oTB!dT0@Vo ztTrT%Ase=z0nbLB!-@TU0D9lUh$U&)pW}<@wLZ+R#T@Nf7aBDMW#!hEHnwe z2so4j(zmPp+%h{`2O(W1KtkF1ZP`tjc>3o`v+~0qliq60m-W;3O7pbOX|bR(veMpEuVhqu z5g2Xl9#%kjV2+%Z&J0b?*bIQ5h#fCWOTSvw56U!b06$478`xD);@p^SrC0RZ)UD+U z1{8}zhPIRo>92kF2nMKh+iifSL9IRyjQ4ugA2H%E+N5LqxqKg6qbBCST1k-~TIgnM z#Kcv4sH-o)X9U2WEa%AK@YzTJDSDYccE0ePVR_2Xe=;*zP9yAC`s>ZXW51rZ#N?X4 zF{*5s4q-6PD->M&w$}A@^?2T=gfkyDgzoFVC(z}D1){b;xZEB2h~j3yJ5tj8Vk7Lm zLK+E?lgs3G+$InRs3b4SWzIg2ZqO)ZR>&5A{gY@u5t!p*9lbPoR*kWI?p|+7n&75N z#7O}KhA-4DCe97jjuPCeuw{&Mqw*70k^r}*OjUQpol;sp^AVQ_Lq)MVsW3sxc)RxC z8~2~tHOgaT5hwPlOy&x-s1JQqf`w~@Uny7_O%`kKbd=)=Gy(Gk|X7ZiWgb+ z^CL!MwdsTi^=Hp45(r(D6aN)3oNddK#s$xu#ofU=82L8J?@~OuzeVB~goT|4W2{(Uf-V!wFTDF;4))!19bM(aS zF0FsL?ekBwA1lSrwY!{XrB`Me{m+a5lwqu5J9p{p)7lWyPlcMrvaiJ&-is9lHD~%` z&J1chh@czk99mIEQfbd}c0+)ttje>stby)K&rchOi-Dot*Thxb{3I{2R;;~n2?I?B zYJRa^5W0GCG!Iy>Pv_cKKaJ9UB*^Yk<5(rQ#(TBocY^j%7{n$J$?^twisRd~E zm%Vwmqu8gnvy8P=z$;l(v@WW9K z6-A}qBNMnFj9jF_;8D9cJKN%$_=>c}0=|2-F9IId+Kq1it5~Q_I!jollR{MVuCI^F zeyB=+_e<;@?1`ALr~zbArOnUA#-_O8A>&U1A#kE0^kV1=1RHb9zvVZxG)9K^(?zf6Z_w=p5<#ZOlw~S+N1v^uOu1?T-%Gt0^>1jK;BU?gN&e!b_ zpPAHZQ>?xeJ0E8jEx)H<1S0-YjiD@vmbT{-OoNh{YpfNv<4sk0+|{N&TueYLj~hPeEYoDC1W zb)jfjJ;%Udqh|XKB~^7-2tcNh0uw%I!c|oSRE*25wm^Hc_?kQ)T|6MyOCi%6NK6AF zP~m8lUhm*Y+wH_ihL;R~Vh!kR%MY=NRT~H>T^*jyy0n&d09;EMnWh zGVHXuxr9oc-0WOj5n3L&x^vS?TlRy)^JN7%JrM?d z-C>9H_uLzj(IcallGk;V?Py7uW)8<}5Vz8_=C%mN#8`mcJE6hc!@6Nc^OCzewlhl0;}D*4_0Gy)&}Xh7I1+9bI88AGz)k=Os(FAaF|E0GdUzQ>Sq^wL zpYx`^@<+vCBlq!+$ArnTu=2iQMj9+BF(&FGn`m73+R{|j>!j$qfPIW0`5&{}An29d zJL~9YkB+d_y`q(Mvc~+UKokGr&2ew|H2gQk(gKIpm%eFP)cF0{$cww_z3*L(cfO9g zHwMsXX?>w80idocqiI$V($CT+gCZWocv|8^dogxBdFM-#y$4tUN~@lWwip1u@(+;P zNV_=$B(s8lBk>a|6IS+85_$$lW^xGrOsNSMs@4()P7N&w+u^U%lJ%tK|!} zGupS(uW|3)x#(i0Y>gkN56Q{!Q0uEZ?yG)FP&hTE_Iq$X?!C>JYvj0J5FEWUfh$zZg7jQ%KiwK0H3y3z%cr07Qymry zSgXt&A4LgGx-8(0>y)WCppscb*>0z**TPW_M^pFfva&s`qJT z*&5yheBX~BuN3^U6#V={FM=5U@aT9M@zhzD?fX`}X2+@`mi^R5W25(lgTp9Y5-VYi zU=?kyQRTiNNL+h)W5cxBi%mgs4ya}MnJh?HvpPN#DR~nOHMKX^fB*7Y-Ko(+RX=@- zVS_SW@lTm^ng0a;c(=r>4HQ{vhWeDnr`q$Il0*tj?Z!+bSyH|q{Z#!=S&3=!|A~+I z|0Z`FHICO83;y3!nd=s!KD4O+I=yeaV!&tZn|~bK|7^kkXHM(?iw2o~0B}tJZ-6p@ z*bVrFJK00X!>@hjefI_JQCagp`J29NiZXDSSD~719EC!GMv(~u`5b>}R8UP#c~tJH zeNR&CzdYh^xo|3w(ir$-@%v510KYvJbqDozj~s5_ph?%<|l9uzyJWi)84e`{@)hme0jVE5Q5+~EreV{V0U``N!1`M?X{zZu z_ecW<3UXlNVqw>$3M*g5ql8dx4q1!ikGVx5*7HLMs9f^oAG30*$@L>P-51pzH7C97 zr<8;r9&c1kOJi3rETsFJl7OZ|@BM;M?C=BjI;yI$*7L~^71cN zXN&<3YKnf=824-5nbxTwnb304datHn&Rn1SU{KTNp%&;i_v zeD=DyION>pxT;V6v`o!oVjEjbMP_`1#&2_b{3^h}memTmBH<7W=;y>9zl=2faDFt1 ze_PWO_osQ+!!IV)nMIsDcMH=8T=(R4!l%)kg179ly*eiuQw}f5QUVW(g}sKow$v8sBQe2*x(FcBM35X{yba+~XZxI&%rleP7e#a4v7 zqZ-N5k7Km5ZBu%VZbE%CCw8$SiMmFixYs!U6|+6=O@FVbr~*a#LLm72Jvukxs{RdK zf$8bH@+yIe>yQRq`pXKo5@&w%o@P^#a!Tw+B<(XZe#cD@zYwnc_&FTiAN4`Qe!{)+ zKOpQ!VYft2Dyx=u%34fC`3c8a-bil<;_QX*p`D~R&);2V`=}YtsN64!Diq{)Y6hdMtQ*{F_6B71M^Lc%1{D z-7`$3?ZhA5lkLN9;ib;IVgdcBq8=;rt)c;8D!Nv(HK(t}4c_VreBl1(^X%!?c9W?Z zbE49drVI_g6eY5<#%y%$sxQD=HFZ9Q*5@)XN=Pf*1{k00)>7^2N2f9o-x-taSG@dy z0hH=w|4dHS$?iwa*valsF3`yyKrYkCe*b2*B-wSOxkRgtRE%E7-}qfH5)-E%6;3fQ z4ERUXJT()Fn4`bT@D+RuvpZZN=G)zp4^{>EztI4u;;8BSPZ(aX_(DvWcSOSH(9qhIL7k&EL!&5@(3ydW)nasIu)TOdlGyI4a(pE)>X;%gmHgu5bzc{)QDTW$6zzv$7M z;D15kVsGkM-V+nQeR7J1x3MoOr$SbHT=exOpw|rYjwr?VS(i2}f%uU+o&I>Hu07{} zcEqg83z?do?3b%Fk zU)0;@-d9_#QdL#(Tk;gCPga(!Ei_U+b?of?+P?v$F%L|tx(6F!z(|fWW&R@&_&+Oe zDO*4}=`o>dMvh#Ch_3?w5N#O~ppc3LDRAqPDGZ_Yo&Eh{)*pB{BF`)x{$GpIxJ?ND zSRFeyb2kpYrk`f1{L#>Wc9%x`Q{i-oQP#NHw?(RxO0Cx#l4!M;cZmB6+Oiq*7x&Eo z8lSriX-T}+zbu?LshOC%Qrz$GjRrobF?5sw#Pc{tMKz=l2;W4HW+&Xjsith{zx+^O zv|JKN`*rO2l)06=pvOwQwhzuD@9diWtdfWN`#giy=@@7-oKk(0yo>51Igd*?McP{;|}Sg zOBsa*S8g6nCu|T)pZLsS#YRQqZGMJ)^?)ZTmd#@-CE};HG#|9k?|6$GwU^6-TuD%f z=W$m~Em9qBl}4;hN*d$(ZRP5p1{gm>9@VfoJk)anLw2^R+AlSJ8XXfnMpGX$u6xgI z=vc;`7jc$J9}`^PIk@)hL6E*=0~QKm9nqPqC+CcxZ?3Gnn+?>(hM8k=r;B|%{&E)cM4Ob;v{AKw{mv0qnEN7dIy7pfrJwAa(6cLk1(4N1Vjml2ss>pA0u5?=a z?x~IMsirohZ+TunOjTJu!(;yo*nMs=i6KQP^S1N}vpm7sq#ApayCpjJG7-&2P*g26~Tf^r1uHb<|&6`%d@+jBpd45>pD z0F70o75R|+k~<)M1kLWk^H#Dju7qUs!GKPkvD*S5Pn1$|e-@YFGH7P+X}Mf((L(bXx~{?@0(f$xWLGZr25Fj7}8^ znJdZyd0RVkWq25iV+kDqCP z(^ychSGbhmPr-`!AH4uSJy(LAVB5~gV1sty)S%s8HD<5CwTIzU_;eHDiXI=H^`{*e zxRoog+1xfKdQ9UHg;baRI_V@eDMxSmWabMuNnQGfg@*>sR|A%6m_Ok~s}dT03RT(} zH~BKve*u6L?WB#Mf{le2T{?@0&GcP!Z%X(^)UCO-=nqY(^Ii_bn^H1RxB@9t(G!!w z?-2xmxkNxAp|dSb?pbwvSA1L$wXQ2>E z`?34e8k-uzV^fBERg28d;*RM+0K?eN2Laut+B`jHw{+e%;WhD~?q| zOYEDRxOSm{j-WcbvrjZESbRZ59u5lX4d~p*N1yH}ZSyw}(Z4E`*b^(%Q2cCJkav>W zp8ja4jx31dfMIL6BYPuyM zzh1d0`oWDkk(DW6z+LE7v;Yrb^Xm?NuC#rzXNLWpMt_oYf}oh|nUj+?XZLJN;rF7_ zaEY;(MSPwpvoN>Y_L!yaqCaCgj_@g3|MtlT)nj`!K&f(_M^Zf|7vCQwwm%Z=?5jk2 zvn7&1q=n`q!hJ$NE{7MDC3l8R3FFsAE-GYNjV=S=5Pcu&8Q4%7!it3dtB#gAck8WM zk4zfBwvE@EIFy2+$|grD8y@JCf{)IRhG^30?f$5`XdbBqJQ#9YBgRSJk=Ws^H6q@{ z?l6c42bH~M+>&$F&E4k0$ta`uc?r=%4SDM&^B<(gnp$qf}DnR&y;E`1It~>$SaHo+Af;zC><8^;! z81)V)Uw`qRE<#Kbpa?tUn3M-Nx;>9b?#>$-IbNG4xv((yz zf9jGw034J#X(RCXA!zxHxTGbuOYZ&CoZ2z9#^(*zFCJRbM2KtA+vR(ae*81n$2Ws( zcv-%9%wG(fod}?boNIrcd@gb3UIa}X4CHZ~wyzPlGO=w>Bp&Ex7Hex(XUb)I1DeM+ zxUI?OMd1}{|3{o?a8ww}(2#T{KJa}93iKVghE`c3+K=__VRG8R30RBOcG{d|ILibb zu+V1W(`-HQ10;uDeZ38K!Rl*xzeg~Xb;H@50^?{XL*oYNHToB=51Nr3s@J;;6{{-y zPfwFFY1C23$XJDrH9k+>ugH#krq$OMk{##8pjAAf6_Kz#{`1v@y5UCMV4$AGH1{H# zJz-%}`>Bd9{4#R#cjc&a-X>eSV3umF_uX-=GD5Nl_fUA%cidRP3sc4d7UI?4e@`E9BV&g@~Q`7~*!yB}hDDaibDbZ;vI8%P3UlEGNFlIo|O3c|lVHDVPE zY8t}&^w`xBG9r|lk`$^0B`H&hCwa5BUUm!#wvQ=$wJa8p>f@AAvkMK-y>c-FNQ3MC-< z9IrU`dbUOrzUNbSr0{@1zaO8~Ju^v6lzdc8(r)nr#ERYHVm9)c*S%2s8RhXhQR{34 zadO~S6~YFYLtW&b3mGFuHHI`5KdJ5s*Z$@sf`Xf5_%}&Hau4h|I|gUD^Y@C#7LUI( z4WvJ&Xi3I2K)>WH{mpe(4X#%|OfI{H;}lq$>4cSDkHy5=?Q5coCD0#13OS0*Ik?lH zWf0c=z4VQwcr;KMb(oU89$dnjC%s+us7DZ++QK9i+JAuy2IBqmizL7?-2oRw@|x1Nt;C> z#QGCm|D&%~LGB%c>jSR?Pk*&R+mo~mU^_&2Xn<4ujezpolvapqJ?Q=t`m@VRe0A!+-zWAS|#!15q_W3wU2Bll?Pyh+$5ZFRnmF! z?zqUzuq|qDch}#uBbF;^qMRzTLNkyI`wIi|=(VvqrI!uRbh|`3D!;<9Ll< z5q}oNdR0u#Eyz{DOW55XH4jngk2-^f%WGVMESp!er58E@gA0C8>8EjyySs7v7Z87NV0X62X8-M4(a&(OR(Q$Fa(xol^ z@Ekj62%lJ7E#1qttVN#KDw9ODu`|5DBGX7q^a0C>_LjnInIzvVH$vQDOuI3p1#gJwd^D zN#Eh)rj2Mk-21h`T~n(~30v1mretA5wQvs3T^%mKOt9pYD6%5owUKD4sqA-imh)y0 z1GI(j__*+L!c5?h)8#E3@>hN|lF>^WBnBQubT>VJW5(G?9DLc#XRr6^!O_dbSOqQ+ znNFAkr!F!jEoQ?1C6f5VlzxD_q#bq4XJ{_u|kj8sTo;W9nQ$A&( zS@&nP308|ebiEME&@D6TH(nA6I=j6A!`617n z#Q~Gyz?7!n<>Wi8*)3Jrnb^eLs0m#n$p3(duy^O|MuiMzHN}TM8KW>f4K8b`tv~89 zX*NA{FU@;7r@>;RtDS|$y~xhl-i5zoik4r%sgT7oW%QCcrUJ}43ip+z_|ol^32(0t zkmCx&y!)rVnQta;S@i81af-*++s}X2L|>cBzz*uk0B|;Kn`3s+vv7thRMdAn^RKh{ zHKdu^?7xA;?8;~<^Cz-0aRa|PR;6_Iw))-Ip8ee#VYmE|)qMBd zi~!p1X^@uRnRJHLTX4200q`Hw3v-lN=HV7lS4Wi}e|Ij!C6kG$dOD-}3KAla0Z9lo z-Ma}GtYt^MUzRbt-A%;O@q}!`;H{B%vqC|#+n8#d-V;JX6EYpNr-D-qxtd{4+vf6* z>3vHaUjWs6VQzU4osUT%yO=b&<2NGy7M@fWe8}VU|vU~Dl-|_*H&`I{f=h}b zoEKx_D;`e&4PX!E@lTk^&KC`kO)YH>j+o8krkw73abRki5%mFvO@NBXyHU-#-CiP_ zNV^1AyUJ?({mm?+Ci?jQEr1gH*CqGn&GP&8r;MB&#uIS1&=3~Tbz(lj8Rwd0(qwjF z*W_tLV{G<+`c`hjTENJUY$c3PT{)h!rHkMEuG>`lB#7x{}V(Dp>?P+k`SDO0m zUN)i5!Qaw^e}a3Djf?yZ5LrPW5ghao<%aq9D~2XiA_LJoOc^!0LDy;S20@1nYC_#a zrd6^4_{{sS|NoduZ9u?;jyp|f4i(>IP;PE57H{@`C0cOP1IIfm#Q#y$g4%+HPGHMA z*b4$P!9|4pUMsbho||cI$`<;sYTfaPAO3s>i3Z5)T^r`#@c-!vBVP{?qr$?$&MXnR z<@15C`yBwaJ#w?wsZ$>QEhPa&z__RmSrXj^d2ER6^iIhgKVwm1&3!4UAWGpW{M?6o z3b$Ou5ZsBtclWv0MSac=Ot;A;7>FZ$l5=d)X_{h&XcB1IZ#Ll&)A5*CupA{>nfjNA z9r`Jq&A3=FfRf9dpCAocLA@XjP6xY2j4}m%)4*7Gjft~20>T6)iB*KANx=7ahs6TZfuJfT&`u=w^Vp;opC1n3< zk~`dyHy#`x+wZ+iiJt3$uwU74?L@@EpTnY2tv2QPCXTUii=`4xp~~=ncg4)mIDhhv z)e-S^qW;s@xh40pgSX^eaw$xvgDsO1DEC=XDyokTWqeLr3#;AOl8PN0Zm-#xSI$*^94g z|5l1$Tdr2c!()d_TYaz<|IIdnpXFFOPb!~u=ZDuNqVPIcW zqvIaOpUw78#y5>{+DXsMj1n@hyUH{2pJGg8F<9UA$gs^$pgGZP?A&>51VB)JcIVRB z5dHIYv!~Aw#ccAwUMa>7)XXG_v9x`z@BZ;`C-Z4ROoIA56vIWB*0`gjauvkf_$}~3X6MN_aR^Wk=`m4 zdvhs~SC$C5er6y`$kfKB14WwvfW7M(zDc7H*#_z@^LNRKOVbubIu2E@*95^00jA2o z6JS0lvX+*8CgF4IG78*nD&l^}t+S_U8eLzPf#;jRAOv#-7Hd$Y_x_0zb8{FY&*E0W z#1Hr1_&F@^58TI40>-jTi4hvIVNWX!Sx5ZBLwcI92zy%bG@b!8f?nC^8SYjm8dr|) zJ+(}pr|E+AHWnc6_2HpePYN4=NUm zxhG5jQUM@_xiU!sZ*qiwg<~uLLi@@=UbqCkv9QpzEAJ2BtX;k({9KC+@&K55 zw-T1Hg9qJ?9@kt+>sI&Uc zOVf1NZSuLQrzONXo}hi&PHy5Aa8t6oa!xUsx|xcM~Jemd1W+}08C6%WQ)BtycK>Jf?G7SCZQ&W^?l8>C+( z8P9@;$OTnUaIg{ts2iR=--g+p3qXpxalJ2SxaB;yHmxpTK38|ncILw6;66S96A*-i z=eY-j(uLoQ#O{h0fcyTv$X(Ks;eE+!yY$Ats&y3L>R?5zCyibbkZPlfM_fJkj0tEUA5S;-`eg_BqRb790HtOX7HDb&tvj6= zlULn?jzN7vh{ibVAPu)SlGc{takC67IHCZg9f$(8c90DW47_L?@b*K(yO97Pq70q8 z$WfWx!T{omwajk$fu_q`6#y~~XBLL>W~kV;F1AP>B$Rk#Q^GFj$Fefv{QMUuI#*8` z&rXqwJ#F(|u!EF|xd^KP!SI5T`LHwrohGvRD?)CaR4en3p%6;=20e-*gPo5rgm><>VZkuu%a^QYxiX5#m4s)Bi5}E6(I%WEQ!_(Tp>HvXr~&l#^19qyyevAp z&d$z18ygJ5M~k>ic^#B(5bwQ;i<1ll20+V!q)c}^;|I`!)hzzFmT;h;t4Va=M?T94 zn0F`&LfzGTh6f7^EB8$qt$z}WS{Ov|!oqV?1feyiQEeSb>*{kkl0h>Pa=5Y#ZqvDf zW-QJ?t{w+*IqA2em(bL7EZLrofT;veh=<&kH5&78*vWxR*&H=2IlU^ zKi_{MbjKqmY3Z=;Z0FtUQ*^R*#CnUsa(ZC`)PX>!s74dr59V-JmP19D-bAu9*Qd88 zjn9=ndt}fK4r|7GqSAdujmr_CWXN@t^@gC87jpF~0`M0j@8SX|`^RpcNPzvxlp(;D zFD11EAb^RZ3m>Z-SQi%+{hUG=$1q=4f@9--Os1r-CIzpcM9R}809jm7X#xt$%0asV z&HzD@P$5B!nnWsRq{$!zQZkOp@}aKPWJ@rMSF9pcDas4;$TL;MH?Ou7wJI9}k}|1l zQx6F3fY@Mg>L!)}Emx3|9ZMe5IV2$##LLXPf16y+SmFU~utv&u)1|r1ug+Y^a*^@R z3z`X&(a4s?Nd5!u`CRPUv)-*IoYu{9U@qq&f`0I#E&aJpn z2mI*k#4gkF8;{(SO)k+>uiIFT=RY$@7D%}K=EoiQAdftJ-k_377Fq)pW>tvZBobX* zY1kj`p06)QTlY7$fK_~PwZ8d-8ri%-9+O)_>9drodl*bKAz*j8^xB+#6Uat~e+JVZ zOrMXx_HGN}k^2vP`^j>orI7q{8#KO9D-)9T=umpMbmb|2-!yoL1?lK2w zNwwjRhQL<#o3~G?>FFiu{Nz$i<)vr*(Qp?fMG$#U=!EP^HtY6l6}85p9RRJGx`u`l zJj$g3t)$Uip6(aK?tDh69J&p;$R8YPYj&fBZk;Jq@LqQQUOVNOBs~73zXhu^5=(M9obA*b5Cmk z4Tme)A3Q2GPapkUq-*my8cSbg8GXK17&96nN`=@_7GXIF9%Im|xp(5CP06Y34V&SbewCJL#DJjKUwTg;PHgg_(Q^%>Z6P=U1Ui&82 z_!P1Dv9U6S62^^k*@1O4Yiq`9YkOz4$#PxMDh5ZCS4M9U2;{zTNCKV_asZj*qk4wmkyHk>i7r(n?PWb6~SeyB9KzInILSnR&jc|H=DuSQguhkj?$vg`$0jtl{fr%{Syx5{5J#^-+d* z!NlItRIM5d0f;i#$3<9myKlQn7P>Lipu4@K8?cW+G`^RWm3}$qp}y-W%-W`}u(q~F zODM3KZF+0WTnPsU$I#uqcD>P4eR#7nbTo6J{J4Y&*$lp5-JDAn=3IuPr#bcTq@_V{ zEFJa0^Igcws}pUsqJ(Fv9s<3k1N)x+^uWZRli)JkdL;IMqg#?!n3zB;XvtN)5n|qb zBzbOBTh3e}{Ke>Uh(=B7!JdSgGo+};Tj&L+LwsDAn6FTrCk-=W^nTZ`7ZpT@07Rd% zis3`Agws?{*J{SBm0wKn>F9=YJBJWupXm3yM&9OTI(1nUb{W6GZyow_H1wH#oa1Pt zD-Mg)XZXdfbGiM7F(VlpBV#R7p0uo-G!Nl~k;D>I)~!M*&eZwc+OVBjVzd#f zO6*2&SYiJI5|#OQmu>z$`e65CYWE~&nj0`1qkxMzq&NgX4HZ`e}m~TPoiq&s5TFBqp!_7FxKnZNS|Jmy& zz>EgOlx0#$*2GD@+P*g(`XV`EY-JqO&hBX@J{JrV7=O;fd~ zsBM#D#o$S@GY2_iYPzW@+%vUanIG&_GPs0B#_!<0Ox^yg{K;MIX?2fjRZQO*4|TB9 z$ea^72{D?GY;!O))I4jD5TcGhr|g15Ns`n1r9K{&Hz>wU?t}>rIm*h(cAYePxz)#f znQm%a@w+XDEiL8ju1z7V8duXLoh)`0{)pfOQLAxrL^iEJ-r?If)Ljwpjp*sDf>jeT z;q{~R#;c3NsZ)@vleZj-BTceB0q>0rJ`PaIXxy=u`XQen z<*c49@OZqCNyM88x7XfPq^ygCcewhk`Z-C0dkq86q5)IB*^8b;z~1d`u>toVJ-tz@E}) zzNhp{6$hjk&%w+4LK|c~YVk4ewW_t0)u2ft8C@jJ%c)H!8(Ls~A|7kXbxn~xhuC)5 zE%iJyWQegLU!Eq5LeO3Jgz|z9rFLSavq<*C*`HL+`=Ra3% zU()X0X*=-VlKgfA@0oaNyqo(22b-Orw}Am4agDPH;J4^Uu4N=*{=cxa{9W17>5z9%}kynVEru zwq->_kYdCmlByWCa<7wj1!Cnt%#50?&RxGdY}eEFC4c2eX*)7Mq5I=e_VgF2UoW7` zo(pn98$K09mS?)IB8SPaqpl9hG_Gi(Rv%|RZV#PwVYpPfkXmfQ)EBNJkE64e#%#W4 z-1N8^reAZS4NvF47^b|Paz7Wv3EDGx`n&-?=o=T8l_R$@HPT@$j6h!t^(@?GR9i17 zZJ-he3^623G&=3d7gRc4(Ox?-%V#!INUlAXPZxA&h*qI|fP-r7>JhIn$=+Lr;Vw2P zPwcyQqWcA%Q=*Mj$Q$`1F+nLGbSgu^Jn}9DIza3xdPeBejGcI>`j%5ydJR67n?(@x z2WJO9Q0m&X?Cxj(G_iQ~{ulK}#(^E4aT094)oLYDKXyFd=s$`}(@Lbrd=YCu z)izfslcj2J_hu=sySL{k)2%C4_J_mzUE0 zr4#06#hk(j73X}Akn(NK9q;f9Ee-YyqG06;K;&W^4oj}|*4ME*ZL#8Q;-@NCqQX-j zTt++t$Jlg={9Q^Uf0vTXJIVWbZ-+S&Fqp(>M>*)|_?t(2yIXg@{Mza$Z*-$I+U~TJ zGP98ZMdcGn*DA2JTy*uz$>iJ9S}=>q<`IHcTk5dgd^X-drem$akS}Q;*Q74gpChdF6CA8Fyw#{Al2eY2Oxq@<1dDAxsCI0Ezm|f2XI&X<3 zGqqYDxorQ&Kjzko^ZSpp#*gsgcb39tGmg>%`Jo5)DkfB*KVex|zMKrx{ALEzPWT(3C-zg;sr8DwY8`&^nDqJ^$wM4DhrXD<&?(Fsa z808`p*WjbG#*`;(mWZoC?Pz}Xx$ym4M_%j~Pc3_#i>Xf~6dRFeya(?Ad5#DWfx-Bp za*ey`8UBvPI+ub}$OWB@hoB$>2NRv8vah`ZAGVLxbfrJ|YA}U>tK7BrnEUU8GFNpj zh>&y*m}6p1V8SRLZ)*|B78cd%=DHcN!x`rAMC92kbkME}1{9aG_ZY_JeZ6!#$6nw5 zipLS7Al!Jk7=y?0Fy%C5^c#L?n}OF%=^|WL*QUNY!&uAw054QpaJ)xSk+iCoi|Zs5 z{>gduR9zvPLMSe8qmOpl!sBP)T-#!V63 z_2#7+uIETcr?7EaB58A>_c7D4baNd`*(4L!f#dXG-h$v_FYu$4luDfn_e-y`85 zn$G0d1Gb8F!Xv`>-Q}&EbI?+`lcBZunR&L%9C4%n0yKI2@9ToC!PW(<)?lykCTZS5 zXX}~3AHV|vWp7`xakW8?()#Em{CUt|p*Ecxg>x+m=rs(eu>ro7qT~znziG;11L^hs zo7netukRg}hHS#>y-E!;Xi#5tZkWzlIL-Mxwd5t;{FdnNL)t?M;LhsnjX+}P^}8MT z-B?|mTwJaYtk*wu6$Jzjc;rfA(;n~jqdA!BU1(8_tMQs;xcytXpsTKWf8|>VI5q>> zHqfUFpR41}o7noydee{~EqBz-RKLjPX;4}wVAj|=;#NHv%nA^#%4K~l>TK{hUpe>Q zcj?n@&}1o?QCVAO;^HbcFT%Gx{jLyip7lKPw)S<`tw~dVTGwVmEDmq;gkcRjMeJR1>ou27%=B}jkm0cSjIuRc)Vm_{4mB$~_k!y_5E#86E z-4D`M*NrI7==n-u>*YnGN^?ChM5`QoMJ&q{H)?-Yvt9dE|EhgC8yL?r4d;sD>8fAR zi1eIJEOgmPjrAU(#9Pq#x#1SV%Pg8-c?)*5#Om{+gi*2lXrrv~y~@g|3OI%c_BmC9 zwYz^DsAH+a9ZvP4rDPSWwC)5b!@F4_N`_nW25$9&RL}|V7oCQ_I=1U(B(=TuxV*f# zA2rT1BXV>F+qXg)^mt+{A7JzE_N!)n(7bG*ms7ZyN(QKDi_vJA#QX#G)P6qv=wp%c z>Req_VpFxZUbFLoe{8c!N)THu1LOJ2^2SBU?U#YFP+LJ(#-6lg9~m+mL&noj-s|yC zl66v(pa~{Nbr~PJ#tY6rVqLvH(7M==JTiPcM;}kU%IpSCNRabcPcD4cJDl$c6_BGt zc*{C(iK65^AO_#w%*)Md2|8Bd{iG28`cL7*=kr@}dz-n(H%q}A7)xs&I|I_8tm0I$ znSo93mfk|anASB3nV3E+@0hKICu$KjR+8dT4sW|ydf!o(-ag!POMbCVtAfEq`#jXO zG@r{JEl!61mt85nhrs8qgt1lChgM_POV$u;V~lLFBzSOY`J57-=_5G$S4)s!?d93p zj5XdR^JE>D76D%m?@BTI*&SPVeX+2%pS1DPYFb{S92E`~#=v;p1#db&M;D?^_BhhD zm*WAwq>dDyntI<2Pe}eVq!=6aDo62Alk;mq77V9?Q<6Rn(eDy!_Q9}n2nV+`>p=It z{T|eUvBx>EpM~<1oG}fZ9;L9ZtWqLGkUC9-*D}t}`a7q&L5bI-2Da^GEfH9sit#9fkHrdhMaM=M`s;-vtA8ATR78?p$pIF0up63h_GE(!JJgVnO%M z<$ouUu7P?yjz8s~Xlp!yh=0gTuF|jh2pMY8)udT+3Fz0(eRO;=DVvnO z5u1Srml(6t!hXB*G0qp(yjpfhYsQs+b9M?}EUfgKdPr75p>h)gpMvvJ*f}mOKI@bl|Kn?p&Kcsdri- z$SLHN4;6A}0-R_{YmU2!f3@hQ7Rj8NH7t3{8I!JluG|uOmwwjIh#~F~*6~jNI?6%| zh&f!6!1xmoQ(*EX+Sc?XXehE`c0%k_Y#HeVt9ogB=I z>SF&Ovh35Vx_f9ef2iJp6v1|LHIuJ=*NyBP6Z?BuXg{Qi#S^w{*mfgPglX1YNMK%h zae0>AbF4c3Oz1h8!lI=Z+V5OGhoSJiBi}R$c$_`{k zU_cLc0Ghhjb5^p{GG!A23fATSy6B18NLN_cuHsD>Di~i|aJpt&33xOq`y4>*_ov6R zl5sqUKn+oJpxx>!OL+dJO}$nKWN_Hd+xe)u9L03QFM7p`?o?8DCKO!SI&! zoo$?ng_?11@qypWRD>*NluTodt3ggCp~yr^4Nl(U0EjOBq#kqW`QCSr-hRD%*XV|1ZO}y>NEWYC0Rna+hD7z*_~>GDea3>-Ax|Lr;e9pfx{la z0~kC-{vMrX-=qEkIIuhTglP%HqAEU&R9D+HupyqO}mfIEV2@C-<4dq@fCH%voPItiF9TEN#>A`Q~gwzkz)GY5~e+yLB*hDrnJMtYH@( zBQV=cT{?A<#eBu1?4Mvu+y=8?ZQlNV&a>ft1}b8y({>Er?kGk4RY0giBg$LxR{@Q@ z7{poo1pe$XInl+YoqPW?(tDZH`zdCp#jdlO1YL1I*wVItY_-^(nr2j?n zkOri66Sp)A$?nQe4Z#gw=z6*u`cEQ-!Su8m-7-)?mPMI-=<&fmX%-UUcDa66>#uS3 zD6sj=Y(E!8feP`ddP;rs&v5*c;+E|HG~&M}etIu88M0)vmWOI5%9O_tkh#|gd)nwG z$`BCr{%Cf$cQc1kZ!EOD?zUbG+o2OyZZYQ$Z1(z7QAdN^4^SVk9ytTOA*L53Y0h}! z?*wsscU0*s3T0_Qv4kWHtp*`JDET9>p$=7h0N5Xijb~S~D0}1$I5s_Yj!K#mu6zOS z9QP+NJaIs{Xs&=0N4B0qi%&W;umVIhiGPn95Qg;XJE%R2P2Ykc=SIm3PI>t z1fVY{8nby*FjtE!6i-apnLN2Fu?kNApRO&xZ(Je%qVAEo9FB zqTW0DS)@-wXof?QMPQ1d3SYT}!_FmYww!o=mz6Ep59WcW5B`4l3N}7(*XYv)Uvv&6 zTsAfrzsnxG6L-58Vz_Qm`oXI8BVuy@P!Ik7nS+Zsi&8#YYFRR{fB74ws?J{?+xGHu z5{+T-{|9LVikG|5uFUAU>sx**(DTukZZ(c>92yun^z{yk8~Rmtu8#XUAITR1FzDFn z@~U!qcXkz^(W8ve9Q?Zs)j*K@F``CMwqMWUQqTLa(NPO0*#aj$3_h+-Eb}{w7GXO3 zL`@@4JLS!Hb0je_cbbxXmIdzKd@(x#ehcC~Gyuw2wR1cUlQo34Rq+uEVY_F;-1<2- z2)oRs;dAA#SBFoiibPEo-p$yl&B0^)JKJ`=S4Q&#jL>1w*T_Ektu6U2vh*g}mMSz< z7kv7^Jt2!wt7!Yo5$s)HJ_OHa$y6c7>&kpO2iqkH>9C}<@q&ehtl?J$PDGTObX696{M(D+XHbi;hNXLjErJj28JK46{sTNZ81#82?Z#_I z^1_gmg-9|N5m+_tVarn;1N{0=T{Jtd7P|cn;0^_$^@8;df0~;-Cx+s2)wj7r78raD zXG;Y8@{Q#v6G+?9Fg8WK5`w}ACbMMbbyn^%qt|-HU#K;O^U9|1z=6^A$b7YlOA=P5 zQs~Q?Xs5Yn716Pz_7LRcPxX+0S)Taj@7BAx=PKhid(GzG2EnWYy>q6j-=9*7B$}{}^#RuX4p=?B%Sj+To zAor1bZ5K+uv9M@u+B`B|qiAAYr@5MPi=DcyZcnGFURtBs%r;~VpIAbD;az(GII*C+ zBcHQ%ogpLvKKQ4szdKwl^6@{x#EAaSC@|9e!)sQ~@FKs%Eh9`WK$lyXgX2Z44vk1= zQ~fuS33(p_NT4xir$@rwA}q0PeJ|VQ>ow8x)6=u6{gyQ%BF4y-t;amVkGk zB6>Z=(35`1maoTr=i5C#+ z!=^Et)sF&=!@oOV!=d{yc{rh~gPUVe_Kzd;slOnTBy>dd$*|*&?64zW*AL${}%N|gl5X^4)T0T`}+^VO*^A}bjEXy`{Fw(3j@S( z)<6y}6U(PHDrAtXCx?ABXiv7zQ=giw&10>OaI8mtuc*_}sK!sG?<4FQS#Ky_ntwJo zN64oB-6IoiwRH6iNcDAyd&Af9=q*+M7wkD&{DWQ`Z^{qbUV7;^RA_eO)=dvpd=%>p z;}9v+sJTR+>>CGx_lE$*$Lk$KK;M!EA7(#Q2g zNOUa0y0s9Rp=A8!iz@SC{geh13~COczf@{uOVpY>Sa>ZQ=gZHa7+bhtsQ!3lFfq5> z0k!+`99e}0-BryHYhK#)J;-c^AU{8&;pgL(yt(y=M z_40lu<3MhbDlZ!5_(=EF;rH&;Nhbcpx5N_ywYtRt&Bk?gan__%YLSz6&)A=5y~k*~ zZZ?ckwq|Bei=k4pht}O+!I~B=>lqPNxbxFl$ZRK6yoH$9bA2B&z05a9LU{BW71cL- zmexfzYA-?(oP#P${sUJEGSaIt=YFhi$dBIE1YU=Y(+0h7s`Bt>o6BjDTuTfGhj@k_ z!jD`hvp3@tn&bHM7PqHfPzj)|r!&1Tkn2wlZr075tLnI&Q;k+iNYcr!>7R#%{KezB z%KMJm0=(wkN;R@YobgY2Kb;lVdAI`|M94<{gTp4*@Yi-X3XLH{k42>G-v;{Z`AW>9 zxeOjY8__vVX#mB?|AU!J@i8e_%L$AjMj_tau{{kcKqE5BM^E{DAINcH#_@$+J$G%v z2K(pKY~Rf4bjjBXXFhWTbUVe-g)Ddn8CH=OvD47EWo>yW0VoW^e3^R1)#~P}#ya#A z&(f6pn9`h<9}B4WY_b_l!}0?mZjoE~)}evDKHpR2i1E_0)RY)jd(1sA;)l31OlnC~ zqWwoEtVLJ!n?0l0(0h>IbfuHUnQY8KUE19x)qHuXdIHU+^`O5`-G2iGd)Quv{Hr5oxQ1 z(KM@>;jE)0&SA0XRoe*+>a9ri>tOegoX@?n7lh98#g&qy?K!<*6g{mbJ;A!fkGEwi zjeFJ_od-EzL17kq^WMYa6#9j83H`s5sb})PXlM+rb@eEp)b9%m)7DN6-&kgvrGDJ^ z_jl5`gI8(*kI1K&|6=QJ#P&I`U*K*opd^s4zL|iE_bcN&-%R2)I2UfoC@SzJMGw8s zM#1Y|-IrZ`yX%krBhMK|I3T8Xfa1<0;Qp-S^c^zy^lY{DVd#VQ$&y0bt$EE98rb$X z{1@qhT9>IP{!^1c%;U#^UT#*HOJs*xf}t5)a*rdt?S3Acd!Cct(sPaR-b5eKLj5%HQR54rP00VslkBVc);>FPTgf4IBml;b0?&qeZk+;{4?58V9)f>Xh~wE`_@-(4KFbZv6a?qlO!)v?#w1 zV?|5hQSe)_I}2Bi;zKR*^9!E-^3V*KlY?`BYlSDE(Z}hDjSK*9?Civ~|D#T80z>J2Lst=MPivwvv#9Mbw@A9MLT2<*DbW&1Ln z-n=Kyv2%E2e)v^`@mFoqp6@ZqK$rOA{M3yHcrT3zxR+mLi|c*_I&Ry*W6G zXz_vbRX0%qDwRG~@4z(R#U7W8Swxaitv*a_aa1QdrFRpEGhAnO&gR5^@`0$k50Vkh zy3`WX;}KOD@PQ;^g;kHYp1`gS({@dGe2!ch8%!XJQ312y&+6q6SZ?FmL(QenUHg(m zH@LPtMB3k6^8G>a2oyN}B)Ik}P-9ks@{{5R#`tRRWa3mGk=I$1ZC_}EGxcL}2jIbH zNsa^2tg$fZpo( z-_d&TMW611#fVx7iDVRFmWbp2i)5pv9$h`#i7E~#8@5Va%ua@_PWYQhH-J+pDd_7l z)gPgKO|#KbO^HvL+sTw2!2sF5R;j>WTE;guX{il~p~Fw}Q+(>HMo*pJ7@-pw-NdAy zxld=XIuGVpi1ba#259)L?B*k_8d`g3wvaHT`-Ycb@!0;Yu$zHKlwL$sJZ+;Bel&w( zI0G)O8u1OS#NM9_~8W z@gHV!k+Dwx%g4Os*Depzh6f=DQ5To#gbfx=n*%S&a2Ph`MOi$HT$h1|&Aa)lK-&)g znz@Lr*i^14E~W06qDRgj3VBbRJ#ZOe8K);T5qL%YK83)|h^uNaMze-wbgIZ5w-69|4byv(Rht%UvoDaJrye z<#H1!D)PTx`;{}}!2Hj*tpE82Q;!TSKD{o^@kmGMyJUFZD4zBOocEpT(%+}60ry_~ z*qb6_ZU{$XFf`5XVlXMAE->hWiobV&nV=jMR3-^z74!N8r_u1+kJg^yj7m$%C$ zUdAzXUR#)#mq&r?BEdiec&V;>a>=rKwRVCwt-oJo11r?AyD)UZQoOmQd0wu zD#wVn+4>VlRBE6pmmbld${e0md9jph>^{~+prIcI(a zF8gmz2MgZVDN>!T304K?RBk|24QW)f{x2^8Ica@PuRf2lZ{P%J6|dCA3r9}I%cr{$IBPu$3{ZU#6aSVV z$M8yRu|hio30?W{gM;9mnvoEMok;i(hCzkw)rDTmhLKqhv%-%qGi?rqq7Qtpq6iB# zxxWxgC6w;tV9Q0sh{DyKf|YPOpEIm>=289F>(u@YdJ)}Q6dEq6y1d^ezQC9G+@0LY zx5QjcY$`u9&5hBpy3&D*fo$!ioD6x)jy;h!1;CRW?+G{1`2f-Q!(UuTAci3f05E^n z7d=+@qVQ!zMWL<#oNppB4o^rFo^Q02iRK;huSWouAi9N_&#y@{tNH z((V)mIYppLwYGh{-(!1|yv{IGb~o{3cSJ_P;xb@+TQjF*?Orbo743?hr(esXFJpbt ze&1XFix~UAyx1pE^D+Wop!IUao@m38s|P$E?p>w+ zu1q9@1M`7Yw|M!GOUb8zdxad+;N&S3v?aERLjm4~@*#-WJjQn3MNW4%RV>H(lJmDB zy-H*2Y&{jkRql@ctErh68m7ckXsK(AffrXAH;qQ?6(8@Ay!H}=kl*a>8iFbMq=*&? zMF|@b%D243t`g@>MJDCDv9z)^%;+&V{@QNDPn6{uE`ll`_a*Vkw!I`IF*wBNzgbsTnqI&rr!5`qUGSNIKiz?2TMf6B11ZNRDDq%=AC$^ z{@x#AEPHom=JYSw=brS8|013)`pEEQz>a_HLm2r?lh2e>B=#O|$Xha6MuS!0hZk#s z7^1=yiOK}P)#u0v{54vI@~~cEU=hdfdV|)^q>*w%Yc{t4CD9Ps8ZA+P-y)p@e(~@0 zM2y+%SNyy*)kMvp-$WnDuatY>n5BZL6?$Y_V1`!;!)vqVzbI655Xjb6M30eb`R$dn z94V>K5ti+lGgdqH@Dfcs1+`)VvgV7DomZcXRk=#Ux(QSGXbjPq(*7NaC@pnoA(5#CjL~Ds*KWE{T#ou2+PDqB}Ce$wku0or| zB#*+gb$RS0vQu;&NB`A?8wCw}uSYwc!mRfMZJ-aOOU}KV|AVv0tU(f||0yxbolD3U zm1V!$_0^9_@Y)VXn?bnRa!re0)$^9g3qIBspC} zg8j4`b+5aZ{6(IMc2(GR54X5)3vv6RQmSUArw^!iH!puZ9f$q! zYAK!pmN63C``Yh$MG3r087j>%a0?ZmvLW|qYlc|LpHWx^{X*;p*vB+;Opb}hyNTl@ z^`4x_56Q6QXcikMpPx=FuSo15GV0yS<@E_X5R@8hZfdS3jbZ}$<(x#F*ZCJCVmtAW zE0Ktw#)Ar2eU=O)b-DgWxczj=R#OL2BIEc5lyl?S(PE*d2cuPMr;VcJ>mD(H zX~|%!fQJPQ^h-ts*)m4hY{b#6x<>S$5k>orLNa3l_C34a$gkv`k;h!e;YX!=wjWkc z*!5yUdR<4z5m60v2j7P1%>}W?qpKuZ^?;~u5jiQer6;j_C#KPe`fMI(8pHP6BiQ+m zk|1_J*DO%ZeuH>Cnv07(F#5$Qff`BN7+6%{?*}=qt~JBCewBz>r|uG)n5v6`5OBmm zs?2=6Q*VU!gRzCi&L}4~?U7R?UJ8HF;qM*j0dWd$1j17jV>9N{nO78FE?WYaO4=W4 zCq_;|bKiDeMMn$xQ!Y03Ny_Wyt`U+-HHDbKuc?7g-X0n|cBR(Dm*P*dB=IZIqmNFE zy9B!gT8-B`zdh*~cP(&%|BmfwB^RE9kC$ff_#9=c&Pv!lGc`!m*PFiF1dWK(lS*D2 z(f%oXkvQ;1gtV@{QOd%@cpAnXB}D&P@(Sy^``^c@$&4}fzru$@zMaD071Z9v>$#=5 z#BR{wugJ4mnpBOR~wQ3eay+2=Et(om@`XZaa&=U53=U+;$cMomML?z1x18+h(2cD^rhQAyN89{e6N!UYZMmksPF~F%)iprHMo)tUy`B9feV-dT^=><9}t^PoFy_Zi&b1kLnj={kdC zLC2*XuOCoEqD0Q&(Z1J>0-$gd!Fei{BwutjcM zV#$GxL#0%bBL!S((pH5e*%q0nGm<=e9COpthT8B5Z>@JZ3B79;!n8oSJFu)f`5T*b zNrZ$RoyXU?_8`j1tnoQw5y+0fCpKUXZvICH+Vw~)tth?DFRmn;V$Nj zFj!4f+0@A|%#g(Nx_v`K!$8xO+l!z0#}iA68UD!a@4BUKT`Si33YU==){OZV1V6${ z#~InntJtx|*qP^4jf#ranLl+tT5~*XD7ut0D88VKT|aH!UkQ;9;4r;yJ-Bk<5F(+w zF@N(RA|n-tyntuIR`7;+ALHGD%yFiY^p2dk2a=ZWtf4os1i~oCKm3h^#kI@v(OQ0( zym;{JQzG(ws_DBIYkzE7Ze~9$Q~Dowd?%Yw$f;{u5pA7j+7TI-C_Qn*qNf`Bfc@$e ze>tu9yc5G5cs?HS61HmX{73$vxuO4E%rAvDso4uPS&w`3bZCR5fm=bsiTI{UCGruj zfj@JyM$@l1-x+jt211A}j&?;9#4H|!1PU8Ni>Quz^Eu3(IEVCI#^~}L-3fjTf9&;n zw_|&2@qCtRNae73WYuB@j;Dg9fMF5PzfSU(QI*A?vO$cFBZ(|d_$e~JDQ4^_;$h(; z0quXk5u@+L<$Ms+0~5WNGlUb_RPBaKegOx-ehN|nFLUm zW*Df0VT9kA@zSPB_mfO4?HUQ@gvvU`T~+mlHFvI-RFYX*GaA^l$yf_46FZ?HdnK9kF6^zH$4KU^v8D`miaP z`Ap{U*&)hS7pRb%U%>xe;|v^dtD2mW!j$oM9-vbT8L)gabBXSHHaNX*LE9B&hQ!)9 zNwPKu(Pq&vLp1xr!Xl3>+&M!C)nc+kuO3TAuu%2_Ubh$rur=G6zWO#P@dH^gldJtI zo!pr9In%eGfCb$~7zs^#rD^MA!%s9X5N{=aRBZk6qZ%MApsbq(J2Wc`T64A=;$$#$ zzLJXWxGp=JK~hCN5rGi(Wz$-)kH4|_zA0O>>tZAbv^<`^Jd0i#pHEV^oL!elZo+Sa zayyh1t#pXH*VHhvBi)ku1~;~MgL%%bt3gq55!+uO>xfahG*vwcI)dbxJe~-M1kJV! zbE=tS1l1;P0CDD!j#=~# zJ!M5NpNs_=N+wi&l$K^okW+Ib&YhT?8Yb@@We^U+u?iQHHtxEQue)bJ-|c+bq*HEd za;V=L*GDYvz1Zg5QZfMuKTdO1U`W@HaM%cVGbEmAGO1ixnrCJBimY5B_o=T@zeUcn zkb48zR-%dL_w~kLL&FSJ7llI$-fHsLLY= zN`%Er++*}NI~zw6Ob3n`15%(0^d^h`T{gVp&0T=tp67u)xQgdNf%99&P|gJ}#4vHK zkEi+L8M0aMz8e#NU=yN}(}uHl*iNiEw<3QSZ0Dz#C6_+hR=|D%#h8DQSt*43mNR}z zf;8H|__uHbk_OpUUIUSHI*6dU5X;I=7#L7q{HUtsZEthABKcLhRMOP|44YSvaZ;ch z^JntTe3&NPyN-o0c9}oe2!alk>c@t=X|`ESq}*V8wLJv^4y#6oT2eID*}7H$pco#EUo*B*t1hL^4X+ zWT#H)ZtXi(67Kx-WrchPj13Fzi7-g4WBsE4xp$n!w6BbCuKHZvd$>l5u24AlAiJ&A zQKbsGc?^%XZp~$1=p6&~9_b($-cNi0+?Huxj5QR}B}11^Uyy8myp+8OUw7L5)c4$> z-MH0l#`oj0SFB{|Sk8nR#$E#7Pj8M@+DT#gx~Cb5bTr6fkJhZMJK7}4oQ%{CySPAkr8SdF?&(JkaQ6G{BJ`< zZG>Z2+0DL?4(g4J`amF5r4cSRcwAq#OcTA@bhk0U|F2LB~6>IThH-|?JG!M5d0d$hSd%c^m zw4oj*14#6bCXx~^R^dS_YXJGJcl#6lucV<%DS7Jv%SUR%Ju5qMaIxyYR9 zsfhGg7qdx87xNN|}C~~nXAS!CHPp%eBsCn?w2Vz)MRLsZj ztQLq4O&F7kKNeXj=e!x)%AWwQEyjdhX02D6wol{UH$6XBrj@C3TPuYRrEr#8OsoB9 zEIoXjmX(o+Kp5-$Tn?`(QUdwoepP6wsip1Ut$wif{;fbOTP0h}DzZVZ+7a)F8k>Wz z_1^|<85&Gv)mn5q=e;AlZmDa0;kBrM%XjMKVzC$^2zN}7+@TJ*J`Hu_V^llhgR0#H zkDAN0&~nC6Nj+E0&LgILSCVhUWye--m7;m3wMZDB*$|~UP-pl4S30=gB`FY(HC=<1 zxF`D5Ws@7ycX5B`qe2#k*B4J{pQLtp+%NYQunoda{5X)b|5kB6kr2>gXb^^`BDT@* zNB_#V&BiL&A}u}h%N>?(Jy$wekQlZ{%%OZbJ#!wds=As%R?o|z+n#%;HmS*+DKVeR z!&us7!k_8i!F_zZycSlWPa^o>5h54yVzMSek9s2;K(ueei8$kMFKjjT`%%Cnc2((k z5>DaV7U!oK`&7(Ej1O-mo$W!LD`XQT8mdfFsyl6C)q8TB)cE5u7S*>ipX6_x#rgv> zeM)#S7`ou~j~ zEGQ+bUfRnTx8SfWNa+*2Q{_df@gr#e`01}YL7|ji`n9iZ(S;(#GfU;@UP4C@ZOv6f zL6AG?b`J4fT)BAQ=Nlb3wP;Q);ZZ(x+WU#5XElzq9y}jGQlSWlcV7*Ku`~?lI;>KM z(?uf}=84OTBk(`G+B<|bt!FAU$D;qIvm(3R=92516LSX48@fA+U@!?9yNTO>if#KD z*@@o)%9NZH#vW^6Go;FxUcxZa7(Fj&qnC)-v;jK#f1h|c#F$wa0o)e(yqFv)Q1Q!wgK z&>CbG?b{oz%PN~Wxfd0jHH+tuECv&Y^>vw?=Fkz5FMc=JZ#t8uX!uDC?fNrutHGyeKz1s#sskw%I zt))Y}(TY5iHG{aDu%<_elg6Bo=_Lzo9+N5&F_8qVvB>3yY}v`*bwhhW$)e*yJmH{Q ze?-=lCbgu=Y?qt4o!##}ER*~b7f-$rk{6Y?DM_4@ejWiY ztKoE!V@o6{lV<`AHtURC;od)I1>_8_W+u9BJ>y)Ut53}$pJNv$`giUMpN9_PL!)A^-$j>y-fE+?&zWGSC9DB5+X{=oTs{gQ2;vuUw>1W`N>Q{3TT@}NXIk|5HGZP*eQ`nXiBz%BiV5T^um+mI<8Flr86JM$$5o8!%mL= zAn8HuQ!HF)nfued3BQb0#EuyDoa{|nl<@2Muef3u+vA5I&}fBPKP}B2f{W^VHWtq3 zTEUbrKR1b+RDT3xA~U-38SfwX9Zhz+HbpfT|7UP;{p0E8(Osf%+e+rXw{Fk=f9>&N zJD$DkSyYcUXwOF*Mft^{G=*&sP;YAm3Df~^qsLKpWYP}Z{qbtBM2q0$y^BkC1eI%B zz6)8``t5Ct@98ef>Ba!D-wwxKcQf%e=w;7vUp&~*cSlHZn_pyAS66p)tUz%(@X5nY z1I|uTm^7|H2jERa>`rRfTYa`IwOS<`N{Q=@ch}kzOq9=0WW<7{E{|7bRe%aW+0>4D zbd8hr&i(BfCmXd0qrv+hASA3%P&ddMLt6 z+ObrimGnVI;*qr#P^~dzZ=ol7^~6zNJ{iQN;imI_N;|7&Cn9-w&YPAM{?_7ga57TTLalKht3^qLr94^*6F>XiuJck5D+8tJy8x$!k!360IUJ}~^`Cea+jiy(NcD+kh)e8gUA zXgu`ky~LQGOoEJmfx0Y{^tHvZ3;r4A3E%?rI(xvnmQCl}6Ra;TZQx8ucjWZvY!58@ z>uyzXrmDl49*QSUnp7N{KVi`qP1etHFj9}-YxYV%f)n}cXEK?>TT`$*A0uBqcv7*2 z_3I>TG+IjNl55Y|+In~oIlUE@#R!Jn`Q3~u+Raq$W;fUL3tZqL1ooDQq4A@?WlMT$ zukXb=8^d9nc};oja(BO@MaY9A1fD=iOn!DWVsVpQ0G<8w5CRo1-o2Y}&+;lnb>Pd} zpwV142Mh|||rTV+!)z%>YF_$1f;_wU{{ zX)Ui%AIOwvbtJ&U3{*N6CL3}NHPo)Gb3feU$G7b~z{fy!dSQ1yhtdwq&OT~+8;C@l ze2wROuSP5>E+pvOCMy(@^B!8mWz5s_Cp=yUs?9O4n?gpOxOZk)N#U)|*q&&rRKFR! zMKaHOKvlzT7DHnFw8QIRGsSeCJ5)L&{8Tz4!uzxP^gNIq{HNjbZPx|h^0`g%TT+le z_uysglI+Thuc&l^4X{BjJ3G*RJ(QvLs}SwM#3r^ALf|$4dA;op?XE9`)J08Eg-DBD z{FtU{cF*icDP?DKD7;+%sDVgzF7H#3It~*c#uTdXXh6DJCC9&WLJ9Y z?#K2RA^2m{vU0!qX=WCCd*wy%<^TFbOniHz{AOOKfOcerbM}CqHDw4RTp)97+2#%B zFzak|!Fl^Xnw+AxpwdDy<+5DO8n zry?%qs{Ta$I+_9B%ykXFa|?D7asU)9I;X-v`_92#FgN-}80O;?H-1n8%DjJ&r)Ecg zzPor0ne8l}arXYBk<%iCFC=k*Z#`P=9q_T-@Ho0Qtb2tAIW`f&#?g2agsvwIS)i_{ zsbBr0TDWL9&LDb<7zv;^tz57BQOH(V0iZ3VY+fETyx=Hw&h887VQCEI*;3 zvIgL?8?a!M6~#2asV#G>lFjYap5N(EV0nek{TKHN(sQQ+ykf6FlsLA1$fPY<)ia9g zsA1PaiVrV7XDL{Hkmyi?x?WjW@`iL+GB{ukm$^9@dQ^QMVHrbONve0q8|ig%hCGh( z?P~f?()wYKC}^SNwD1GkU(8k8Ux4411rF!p_$iOOS-cp#%nd=z%nCrvl)#_WvRuIUhzSpkWW`UN z=e$DwAaKp8eQBfhI0*XIQ16Od#4n^=_ndGcQi*E#am={y#Z8@=fz_z}lp9LZk-(=K zP@v^p!62S$Lf#Qh(f%x?lXF<35Q|q-in>R8S4e}-civ5j=oRd7l>Tz%%}gz?Er#k@`FMllw*CFgK&-1Ykdw(L2QadZxWA7uw|-M~?jh z=yu`1Uiuo34`~X55pG|GY|%?)GmIp*Lm)?s{U6nuiG3E^%IptD)^!T*#l%a+c*+A4)LMlBOR*oxrhU$58C|?yx!E9C; zo_oDk)K@Q3;Cv0?y!D#+O%vVBu`4dCddENuon>LxLMr2^D#!WI^C9mk_uj@MdUn8j zxh5|B1P!Ds>9L>Wjl(=+$Y{BK(e%ZS^?5$R-)((3PVD`h*pX_5bx9h5&u!Xs{@C`= zwziB9cze-;W_v0$>>M3RD(N}PS(}3Bb(yue)6(J~OTA2CM+v(DNvsuIB^G0rC2e(!H1XH$yAH$SZ}DhTu!N8T8N1p(2}itRwA^`N<(cgpk9N2789~ z97)GL7uK^hkcs3+Cpy~B0aa!-$o6WcG?!fOq$qGYm z9>##Q0Oq894Xxz%+iI~a#TJqQgu}pen?#J_7oLYJ#nZXgVRf~CIp76orW84MB4GK! z<(+qvEk*fyP3XSV+1)1)V3Z>EM>xF}1GNH{LGdrOfao8vsOd&Xfj>z^6DXY?)1rr6 z;n=K)5NYwj@|6{1D%a1a1+?5yMkLm#CNPimolck823t|N{5FqBx-&I8nSvowJ=SQC zS=ZR;xG(d(XR=;Mf*L6DbL={rDF4EsTkZ*GrnggzgPlptbK`2w;&|Hf!SQh|v*lr8 zjKI#eMT4$-yUQ{xN}4m;BYx`N3L@WY_LkKMghhER7+#9RpFpi+%DPJCe12zvi2Rr^isJN3n69^^ac_m zIRTtLs6(hU;1P)5E*-qn;EwlOBf%_|D!}}8JKv-Coh2qo^a{7^b`tbi(Dqd+hedz> zSkSk(I6}WQB<{51uPvzN>gwujH@CaOx@BV&ipAS-lj|)M?;rWrPu%WH?qRO^BJmWw z#Ca1j-hErsGdxK%EkhlBK1>D0YkJ1hN@y91+PPffd=L$xOX5}l`$LgSvRSHhlmD@m1tIa%jp+5V<_ASJE zA9zkUOfy&_u2kUvs@__xm`PRiL<7knpA>~5EXO?fCc~X7L;^K|)9+(e!aaJ4ijE()}^UgZ00e*6okhdmQ*{rHC?<7y3 z?5vEx&~j-8rh(>ekyL!NF&vekD>F}gybrKe35Z)KTgILdo3Z#blTqx>CP3r7;((3f zTSvqoVRttT7r4$0562&X75EwwH%iGDO`r8?pPdwb+f}r?Jhw>di!$LQg|8+$z{!%! z!G=vtv+;MLV{?9AsV_(_DalFfJ8}ePYfamC7lYjRt8EsntDF#X*_L$&cNY@JJIQ)= zd`&52p!liB;_4gVc?(Wh0Rc>NAs!9Ln{SBgC|+`XpkN#X5+d0U<+Ua-Va~TI&#CR+ zovog;uC7oc{Fx}eru}I6qrTqTa&PQ@crz_H?(%8wB+(gj2EVmu$LmO8=)|!AEPJ~` z+h?f0{^`Qf_q%#~xE#Qwk$fW1%9x)19Ir+rLQG$5SUWLw0V@`^P3E$+`sVw zR4L&p=6R(DmZKe9bB!tp7|248S^1pu(D4S)s3O(UL^v8qAPrg`?B@HjbI{{~HTDvp z9{7Rcfa?W!h%q24m6Qn1b?B3eyM;@0wezRPH4_xZW$>pjdUy<%65Qr|X?_ek#`U%CrHw;}>nr9zcr#!P2fdbBNf z3#R&*J7k!8>)#R)Vt%sbfiQ5OkqfA2hgy)b(cJxtgK<1iQ!SO5I6vh9#?kTIavH%S7yvC|38zd`Mi2O}rPO9BAlwxKC9647q z&`Kic#;L$U9{>U?um{S=;!haL=*bng=J=CiijP0yCfSVkJw^2>S@uXYgfV7bR*gBgp(jeFaE*!I~ltNey#W`Xs zn(99-#}TjehSk;8ld>orn_JQsMathd9+?j7i_7|wf8RP)kJp^QUZwU5O?h(6Zi6EI zSWOolts+1IYa?NZ{8xN0-WFQ#?FLf$uLf{NH%Ze*A8v%A5A#9kPZ zLc^iG@+!o8IP*9m-5%^jU^%u-I2XAx@DWzQWfi!Pc$I$TDn+V-@}aB0yaz4AmpF3CX>nBB=P$}|U)h0>8{l$34b z!JO~cZ>4>LZ$bsgx4BI=I+HF-WM}K^M!d7NAtaERugY~Ze)-0|Y#@i6=4qS)LJI@W z1NhWs>XgN-c@M`tr*AU}Cfl&&0Tr~W9i15qC;Dj6z zq~{Zioo^<%Uqrk4c9TLsOFlTq<=zEVr zD-I51sF*z5tdG{d`N~2^;C?=Qgp=um_nrUM=zOH?Us-BNYea|J<4u9`85`Bz*dsOz z9|zi*%i2xJd1WJBrvp&s2@l@svT3Q9XWrv`jCmmO4S%^3*;>~Hwg0I4YEzhNfy6;U znQJ>MxON|=F(jJQmxtHu8Hjfs38Qht+6?qF@8L6Pk~Z9cLj%M=ZPGY9(}O1iWcMGP z{(n@xbyQSu*zZk92m(WQ3rOey(wzfHgGwpg-8l>(H8hB%lu{zy-3`*+-QA7v#^3Xt z^PWFtE!UcR?|WZ;eZFW@!afgTLa)rS@GaV`>CAOvs%zf-IDpIr5wBgI*TmS>$h4Mb zT7!7+>A|H@YI0{EqbR2WCM#Pa&Gd?sNUhpw-_4z5rcSP1ExC35GE33n1K(phW7bqX zn<{cZm?0W*>UUH=Q>$S6bNa00EC;`Qg8fzcd%V>q9h|lPtunDxrzM1@dH1J1uZ$=S zrdbPMQ<0d?=QP*H6^#mjsBM{it7cDlSO(0Ej()(Hi{GFMT%B=we2+(scxkVFJaoGP z63i&|*}3m0J$~xgH5D7s^jN`G#iDE^A>`)fwn$ANAq-Mdf$M=xN1lf&S#{v7;8PBP zu!dX1v7NYvK?~8S2#9S0>Hd)_9XS5DY1_w@G0lE8iCtXDyExs5)n8n)1aOfJQM9)l zvkfWRL4SuWUaTO{&#?c*q+HzYk-24G0I#;8bD$G~UUL}sx1qJ6K)S_c#U5)|!@hqZ zNUeW_5TrgPP7*k@VdjiMW=G_(FvHotEQ}j}TpNStO(=S4_m*WoOC{0j(Hyo=N+3lN(>npdArca(gF!(VE2b_$b++6o zo>9RDgLhmot2=BRlqSTd+W_?~^8+D@Bkf4nxIR_`DOIFn%lQn62dWSI+hnD1fgti6 zPibAlbKyaz@JUExieC#wm<|Q#n5JUdR>jz4nx$~(AMEbgAcD&Ik;u$9E6^_fz}t}9AU+j42gMeFUFIB789_fQbSbs* z4=G3HIvBgvKW;GHI#5Ejt5vS-ZGSwPma7vH&pK8#^NFe)*<-a;_IQ7#$=M3TzaGA% z5q7^pZKKP%3=~b-GdC(HGh=j4ZT0Z4>V?qci#GrfIEG=f?Ir?~`|M5ePT84WRBLW& zd80%MmN46D`axP~4j3@sf9L+|k z=|dFoT@%<4N@@BgXb+35koj71MN&^GTCZ)8)U4ch10wY=b7)b4(zzkgWk{JMzhM;y z&a6ll3bAm-j~ZRE^^TjU8b#lUKN8;~g~Yr<_e7q3>Oc`EG&mMs7Mk^nK)=~9y2Hhn zI+6H_-<8YVFo}=lZ_`+~%H`QmE@j2FM_P+3IoAU6WuzH_`By^MkHt0?$=|h^X46n} zouXNbUhBUf8ZyuKxw|kgMhggMeXMA^2#r2F-oW`z-<%6*Go1a0cp4Eh6!^Eb-KL3- zsTltKloHL%d`x?#u3b!QpORYOL+XY7C4z0M_L4i6%YFjYmaoe_mx-B~MpZQr3LUjT z9!DL1<{$kpa<3%0Y@X>aJyf+Qy@Bkh#EE+tYMSb2C)5w+Q`y3pC~a3Nu4b0%TklJpQG>6{=j?PqJ_igLt+-g_p7}>E_9HnMJj*1PCNGVFkT4KMq%87#RJ}hYikp9*%)?2NNkIE(_>3I# z+^A!=X5p?wk{&FB*i@;APO7}mP=u62+P#m3OP&`NQv-$6Bh)O7-i^s-(Ot?r_G)*NO^@w+e z8>l7VaH$~l`xW7))+1AxZ)?-Tqc>mk;T0x6qxDhycJkc;?&RIc<-_I9LYsm1Gor<% z=Wak1L+amFp%}yir#DzhqDOieefi8OiT;b1W8}4my7+#-VbJM1ag6SO0nhi88M7jq)AWUPriWF@GmaN{>nu3)Skc=1E2H{3|ZS z$dvlIHtUghzUM;?tq=rl%F5Pq(zFY-ku@tI623UlF> z(mC{H7ie{pg$v@H43)#X?L9yGr^UM$I!sUHq-epe9=#Uvd$V~os2lmezc_5QU9oS~ z*a@&gZ#9U8i>x*Tw0+hJWL((ssUx8A8APD-`51$1W+YsC#0ryLM zyjpCG-N5i+CG+|CK)D|l5_)yGqSHEvg~YPT9G?QW__B)cGW_@JthjZ-N9V?Z{JKLw zc1&?M%h_zqRiGlS{lQpc4KY!TboFghVg2oNwu4!&#T+P$HvTeG+d}&jRs_bXlcWZo zoUrZy69R{qMQ`l~E}Ndr8U6%fSD zToFpf3rkkBvgYXd=x8xSKM(y5`{%i+?S<^y@m6SLB}szd5klUyJN48g zaEoT$LGKW0;73E}4*v&1thM%Ba60GQTK#e*Yv#9lbd6YQ>y*h{OV3@K6OsnvK!lVx z=~*R%YAYAMso_fKbwCy*&>?*Az&p#Ts?Uk+aHiNUxF$SPB&|iYwZ{lP2;x-CnDAbn zs|S9gZoVKb{-FWl^x0uyn3E}^AstJH9{Bv{@0I!vP~6Gq&*7$l>=>;iJ69iYG2vN> zmSm`OuP>kb5qS99lLXEyieDjDQ!bblGL|(?e3Mkfgs9NN5PlG320QF0&XU5)l3X8= z_R$XE$R`Hrm|;D0t^y_44n!x0?@RFaxRn&!tEk93%qW=JY<}sjBlkU9+LR{sj1DF_ z22Z;14BlFI^}941GrBm-06E2vH>{<%sZVry1HrscM8{Wd;{eWYXb zKKE>frWXz!_W}8#IB58&63kNS)4;8szB@M}#)(96&=)XAZ^~91g9xR~-*qaTkZ4JI2vQjEStkC;@&YmnqsYRfH>NEKmZ1(_>k^pP zXP=$j!VEA5g<0IZq)id5HX{R1Iuz)3Nb5?TcM6P-ORk zsj`o_5+HzelM@VNe&GGU2{~)>o?DwMG!O@CcJum(YxZ=YkK3}45npm}tUS|7RH*w* zos#(K^fKa5XW+ZO#h7S%P)=u91W17PobF-8ot=zCooQ{ZB{7YZK8S;^8aV=aso48$ zmh}3$PiA%MELFf+4kkPYA=AX$v!T@ue&=WOrPa-)(I*R2UV%75Xm0++KC(Yo`{EYI z3-n^-ZyHxsuP3n8)z`?IuSLqTIeww7xFg1cE>#ybWwc{*6F14#b-kK_>C(R7r(-^a zZci6tOd5L=3+jTS%;qsE#!;g`d+? zv7HKhcF9mybhOv9;WSU4LGTWL~1!aTxP968O4?Sk!VI}3@CYORcDUrb;tE4=^ z`(^SWKHZM6oow2l^w?QAD}F<~9ee#`CKVYb&+V;2v(?q}SAj7+`

nZazl#Rdl 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 RSs?jvvU5H4*w+90KL8g~F)RQ8 literal 0 HcmV?d00001 diff --git a/docs/setup/resources/redirect-URI.png b/docs/setup/resources/redirect-URI.png new file mode 100644 index 0000000000000000000000000000000000000000..0ce56d191869df188c9b4c341214b139d5ef1593 GIT binary patch literal 177304 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્STbh_IxSlEb1tpXFXhCR10_bw}RZSlD;nRb~ZFR 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 Pl}}4u??J`A$FKee1}d#> literal 0 HcmV?d00001 From 3d8747c62afb4db84213d4b3fe4435349be9a239 Mon Sep 17 00:00:00 2001 From: linukaar Date: Wed, 25 Jun 2025 21:16:23 +0530 Subject: [PATCH 13/22] Add requested changes from code review --- .gitignore | 3 -- README.md | 77 ++++++++++----------------------------- ballerina/tests/tests.bal | 1 - 3 files changed, 19 insertions(+), 62 deletions(-) diff --git a/.gitignore b/.gitignore index 64ea86f..32d4c58 100644 --- a/.gitignore +++ b/.gitignore @@ -53,6 +53,3 @@ build # Ignore Docker env file docker.env - -## Ignore Ballerina test configuration file -.ballerina-test-config.toml \ No newline at end of file diff --git a/README.md b/README.md index ea102b5..6e47148 100644 --- a/README.md +++ b/README.md @@ -4,7 +4,6 @@ [![GitHub Last Commit](https://img.shields.io/github/last-commit/ballerina-platform/module-ballerinax-zoom.scheduler.svg)](https://github.com/ballerina-platform/module-ballerinax-zoom.scheduler/commits/master) [![GitHub Issues](https://img.shields.io/github/issues/ballerina-platform/ballerina-library/module/zoom.scheduler.svg?label=Open%20Issues)](https://github.com/ballerina-platform/ballerina-library/labels/module%zoom.scheduler) - ## Overview [Zoom](https://www.zoom.com/) is a video communications platform that enables users to schedule, host, and join virtual meetings, webinars, and conferences. @@ -14,7 +13,7 @@ The `ballerinax/zoom.scheduler` package offers APIs to connect ant interract wit ## Setup guide -To use the Zoom scheduler connector, you must have access to the Zoom API through [Zoom Marketplace](https://marketplace.zoom.us/) and a project under it. If you do not have a Zoom account, you can sign up for one [here](https://zoom.us/signup#/signup). +To use the `ballerinax/zoom.scheduler` connector, you must have access to the Zoom API through [Zoom Marketplace](https://marketplace.zoom.us/) and a project under it. If you do not have a Zoom account, you can sign up for one [here](https://zoom.us/signup#/signup). ### Step 1: Create a new app @@ -22,11 +21,10 @@ To use the Zoom scheduler connector, you must have access to the Zoom API throug 2. Click "Develop" → "Build App" - Zoom marketplace - + ![Zoom marketplace](https://raw.githubusercontent.com/ballerina-platform/module-ballerinax-zoom.scheduler/refs/heads/main/docs/setup/resources/zoom-marketplace.png) 3. Choose **"General App"** app type (for user authorization with refresh tokens) - App Type + ![App Type](https://raw.githubusercontent.com/ballerina-platform/module-ballerinax-zoom.scheduler/refs/heads/main/docs/setup/resources/app-type.png) 4. Fill in basic information @@ -36,15 +34,15 @@ To use the Zoom scheduler connector, you must have access to the Zoom API throug * Client ID * Client Secret - App Credentials + ![App Credentials](https://raw.githubusercontent.com/ballerina-platform/module-ballerinax-zoom.scheduler/refs/heads/main/docs/setup/resources/app-credentials.png) 2. **Set Redirect URI**: Add your application's redirect URI (e.g., `http://localhost:8080/callback`) - Scope + ![Redirect URI](https://raw.githubusercontent.com/ballerina-platform/module-ballerinax-zoom.scheduler/refs/heads/main/docs/setup/resources/redirect-URI.png) 3. **Add Scopes**: Make sure your Zoom app has the necessary scopes for the Scheduler API: * Add `scheduler:read`, `scheduler:write` and `user:read` in the scope - Scope + ![Zoom Scopes](https://raw.githubusercontent.com/ballerina-platform/module-ballerinax-zoom.scheduler/refs/heads/main/docs/setup/resources/zoom-scopes.png) ### Step 3: Activate the App @@ -52,7 +50,7 @@ To use the Zoom scheduler connector, you must have access to the Zoom API throug 1. Complete all required information 2. Activate the app - Activate App + ![Activate App](https://raw.githubusercontent.com/ballerina-platform/module-ballerinax-zoom.scheduler/refs/heads/main/docs/setup/resources/activate-app.png) ### Step 4: Get User Authorization @@ -85,55 +83,9 @@ curl -X GET "https://api.zoom.us/v2/users/me" \ ``` This will give you the user ID needed for API calls. -### Step 6: Configure the Connector - -#### Option 1: Use Config.toml (Recommended) - -```toml -isLiveServer = true -clientId = "your_client_id" -clientSecret = "your_client_secret" -refreshToken = "user_refresh_token_from_step4" -refreshUrl = "https://zoom.us/oauth/token" -userId = "user_id_from_step5" -``` - -#### Option 2: Use Environment Variables -```bash -export IS_LIVE_SERVER="true" -export ZOOM_CLIENT_ID="your_client_id" -export ZOOM_CLIENT_SECRET="your_client_secret" -export ZOOM_REFRESH_TOKEN="user_refresh_token_from_step4" -export ZOOM_USER_ID="user_id_from_step5" -``` - -### Benefits of This Setup - -**Long-lived tokens** - Refresh tokens don't expire like Server-to-Server tokens -**Automatic refresh** - Connector handles token refresh automatically -**User consent** - Users explicitly authorize your app -**Secure** - Follows OAuth2 best practices - -### Alternative: Server-to-Server OAuth - -If you prefer automated access without user interaction (tokens expire hourly): - -1. Choose **"Server-to-Server OAuth"** in Step 1 -2. Use account credentials grant: -```curl -curl -X POST https://zoom.us/oauth/token \ - -H "Authorization: Basic $(echo -n 'CLIENT_ID:CLIENT_SECRET' | base64)" \ - -d "grant_type=account_credentials&account_id=ACCOUNT_ID" -``` -3. Configure with bearer token: -```toml -isLiveServer = true -token = "your_access_token" -userId = "your_user_id" -``` ## Quickstart -To use the `Zoom` connector in your Ballerina application, update the `.bal` file as follows: +To use the `ballerinax/zoom.scheduler` connector in your Ballerina application, update the `.bal` file as follows: ### Step 1: Import the module @@ -166,10 +118,19 @@ final zoom.scheduler:Client zoom.scheduler = check new({ Now, utilize the available connector operations. -#### Schedule a meeting +#### Create a schedule ```ballerina - +public function main() returns error? { + zoom.scheduler:InlineResponse2011 schedule = check zoom.scheduler->/schedules.post( + payload = { + summary: "Team Meeting", + description: "Weekly team sync", + duration: 60 + } + ); + io:println("Schedule created with ID: ", schedule.scheduleId); +} ``` ### Step 4: Run the Ballerina application diff --git a/ballerina/tests/tests.bal b/ballerina/tests/tests.bal index 1a6b6dc..359c4f5 100644 --- a/ballerina/tests/tests.bal +++ b/ballerina/tests/tests.bal @@ -26,7 +26,6 @@ configurable string clientSecret = isLiveServer ? os:getEnv("ZOOM_CLIENT_SECRET" configurable string refreshToken = isLiveServer ? os:getEnv("ZOOM_REFRESH_TOKEN") : "test-refresh-token"; configurable string refreshUrl = isLiveServer ? os:getEnv("ZOOM_REFRESH_URL") : "https://zoom.us/oauth/token"; - ConnectionConfig config = { auth: { clientId, From 348c4139e2d342d651cc4511ec1f7ab6720b4f7b Mon Sep 17 00:00:00 2001 From: linukaar Date: Wed, 25 Jun 2025 21:17:30 +0530 Subject: [PATCH 14/22] Change to specific types instead of json --- ballerina/tests/mock_service.bal | 210 +++++++++++++++---------------- 1 file changed, 103 insertions(+), 107 deletions(-) diff --git a/ballerina/tests/mock_service.bal b/ballerina/tests/mock_service.bal index edd3768..c79a45e 100644 --- a/ballerina/tests/mock_service.bal +++ b/ballerina/tests/mock_service.bal @@ -30,35 +30,35 @@ http:Service mockService = service object { # + return - returns can be any of following types # http:Ok (If successful, this method returns the scheduler analytics.) # http:Response (The request has failed.) - resource function get analytics(string? user_id, string? 'from, string? to, string? time_zone) returns json|http:Response { + resource function get analytics(string? user_id, string? 'from, string? to, string? time_zone) returns InlineResponse200|http:Response { return { - "last_n_days": { - "scheduled_events_created": 10, - "scheduled_events_completed": 7, - "scheduled_events_canceled": 1, - "scheduled_events_rescheduled": 1, - "schedules_created": 5, - "schedules_canceled": 0, - "one_to_one": 3, - "one_to_many": 2, - "any_host_available": 5, - "all_host_available": 3, - "one_off_meeting": 1, - "meeting_poll": 0 + lastNDays: { + scheduledEventsCreated: 10, + scheduledEventsCompleted: 7, + scheduledEventsCanceled: 1, + scheduledEventsRescheduled: 1, + schedulesCreated: 5, + schedulesCanceled: 0, + oneToOne: 3, + oneToMany: 2, + anyHostAvailable: 5, + allHostAvailable: 3, + oneOffMeeting: 1, + meetingPoll: 0 }, - "previous_period": { - "scheduled_events_created": 8, - "scheduled_events_completed": 6, - "scheduled_events_canceled": 0, - "scheduled_events_rescheduled": 2, - "schedules_created": 3, - "schedules_canceled": 1, - "one_to_one": 6, - "one_to_many": 2, - "any_host_available": 4, - "all_host_available": 2, - "one_off_meeting": 0, - "meeting_poll": 1 + previousPeriod: { + scheduledEventsCreated: 8, + scheduledEventsCompleted: 6, + scheduledEventsCanceled: 0, + scheduledEventsRescheduled: 2, + schedulesCreated: 3, + schedulesCanceled: 1, + oneToOne: 6, + oneToMany: 2, + anyHostAvailable: 4, + allHostAvailable: 2, + oneOffMeeting: 0, + meetingPoll: 1 } }; } @@ -71,15 +71,15 @@ http:Service mockService = service object { # + return - returns can be any of following types # http:Ok (Successful availability of the schedule query result.) # http:Response (The request has failed.) - resource function get availability(int? page_size, string? next_page_token, string? user_id) returns json|http:Response { + resource function get availability(int? page_size, string? next_page_token, string? user_id) returns InlineResponse2001|http:Response { return { - "items": [ + items: [ { - "owner": "test-owner@example.com", - "default": true, - "name": "Working Hours", - "availability_id": "avail-123", - "time_zone": "UTC" + owner: "test-owner@example.com", + default: true, + name: "Working Hours", + availabilityId: "avail-123", + timeZone: "UTC" } ] }; @@ -91,13 +91,13 @@ http:Service mockService = service object { # + return - returns can be any of following types # http:Ok (If successful, this method returns an availability resource.) # http:Response (The request has failed.) - resource function get availability/[string availabilityId]() returns json|http:Response { + resource function get availability/[string availabilityId]() returns InlineResponse2002|http:Response { return { - "owner": "test-owner@example.com", - "default": true, - "name": "Working Hours", - "availability_id": availabilityId, - "time_zone": "UTC" + owner: "test-owner@example.com", + default: true, + name: "Working Hours", + availabilityId: availabilityId, + timeZone: "UTC" }; } @@ -119,7 +119,7 @@ http:Service mockService = service object { # + return - returns can be any of following types # http:NoContent (If successful, this method returns an empty response body.) # http:Response (The request has failed.) - resource function patch availability/[string availabilityId](@http:Payload json payload) returns http:Response { + resource function patch availability/[string availabilityId](@http:Payload AvailabilityavailabilityIdBody payload) returns http:Response { http:Response response = new; response.statusCode = 204; return response; @@ -130,13 +130,13 @@ http:Service mockService = service object { # + return - returns can be any of following types # http:Created (If successful, this method returns an availability resource.) # http:Response (The request has failed.) - resource function post availability(@http:Payload json payload) returns json|http:Response { + resource function post availability(@http:Payload SchedulerAvailabilityBody payload) returns InlineResponse201|http:Response { return { - "owner": "test-owner@example.com", - "default": true, - "name": "New Working Hours", - "availability_id": "avail-new-123", - "time_zone": "UTC" + owner: "test-owner@example.com", + default: true, + name: "New Working Hours", + availabilityId: "avail-new-123", + timeZone: "UTC" }; } @@ -155,17 +155,17 @@ http:Service mockService = service object { # + return - returns can be any of following types # http:Ok (If successful, this method returns scheduled events.) # http:Response (The request has failed.) - resource function get events(string? to, string? 'from, int? page_size, string? order_by, string? time_zone, string? next_page_token, boolean? show_deleted, string? event_type, string? user_id, string? search) returns json|http:Response { + resource function get events(string? to, string? 'from, int? page_size, string? order_by, string? time_zone, string? next_page_token, boolean? show_deleted, string? event_type, string? user_id, string? search) returns InlineResponse2003|http:Response { return { - "items": [ + items: [ { - "event_id": "event-123", - "summary": "Test Meeting", - "description": "A test meeting", - "start_date_time": "2024-06-15T10:00:00Z", - "end_date_time": "2024-06-15T11:00:00Z", - "status": "confirmed", - "schedule_id": "schedule-456" + eventId: "event-123", + summary: "Test Meeting", + description: "A test meeting", + startDateTime: "2024-06-15T10:00:00Z", + endDateTime: "2024-06-15T11:00:00Z", + status: "confirmed", + scheduleId: "schedule-456" } ] }; @@ -178,15 +178,15 @@ http:Service mockService = service object { # + return - returns can be any of following types # http:Ok (If successful, this method returns the scheduled event resource.) # http:Response (The request has failed.) - resource function get events/[string eventId](string? user_id) returns json|http:Response { + resource function get events/[string eventId](string? user_id) returns InlineResponse2004|http:Response { return { - "event_id": eventId, - "summary": "Test Meeting", - "description": "A test meeting", - "start_date_time": "2024-06-15T10:00:00Z", - "end_date_time": "2024-06-15T11:00:00Z", - "status": "confirmed", - "schedule_id": "schedule-456" + eventId: eventId, + summary: "Test Meeting", + description: "A test meeting", + startDateTime: "2024-06-15T10:00:00Z", + endDateTime: "2024-06-15T11:00:00Z", + status: "confirmed", + scheduleId: "schedule-456" }; } @@ -210,7 +210,7 @@ http:Service mockService = service object { # + return - returns can be any of following types # http:NoContent (If successful, this method returns an event resource.) # http:Response (The request has failed.) - resource function patch events/[string eventId](@http:Payload json payload, string? user_id) returns http:Response { + resource function patch events/[string eventId](@http:Payload EventseventIdBody payload, string? user_id) returns http:Response { http:Response response = new; response.statusCode = 204; return response; @@ -228,18 +228,18 @@ http:Service mockService = service object { # + return - returns can be any of following types # http:Ok (If successful, this method returns schedules.) # http:Response (The request has failed.) - resource function get schedules(string? to, string? 'from, int? page_size, string? next_page_token, boolean? show_deleted, string? time_zone, string? user_id) returns json|http:Response { + resource function get schedules(string? to, string? 'from, int? page_size, string? next_page_token, boolean? show_deleted, string? time_zone, string? user_id) returns InlineResponse2005|http:Response { return { - "items": [ + items: [ { - "schedule_id": "schedule-456", - "summary": "Test Schedule", - "description": "A test schedule", - "duration": 30, - "capacity": 1, - "active": true, - "status": "confirmed", - "availability_override": false + scheduleId: "schedule-456", + summary: "Test Schedule", + description: "A test schedule", + duration: 30, + capacity: 1, + active: true, + status: "confirmed", + availabilityOverride: false } ] }; @@ -251,17 +251,16 @@ http:Service mockService = service object { # + return - returns can be any of following types # http:Created (If successful, this method returns a schedule resource.) # http:Response (The request has failed.) - resource function post schedules(@http:Payload json payload, string? user_id) returns json|http:Response { - json schedulePayload = payload; - return { - "schedule_id": "schedule-new-789", - "summary": schedulePayload is map && schedulePayload.hasKey("summary") ? schedulePayload["summary"] : "Default Summary", - "description": schedulePayload is map && schedulePayload.hasKey("description") ? schedulePayload["description"] : "Default description", - "duration": schedulePayload is map && schedulePayload.hasKey("duration") ? schedulePayload["duration"] : 30, - "capacity": schedulePayload is map && schedulePayload.hasKey("capacity") ? schedulePayload["capacity"] : 1, - "active": schedulePayload is map && schedulePayload.hasKey("active") ? schedulePayload["active"] : true, - "availability_override": schedulePayload is map && schedulePayload.hasKey("availability_override") ? schedulePayload["availability_override"] : false, - "status": "confirmed" + resource function post schedules(@http:Payload SchedulerSchedulesBody payload, string? user_id) returns InlineResponse2011|http:Response { + return { + scheduleId: "schedule-new-789", + summary: payload.summary ?: "Default Summary", + description: payload.description ?: "Default description", + duration: payload.duration ?: 30, + capacity: payload.capacity, + active: payload.active ?: true, + availabilityOverride: payload.availabilityOverride, + status: "confirmed" }; } @@ -272,16 +271,16 @@ http:Service mockService = service object { # + return - returns can be any of following types # http:Ok (If successful, this method returns a schedule resource.) # http:Response (The request has failed.) - resource function get schedules/[string scheduleId](string? user_id) returns json|http:Response { + resource function get schedules/[string scheduleId](string? user_id) returns InlineResponse2006|http:Response { return { - "schedule_id": scheduleId, - "summary": "Test Schedule", - "description": "A test schedule", - "duration": 30, - "capacity": 1, - "active": true, - "status": "confirmed", - "availability_override": false + scheduleId: scheduleId, + summary: "Test Schedule", + description: "A test schedule", + duration: 30, + capacity: 1, + active: true, + status: "confirmed", + availabilityOverride: false }; } @@ -305,7 +304,7 @@ http:Service mockService = service object { # + return - returns can be any of following types # http:NoContent (If successful, this method returns an empty response body.) # http:Response (The request has failed.) - resource function patch schedules/[string scheduleId](@http:Payload json payload, string? user_id) returns http:Response { + resource function patch schedules/[string scheduleId](@http:Payload SchedulesscheduleIdBody payload, string? user_id) returns http:Response { http:Response response = new; response.statusCode = 204; return response; @@ -316,12 +315,9 @@ http:Service mockService = service object { # + return - returns can be any of following types # http:Created (If successful, this method returns a scheduling link URL.) # http:Response (The request has failed.) - resource function post schedules/single_use_link(@http:Payload json payload) returns json|http:Response { - json schedulePayload = payload; - string scheduleId = schedulePayload is map && schedulePayload.hasKey("schedule_id") && schedulePayload["schedule_id"] is string - ? schedulePayload["schedule_id"] : "default-id"; - return { - "scheduling_url": "https://scheduler.zoom.us/single-use/" + scheduleId + resource function post schedules/single_use_link(@http:Payload SchedulesSingleUseLinkBody payload) returns InlineResponse2012|http:Response { + return { + schedulingUrl: "https://scheduler.zoom.us/single-use/" + payload.scheduleId }; } @@ -331,12 +327,12 @@ http:Service mockService = service object { # + return - returns can be any of following types # http:Ok (If successful, this method returns user information.) # http:Response (The request has failed.) - resource function get users/[string userId]() returns json|http:Response { + resource function get users/[string userId]() returns InlineResponse2007|http:Response { return { - "display_name": "Test User", - "scheduling_url": "https://scheduler.zoom.us/test-user", - "time_zone": "UTC", - "slug": "test-user" + displayName: "Test User", + schedulingUrl: "https://scheduler.zoom.us/test-user", + timeZone: "UTC", + slug: "test-user" }; } }; From 530e29a2f772d39d616562c094cd50ea38bb8cf6 Mon Sep 17 00:00:00 2001 From: linukaar Date: Wed, 25 Jun 2025 21:39:15 +0530 Subject: [PATCH 15/22] Update the cli command --- docs/spec/sanitations.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/spec/sanitations.md b/docs/spec/sanitations.md index e795081..aa6a66f 100644 --- a/docs/spec/sanitations.md +++ b/docs/spec/sanitations.md @@ -41,6 +41,6 @@ These changes are done in order to improve the overall usability, and as workaro The following command was used to generate the Ballerina client from the OpenAPI specification. The command should be executed from the repository root directory. ```bash -bal openapi -i docs/spec/openapi.json --mode client -o ballerina +bal openapi -i docs/spec/openapi.json --mode client --license docs/license.txt -o ballerina ``` Note: The license year is hardcoded to 2025, change if necessary. From 7d7f878cf0f23db206dd11421f59d13085367df9 Mon Sep 17 00:00:00 2001 From: linukaar Date: Thu, 26 Jun 2025 12:20:26 +0530 Subject: [PATCH 16/22] Remove configurations related to tests --- README.md | 1 - ballerina/README.md | 68 ++++++++++----------------------------------- 2 files changed, 15 insertions(+), 54 deletions(-) diff --git a/README.md b/README.md index 6e47148..e96a860 100644 --- a/README.md +++ b/README.md @@ -10,7 +10,6 @@ The `ballerinax/zoom.scheduler` package offers APIs to connect ant interract with [Zoom Scheduler](https://developers.zoom.us/docs/api/scheduler) endpoints. specifically based on Zoom API v2. - ## Setup guide To use the `ballerinax/zoom.scheduler` connector, you must have access to the Zoom API through [Zoom Marketplace](https://marketplace.zoom.us/) and a project under it. If you do not have a Zoom account, you can sign up for one [here](https://zoom.us/signup#/signup). diff --git a/ballerina/README.md b/ballerina/README.md index ab4c2b9..07fb65c 100644 --- a/ballerina/README.md +++ b/ballerina/README.md @@ -4,10 +4,8 @@ The `ballerinax/zoom.scheduler` package offers APIs to connect ant interract with [Zoom Scheduler](https://developers.zoom.us/docs/api/scheduler) endpoints. specifically based on Zoom API v2. - ## Setup guide - To use the Zoom scheduler connector, you must have access to the Zoom API through [Zoom Marketplace](https://marketplace.zoom.us/) and a project under it. If you do not have a Zoom account, you can sign up for one [here](https://zoom.us/signup#/signup). ### Step 1: Create a new app @@ -40,7 +38,6 @@ To use the Zoom scheduler connector, you must have access to the Zoom API throug Scope - ### Step 3: Activate the App 1. Complete all required information @@ -58,6 +55,7 @@ https://zoom.us/oauth/authorize?response_type=code&client_id=YOUR_CLIENT_ID&redi 2. **User authorizes the app** and gets redirected to your callback URL with an authorization code 3. **Exchange authorization code for tokens**: + ```curl curl -X POST https://zoom.us/oauth/token \ -H "Authorization: Basic $(echo -n 'CLIENT_ID:CLIENT_SECRET' | base64)" \ @@ -73,62 +71,16 @@ This returns both `access_token` and `refresh_token`. * `YOUR_REDIRECT_URI` with your configured redirect URI ### Step 5: Verify Your Setup + ```curl curl -X GET "https://api.zoom.us/v2/users/me" \ -H "Authorization: Bearer YOUR_ACCESS_TOKEN" ``` This will give you the user ID needed for API calls. -### Step 6: Configure the Connector - -#### Option 1: Use Config.toml (Recommended) - -```toml -isLiveServer = true -clientId = "your_client_id" -clientSecret = "your_client_secret" -refreshToken = "user_refresh_token_from_step4" -refreshUrl = "https://zoom.us/oauth/token" -userId = "user_id_from_step5" -``` - -#### Option 2: Use Environment Variables -```bash -export IS_LIVE_SERVER="true" -export ZOOM_CLIENT_ID="your_client_id" -export ZOOM_CLIENT_SECRET="your_client_secret" -export ZOOM_REFRESH_TOKEN="user_refresh_token_from_step4" -export ZOOM_USER_ID="user_id_from_step5" -``` - -### Benefits of This Setup - -**Long-lived tokens** - Refresh tokens don't expire like Server-to-Server tokens -**Automatic refresh** - Connector handles token refresh automatically -**User consent** - Users explicitly authorize your app -**Secure** - Follows OAuth2 best practices - -### Alternative: Server-to-Server OAuth - -If you prefer automated access without user interaction (tokens expire hourly): - -1. Choose **"Server-to-Server OAuth"** in Step 1 -2. Use account credentials grant: -```curl -curl -X POST https://zoom.us/oauth/token \ - -H "Authorization: Basic $(echo -n 'CLIENT_ID:CLIENT_SECRET' | base64)" \ - -d "grant_type=account_credentials&account_id=ACCOUNT_ID" -``` -3. Configure with bearer token: -```toml -isLiveServer = true -token = "your_access_token" -userId = "your_user_id" -``` - ## Quickstart -To use the `Zoom` connector in your Ballerina application, update the `.bal` file as follows: +To use the `ballerinax/zoom.scheduler` connector in your Ballerina application, update the `.bal` file as follows: ### Step 1: Import the module @@ -157,14 +109,24 @@ final zoom.scheduler:Client zoom.scheduler = check new({ } }); ``` + ### Step 3: Invoke the connector operation Now, utilize the available connector operations. -#### Schedule a meeting +#### Create a schedule ```ballerina - +public function main() returns error? { + zoom.scheduler:InlineResponse2011 schedule = check zoom.scheduler->/schedules.post( + payload = { + summary: "Team Meeting", + description: "Weekly team sync", + duration: 60 + } + ); + io:println("Schedule created with ID: ", schedule.scheduleId); +} ``` ### Step 4: Run the Ballerina application From 6a29409fa004beed915c827aff5bf9e8427f2ef1 Mon Sep 17 00:00:00 2001 From: linukaar Date: Thu, 26 Jun 2025 13:54:07 +0530 Subject: [PATCH 17/22] Use markdown image syntax --- README.md | 1 - ballerina/README.md | 12 ++++++------ 2 files changed, 6 insertions(+), 7 deletions(-) diff --git a/README.md b/README.md index e96a860..14742c0 100644 --- a/README.md +++ b/README.md @@ -43,7 +43,6 @@ To use the `ballerinax/zoom.scheduler` connector, you must have access to the Zo ![Zoom Scopes](https://raw.githubusercontent.com/ballerina-platform/module-ballerinax-zoom.scheduler/refs/heads/main/docs/setup/resources/zoom-scopes.png) - ### Step 3: Activate the App 1. Complete all required information diff --git a/ballerina/README.md b/ballerina/README.md index 07fb65c..6a20147 100644 --- a/ballerina/README.md +++ b/ballerina/README.md @@ -14,11 +14,11 @@ To use the Zoom scheduler connector, you must have access to the Zoom API throug 2. Click "Develop" → "Build App" - Zoom marketplace + ![Zoom marketplace](https://raw.githubusercontent.com/ballerina-platform/module-ballerinax-zoom.scheduler/refs/heads/main/docs/setup/resources/zoom-marketplace.png) 3. Choose **"General App"** app type (for user authorization with refresh tokens) - App Type + ![App Type](https://raw.githubusercontent.com/ballerina-platform/module-ballerinax-zoom.scheduler/refs/heads/main/docs/setup/resources/app-type.png) 4. Fill in basic information @@ -28,22 +28,22 @@ To use the Zoom scheduler connector, you must have access to the Zoom API throug * Client ID * Client Secret - App Credentials + ![App Credentials](https://raw.githubusercontent.com/ballerina-platform/module-ballerinax-zoom.scheduler/refs/heads/main/docs/setup/resources/app-credentials.png) 2. **Set Redirect URI**: Add your application's redirect URI (e.g., `http://localhost:8080/callback`) - Scope + ![Redirect URI](https://raw.githubusercontent.com/ballerina-platform/module-ballerinax-zoom.scheduler/refs/heads/main/docs/setup/resources/redirect-URI.png) 3. **Add Scopes**: Make sure your Zoom app has the necessary scopes for the Scheduler API: * Add `scheduler:read`, `scheduler:write` and `user:read` in the scope - Scope + ![Zoom Scopes](https://raw.githubusercontent.com/ballerina-platform/module-ballerinax-zoom.scheduler/refs/heads/main/docs/setup/resources/zoom-scopes.png) ### Step 3: Activate the App 1. Complete all required information 2. Activate the app - Activate App + ![Activate App](https://raw.githubusercontent.com/ballerina-platform/module-ballerinax-zoom.scheduler/refs/heads/main/docs/setup/resources/activate-app.png) ### Step 4: Get User Authorization From 285046f7cb92256aa8c526da460824f727c98e9d Mon Sep 17 00:00:00 2001 From: linukaar Date: Thu, 26 Jun 2025 16:53:43 +0530 Subject: [PATCH 18/22] Refactor error handling --- README.md | 20 ++++--- ballerina/README.md | 39 ++++++++------ ballerina/tests/mock_service.bal | 92 ++++++++++++++------------------ 3 files changed, 77 insertions(+), 74 deletions(-) diff --git a/README.md b/README.md index 14742c0..b779d36 100644 --- a/README.md +++ b/README.md @@ -20,7 +20,8 @@ To use the `ballerinax/zoom.scheduler` connector, you must have access to the Zo 2. Click "Develop" → "Build App" - ![Zoom marketplace](https://raw.githubusercontent.com/ballerina-platform/module-ballerinax-zoom.scheduler/refs/heads/main/docs/setup/resources/zoom-marketplace.png) + ![Zoom marketplace](https://raw.githubusercontent.com/ballerina-platform/module-ballerinax-zoom.scheduler/refs/heads/main/docs/setup/resources/zoom-marketplace.png) + 3. Choose **"General App"** app type (for user authorization with refresh tokens) ![App Type](https://raw.githubusercontent.com/ballerina-platform/module-ballerinax-zoom.scheduler/refs/heads/main/docs/setup/resources/app-type.png) @@ -36,7 +37,8 @@ To use the `ballerinax/zoom.scheduler` connector, you must have access to the Zo ![App Credentials](https://raw.githubusercontent.com/ballerina-platform/module-ballerinax-zoom.scheduler/refs/heads/main/docs/setup/resources/app-credentials.png) 2. **Set Redirect URI**: Add your application's redirect URI (e.g., `http://localhost:8080/callback`) - ![Redirect URI](https://raw.githubusercontent.com/ballerina-platform/module-ballerinax-zoom.scheduler/refs/heads/main/docs/setup/resources/redirect-URI.png) + + ![Redirect URI](https://raw.githubusercontent.com/ballerina-platform/module-ballerinax-zoom.scheduler/refs/heads/main/docs/setup/resources/redirect-URI.png) 3. **Add Scopes**: Make sure your Zoom app has the necessary scopes for the Scheduler API: * Add `scheduler:read`, `scheduler:write` and `user:read` in the scope @@ -98,17 +100,23 @@ import ballerinax/zoom.scheduler; 1. Create a `Config.toml` file and, configure the obtained credentials in the above steps as follows: ```bash -token = "" +token = "" ``` 2. Create a `zoom.scheduler:ConnectionConfig` with the obtained access token and initialize the connector with it. ```ballerina -configurable string token = ?; +configurable string clientId = ?; +configurable string clientSecret = ?; +configurable string refreshToken = ?; +configurable string userId = ?; -final zoom.scheduler:Client zoom.scheduler = check new({ +final scheduler:Client zoomClient = check new ({ auth: { - token + clientId, + clientSecret, + refreshUrl: "https://zoom.us/oauth/token", + refreshToken } }); ``` diff --git a/ballerina/README.md b/ballerina/README.md index 6a20147..b353eda 100644 --- a/ballerina/README.md +++ b/ballerina/README.md @@ -14,7 +14,7 @@ To use the Zoom scheduler connector, you must have access to the Zoom API throug 2. Click "Develop" → "Build App" - ![Zoom marketplace](https://raw.githubusercontent.com/ballerina-platform/module-ballerinax-zoom.scheduler/refs/heads/main/docs/setup/resources/zoom-marketplace.png) + ![Zoom marketplace](https://raw.githubusercontent.com/ballerina-platform/module-ballerinax-zoom.scheduler/refs/heads/main/docs/setup/resources/zoom-marketplace.png) 3. Choose **"General App"** app type (for user authorization with refresh tokens) @@ -24,14 +24,15 @@ To use the Zoom scheduler connector, you must have access to the Zoom API throug ### Step 2: Configure OAuth Settings -3. **Note down your credentials**: - * Client ID - * Client Secret - - ![App Credentials](https://raw.githubusercontent.com/ballerina-platform/module-ballerinax-zoom.scheduler/refs/heads/main/docs/setup/resources/app-credentials.png) +1. **Note down your credentials**: + * Client ID/main/docs/setup/resources/app-credentials.png) 2. **Set Redirect URI**: Add your application's redirect URI (e.g., `http://localhost:8080/callback`) - ![Redirect URI](https://raw.githubusercontent.com/ballerina-platform/module-ballerinax-zoom.scheduler/refs/heads/main/docs/setup/resources/redirect-URI.png) + + ![Redirect URI](https://raw.githubusercontent.com/ballerina-platform/module-ballerinax-zoom.scheduler/refs/hea + * Client Secret + + ![App Credentials](https://raw.githubusercontent.com/ballerina-platform/module-ballerinax-zoom.scheduler/refs/headsds/main/docs/setup/resources/redirect-URI.png) 3. **Add Scopes**: Make sure your Zoom app has the necessary scopes for the Scheduler API: * Add `scheduler:read`, `scheduler:write` and `user:read` in the scope @@ -64,11 +65,11 @@ curl -X POST https://zoom.us/oauth/token \ This returns both `access_token` and `refresh_token`. -* Replace: - * `CLIENT_ID` with your app's Client ID - * `CLIENT_SECRET` with your app's Client Secret - * `AUTHORIZATION_CODE` with the code received from the callback - * `YOUR_REDIRECT_URI` with your configured redirect URI +Replace: +* `CLIENT_ID` with your app's Client ID +* `CLIENT_SECRET` with your app's Client Secret +* `AUTHORIZATION_CODE` with the code received from the callback +* `YOUR_REDIRECT_URI` with your configured redirect URI ### Step 5: Verify Your Setup @@ -95,17 +96,23 @@ import ballerinax/zoom.scheduler; 1. Create a `Config.toml` file and, configure the obtained credentials in the above steps as follows: ```bash -token = "" +token = "" ``` 2. Create a `zoom.scheduler:ConnectionConfig` with the obtained access token and initialize the connector with it. ```ballerina -configurable string token = ?; +configurable string clientId = ?; +configurable string clientSecret = ?; +configurable string refreshToken = ?; +configurable string userId = ?; -final zoom.scheduler:Client zoom.scheduler = check new({ +final scheduler:Client zoomClient = check new ({ auth: { - token + clientId, + clientSecret, + refreshUrl: "https://zoom.us/oauth/token", + refreshToken } }); ``` diff --git a/ballerina/tests/mock_service.bal b/ballerina/tests/mock_service.bal index c79a45e..4d9e7f6 100644 --- a/ballerina/tests/mock_service.bal +++ b/ballerina/tests/mock_service.bal @@ -29,8 +29,8 @@ http:Service mockService = service object { # + time_zone - The time zone in the response # + return - returns can be any of following types # http:Ok (If successful, this method returns the scheduler analytics.) - # http:Response (The request has failed.) - resource function get analytics(string? user_id, string? 'from, string? to, string? time_zone) returns InlineResponse200|http:Response { + # error (The request has failed.) + resource function get analytics(string? user_id, string? 'from, string? to, string? time_zone) returns InlineResponse200|error { return { lastNDays: { scheduledEventsCreated: 10, @@ -70,8 +70,8 @@ http:Service mockService = service object { # + user_id - The return of the specific user's availability # + return - returns can be any of following types # http:Ok (Successful availability of the schedule query result.) - # http:Response (The request has failed.) - resource function get availability(int? page_size, string? next_page_token, string? user_id) returns InlineResponse2001|http:Response { + # error (The request has failed.) + resource function get availability(int? page_size, string? next_page_token, string? user_id) returns InlineResponse2001|error { return { items: [ { @@ -90,8 +90,8 @@ http:Service mockService = service object { # + availabilityId - The UUID of the availability schedule. # + return - returns can be any of following types # http:Ok (If successful, this method returns an availability resource.) - # http:Response (The request has failed.) - resource function get availability/[string availabilityId]() returns InlineResponse2002|http:Response { + # error (The request has failed.) + resource function get availability/[string availabilityId]() returns InlineResponse2002|error { return { owner: "test-owner@example.com", default: true, @@ -106,11 +106,9 @@ http:Service mockService = service object { # + availabilityId - The UUID of the availability schedule. # + return - returns can be any of following types # http:NoContent (If successful, this method returns an empty response body.) - # http:Response (The request has failed.) - resource function delete availability/[string availabilityId]() returns http:Response { - http:Response response = new; - response.statusCode = 204; - return response; + # error (The request has failed.) + resource function delete availability/[string availabilityId]() returns error? { + return; } # Patch availability @@ -118,19 +116,17 @@ http:Service mockService = service object { # + availabilityId - The UUID of the availability schedule. # + return - returns can be any of following types # http:NoContent (If successful, this method returns an empty response body.) - # http:Response (The request has failed.) - resource function patch availability/[string availabilityId](@http:Payload AvailabilityavailabilityIdBody payload) returns http:Response { - http:Response response = new; - response.statusCode = 204; - return response; + # error (The request has failed.) + resource function patch availability/[string availabilityId](@http:Payload AvailabilityavailabilityIdBody payload) returns error? { + return; } # Insert availability # # + return - returns can be any of following types # http:Created (If successful, this method returns an availability resource.) - # http:Response (The request has failed.) - resource function post availability(@http:Payload SchedulerAvailabilityBody payload) returns InlineResponse201|http:Response { + # error (The request has failed.) + resource function post availability(@http:Payload SchedulerAvailabilityBody payload) returns InlineResponse201|error { return { owner: "test-owner@example.com", default: true, @@ -154,8 +150,8 @@ http:Service mockService = service object { # + search - Search term # + return - returns can be any of following types # http:Ok (If successful, this method returns scheduled events.) - # http:Response (The request has failed.) - resource function get events(string? to, string? 'from, int? page_size, string? order_by, string? time_zone, string? next_page_token, boolean? show_deleted, string? event_type, string? user_id, string? search) returns InlineResponse2003|http:Response { + # error (The request has failed.) + resource function get events(string? to, string? 'from, int? page_size, string? order_by, string? time_zone, string? next_page_token, boolean? show_deleted, string? event_type, string? user_id, string? search) returns InlineResponse2003|error { return { items: [ { @@ -177,8 +173,8 @@ http:Service mockService = service object { # + user_id - User ID query parameter # + return - returns can be any of following types # http:Ok (If successful, this method returns the scheduled event resource.) - # http:Response (The request has failed.) - resource function get events/[string eventId](string? user_id) returns InlineResponse2004|http:Response { + # error (The request has failed.) + resource function get events/[string eventId](string? user_id) returns InlineResponse2004|error { return { eventId: eventId, summary: "Test Meeting", @@ -196,11 +192,9 @@ http:Service mockService = service object { # + user_id - User ID query parameter # + return - returns can be any of following types # http:NoContent (If successful, this method returns an empty response body.) - # http:Response (The request has failed.) - resource function delete events/[string eventId](string? user_id) returns http:Response { - http:Response response = new; - response.statusCode = 204; - return response; + # error (The request has failed.) + resource function delete events/[string eventId](string? user_id) returns error? { + return; } # Patch scheduled events @@ -209,11 +203,9 @@ http:Service mockService = service object { # + user_id - User ID query parameter # + return - returns can be any of following types # http:NoContent (If successful, this method returns an event resource.) - # http:Response (The request has failed.) - resource function patch events/[string eventId](@http:Payload EventseventIdBody payload, string? user_id) returns http:Response { - http:Response response = new; - response.statusCode = 204; - return response; + # error (The request has failed.) + resource function patch events/[string eventId](@http:Payload EventseventIdBody payload, string? user_id) returns error? { + return; } # List schedules @@ -227,8 +219,8 @@ http:Service mockService = service object { # + user_id - The specific user's schedules # + return - returns can be any of following types # http:Ok (If successful, this method returns schedules.) - # http:Response (The request has failed.) - resource function get schedules(string? to, string? 'from, int? page_size, string? next_page_token, boolean? show_deleted, string? time_zone, string? user_id) returns InlineResponse2005|http:Response { + # error (The request has failed.) + resource function get schedules(string? to, string? 'from, int? page_size, string? next_page_token, boolean? show_deleted, string? time_zone, string? user_id) returns InlineResponse2005|error { return { items: [ { @@ -250,8 +242,8 @@ http:Service mockService = service object { # + user_id - User ID query parameter # + return - returns can be any of following types # http:Created (If successful, this method returns a schedule resource.) - # http:Response (The request has failed.) - resource function post schedules(@http:Payload SchedulerSchedulesBody payload, string? user_id) returns InlineResponse2011|http:Response { + # error (The request has failed.) + resource function post schedules(@http:Payload SchedulerSchedulesBody payload, string? user_id) returns InlineResponse2011|error { return { scheduleId: "schedule-new-789", summary: payload.summary ?: "Default Summary", @@ -270,8 +262,8 @@ http:Service mockService = service object { # + user_id - User ID query parameter # + return - returns can be any of following types # http:Ok (If successful, this method returns a schedule resource.) - # http:Response (The request has failed.) - resource function get schedules/[string scheduleId](string? user_id) returns InlineResponse2006|http:Response { + # error (The request has failed.) + resource function get schedules/[string scheduleId](string? user_id) returns InlineResponse2006|error { return { scheduleId: scheduleId, summary: "Test Schedule", @@ -290,11 +282,9 @@ http:Service mockService = service object { # + user_id - User ID query parameter # + return - returns can be any of following types # http:NoContent (If successful, this method returns an empty response body.) - # http:Response (The request has failed.) - resource function delete schedules/[string scheduleId](string? user_id) returns http:Response { - http:Response response = new; - response.statusCode = 204; - return response; + # error (The request has failed.) + resource function delete schedules/[string scheduleId](string? user_id) returns error? { + return; } # Patch schedules @@ -303,19 +293,17 @@ http:Service mockService = service object { # + user_id - User ID query parameter # + return - returns can be any of following types # http:NoContent (If successful, this method returns an empty response body.) - # http:Response (The request has failed.) - resource function patch schedules/[string scheduleId](@http:Payload SchedulesscheduleIdBody payload, string? user_id) returns http:Response { - http:Response response = new; - response.statusCode = 204; - return response; + # error (The request has failed.) + resource function patch schedules/[string scheduleId](@http:Payload SchedulesscheduleIdBody payload, string? user_id) returns error? { + return; } # Single use link # # + return - returns can be any of following types # http:Created (If successful, this method returns a scheduling link URL.) - # http:Response (The request has failed.) - resource function post schedules/single_use_link(@http:Payload SchedulesSingleUseLinkBody payload) returns InlineResponse2012|http:Response { + # error (The request has failed.) + resource function post schedules/single_use_link(@http:Payload SchedulesSingleUseLinkBody payload) returns InlineResponse2012|error { return { schedulingUrl: "https://scheduler.zoom.us/single-use/" + payload.scheduleId }; @@ -326,8 +314,8 @@ http:Service mockService = service object { # + userId - The user ID # + return - returns can be any of following types # http:Ok (If successful, this method returns user information.) - # http:Response (The request has failed.) - resource function get users/[string userId]() returns InlineResponse2007|http:Response { + # error (The request has failed.) + resource function get users/[string userId]() returns InlineResponse2007|error { return { displayName: "Test User", schedulingUrl: "https://scheduler.zoom.us/test-user", From a5d86082aaff2d4d5d05f702ed30bfa4b7327ddc Mon Sep 17 00:00:00 2001 From: linukaar Date: Thu, 26 Jun 2025 21:16:32 +0530 Subject: [PATCH 19/22] Add missing details in doc --- README.md | 5 ++++- ballerina/README.md | 5 ++++- 2 files changed, 8 insertions(+), 2 deletions(-) diff --git a/README.md b/README.md index b779d36..f922551 100644 --- a/README.md +++ b/README.md @@ -100,7 +100,10 @@ import ballerinax/zoom.scheduler; 1. Create a `Config.toml` file and, configure the obtained credentials in the above steps as follows: ```bash -token = "" +clientId = "" +clientSecret = "" +refreshToken = "" +userId = "" ``` 2. Create a `zoom.scheduler:ConnectionConfig` with the obtained access token and initialize the connector with it. diff --git a/ballerina/README.md b/ballerina/README.md index b353eda..79ce3a2 100644 --- a/ballerina/README.md +++ b/ballerina/README.md @@ -96,7 +96,10 @@ import ballerinax/zoom.scheduler; 1. Create a `Config.toml` file and, configure the obtained credentials in the above steps as follows: ```bash -token = "" +clientId = "" +clientSecret = "" +refreshToken = "" +userId = "" ``` 2. Create a `zoom.scheduler:ConnectionConfig` with the obtained access token and initialize the connector with it. From 68bf4f1b419b0870ac468969282e0771a6c07a2a Mon Sep 17 00:00:00 2001 From: linukaar Date: Fri, 27 Jun 2025 14:36:28 +0530 Subject: [PATCH 20/22] Add sts service --- ballerina/tests/mock_service.bal | 13 +---- ballerina/tests/sts_service.bal | 53 +++++++++++++++++ ballerina/tests/tests.bal | 97 +++++++++++++++++++++----------- 3 files changed, 117 insertions(+), 46 deletions(-) create mode 100644 ballerina/tests/sts_service.bal diff --git a/ballerina/tests/mock_service.bal b/ballerina/tests/mock_service.bal index 4d9e7f6..fd323f0 100644 --- a/ballerina/tests/mock_service.bal +++ b/ballerina/tests/mock_service.bal @@ -15,11 +15,10 @@ // under the License. import ballerina/http; -import ballerina/log; listener http:Listener httpListener = new (9090); -http:Service mockService = service object { +service / on httpListener { # Report analytics # @@ -323,14 +322,4 @@ http:Service mockService = service object { slug: "test-user" }; } -}; - -function init() returns error? { - if isLiveServer { - log:printInfo("Skipping mock server initialization as the tests are running on live server"); - return; - } - log:printInfo("Initiating mock server"); - check httpListener.attach(mockService, "/"); - check httpListener.'start(); } diff --git a/ballerina/tests/sts_service.bal b/ballerina/tests/sts_service.bal new file mode 100644 index 0000000..bc9820a --- /dev/null +++ b/ballerina/tests/sts_service.bal @@ -0,0 +1,53 @@ +// Copyright (c) 2025, WSO2 LLC. (http://www.wso2.com). +// +// WSO2 LLC. licenses this file to you under the Apache License, +// Version 2.0 (the "License"); you may not use this file except +// in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, +// software distributed under the License is distributed on an +// "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY +// KIND, either express or implied. See the License for the +// specific language governing permissions and limitations +// under the License. + +import ballerina/http; + +configurable int HTTP_STS_PORT = 9444; +configurable int TOKEN_VALIDITY_PERIOD = 10000; + +http:Listener stsListener = check new (HTTP_STS_PORT); + +http:Service sts = service object { + resource function post token() returns json { + return { + "access_token": "test-access-token", + "token_type": "Bearer", + "expires_in": TOKEN_VALIDITY_PERIOD, + "refresh_token": "test-refresh-token", + "scope": "scheduler:read scheduler:write" + }; + } + + resource function post introspect() returns json { + return { + "active": true, + "scope": "scheduler:read scheduler:write", + "client_id": "test-client-id", + "username": "test-user", + "token_type": "Bearer", + "exp": TOKEN_VALIDITY_PERIOD, + "iat": 1419350238, + "nbf": 1419350238, + "sub": "test-user-123", + "aud": "https://api.zoom.us", + "iss": "https://zoom.us/oauth/token", + "jti": "test-jwt-id", + "extension_field": "zoom-scheduler-test", + "scp": "scheduler:read scheduler:write" + }; + } +}; diff --git a/ballerina/tests/tests.bal b/ballerina/tests/tests.bal index 359c4f5..58e9424 100644 --- a/ballerina/tests/tests.bal +++ b/ballerina/tests/tests.bal @@ -14,17 +14,16 @@ // specific language governing permissions and limitations // under the License. -import ballerina/os; import ballerina/test; -configurable boolean isLiveServer = os:getEnv("IS_LIVE_SERVER") == "true"; -configurable string userId = isLiveServer ? os:getEnv("ZOOM_USER_ID") : "test-user-123"; -configurable string serviceUrl = isLiveServer ? "https://api.zoom.us/v2/scheduler" : "http://localhost:9090"; +configurable boolean isLiveServer = false; +configurable string userId = "test-user-123"; +configurable string serviceUrl = "http://localhost:9090"; -configurable string clientId = isLiveServer ? os:getEnv("ZOOM_CLIENT_ID") : "test-client-id"; -configurable string clientSecret = isLiveServer ? os:getEnv("ZOOM_CLIENT_SECRET") : "test-client-secret"; -configurable string refreshToken = isLiveServer ? os:getEnv("ZOOM_REFRESH_TOKEN") : "test-refresh-token"; -configurable string refreshUrl = isLiveServer ? os:getEnv("ZOOM_REFRESH_URL") : "https://zoom.us/oauth/token"; +configurable string clientId = "test-client-id"; +configurable string clientSecret = "test-client-secret"; +configurable string refreshToken = "test-refresh-token"; +configurable string refreshUrl = "http://localhost:9444/token"; ConnectionConfig config = { auth: { @@ -35,42 +34,69 @@ ConnectionConfig config = { } }; -final Client zoomClient = check new Client(config, serviceUrl); +Client? zoomClient = (); + +@test:BeforeSuite +function startMockServices() returns error? { + if !isLiveServer { + _ = check stsListener.attach(sts, "/"); + check stsListener.'start(); + } + + zoomClient = check new Client(config, serviceUrl); +} + +@test:AfterSuite +function stopMockServices() returns error? { + if !isLiveServer { + check stsListener.gracefulStop(); + } +} final string testScheduleId = "test-schedule-456"; +function getClient() returns Client|error { + Client? clientInstance = zoomClient; + if clientInstance is () { + return error("Client not initialized"); + } + return clientInstance; +} + @test:Config { groups: ["live_tests", "mock_tests"] } -isolated function testGetSchedulerAnalytics() returns error? { - InlineResponse200 response = check zoomClient->/analytics.get(userId = userId); +function testGetSchedulerAnalytics() returns error? { + Client zoomClientInstance = check getClient(); + InlineResponse200 response = check zoomClientInstance->/analytics.get(userId = userId); test:assertTrue(response.lastNDays !is ()); } @test:Config { groups: ["live_tests", "mock_tests"] } -isolated function testGetSchedulerAvailability() returns error? { - InlineResponse2001 response = check zoomClient->/availability.get(userId = userId); +function testGetSchedulerAvailability() returns error? { + Client zoomClientInstance = check getClient(); + InlineResponse2001 response = check zoomClientInstance->/availability.get(userId = userId); test:assertTrue(response.items !is ()); } -// This test is enabled only for mock server, as getting a specific user by a test ID is not feasible on the live server. @test:Config { enable: !isLiveServer, groups: ["mock_tests"] } -isolated function testGetSchedulerUser() returns error? { - InlineResponse2007 response = check zoomClient->/users/[userId].get(); +function testGetSchedulerUser() returns error? { + Client zoomClientInstance = check getClient(); + InlineResponse2007 response = check zoomClientInstance->/users/[userId].get(); test:assertTrue(response.displayName !is ()); } -// This test is enabled only for mock server, as creating arbitrary schedules may not be desirable or permissible on the live server. @test:Config { enable: !isLiveServer, groups: ["mock_tests"] } -isolated function testCreateSchedule() returns error? { +function testCreateSchedule() returns error? { + Client zoomClientInstance = check getClient(); SchedulerSchedulesBody schedulePayload = { summary: "Test Schedule", duration: 30, @@ -82,46 +108,48 @@ isolated function testCreateSchedule() returns error? { availabilityOverride: false }; - InlineResponse2011 response = check zoomClient->/schedules.post(payload = schedulePayload, userId = userId); + InlineResponse2011 response = check zoomClientInstance->/schedules.post(payload = schedulePayload, userId = userId); test:assertTrue(response.scheduleId !is ()); } -// This test is enabled only for mock server, as it relies on a hardcoded, non-existent schedule ID. @test:Config { enable: !isLiveServer, groups: ["mock_tests"] } -isolated function testGetSchedule() returns error? { - InlineResponse2006 response = check zoomClient->/schedules/[testScheduleId].get(userId = userId); +function testGetSchedule() returns error? { + Client zoomClientInstance = check getClient(); + InlineResponse2006 response = check zoomClientInstance->/schedules/[testScheduleId].get(userId = userId); test:assertTrue(response.summary !is ()); } @test:Config { groups: ["live_tests", "mock_tests"] } -isolated function testListSchedules() returns error? { - InlineResponse2005 response = check zoomClient->/schedules.get(userId = userId, pageSize = 10); +function testListSchedules() returns error? { + Client zoomClientInstance = check getClient(); + InlineResponse2005 response = check zoomClientInstance->/schedules.get(userId = userId, pageSize = 10); test:assertTrue(response.items !is ()); } @test:Config { groups: ["live_tests", "mock_tests"] } -isolated function testGetSchedulerAnalyticsWithDateRange() returns error? { +function testGetSchedulerAnalyticsWithDateRange() returns error? { + Client zoomClientInstance = check getClient(); string fromDate = "2024-01-01"; string toDate = "2024-12-31"; - InlineResponse200 response = check zoomClient->/analytics.get(userId = userId, 'from = fromDate, to = toDate); + InlineResponse200 response = check zoomClientInstance->/analytics.get(userId = userId, 'from = fromDate, to = toDate); test:assertTrue(response.lastNDays !is ()); } -// This test is enabled only for mock server, as it uses a fake pagination token. @test:Config { enable: !isLiveServer, groups: ["mock_tests"] } -isolated function testListSchedulesWithPagination() returns error? { - InlineResponse2005 response = check zoomClient->/schedules.get( +function testListSchedulesWithPagination() returns error? { + Client zoomClientInstance = check getClient(); + InlineResponse2005 response = check zoomClientInstance->/schedules.get( userId = userId, pageSize = 5, nextPageToken = "test-pagination-token" @@ -129,12 +157,12 @@ isolated function testListSchedulesWithPagination() returns error? { test:assertTrue(response.items !is ()); } -// This test is enabled only for mock server to validate complex payload structures. @test:Config { enable: !isLiveServer, groups: ["mock_tests"] } -isolated function testCreateScheduleWithComplexRules() returns error? { +function testCreateScheduleWithComplexRules() returns error? { + Client zoomClientInstance = check getClient(); SchedulerSchedulesBody schedulePayload = { summary: "Complex Schedule", duration: 60, @@ -152,14 +180,15 @@ isolated function testCreateScheduleWithComplexRules() returns error? { availabilityOverride: false }; - InlineResponse2011 response = check zoomClient->/schedules.post(payload = schedulePayload, userId = userId); + InlineResponse2011 response = check zoomClientInstance->/schedules.post(payload = schedulePayload, userId = userId); test:assertTrue(response.scheduleId !is ()); } @test:Config { groups: ["live_tests", "mock_tests"] } -isolated function testListScheduledEvents() returns error? { - InlineResponse2003 response = check zoomClient->/events.get(userId = userId, pageSize = 10); +function testListScheduledEvents() returns error? { + Client zoomClientInstance = check getClient(); + InlineResponse2003 response = check zoomClientInstance->/events.get(userId = userId, pageSize = 10); test:assertTrue(response.items !is ()); } From 084e64c3abf1c45f7b5a6b5bead5b02f784beff5 Mon Sep 17 00:00:00 2001 From: linukaar Date: Fri, 27 Jun 2025 16:57:41 +0530 Subject: [PATCH 21/22] Update formatting in README --- README.md | 4 ++-- ballerina/README.md | 4 ++-- 2 files changed, 4 insertions(+), 4 deletions(-) diff --git a/README.md b/README.md index f922551..d9a6d27 100644 --- a/README.md +++ b/README.md @@ -152,9 +152,9 @@ bal run The `Zoom Scheduler` connector provides practical examples illustrating usage in various scenarios. Explore these [examples](https://github.com/module-ballerinax-zoom.scheduler/tree/main/examples/), covering the following use cases: -* **[Meeting Scheduler](https://github.com/ballerina-platform/module-ballerinax-zoom.scheduler/tree/main/examples/meeting-scheduler)** - Create scheduled meetings, generate single-use scheduling links, and manage team meeting schedules with automated booking capabilities. +1. **[Meeting Scheduler](https://github.com/ballerina-platform/module-ballerinax-zoom.scheduler/tree/main/examples/meeting-scheduler)** - Create scheduled meetings, generate single-use scheduling links, and manage team meeting schedules with automated booking capabilities. -* **[Availability Manager](https://github.com/ballerina-platform/module-ballerinax-zoom.scheduler/tree/main/examples/availability-manager)** - Configure availability schedules, analyze scheduler analytics, and manage working hours for different time zones and business requirements. +2. **[Availability Manager](https://github.com/ballerina-platform/module-ballerinax-zoom.scheduler/tree/main/examples/availability-manager)** - Configure availability schedules, analyze scheduler analytics, and manage working hours for different time zones and business requirements. ## Issues and projects diff --git a/ballerina/README.md b/ballerina/README.md index 79ce3a2..0f91929 100644 --- a/ballerina/README.md +++ b/ballerina/README.md @@ -149,6 +149,6 @@ bal run The `Zoom Scheduler` connector provides practical examples illustrating usage in various scenarios. Explore these [examples](https://github.com/module-ballerinax-zoom.scheduler/tree/main/examples/), covering the following use cases: -* **[Meeting Scheduler](https://github.com/ballerina-platform/module-ballerinax-zoom.scheduler/tree/main/examples/meeting-scheduler)** - Create scheduled meetings, generate single-use scheduling links, and manage team meeting schedules with automated booking capabilities. +1. **[Meeting Scheduler](https://github.com/ballerina-platform/module-ballerinax-zoom.scheduler/tree/main/examples/meeting-scheduler)** - Create scheduled meetings, generate single-use scheduling links, and manage team meeting schedules with automated booking capabilities. -* **[Availability Manager](https://github.com/ballerina-platform/module-ballerinax-zoom.scheduler/tree/main/examples/availability-manager)** - Configure availability schedules, analyze scheduler analytics, and manage working hours for different time zones and business requirements. +2. **[Availability Manager](https://github.com/ballerina-platform/module-ballerinax-zoom.scheduler/tree/main/examples/availability-manager)** - Configure availability schedules, analyze scheduler analytics, and manage working hours for different time zones and business requirements. From 6b92ce7357a2aa4c828d7fd31f589dd8659a8672 Mon Sep 17 00:00:00 2001 From: linukaar Date: Fri, 27 Jun 2025 20:13:23 +0530 Subject: [PATCH 22/22] Improve clarity in README files --- README.md | 16 ++++++++-------- ballerina/README.md | 16 ++++++++-------- ballerina/tests/README.md | 23 ++++++++++++++--------- 3 files changed, 30 insertions(+), 25 deletions(-) diff --git a/README.md b/README.md index d9a6d27..4c394a7 100644 --- a/README.md +++ b/README.md @@ -8,7 +8,7 @@ [Zoom](https://www.zoom.com/) is a video communications platform that enables users to schedule, host, and join virtual meetings, webinars, and conferences. -The `ballerinax/zoom.scheduler` package offers APIs to connect ant interract with [Zoom Scheduler](https://developers.zoom.us/docs/api/scheduler) endpoints. specifically based on Zoom API v2. +The `ballerinax/zoom.scheduler` package offers APIs to connect and interact with [Zoom Scheduler](https://developers.zoom.us/docs/api/scheduler) endpoints, specifically based on Zoom API v2. ## Setup guide @@ -30,7 +30,7 @@ To use the `ballerinax/zoom.scheduler` connector, you must have access to the Zo ### Step 2: Configure OAuth Settings -3. **Note down your credentials**: +1. **Note down your credentials**: * Client ID * Client Secret @@ -70,11 +70,11 @@ curl -X POST https://zoom.us/oauth/token \ This returns both `access_token` and `refresh_token`. -* Replace: - * `CLIENT_ID` with your app's Client ID - * `CLIENT_SECRET` with your app's Client Secret - * `AUTHORIZATION_CODE` with the code received from the callback - * `YOUR_REDIRECT_URI` with your configured redirect URI +Replace: +* `CLIENT_ID` with your app's Client ID +* `CLIENT_SECRET` with your app's Client Secret +* `AUTHORIZATION_CODE` with the code received from the callback +* `YOUR_REDIRECT_URI` with your configured redirect URI ### Step 5: Verify Your Setup ```curl @@ -101,7 +101,7 @@ import ballerinax/zoom.scheduler; ```bash clientId = "" -clientSecret = "" +clientSecret = "" refreshToken = "" userId = "" ``` diff --git a/ballerina/README.md b/ballerina/README.md index 0f91929..e1ac1e4 100644 --- a/ballerina/README.md +++ b/ballerina/README.md @@ -2,7 +2,7 @@ [Zoom](https://www.zoom.com/) is a video communications platform that enables users to schedule, host, and join virtual meetings, webinars, and conferences. -The `ballerinax/zoom.scheduler` package offers APIs to connect ant interract with [Zoom Scheduler](https://developers.zoom.us/docs/api/scheduler) endpoints. specifically based on Zoom API v2. +The `ballerinax/zoom.scheduler` package offers APIs to connect and interact with [Zoom Scheduler](https://developers.zoom.us/docs/api/scheduler) endpoints, specifically based on Zoom API v2. ## Setup guide @@ -25,14 +25,14 @@ To use the Zoom scheduler connector, you must have access to the Zoom API throug ### Step 2: Configure OAuth Settings 1. **Note down your credentials**: - * Client ID/main/docs/setup/resources/app-credentials.png) + * Client ID + * Client Secret -2. **Set Redirect URI**: Add your application's redirect URI (e.g., `http://localhost:8080/callback`) + ![App Credentials](https://raw.githubusercontent.com/ballerina-platform/module-ballerinax-zoom.scheduler/refs/heads/main/docs/setup/resources/app-credentials.png) - ![Redirect URI](https://raw.githubusercontent.com/ballerina-platform/module-ballerinax-zoom.scheduler/refs/hea - * Client Secret +2. **Set Redirect URI**: Add your application's redirect URI (e.g., `http://localhost:8080/callback`) - ![App Credentials](https://raw.githubusercontent.com/ballerina-platform/module-ballerinax-zoom.scheduler/refs/headsds/main/docs/setup/resources/redirect-URI.png) + ![Redirect URI](https://raw.githubusercontent.com/ballerina-platform/module-ballerinax-zoom.scheduler/refs/heads/main/docs/setup/resources/redirect-URI.png) 3. **Add Scopes**: Make sure your Zoom app has the necessary scopes for the Scheduler API: * Add `scheduler:read`, `scheduler:write` and `user:read` in the scope @@ -97,9 +97,9 @@ import ballerinax/zoom.scheduler; ```bash clientId = "" -clientSecret = "" +clientSecret = "" refreshToken = "" -userId = "" +userId = "" ``` 2. Create a `zoom.scheduler:ConnectionConfig` with the obtained access token and initialize the connector with it. diff --git a/ballerina/tests/README.md b/ballerina/tests/README.md index e3b1538..a86608a 100644 --- a/ballerina/tests/README.md +++ b/ballerina/tests/README.md @@ -1,12 +1,15 @@ # Running Tests ## Prerequisites -You need a Access token from Zoom developer account. +You need an access token from a Zoom developer account. To do this, refer to [Ballerina Zoom Connector](https://github.com/ballerina-platform/module-ballerinax-zoom.scheduler/blob/main/ballerina/README.md). -And You need Find Your User ID For run some of the tests. -Via This Website you can find it. +And You need Find Your User ID to run some of the tests by running this curl command. +```curl +curl -X GET "https://api.zoom.us/v2/users/me" \ +-H "Authorization: Bearer YOUR_ACCESS_TOKEN" +``` # Running Tests @@ -16,7 +19,7 @@ You can run the tests in either of these environments and each has its own compa Test Groups | Environment -------------|--------------------------------------------------- - mock_tests | Mock server for Zoom API (Defualt Environment) + mock_tests | Mock server for Zoom API (Default Environment) live_tests | Zoom API ## Running Tests in the Mock Server @@ -36,11 +39,12 @@ isLiveServer = false #### Using Environment Variables Alternatively, you can set your authentication credentials as environment variables: -If you are using linux or mac, you can use following method: + +If you are using Linux or Mac, you can use the following method: ```bash export IS_LIVE_SERVER=false ``` -If you are using Windows you can use following method: +If you are using Windows, you can use the following method: ```bash setx IS_LIVE_SERVER false ``` @@ -54,7 +58,7 @@ Then, run the following command to run the tests: #### Using a Config.toml File -Create a `Config.toml` file in the tests directory and add your authentication credentials a +Create a `Config.toml` file in the tests directory and add your authentication credentials as follows: ```toml isLiveServer = true @@ -68,7 +72,8 @@ Create a `Config.toml` file in the tests directory and add your authentication c #### Using Environment Variables Alternatively, you can set your authentication credentials as environment variables: -If you are using linux or mac, you can use following method: + +If you are using Linux or Mac, you can use the following method: ```bash export IS_LIVE_SERVER="true" export ZOOM_CLIENT_ID="your_client_id" @@ -77,7 +82,7 @@ If you are using linux or mac, you can use following method: export ZOOM_USER_ID="user_id_from_step5" ``` -If you are using Windows you can use following method: +If you are using Windows, you can use the following method: ```bash setx IS_LIVE_SERVER true setx ZOOM_CLIENT_ID "your_client_id"

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�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%0AQHcvY&L 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 7FY4Tb&aXgvdKLC&TNHqONUK=5U>= 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 wO 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