If you already have a published add-on and would like access to this API resource, reach out to Twilio.
_10https://preview.twilio.com/marketplace
The Module resource uses the same HTTP Basic Authentication as other Twilio APIs. Use your Twilio account SID as your username and your Auth Token as your password.
The Module resource allows Twilio Marketplace Partners to seamlessly update their individual Marketplace modules. A module includes the following key details that are represented in the Catalog and Module detail pages:
With the Module resource, you can:
The following optional body parameters are supported by the Module resource.
Parameter | Subfields | Description |
---|---|---|
ModuleInfo | 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. For an example, see ModuleInfo. | |
tagline | A succinct and compelling statement that encapsulates the module's purpose and benefits. | |
logo_url | A publicly accessible URL pointing to the module's logo image. | |
logo_bg_color_hex | The hexadecimal color code representing the background color of the module's logo. | |
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. For an example, see Description. | |
body | The core description of the module in Markdown formatting. HTML tags are not supported. | |
highlights | A list of objects highlighting aspects of the module. You can pass a title and a corresponding description within each highlight object. | |
Documentation | A JSON object for providing comprehensive information, instructions, and resources related to the module. For an example, see Documentation. | |
body | Informative and helpful Markdown text guiding customers how to use the module. Images are not supported. | |
Policies | 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. For an example, see Policies. | |
privacy | Text describing the privacy policy for customers using the module. When providing links, we recommend you use Markdown. | |
legal | Text describing the legal policy for customers using the module. When providing links, we recommend you use Markdown. | |
Support | 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. For an example, see Support. | |
billing_email | Email address for billing-related inquiries. | |
billing_phone | Phone number for billing-related inquiries. | |
technical_email | Email address for technical support. | |
technical_phone | Phone number for technical support. | |
customer_support_email | Email address for general customer support. | |
support_description | A description of available support resources, presented in Markdown format. |
In order to fetch a specific module, you need to include a module SID in the path of your request. To get started, you can list available Twilio Marketplace modules. From the JSON response, use a specific module SID to fetch its details.
_10curl -X GET 'https://preview.twilio.com/marketplace/Module/XBxxxxxxxxxxxxxxxxxxxxxxx' \_10--header 'Content-Type: application/x-www-form-urlencoded' \_10-u $TWILIO_ACCOUNT_SID:$TWILIO_AUTH_TOKEN'
_54{_54 "description": {_54 "body": "Ready-to-use softphone app for Twilio complete with comprehensive calling and messaging features. Biz, Inc. is used by thousands of Twilio users for millions of conversations every month.",_54 "highlights": [_54 {_54 "description": "Apps for iOS, Android, MacOS, and Windows. Designed mobile-first for easy user training and adoption.",_54 "title": "**Softphone App for Calls, Chat, SMS, and WhatsApp with Shared Inbox, and Group Conversations**"_54 },_54 {_54 "description": "150+ business phone system features such as ACD, Call/Hunt Groups, Queues, Transfer, Conference, Voicemail, Call Backs, Call Recording, Corporate Directory, Availability & Presence, Extensions, DIDs, ANI lists, +more.",_54 "title": "**Complete Business Phone System (PBX) with Pre-Built CRM Integrations**"_54 },_54 {_54 "description": "Integrate, interact with, and control Biz, Inc. in real time from Twilio or your custom code, then subscribe to real time events or pull post event data to build the exact customer experience, data flows, and operational efficiencies your business needs.",_54 "title": "**Rich Developer API, Webhooks, Data Actions, Screen Pops, and Forms**"_54 },_54 {_54 "description": "All the tools your IT team needs to scale and manage large deployments.",_54 "title": "**Scalable Enterprise Ready Platform**"_54 }_54 ]_54 },_54 "url": "https://preview.twilio.com/marketplace/Module/XBxxxxxxxxxxxxxxxxxxxxxxx",_54 "support": {_54 "customer_support_phone": "+1 617-555-1212",_54 "support_description": "### Support\r\n| Item | Description |\r\n|--|--|\r\n| Sign Up | [Create a new Biz, Inc. account](https://account.example.com/signup?vendor=TWILIO&partnerCode=TWILIO&signupcode=88b2c922-5690-4765-8245-6ce87532478f) |\r\n| Account Admin Console | [Access your existing Biz, Inc. account](https://account.example.com/?partnerCode=TWILIO) |",_54 "customer_support_email": "support@example.com",_54 "technical_email": "accounts@example.com",_54 "technical_phone": "+1617-555-3434"_54 },_54 "documentation": {_54 "body": "### Instant Free Trial — Start Today Within Minutes, No Sales Process Required\r\n\r\nFrom just $15 a month, start a 30 day free trial right now and go live without talking to anyone, or engage our [professional service team](https://example.com/business-phone-system-services-professional-services-offerings/) to help configure your ideal customer journey."_54 },_54 "policies": {_54 "legal": "### Legal documents and policies\r\n\r\n| Item | Description |\r\n|---|---|\r\n|Privacy Policy|[https://example.com/privacy/](https://example.com/privacy/)|\r\n|Terms of Use|[https://example.com/terms/](https://example.com/terms/)|",_54 "privacy": ""_54 },_54 "sid": "XBxxxxxxxxxxxxxxxxxxxxxxx",_54 "module_info": {_54 "tagline": "Rich Softphone, 150+ Biz Phone System Features, & CRM Integrations for Calls, SMS, and WhatsApp conversations on Twilio.",_54 "logo_bg_color_hex": "#ff5722",_54 "logo_url": "https://example.com/wp-content/uploads/2023/07/S-logo-white-256px.png",_54 "tags": [_54 {_54 "description": "The tag is used to enable Manual Usage Reporting API for a specific Add-on",_54 "date_updated": "2023-07-28T16:16:38.000Z",_54 "friendly_name": "Manual Usage Reporting",_54 "sid": "XGxxxxxxxxxxxxxxxxxxxxxxx",_54 "date_created": "2023-07-28T16:16:38.000Z",_54 "id": 15_54 }_54 ]_54 }_54}
All POST body parameters are optional. To see examples and learn more about formulating your request, see Example JSON and Validation and expected behavior.
_27curl -X POST 'https://preview.twilio.com/marketplace/Module/XBxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx' \_27--header 'Content-Type: application/x-www-form-urlencoded' \_27-u $TWILIO_API_KEY_SID:$TWILIO_API_KEY_SECRET' \_27--data-urlencode 'ModuleInfo={_27 "tagline":"This module is great!",_27"logo_url":"https://example.com/wp-content/uploads/2023/07/S-logo-white-256px.png",_27 "logo_bg_color_hex":"#ff5722"_27}' \_27--data-urlencode 'Description={_27 "body":"Use this app for something.",_27 "highlights":[_27 {_27 "description":"Apps for iOS, Android, MacOS, and Windows. Designed mobile-first for easy user training and adoption. 100% feature parity across all platforms.",_27 "title":"**Softphone App for Calls, Chat, SMS, and WhatsApp with Shared Inbox, and Group Conversations**"_27 }_27 ]_27 }' \_27--data-urlencode 'Documentation={_27 "body":"### Instant Free Trial -- Start Today Within Minutes, No Sales Process Required\r\n\r\nFrom just $15 a month, start a 30 day free trial right now and go live without talking to anyone, or engage our [professional service team](https://example.com/business-phone-system-services-professional-services-offerings/) to help configure your ideal customer journey.\r\n\r\n### Steps to install Biz,Inc. into your Twilio account:\r\n\r\n1. Install the Add-On using the button above.\r\n2. [Create a free Biz,Inc. Account](https://account.example.com/signup?vendor=TWILIO&partnerCode=TWILIO&signupcode=88b2c922-5690-4765-8245-6ce87532478f)\r\n3. You're done!"_27}' \_27--data-urlencode 'Policies={_27 "legal":"### Legal documents and policies\r\n\r\n| Item | Description |\r\n|---|---|\r\n|Privacy Policy|[https://example.com/privacy/](https://example.com/privacy/)|\r\n|Terms of Use|[https://example.com/terms/](https://example.com/terms/)|\r\n|Data Processing Addendum|[https://example.com/data-processing-addendum/](https://example.com/data-processing-addendum/)|",_27 "privacy":""_27}' \_27--data-urlencode 'Support={_27 "billing_email": "billing@example.com"_27}'
_10200 OK
_10{_10 "tagline" : "Enhance your communication with our innovative module",_10 "logo_url" : "https://example.com/wp-content/uploads/2023/07/S-logo-white-256px.png",_10 "logo_bg_color_hex" : "#ff5722"_10}
_10{_10 "body" : "Enhance your communication with our innovative module",_10 "highlights" : [_10 {"title":"Feature 1" ,"description":"Streamline your workflows."},_10 {"title":"Feature 2" ,"description":"Seamless integration with your apps."}_10 ]_10}
_10{_10 "body" : "### Instant Free Trial -- Start Today within Minutes… \r\n\r\n"_10}
_10{_10 "privacy" : "[https://www.twilio.com/legal/privacy](https://www.twilio.com/legal/privacy)",_10 "legal" : "[https://www.twilio.com/legal/tos](https://www.twilio.com/legal/tos)"_10}
_10{_10 "billing_email":"accounts@example.com",_10 "billing_phone":"+1 617-555-1313",_10 "technical_email":"support@example.com",_10 "technical_phone":"+1 617-555-3434",_10 "customer_support_email":"support@example.com",_10 "customer_support_phone":"+1 617-555-1212",_10 "support_description":"Please use Add-on Support form to request support for this Add-on"_10}
\{}
) to any of the parameters, that parameter will not be modified in your update request.
""
). For example, if the
Policies
object contains
{"privacy" : "blah","legal" : ""}
, privacy is updated to "blah", and legal is removed. If the attribute is missing, no updates are made to that attribute. For example, Policies=
{"privacy" : "blah"}
updates privacy but not legal.
In the event of an unsuccessful update, the API returns a 400 HTTP status (Bad Request) along with relevant error messages. Additionally, a notification will be published into Twilio Debugger for further troubleshooting and analysis.
Here is a list of common scenarios along with associated error codes and messages that the API may return.
Scenario | HTTP response and error message |
---|---|
Missing required parameter | 400. The [parameter name] parameter is required and must be provided. |
Invalid JSON format | 400. Invalid JSON format. Please ensure the request body adheres to the correct JSON structure. |
Exceeding maximum file size | 400. The JSON size exceeds the maximum allowed limit of 5MB. Please reduce the JSON size and try again. |
Module not found | 404. The specified Module was not found. Please provide a valid Module ID. |
Internal server error | 500. An internal server error occurred. Please contact support for further assistance. |