diff --git a/CHANGES.md b/CHANGES.md index 8671bb3b..fb5dec4d 100644 --- a/CHANGES.md +++ b/CHANGES.md @@ -1,5 +1,11 @@ twilio-oai changelog ==================== +[2025-01-13] Version 2.1.10 +--------------------------- +**Messaging** +- Adds validity period Default value in service resource documentation + + [2025-01-09] Version 2.1.9 -------------------------- **Numbers** diff --git a/spec/json/twilio_api_v2010.json b/spec/json/twilio_api_v2010.json index ab751279..f75797aa 100644 --- a/spec/json/twilio_api_v2010.json +++ b/spec/json/twilio_api_v2010.json @@ -5996,6 +5996,7 @@ "items": { "type": "object", "format": "ice-server", + "x-class-extra-annotation": "@JsonInclude(JsonInclude.Include.NON_NULL)", "properties": { "credential": { "type": "string" @@ -32452,7 +32453,7 @@ }, "IntelligenceService": { "type": "string", - "description": "The SID or the unique name of the [Voice Intelligence Service](https://www.twilio.com/docs/voice/intelligence/api/service-resource) to process the transcription." + "description": "The SID of the [Voice Intelligence Service](https://www.twilio.com/docs/voice/intelligence/api/service-resource) for persisting transcripts and running post-call Language Operators ." } } }, diff --git a/spec/json/twilio_conversations_v1.json b/spec/json/twilio_conversations_v1.json index 0a18b50e..fb663d56 100644 --- a/spec/json/twilio_conversations_v1.json +++ b/spec/json/twilio_conversations_v1.json @@ -176,7 +176,7 @@ "type": "string" }, "nullable": true, - "description": "The list of webhook event triggers that are enabled for this Service: `onMessageAdded`, `onMessageUpdated`, `onMessageRemoved`, `onConversationUpdated`, `onConversationRemoved`, `onParticipantAdded`, `onParticipantUpdated`, `onParticipantRemoved`" + "description": "The list of webhook event triggers that are enabled for this Service: `onMessageAdded`, `onMessageUpdated`, `onMessageRemoved`, `onMessageAdd`, `onMessageUpdate`, `onMessageRemove`, `onConversationUpdated`, `onConversationRemoved`, `onConversationAdd`, `onConversationAdded`, `onConversationRemove`, `onConversationUpdate`, `onConversationStateUpdated`, `onParticipantAdded`, `onParticipantUpdated`, `onParticipantRemoved`, `onParticipantAdd`, `onParticipantRemove`, `onParticipantUpdate`, `onDeliveryUpdated`, `onUserAdded`, `onUserUpdate`, `onUserUpdated`" }, "pre_webhook_url": { "type": "string", @@ -4149,7 +4149,7 @@ "items": { "type": "string" }, - "description": "The list of webhook event triggers that are enabled for this Service: `onMessageAdded`, `onMessageUpdated`, `onMessageRemoved`, `onConversationUpdated`, `onConversationRemoved`, `onParticipantAdded`, `onParticipantUpdated`, `onParticipantRemoved`" + "description": "The list of webhook event triggers that are enabled for this Service: `onMessageAdded`, `onMessageUpdated`, `onMessageRemoved`, `onMessageAdd`, `onMessageUpdate`, `onMessageRemove`, `onConversationUpdated`, `onConversationRemoved`, `onConversationAdd`, `onConversationAdded`, `onConversationRemove`, `onConversationUpdate`, `onConversationStateUpdated`, `onParticipantAdded`, `onParticipantUpdated`, `onParticipantRemoved`, `onParticipantAdd`, `onParticipantRemove`, `onParticipantUpdate`, `onDeliveryUpdated`, `onUserAdded`, `onUserUpdate`, `onUserUpdated`" }, "PreWebhookUrl": { "type": "string", diff --git a/spec/json/twilio_iam_v1.json b/spec/json/twilio_iam_v1.json index 661fd38e..aad18df0 100644 --- a/spec/json/twilio_iam_v1.json +++ b/spec/json/twilio_iam_v1.json @@ -184,8 +184,6 @@ "friendly_name", "date_created" ], - "mountName": "get_api_keys", - "className": "get_api_keys", "pathType": "list" }, "get": { @@ -379,7 +377,11 @@ "accountSid_authToken": [] } ], - "operationId": "ListGetKeys" + "operationId": "ListGetKeys", + "x-twilio": { + "mountName": "get_api_keys", + "className": "get_api_keys" + } }, "post": { "description": "Create a new Signing Key for the account making the request.", @@ -515,9 +517,6 @@ } } } - }, - "x-twilio": { - "mountName": "new_api_key" } } }, diff --git a/spec/json/twilio_marketplace_v1.json b/spec/json/twilio_marketplace_v1.json index 5683e16d..0165f6fb 100644 --- a/spec/json/twilio_marketplace_v1.json +++ b/spec/json/twilio_marketplace_v1.json @@ -35,6 +35,7 @@ }, "configuration_schema": { "nullable": true, + "type": "object", "description": "The JSON object with the configuration that must be provided when installing a given Add-on." }, "url": { @@ -124,6 +125,7 @@ }, "configuration": { "nullable": true, + "type": "object", "description": "The JSON object that represents the current configuration of installed Add-on." }, "unique_name": { @@ -290,30 +292,37 @@ }, "description": { "nullable": true, + "type": "object", "description": "A JSON object describing the module and is displayed under the Description tab of the Module detail page. You can define the main body of the description, highlight key features or aspects of the module and if applicable, provide code samples for developers" }, "support": { "nullable": true, + "type": "object", "description": "A JSON object containing information on how customers can obtain support for the module. Use this parameter to provide details such as contact information and support description." }, "policies": { "nullable": true, + "type": "object", "description": "A JSON object describing the module's privacy and legal policies and is displayed under the Policies tab of the Module detail page. The maximum file size for Policies is 5MB" }, "module_info": { "nullable": true, + "type": "object", "description": "A JSON object containing essential attributes that define a module. This information is presented on the Module detail page in the Twilio Marketplace Catalog. You can pass the following attributes in the JSON object" }, "documentation": { "nullable": true, + "type": "object", "description": "A JSON object for providing comprehensive information, instructions, and resources related to the module" }, "configuration": { "nullable": true, + "type": "object", "description": "A JSON object for providing listing specific configuration. Contains button setup, notification url, among others." }, "pricing": { "nullable": true, + "type": "object", "description": "A JSON object for providing Listing specific pricing information." } } @@ -383,6 +392,33 @@ "description": "The absolute URL of the resource." } } + }, + "marketplace.v1.TwilioServiceErrorResponse": { + "type": "object", + "properties": { + "code": { + "type": "integer", + "format": "int32", + "nullable": false + }, + "message": { + "type": "string", + "nullable": false + }, + "params": { + "type": "object", + "nullable": true + }, + "more_info": { + "description": "Link to Error Code References", + "type": "string" + }, + "status": { + "description": "HTTP response status code", + "type": "integer", + "format": "int32" + } + } } } }, @@ -1134,7 +1170,7 @@ "content": { "application/json": { "schema": { - "type": "object", + "$ref": "#/components/schemas/marketplace.v1.TwilioServiceErrorResponse", "x-jvm-type": "com.twilio.rest.TwilioServiceErrorResponse" } } @@ -2304,7 +2340,7 @@ "content": { "application/json": { "schema": { - "type": "object", + "$ref": "#/components/schemas/marketplace.v1.TwilioServiceErrorResponse", "x-jvm-type": "com.twilio.rest.TwilioServiceErrorResponse" } } @@ -2382,6 +2418,280 @@ } } }, + "/v1/Listings": { + "servers": [ + { + "url": "https://marketplace.twilio.com" + } + ], + "description": "", + "x-twilio": { + "defaultOutputProperties": [], + "mountName": "module_data", + "pathType": "list" + }, + "post": { + "description": "This endpoint creates a Listing based on the given data.", + "tags": [ + "MarketplaceModuleData" + ], + "responses": { + "200": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/marketplace.v1.module_data_management" + }, + "examples": { + "created": { + "value": { + "sid": "XBaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa", + "url": "https://marketplace.twilio.com/v1/Listing/XBaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa", + "description": { + "body": "aBody", + "highlights": [ + { + "title": "aTitle", + "description": "aDescription" + } + ], + "code_samples": [ + { + "title": "aTitle", + "description": "aDescription", + "code": "aCode" + } + ] + }, + "support": { + "customer_support_email": "anEmail", + "customer_support_phone": "+1 888-888-8888", + "support_description": "aDescription", + "billing_email": "anEmail", + "billing_phone": "+1 888-888-8888", + "technical_email": "anEmail", + "technical_phone": "+1 888-888-8888" + }, + "policies": { + "privacy": "someUrl", + "legal": "someOtherUrl" + }, + "module_info": { + "tag": "Description", + "tagline": "aTagline", + "logo_url": "aUrl", + "logo_bg_color_hex": "#ff5722" + }, + "documentation": { + "body": "aBody" + }, + "pricing": { + "body": "Basic plan - $10/month" + }, + "configuration": { + "buttons": [ + { + "url": "https://example.com", + "label": "Configurable button text", + "help_text": "The button text, url, and help text are now configurable via self service" + } + ], + "notification_configuration": { + "callback_url": "https://example.com" + } + } + } + } + } + } + }, + "headers": { + "Access-Control-Allow-Origin": { + "description": "Specify the origin(s) allowed to access the resource", + "schema": { + "type": "string" + }, + "example": "*" + }, + "Access-Control-Allow-Methods": { + "description": "Specify the HTTP methods allowed when accessing the resource", + "schema": { + "type": "string" + }, + "example": "POST, OPTIONS" + }, + "Access-Control-Allow-Headers": { + "description": "Specify the headers allowed when accessing the resource", + "schema": { + "type": "string" + }, + "example": "Content-Type, Authorization" + }, + "Access-Control-Allow-Credentials": { + "description": "Indicates whether the browser should include credentials", + "schema": { + "type": "boolean" + } + }, + "Access-Control-Expose-Headers": { + "description": "Headers exposed to the client", + "schema": { + "type": "string", + "example": "X-Custom-Header1, X-Custom-Header2" + } + } + }, + "description": "OK" + } + }, + "security": [ + { + "accountSid_authToken": [] + } + ], + "operationId": "CreateModuleData", + "requestBody": { + "content": { + "application/x-www-form-urlencoded": { + "schema": { + "type": "object", + "title": "CreateModuleDataRequest", + "properties": { + "ModuleInfo": { + "type": "string", + "description": "A JSON object containing essential attributes that define a Listing." + }, + "Configuration": { + "type": "string", + "description": "A JSON object for providing Listing-specific configuration. Contains button setup, notification URL, and more." + } + } + }, + "examples": { + "create": { + "value": { + "ModuleInfo": { + "name": "My Company Marketplace Listing", + "short_description": "Short description on what the Company does.", + "tagline": "My Company Subheadline", + "logo_url": "https://mycompany.com/image.png", + "provider_web_url": "https://www.sampleurl.com", + "provider_name": "My Company Name", + "logo_bg_color_hex": "#ff5722" + }, + "Configuration": { + "buttons": [ + { + "url": "https://mycompanysignup.com", + "label": "Setup Account", + "help_text": "Help caption for the button" + } + ], + "notification_configuration": { + "callback_url": "https://example.com", + "notification_events": [ + "module_install" + ] + } + } + } + } + } + } + } + } + }, + "get": { + "description": "This endpoint returns the Listings owned by the authenticated Account.", + "tags": [ + "MarketplaceModuleData" + ], + "responses": { + "200": { + "content": { + "application/json": { + "schema": { + "type": "object", + "properties": { + "listings": { + "nullable": false, + "description": "", + "type": "array", + "items": { + "type": "object" + } + } + } + }, + "examples": { + "fetch": { + "value": { + "listings": [ + { + "tag": "Description1", + "tagline": "aTagline1", + "logo_url": "aUrl1", + "logo_bg_color_hex": "#ff5722" + }, + { + "tag": "Description2", + "tagline": "aTagline2", + "logo_url": "aUrl2", + "logo_bg_color_hex": "#ff5722" + } + ] + } + } + } + } + }, + "headers": { + "Access-Control-Allow-Origin": { + "description": "Specify the origin(s) allowed to access the resource", + "schema": { + "type": "string" + }, + "example": "*" + }, + "Access-Control-Allow-Methods": { + "description": "Specify the HTTP methods allowed when accessing the resource", + "schema": { + "type": "string" + }, + "example": "POST, OPTIONS" + }, + "Access-Control-Allow-Headers": { + "description": "Specify the headers allowed when accessing the resource", + "schema": { + "type": "string" + }, + "example": "Content-Type, Authorization" + }, + "Access-Control-Allow-Credentials": { + "description": "Indicates whether the browser should include credentials", + "schema": { + "type": "boolean" + } + }, + "Access-Control-Expose-Headers": { + "description": "Headers exposed to the client", + "schema": { + "type": "string", + "example": "X-Custom-Header1, X-Custom-Header2" + } + } + }, + "description": "OK" + } + }, + "security": [ + { + "accountSid_authToken": [] + } + ], + "operationId": "FetchModuleDataForListingOwner" + } + }, "/v1/Listing/{Sid}": { "servers": [ { @@ -2805,6 +3115,9 @@ { "name": "MarketplaceModuleDataManagement" }, + { + "name": "MarketplaceModuleData" + }, { "name": "MarketplaceReferralConversion" } diff --git a/spec/json/twilio_messaging_v1.json b/spec/json/twilio_messaging_v1.json index d7a54da3..48ea81ef 100644 --- a/spec/json/twilio_messaging_v1.json +++ b/spec/json/twilio_messaging_v1.json @@ -904,7 +904,7 @@ "validity_period": { "type": "integer", "default": 0, - "description": "How long, in seconds, messages sent from the Service are valid. Can be an integer from `1` to `14,400`." + "description": "How long, in seconds, messages sent from the Service are valid. Can be an integer from `1` to `14,400`. Default value is `14,400`." }, "url": { "type": "string", @@ -5971,7 +5971,7 @@ }, "ValidityPeriod": { "type": "integer", - "description": "How long, in seconds, messages sent from the Service are valid. Can be an integer from `1` to `14,400`." + "description": "How long, in seconds, messages sent from the Service are valid. Can be an integer from `1` to `14,400`. Default value is `14,400`." }, "SynchronousValidation": { "type": "boolean", @@ -6444,7 +6444,7 @@ }, "ValidityPeriod": { "type": "integer", - "description": "How long, in seconds, messages sent from the Service are valid. Can be an integer from `1` to `14,400`." + "description": "How long, in seconds, messages sent from the Service are valid. Can be an integer from `1` to `14,400`. Default value is `14,400`." }, "SynchronousValidation": { "type": "boolean", diff --git a/spec/json/twilio_numbers_v1.json b/spec/json/twilio_numbers_v1.json index 43b595a9..37f17ddc 100644 --- a/spec/json/twilio_numbers_v1.json +++ b/spec/json/twilio_numbers_v1.json @@ -1543,7 +1543,6 @@ "description": "", "x-twilio": { "defaultOutputProperties": [], - "mountName": "porting_webhook_configurations", "pathType": "list" }, "post": { @@ -1638,6 +1637,9 @@ } } } + }, + "x-twilio": { + "mountName": "porting_webhook_configurations" } }, "get": { @@ -1723,10 +1725,7 @@ "accountSid_authToken": [] } ], - "operationId": "FetchPortingWebhookConfigurationFetch", - "x-twilio": { - "mountName": "porting_webhook_configuration_fetch" - } + "operationId": "FetchPortingWebhookConfigurationFetch" } }, "/v1/Porting/Configuration/Webhook/{WebhookType}": { diff --git a/spec/json/twilio_video_v1.json b/spec/json/twilio_video_v1.json index f99cbe59..6c7d6847 100644 --- a/spec/json/twilio_video_v1.json +++ b/spec/json/twilio_video_v1.json @@ -1294,6 +1294,7 @@ "items": { "type": "object", "format": "recording-rule", + "x-class-extra-annotation": "@JsonInclude(JsonInclude.Include.NON_NULL)", "properties": { "type": { "type": "string" @@ -3425,10 +3426,10 @@ }, "examples": { "readEmpty": { - "value": "source_sid" + "value": "MTaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa" }, "readResults": { - "value": "source_sid" + "value": "MTaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa" } } }, @@ -3448,8 +3449,7 @@ "examples": { "readEmpty": { "value": [ - "RMaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa", - "PAaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa" + "RMaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa" ] }, "readResults": { @@ -3587,9 +3587,9 @@ "meta": { "page": 0, "page_size": 50, - "first_page_url": "https://video.twilio.com/v1/Recordings?Status=completed&SourceSid=source_sid&MediaType=audio&GroupingSid=RMaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa&PageSize=50&Page=0", + "first_page_url": "https://video.twilio.com/v1/Recordings?Status=completed&SourceSid=MTaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa&MediaType=audio&GroupingSid=RMaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa&PageSize=50&Page=0", "previous_page_url": null, - "url": "https://video.twilio.com/v1/Recordings?Status=completed&SourceSid=source_sid&MediaType=audio&GroupingSid=RMaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa&PageSize=50&Page=0", + "url": "https://video.twilio.com/v1/Recordings?Status=completed&SourceSid=MTaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa&MediaType=audio&GroupingSid=RMaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa&PageSize=50&Page=0", "next_page_url": null, "key": "recordings" } @@ -3630,9 +3630,9 @@ "meta": { "page": 0, "page_size": 50, - "first_page_url": "https://video.twilio.com/v1/Recordings?Status=completed&DateCreatedAfter=2017-01-01T00%3A00%3A01Z&DateCreatedBefore=2017-12-31T23%3A59%3A59Z&SourceSid=source_sid&MediaType=audio&GroupingSid=RMaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa&PageSize=50&Page=0", + "first_page_url": "https://video.twilio.com/v1/Recordings?Status=completed&DateCreatedAfter=2017-01-01T00%3A00%3A01Z&DateCreatedBefore=2017-12-31T23%3A59%3A59Z&SourceSid=MTaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa&MediaType=audio&GroupingSid=RMaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa&PageSize=50&Page=0", "previous_page_url": null, - "url": "https://video.twilio.com/v1/Recordings?Status=completed&DateCreatedAfter=2017-01-01T00%3A00%3A01Z&DateCreatedBefore=2017-12-31T23%3A59%3A59Z&SourceSid=source_sid&MediaType=audio&GroupingSid=RMaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa&PageSize=50&Page=0", + "url": "https://video.twilio.com/v1/Recordings?Status=completed&DateCreatedAfter=2017-01-01T00%3A00%3A01Z&DateCreatedBefore=2017-12-31T23%3A59%3A59Z&SourceSid=MTaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa&MediaType=audio&GroupingSid=RMaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa&PageSize=50&Page=0", "next_page_url": null, "key": "recordings" } @@ -6679,7 +6679,7 @@ }, "examples": { "readResults": { - "value": "source_sid" + "value": "MTaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa" } } }, @@ -6836,9 +6836,9 @@ "meta": { "page": 0, "page_size": 50, - "first_page_url": "https://video.twilio.com/v1/Rooms/RMaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa/Recordings?Status=completed&DateCreatedBefore=2017-12-31T23%3A59%3A59Z&DateCreatedAfter=2017-01-01T00%3A00%3A01Z&SourceSid=source_sid&PageSize=50&Page=0", + "first_page_url": "https://video.twilio.com/v1/Rooms/RMaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa/Recordings?Status=completed&DateCreatedBefore=2017-12-31T23%3A59%3A59Z&DateCreatedAfter=2017-01-01T00%3A00%3A01Z&SourceSid=MTaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa&PageSize=50&Page=0", "previous_page_url": null, - "url": "https://video.twilio.com/v1/Rooms/RMaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa/Recordings?Status=completed&DateCreatedBefore=2017-12-31T23%3A59%3A59Z&DateCreatedAfter=2017-01-01T00%3A00%3A01Z&SourceSid=source_sid&PageSize=50&Page=0", + "url": "https://video.twilio.com/v1/Rooms/RMaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa/Recordings?Status=completed&DateCreatedBefore=2017-12-31T23%3A59%3A59Z&DateCreatedAfter=2017-01-01T00%3A00%3A01Z&SourceSid=MTaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa&PageSize=50&Page=0", "next_page_url": null, "key": "recordings" } diff --git a/spec/yaml/twilio_api_v2010.yaml b/spec/yaml/twilio_api_v2010.yaml index ac10b741..74d5f1fc 100644 --- a/spec/yaml/twilio_api_v2010.yaml +++ b/spec/yaml/twilio_api_v2010.yaml @@ -5611,6 +5611,7 @@ components: items: type: object format: ice-server + x-class-extra-annotation: '@JsonInclude(JsonInclude.Include.NON_NULL)' properties: credential: type: string @@ -26894,9 +26895,9 @@ paths: description: The provider will add punctuation to recognition result IntelligenceService: type: string - description: The SID or the unique name of the [Voice Intelligence - Service](https://www.twilio.com/docs/voice/intelligence/api/service-resource) - to process the transcription. + description: The SID of the [Voice Intelligence Service](https://www.twilio.com/docs/voice/intelligence/api/service-resource) + for persisting transcripts and running post-call Language Operators + . examples: createNoArgs: value: {} diff --git a/spec/yaml/twilio_conversations_v1.yaml b/spec/yaml/twilio_conversations_v1.yaml index 65a0c8b1..81a09182 100644 --- a/spec/yaml/twilio_conversations_v1.yaml +++ b/spec/yaml/twilio_conversations_v1.yaml @@ -153,9 +153,12 @@ components: type: string nullable: true description: 'The list of webhook event triggers that are enabled for this - Service: `onMessageAdded`, `onMessageUpdated`, `onMessageRemoved`, `onConversationUpdated`, - `onConversationRemoved`, `onParticipantAdded`, `onParticipantUpdated`, - `onParticipantRemoved`' + Service: `onMessageAdded`, `onMessageUpdated`, `onMessageRemoved`, `onMessageAdd`, + `onMessageUpdate`, `onMessageRemove`, `onConversationUpdated`, `onConversationRemoved`, + `onConversationAdd`, `onConversationAdded`, `onConversationRemove`, `onConversationUpdate`, + `onConversationStateUpdated`, `onParticipantAdded`, `onParticipantUpdated`, + `onParticipantRemoved`, `onParticipantAdd`, `onParticipantRemove`, `onParticipantUpdate`, + `onDeliveryUpdated`, `onUserAdded`, `onUserUpdate`, `onUserUpdated`' pre_webhook_url: type: string nullable: true @@ -3539,8 +3542,12 @@ paths: type: string description: 'The list of webhook event triggers that are enabled for this Service: `onMessageAdded`, `onMessageUpdated`, `onMessageRemoved`, - `onConversationUpdated`, `onConversationRemoved`, `onParticipantAdded`, - `onParticipantUpdated`, `onParticipantRemoved`' + `onMessageAdd`, `onMessageUpdate`, `onMessageRemove`, `onConversationUpdated`, + `onConversationRemoved`, `onConversationAdd`, `onConversationAdded`, + `onConversationRemove`, `onConversationUpdate`, `onConversationStateUpdated`, + `onParticipantAdded`, `onParticipantUpdated`, `onParticipantRemoved`, + `onParticipantAdd`, `onParticipantRemove`, `onParticipantUpdate`, + `onDeliveryUpdated`, `onUserAdded`, `onUserUpdate`, `onUserUpdated`' PreWebhookUrl: type: string description: The absolute url the pre-event webhook request should diff --git a/spec/yaml/twilio_iam_v1.yaml b/spec/yaml/twilio_iam_v1.yaml index ebda8d6b..4c6f3732 100644 --- a/spec/yaml/twilio_iam_v1.yaml +++ b/spec/yaml/twilio_iam_v1.yaml @@ -154,8 +154,6 @@ paths: - sid - friendly_name - date_created - mountName: get_api_keys - className: get_api_keys pathType: list get: description: Retrieve a list of all Keys for a account. @@ -291,6 +289,9 @@ paths: security: - accountSid_authToken: [] operationId: ListGetKeys + x-twilio: + mountName: get_api_keys + className: get_api_keys post: description: Create a new Signing Key for the account making the request. tags: @@ -400,8 +401,6 @@ paths: AccountSid: ACaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa KeyType: restricted Policy: '{"allow":["/twilio/messaging/messages/read"]}' - x-twilio: - mountName: new_api_key /v1/Keys/{Sid}: servers: - url: https://iam.twilio.com diff --git a/spec/yaml/twilio_marketplace_v1.yaml b/spec/yaml/twilio_marketplace_v1.yaml index 6cfa743c..d3e4d8a2 100644 --- a/spec/yaml/twilio_marketplace_v1.yaml +++ b/spec/yaml/twilio_marketplace_v1.yaml @@ -29,6 +29,7 @@ components: description: How customers are charged for using this Add-on. configuration_schema: nullable: true + type: object description: The JSON object with the configuration that must be provided when installing a given Add-on. url: @@ -108,6 +109,7 @@ components: description: A short description of the Add-on's functionality. configuration: nullable: true + type: object description: The JSON object that represents the current configuration of installed Add-on. unique_name: @@ -246,36 +248,43 @@ components: description: ModuleSid that identifies this Listing. description: nullable: true + type: object description: A JSON object describing the module and is displayed under the Description tab of the Module detail page. You can define the main body of the description, highlight key features or aspects of the module and if applicable, provide code samples for developers support: nullable: true + type: object description: A JSON object containing information on how customers can obtain support for the module. Use this parameter to provide details such as contact information and support description. policies: nullable: true + type: object description: A JSON object describing the module's privacy and legal policies and is displayed under the Policies tab of the Module detail page. The maximum file size for Policies is 5MB module_info: nullable: true + type: object description: A JSON object containing essential attributes that define a module. This information is presented on the Module detail page in the Twilio Marketplace Catalog. You can pass the following attributes in the JSON object documentation: nullable: true + type: object description: A JSON object for providing comprehensive information, instructions, and resources related to the module configuration: nullable: true + type: object description: A JSON object for providing listing specific configuration. Contains button setup, notification url, among others. pricing: nullable: true + type: object description: A JSON object for providing Listing specific pricing information. marketplace.v1.referral_conversion: type: object @@ -332,6 +341,26 @@ components: format: uri nullable: true description: The absolute URL of the resource. + marketplace.v1.TwilioServiceErrorResponse: + type: object + properties: + code: + type: integer + format: int32 + nullable: false + message: + type: string + nullable: false + params: + type: object + nullable: true + more_info: + description: Link to Error Code References + type: string + status: + description: HTTP response status code + type: integer + format: int32 info: title: Twilio - Marketplace description: This is the public Twilio REST API. @@ -847,7 +876,7 @@ paths: content: application/json: schema: - type: object + $ref: '#/components/schemas/marketplace.v1.TwilioServiceErrorResponse' x-jvm-type: com.twilio.rest.TwilioServiceErrorResponse security: - accountSid_authToken: [] @@ -1641,7 +1670,7 @@ paths: content: application/json: schema: - type: object + $ref: '#/components/schemas/marketplace.v1.TwilioServiceErrorResponse' x-jvm-type: com.twilio.rest.TwilioServiceErrorResponse headers: Access-Control-Allow-Origin: @@ -1689,6 +1718,188 @@ paths: create: value: referral_account_sid: ACaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + /v1/Listings: + servers: + - url: https://marketplace.twilio.com + description: '' + x-twilio: + defaultOutputProperties: [] + mountName: module_data + pathType: list + post: + description: This endpoint creates a Listing based on the given data. + tags: + - MarketplaceModuleData + responses: + '200': + content: + application/json: + schema: + $ref: '#/components/schemas/marketplace.v1.module_data_management' + examples: + created: + value: + sid: XBaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + url: https://marketplace.twilio.com/v1/Listing/XBaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + description: + body: aBody + highlights: + - title: aTitle + description: aDescription + code_samples: + - title: aTitle + description: aDescription + code: aCode + support: + customer_support_email: anEmail + customer_support_phone: +1 888-888-8888 + support_description: aDescription + billing_email: anEmail + billing_phone: +1 888-888-8888 + technical_email: anEmail + technical_phone: +1 888-888-8888 + policies: + privacy: someUrl + legal: someOtherUrl + module_info: + tag: Description + tagline: aTagline + logo_url: aUrl + logo_bg_color_hex: '#ff5722' + documentation: + body: aBody + pricing: + body: Basic plan - $10/month + configuration: + buttons: + - url: https://example.com + label: Configurable button text + help_text: The button text, url, and help text are now configurable + via self service + notification_configuration: + callback_url: https://example.com + headers: + Access-Control-Allow-Origin: + description: Specify the origin(s) allowed to access the resource + schema: + type: string + example: '*' + Access-Control-Allow-Methods: + description: Specify the HTTP methods allowed when accessing the resource + schema: + type: string + example: POST, OPTIONS + Access-Control-Allow-Headers: + description: Specify the headers allowed when accessing the resource + schema: + type: string + example: Content-Type, Authorization + Access-Control-Allow-Credentials: + description: Indicates whether the browser should include credentials + schema: + type: boolean + Access-Control-Expose-Headers: + description: Headers exposed to the client + schema: + type: string + example: X-Custom-Header1, X-Custom-Header2 + description: OK + security: + - accountSid_authToken: [] + operationId: CreateModuleData + requestBody: + content: + application/x-www-form-urlencoded: + schema: + type: object + title: CreateModuleDataRequest + properties: + ModuleInfo: + type: string + description: A JSON object containing essential attributes that + define a Listing. + Configuration: + type: string + description: A JSON object for providing Listing-specific configuration. + Contains button setup, notification URL, and more. + examples: + create: + value: + ModuleInfo: + name: My Company Marketplace Listing + short_description: Short description on what the Company does. + tagline: My Company Subheadline + logo_url: https://mycompany.com/image.png + provider_web_url: https://www.sampleurl.com + provider_name: My Company Name + logo_bg_color_hex: '#ff5722' + Configuration: + buttons: + - url: https://mycompanysignup.com + label: Setup Account + help_text: Help caption for the button + notification_configuration: + callback_url: https://example.com + notification_events: + - module_install + get: + description: This endpoint returns the Listings owned by the authenticated Account. + tags: + - MarketplaceModuleData + responses: + '200': + content: + application/json: + schema: + type: object + properties: + listings: + nullable: false + description: '' + type: array + items: + type: object + examples: + fetch: + value: + listings: + - tag: Description1 + tagline: aTagline1 + logo_url: aUrl1 + logo_bg_color_hex: '#ff5722' + - tag: Description2 + tagline: aTagline2 + logo_url: aUrl2 + logo_bg_color_hex: '#ff5722' + headers: + Access-Control-Allow-Origin: + description: Specify the origin(s) allowed to access the resource + schema: + type: string + example: '*' + Access-Control-Allow-Methods: + description: Specify the HTTP methods allowed when accessing the resource + schema: + type: string + example: POST, OPTIONS + Access-Control-Allow-Headers: + description: Specify the headers allowed when accessing the resource + schema: + type: string + example: Content-Type, Authorization + Access-Control-Allow-Credentials: + description: Indicates whether the browser should include credentials + schema: + type: boolean + Access-Control-Expose-Headers: + description: Headers exposed to the client + schema: + type: string + example: X-Custom-Header1, X-Custom-Header2 + description: OK + security: + - accountSid_authToken: [] + operationId: FetchModuleDataForListingOwner /v1/Listing/{Sid}: servers: - url: https://marketplace.twilio.com @@ -1981,6 +2192,7 @@ tags: - name: MarketplaceInstalledAddOnExtension - name: MarketplaceInstalledAddOnUsage - name: MarketplaceModuleDataManagement +- name: MarketplaceModuleData - name: MarketplaceReferralConversion security: - accountSid_authToken: [] diff --git a/spec/yaml/twilio_messaging_v1.yaml b/spec/yaml/twilio_messaging_v1.yaml index c19385f4..9659062d 100644 --- a/spec/yaml/twilio_messaging_v1.yaml +++ b/spec/yaml/twilio_messaging_v1.yaml @@ -840,7 +840,7 @@ components: type: integer default: 0 description: How long, in seconds, messages sent from the Service are valid. - Can be an integer from `1` to `14,400`. + Can be an integer from `1` to `14,400`. Default value is `14,400`. url: type: string format: uri @@ -4741,7 +4741,8 @@ paths: ValidityPeriod: type: integer description: How long, in seconds, messages sent from the Service - are valid. Can be an integer from `1` to `14,400`. + are valid. Can be an integer from `1` to `14,400`. Default value + is `14,400`. SynchronousValidation: type: boolean description: Reserved. @@ -5113,7 +5114,8 @@ paths: ValidityPeriod: type: integer description: How long, in seconds, messages sent from the Service - are valid. Can be an integer from `1` to `14,400`. + are valid. Can be an integer from `1` to `14,400`. Default value + is `14,400`. SynchronousValidation: type: boolean description: Reserved. diff --git a/spec/yaml/twilio_numbers_v1.yaml b/spec/yaml/twilio_numbers_v1.yaml index f3d40a3b..69a5af5d 100644 --- a/spec/yaml/twilio_numbers_v1.yaml +++ b/spec/yaml/twilio_numbers_v1.yaml @@ -1226,7 +1226,6 @@ paths: description: '' x-twilio: defaultOutputProperties: [] - mountName: porting_webhook_configurations pathType: list post: description: Create a Webhook Configuration @@ -1293,6 +1292,8 @@ paths: type: object title: CreatePortingWebhookConfigurationRequest properties: {} + x-twilio: + mountName: porting_webhook_configurations get: description: Allows to fetch the webhook configuration tags: @@ -1353,8 +1354,6 @@ paths: security: - accountSid_authToken: [] operationId: FetchPortingWebhookConfigurationFetch - x-twilio: - mountName: porting_webhook_configuration_fetch /v1/Porting/Configuration/Webhook/{WebhookType}: servers: - url: https://numbers.twilio.com diff --git a/spec/yaml/twilio_video_v1.yaml b/spec/yaml/twilio_video_v1.yaml index afb25685..38a831b5 100644 --- a/spec/yaml/twilio_video_v1.yaml +++ b/spec/yaml/twilio_video_v1.yaml @@ -1239,6 +1239,7 @@ components: items: type: object format: recording-rule + x-class-extra-annotation: '@JsonInclude(JsonInclude.Include.NON_NULL)' properties: type: type: string @@ -2903,9 +2904,9 @@ paths: pattern: ^[a-zA-Z]{2}[0-9a-fA-F]{32}$ examples: readEmpty: - value: source_sid + value: MTaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa readResults: - value: source_sid + value: MTaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa - name: GroupingSid in: query description: Read only recordings with this `grouping_sid`, which may include @@ -2921,7 +2922,6 @@ paths: readEmpty: value: - RMaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa - - PAaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa readResults: value: - RMaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa @@ -3018,9 +3018,9 @@ paths: meta: page: 0 page_size: 50 - first_page_url: https://video.twilio.com/v1/Recordings?Status=completed&SourceSid=source_sid&MediaType=audio&GroupingSid=RMaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa&PageSize=50&Page=0 + first_page_url: https://video.twilio.com/v1/Recordings?Status=completed&SourceSid=MTaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa&MediaType=audio&GroupingSid=RMaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa&PageSize=50&Page=0 previous_page_url: null - url: https://video.twilio.com/v1/Recordings?Status=completed&SourceSid=source_sid&MediaType=audio&GroupingSid=RMaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa&PageSize=50&Page=0 + url: https://video.twilio.com/v1/Recordings?Status=completed&SourceSid=MTaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa&MediaType=audio&GroupingSid=RMaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa&PageSize=50&Page=0 next_page_url: null key: recordings readResults: @@ -3053,9 +3053,9 @@ paths: meta: page: 0 page_size: 50 - first_page_url: https://video.twilio.com/v1/Recordings?Status=completed&DateCreatedAfter=2017-01-01T00%3A00%3A01Z&DateCreatedBefore=2017-12-31T23%3A59%3A59Z&SourceSid=source_sid&MediaType=audio&GroupingSid=RMaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa&PageSize=50&Page=0 + first_page_url: https://video.twilio.com/v1/Recordings?Status=completed&DateCreatedAfter=2017-01-01T00%3A00%3A01Z&DateCreatedBefore=2017-12-31T23%3A59%3A59Z&SourceSid=MTaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa&MediaType=audio&GroupingSid=RMaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa&PageSize=50&Page=0 previous_page_url: null - url: https://video.twilio.com/v1/Recordings?Status=completed&DateCreatedAfter=2017-01-01T00%3A00%3A01Z&DateCreatedBefore=2017-12-31T23%3A59%3A59Z&SourceSid=source_sid&MediaType=audio&GroupingSid=RMaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa&PageSize=50&Page=0 + url: https://video.twilio.com/v1/Recordings?Status=completed&DateCreatedAfter=2017-01-01T00%3A00%3A01Z&DateCreatedBefore=2017-12-31T23%3A59%3A59Z&SourceSid=MTaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa&MediaType=audio&GroupingSid=RMaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa&PageSize=50&Page=0 next_page_url: null key: recordings headers: @@ -5252,7 +5252,7 @@ paths: pattern: ^[a-zA-Z]{2}[0-9a-fA-F]{32}$ examples: readResults: - value: source_sid + value: MTaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa - name: DateCreatedAfter in: query description: Read only recordings that started on or after this [ISO 8601](https://en.wikipedia.org/wiki/ISO_8601) @@ -5368,9 +5368,9 @@ paths: meta: page: 0 page_size: 50 - first_page_url: https://video.twilio.com/v1/Rooms/RMaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa/Recordings?Status=completed&DateCreatedBefore=2017-12-31T23%3A59%3A59Z&DateCreatedAfter=2017-01-01T00%3A00%3A01Z&SourceSid=source_sid&PageSize=50&Page=0 + first_page_url: https://video.twilio.com/v1/Rooms/RMaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa/Recordings?Status=completed&DateCreatedBefore=2017-12-31T23%3A59%3A59Z&DateCreatedAfter=2017-01-01T00%3A00%3A01Z&SourceSid=MTaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa&PageSize=50&Page=0 previous_page_url: null - url: https://video.twilio.com/v1/Rooms/RMaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa/Recordings?Status=completed&DateCreatedBefore=2017-12-31T23%3A59%3A59Z&DateCreatedAfter=2017-01-01T00%3A00%3A01Z&SourceSid=source_sid&PageSize=50&Page=0 + url: https://video.twilio.com/v1/Rooms/RMaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa/Recordings?Status=completed&DateCreatedBefore=2017-12-31T23%3A59%3A59Z&DateCreatedAfter=2017-01-01T00%3A00%3A01Z&SourceSid=MTaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa&PageSize=50&Page=0 next_page_url: null key: recordings headers: