openapi: 3.0.3 info: title: RingCentral Adaptive Cards SMS Templates API description: RingCentral API specification version: 1.0.58-20240529-47eda8bd contact: name: RingCentral Developers Support url: https://developers.ringcentral.com/support termsOfService: https://www.ringcentral.com/legal/apilitos.html license: name: RingCentral API License Agreement url: https://www.ringcentral.com/legal/apilitos.html servers: - url: https://platform.ringcentral.com description: Production API entry point - url: https://media.ringcentral.com description: Production Media entry point - url: https://platform.devtest.ringcentral.com description: Developer sandbox API entry point - url: https://platform.devtest.ringcentral.com description: Developer sandbox Media entry point security: - OAuth2: [] tags: - name: SMS Templates paths: /restapi/v1.0/account/{accountId}/message-store-templates: post: tags: - SMS Templates summary: Create Company Message Template description: Creates a new text message template on a company level. Maximum number of company templates is 50. operationId: createCompanyMessageTemplate parameters: - $ref: '#/components/parameters/AccountId' requestBody: description: JSON body content: application/json: schema: $ref: '#/components/schemas/MessageTemplateRequest' required: true responses: '201': description: Created company text message template content: application/json: schema: $ref: '#/components/schemas/MessageTemplateResponse' '404': $ref: '#/components/responses/NotFound' '400': $ref: '#/components/responses/InvalidRequest' x-feature: EditCompanySmsTemplates x-availability: High x-throttling-group: Medium x-app-permission: EditAccounts get: tags: - SMS Templates summary: List Company Message Templates description: Returns a list of company text message templates. operationId: listCompanyMessageTemplates parameters: - $ref: '#/components/parameters/AccountId' - name: siteIds in: query description: 'Site ID(s) to filter company message templates, associated with particular sites By default the value is all - templates with all sites will be returned ' required: false schema: type: array items: type: string responses: '200': description: List of company text message templates content: application/json: schema: $ref: '#/components/schemas/MessageTemplatesListResponse' '404': $ref: '#/components/responses/NotFound' x-feature: ReadCompanySmsTemplates x-availability: High x-throttling-group: Light x-app-permission: ReadAccounts /restapi/v1.0/account/{accountId}/message-store-templates/{templateId}: put: tags: - SMS Templates summary: Update Company Message Template description: Updates a company text message template. operationId: updateCompanyMessageTemplate parameters: - $ref: '#/components/parameters/AccountId' - $ref: '#/components/parameters/TemplateId' requestBody: description: JSON body content: application/json: schema: $ref: '#/components/schemas/MessageTemplateRequest' required: true responses: '200': description: Updated company text message template content: application/json: schema: $ref: '#/components/schemas/MessageTemplateResponse' '400': $ref: '#/components/responses/InvalidRequest' '404': $ref: '#/components/responses/NotFound' x-feature: EditCompanySmsTemplates x-availability: High x-throttling-group: Medium x-app-permission: EditAccounts get: tags: - SMS Templates summary: Get Company Message Template description: Returns a company text message template by ID. operationId: readCompanyMessageTemplate parameters: - $ref: '#/components/parameters/AccountId' - $ref: '#/components/parameters/TemplateId' responses: '200': description: Company text message template content: application/json: schema: $ref: '#/components/schemas/MessageTemplateResponse' '404': $ref: '#/components/responses/NotFound' x-feature: ReadCompanySmsTemplates x-availability: High x-throttling-group: Light x-app-permission: ReadAccounts delete: tags: - SMS Templates summary: Delete Company Message Template description: Deletes a company text message template. operationId: deleteCompanyMessageTemplate parameters: - $ref: '#/components/parameters/AccountId' - $ref: '#/components/parameters/TemplateId' responses: '204': description: No content '404': $ref: '#/components/responses/NotFound' x-feature: EditCompanySmsTemplates x-availability: High x-throttling-group: Medium x-app-permission: EditAccounts /restapi/v1.0/account/{accountId}/extension/{extensionId}/message-store-templates: post: tags: - SMS Templates summary: Create User Message Template description: "Creates a user personal text message template. \nMaximum number of personal templates is 25 per user. \nMax length of the `body` property is 1000 symbols (2-byte UTF-16 encoded).\n" operationId: createUserMessageTemplate parameters: - $ref: '#/components/parameters/AccountId' - $ref: '#/components/parameters/ExtensionId' requestBody: description: JSON body content: application/json: schema: $ref: '#/components/schemas/MessageTemplateRequest' required: true responses: '201': description: Created personal text message template content: application/json: schema: $ref: '#/components/schemas/MessageTemplateResponse' '400': $ref: '#/components/responses/InvalidRequest' '404': $ref: '#/components/responses/NotFound' x-feature: SMSSending x-availability: High x-throttling-group: Medium x-app-permission: EditExtensions get: tags: - SMS Templates summary: List User Message Templates description: Returns a list of user's personal text message templates. operationId: listUserMessageTemplates parameters: - $ref: '#/components/parameters/AccountId' - $ref: '#/components/parameters/ExtensionId' - name: siteIds in: query description: 'Site ID(s) to filter user message templates, associated with particular sites. By default the value is all - templates with all sites will be returned ' required: false schema: type: array items: type: string - name: scope in: query required: false description: Message templates scope. By default the value is all - both Personal and Company templates will be returned schema: $ref: '#/components/schemas/VisibilityType' responses: '200': description: List of user text message templates content: application/json: schema: $ref: '#/components/schemas/MessageTemplatesListResponse' '404': $ref: '#/components/responses/NotFound' x-feature: SMSSending x-availability: High x-throttling-group: Light x-app-permission: ReadAccounts /restapi/v1.0/account/{accountId}/extension/{extensionId}/message-store-templates/{templateId}: put: tags: - SMS Templates summary: Update User Message Template description: Updates a user personal text message template. operationId: updateUserMessageTemplate parameters: - $ref: '#/components/parameters/AccountId' - $ref: '#/components/parameters/ExtensionId' - $ref: '#/components/parameters/TemplateId' requestBody: description: JSON body content: application/json: schema: $ref: '#/components/schemas/MessageTemplateRequest' required: true responses: '200': description: Updated user personal text message template content: application/json: schema: $ref: '#/components/schemas/MessageTemplateResponse' '400': $ref: '#/components/responses/InvalidRequest' '404': $ref: '#/components/responses/NotFound' x-feature: SMSSending x-availability: High x-throttling-group: Medium x-app-permission: EditExtensions get: tags: - SMS Templates summary: Get User Message Template description: Returns a user personal text message template by ID. operationId: readUserMessageTemplate parameters: - $ref: '#/components/parameters/AccountId' - $ref: '#/components/parameters/ExtensionId' - $ref: '#/components/parameters/TemplateId' responses: '200': description: User personal text message template content: application/json: schema: $ref: '#/components/schemas/MessageTemplateResponse' '404': $ref: '#/components/responses/NotFound' x-feature: SMSSending x-availability: High x-throttling-group: Light x-app-permission: ReadAccounts delete: tags: - SMS Templates summary: Delete User Message Template description: Deletes a user personal text message template. operationId: deleteUserMessageTemplate parameters: - $ref: '#/components/parameters/AccountId' - $ref: '#/components/parameters/ExtensionId' - $ref: '#/components/parameters/TemplateId' responses: '204': description: No content '404': $ref: '#/components/responses/NotFound' x-feature: SMSSending x-availability: High x-throttling-group: Medium x-app-permission: EditExtensions components: schemas: ApiErrorResponseModel: type: object description: Standard error response model which is returned in case of any unsuccessful operation required: - errors properties: errors: type: array description: The array of errors (there will be just one in the most of the cases) minItems: 1 items: $ref: '#/components/schemas/ApiError' MessageTemplatesListResponse: type: object properties: records: type: array description: List of text message templates items: $ref: '#/components/schemas/MessageTemplateResponse' ParameterizedErrorResponseModel: type: object description: Standard error response which may include parameterized errors required: - errors properties: errors: type: array description: The array of errors (there will be just one in the most of the cases) minItems: 1 items: $ref: '#/components/schemas/ApiErrorWithParameter' TemplateInfo: type: object description: Text message template information required: - text properties: text: type: string description: "Text of the message template. Maximum length is 1000 symbols (2-byte UTF-16 encoded). \nIf a character is encoded in 4 bytes in UTF-16 it is treated as 2 characters, \nthus limiting the maximum message length up to 500 symbols\n" VisibilityType: type: string description: Specifies if a template is available on a user (Personal) or a company (Company) level enum: - Company - Personal Site: type: object description: "Specifies a site that message template is associated with. Supported only if the Sites feature is enabled. \nThe default is `main-site` value.\n" properties: id: type: string description: Internal identifier of a site name: type: string description: Custom name of a site MessageTemplateResponse: type: object properties: id: type: string description: Internal identifier of a template displayName: type: string description: Name of a template body: $ref: '#/components/schemas/TemplateInfo' scope: $ref: '#/components/schemas/VisibilityType' site: $ref: '#/components/schemas/Site' ApiErrorWithParameter: description: 'The error model with additional attributes which can be used for HTTP 400/409 This is a deprecated model: "ApiError" model can be used instead with arbitrary additional parameters ' allOf: - $ref: '#/components/schemas/ApiError' - type: object properties: parameterName: type: string description: The name of the API parameter/attribute which caused the error parameterValue: type: string description: The value of the API parameter/attribute which caused the error ApiError: type: object description: Generalized API error structure suitable for any error type required: - errorCode - message properties: errorCode: type: string description: Logical error code (typically, 3 letters followed with number, dash separated) example: XXX-123 message: type: string description: User-friendly error message example: Something went wrong additionalProperties: true MessageTemplateRequest: type: object required: - displayName properties: displayName: type: string description: Name of a template body: $ref: '#/components/schemas/TemplateInfo' site: $ref: '#/components/schemas/Site' responses: NotFound: description: 'General response with **HTTP 404 "Not found"** status.
Reasons: the entity with given ID (typically specified in a path parameter), is not found or inaccessible ' content: application/json: schema: $ref: '#/components/schemas/ApiErrorResponseModel' InvalidRequest: description: 'General response with **HTTP 400 "Bad request"** status.
Reasons: unparsable request, path, query or body parameters are invalid. The error description may contain reference to particular parameter(s) which haven''t passed the validation. ' content: application/json: schema: $ref: '#/components/schemas/ParameterizedErrorResponseModel' parameters: TemplateId: name: templateId in: path description: Internal identifier of a text message template required: true schema: type: string ExtensionId: name: extensionId in: path description: 'Internal identifier of the RingCentral extension/user (can be set to "~" to indicate that the extension associated with current authorization session should be used) ' required: true style: simple explode: false schema: type: string default: '~' example: '~' AccountId: name: accountId in: path description: 'Internal identifier of the RingCentral account (can be set to "~" to indicate that the account associated with current authorization session should be used) ' required: true style: simple explode: false schema: type: string default: '~' example: '~' securitySchemes: OAuth2: type: oauth2 flows: authorizationCode: authorizationUrl: https://platform.ringcentral.com/restapi/oauth/authorize tokenUrl: https://platform.ringcentral.com/restapi/oauth/token refreshUrl: https://platform.ringcentral.com/restapi/oauth/token scopes: {} x-tagGroups: - name: Voice popular: true tags: - Business Hours - Call Blocking - Call Control - Call Forwarding - Call Handling Rules - Interaction Rules - State-based Rules - Call Flip - Call Log - Call History - Call Log Export - Call Monitoring Groups - Call Queues - Call Recordings - Call Recording Settings - Device SIP Registration - Greetings - IVR - RingOut - Verification Calls - name: SMS and Fax popular: true tags: - Fax - Message Exports - Message Store - Pager Messages - SMS - High Volume SMS - SMS Log Export - SMS Templates - Voicemail Broadcasting - name: Social Messaging popular: true tags: - Identities - Contents - name: Team Messaging popular: true tags: - Adaptive Cards - Bots - Calendar Events - Chats - Conversations - Compliance Exports - Contacts - Incoming Webhooks - Notes - Posts - Profile - Tasks - Teams - name: Video popular: true tags: - Bridge Management - Delegation Management - Meetings History - Meeting Recordings - RCM Meetings (Legacy) - RCM Webinars (Legacy) - name: Webinar popular: true tags: - Webinars and Sessions - Invitees - Historical Webinars - Historical Recordings - Registration Management - Registrants - Webinar Analytics - Webinar Subscriptions - name: Analytics popular: true tags: - Business Analytics - name: Artificial Intelligence popular: true tags: - Insights - Audio - Text - Status - name: Authentication tags: - OAuth 2.0 / OpenID Connect - Interoperability - name: Account tags: - Company - Custom Fields - Features - Licenses - Tax Locations - Cost Centers - Multi-Site - Phone Numbers - Presence - Regional Settings - User Permissions - User Settings - Audit Trail - Calling Rates - Appearance Customization - Account Integrations - name: Provisioning tags: - Automatic Location Updates - Devices - Extensions - Paging Only Groups - Park Locations - Phone Lines - SCIM - Shared Lines - Group Call Pickup - Delegated Lines Groups - Directed Call Pickup - IVR Apps - Video Configuration - Number Porting - SMB - Account Federation - Integrations - Enterprise Portal API - Push to Talk Provisioning - BYOC - name: Address Book tags: - External Contacts - Internal Contacts - Hybrid Directory Contacts - Overlay Contacts - External Shared Directory - name: Roles and Permissions tags: - Permissions - Role Management - Site Administration - User Groups - name: Events & Notifications tags: - Subscriptions - name: User Integrations tags: - Token Management - Calendar Management - Calendar Event Management - Calendar Presence Link - Cloud Personal Contacts - Cloud Shared Contacts - Cloud Directory - Deprecated Calendar API - name: Rooms tags: - Rooms Client API - Rooms Management API - name: App Management tags: - App Gallery - App Rating Review - Bot Provisioning - name: Workflow Builder tags: - Flows - Flow Editor - Flow Log - Flow Templates - name: Utilities tags: - API Info - Application Settings - Async Tasks - User Notifications - Client Versions - End-to-End Encryption