openapi: 3.0.3 info: title: Provisioning API description: 'The Provisioning API allows you to provision account credentials and numbers for Conversation API and other services.' version: 1.2.7 servers: - url: https://provisioning.api.sinch.com description: Production server security: - BasicAuth: [] - BearerAuth: [] x-tagGroups: - name: Common tags: - Webhooks - Bundles - Conversation - name: WhatsApp tags: - WhatsApp - WhatsApp Templates - WhatsApp Solutions - WhatsApp Senders - WhatsApp Accounts - WhatsApp Flows - name: KakaoTalk tags: - KakaoTalk Templates - KakaoTalk Categories - KakaoTalk Senders - name: RCS tags: - RCS Accounts - RCS Questionnaire - RCS Senders - RCS Upscales tags: - name: Webhooks description: Webhooks allow the Sinch servers to communicate with your server backend. The `webhooks` endpoint lets you create, update, and delete webhooks programmatically. - name: WhatsApp description: The WhatsApp endpoint allows you to programmatically log in to and get details of your WhatsApp account. - name: WhatsApp Templates description: The WhatsApp template endpoint offers a way for you to manage your WhatsApp templates that can be used with the Conversation API. The WhatsApp templates are a requirement to send the initial outbound messages in the WhatsApp API. - name: WhatsApp Senders description: A WhatsApp Sender is also referred to as a 'Business Profile' or a WhatsApp channel. The WhatsApp Sender endpoint allows you to create a Sender through Meta's Embedded sign up. A Sender must be provisioned for you as a consumer of the WhatsApp API to send messages to your end users. - name: WhatsApp Accounts description: The WhatsApp accounts endpoint lets you create and update WhatsApp accounts as well as get account activity and leave comments. - name: WhatsApp Flows description: The WhatsApp flows endpoint lets you retrieve and manage WhatsApp Flows associated with the project. - name: WhatsApp Solutions description: The WhatsApp solutions endpoint offers a way for you to manage your WhatsApp solutions. - name: Conversation description: The Conversation endpoints allows you to retrieve about channels used with Conversation API. - name: Bundles description: The bundles endpoint allows you to create and manage bundles of account resources. - name: KakaoTalk Templates description: The KakaoTalk template endpoint offers a way for you to manage your KakaoTalk templates that can be used with the Conversation API. - name: KakaoTalk Categories description: The KakoaTalk categories endpoint offers a way for you to manage all of the KakaoTalk template categories that you can use with the Conversation API. - name: KakaoTalk Senders description: The KakaoTalk sender endpoint offers a way for you to manage your KakaoTalk senders that can be used with the Conversation API. - name: RCS Accounts description: The RCS endpoint offers you a way to manage your RCS accounts. - name: RCS Questionnaire description: Manage your RCS questionnaires. - name: RCS Senders description: The RCS sender endpoint offers a way for you to manage your RCS senders that can be used with the Conversation API. - name: RCS Upscales description: The RCS upscales endpoint offers a way for you to manage your RCS upscale senders. paths: /v1/projects/{projectId}/webhooks: get: description: |2- Returns a paginated list of webhooks for the specified project. If no page token is supplied then all registered webhooks (of maximum `15`) are returned in alphabetical order. operationId: WebhookController_listWebhooks_v1 parameters: - name: projectId required: true in: path description: The unique ID of the project. You can find this on the Sinch Dashboard. schema: type: string - name: pageToken required: false in: query schema: type: string description: The page token if retrieving the next page from a previous query. - name: pageSize required: false in: query schema: type: number minimum: 1 maximum: 15 description: The page size requested. responses: '200': description: List of webhooks content: application/json: schema: $ref: '#/components/schemas/WebhookWebhookListDto' examples: listWebhooksRes: summary: List all webhooks in project description: |2- Returns a paginated list of webhooks for the specified project. If no page token is supplied then all registered webhooks (of maximum `15`) are returned in alphabetical order. value: previousPageToken: '{{TOKEN}}' nextPageToken: '{{TOKEN}}' pageSize: 1 totalSize: 5 webhooks: - id: '{{WEBHOOK_ID_1}}' projectId: '{{PROJECT_ID}}' target: https://my.server.com/callback1 triggers: - WHATSAPP_TEMPLATE_APPROVED - WHATSAPP_TEMPLATE_REJECTED - id: '{{WEBHOOK_ID_2}}' projectId: '{{PROJECT_ID}}' target: https://my.server.com/callback2 triggers: - WHATSAPP_TEMPLATE_APPROVED - WHATSAPP_TEMPLATE_REJECTED '400': description: BadRequest content: application/json: schema: oneOf: - title: InvalidPageSizeErrorTitle properties: errorCode: type: string title: invalid_page_size example: invalid_page_size description: Error code allows to programatically handle errors. message: type: string title: Page size must be numeric. example: Page size must be numeric. description: Human readable message. resolution: type: string title: Use a integer value for pageSize parameter. example: Use a integer value for pageSize parameter. description: Human readable message with an explanation of how to solve the error. - title: InvalidPageTokenErrorTitle properties: errorCode: type: string title: invalid_page_token example: invalid_page_token description: Error code allows to programatically handle errors. message: type: string title: Invalid page token. example: Invalid page token. description: Human readable message. resolution: type: string title: The page token to use is provided in the previous query response, for new queries simply leave this field undefined. example: The page token to use is provided in the previous query response, for new queries simply leave this field undefined. description: Human readable message with an explanation of how to solve the error. '401': description: Unauthorized content: application/json: schema: example: errorCode: unauthorized_error message: Unauthorized error. resolution: Verify that projectId is correct. title: UnauthorizedErrorErrorTitle properties: errorCode: type: string title: unauthorized_error example: unauthorized_error description: Error code allows to programatically handle errors. message: type: string title: Unauthorized error. example: Unauthorized error. description: Human readable message. resolution: type: string title: Verify that projectId is correct. example: Verify that projectId is correct. description: Human readable message with an explanation of how to solve the error. '500': description: InternalServerError content: application/json: schema: example: errorCode: internal_error message: Internal server error. resolution: Please wait and try again, if the error persist please contact support. title: InternalErrorErrorTitle properties: errorCode: type: string title: internal_error example: internal_error description: Error code allows to programatically handle errors. message: type: string title: Internal server error. example: Internal server error. description: Human readable message. resolution: type: string title: Please wait and try again, if the error persist please contact support. example: Please wait and try again, if the error persist please contact support. description: Human readable message with an explanation of how to solve the error. summary: List all webhooks in project tags: - Webhooks x-tagAfterOperationSummary: color: white background: green label: GA post: description: |2- Register a new webhook for a project. The webhook will be used to communicate updates to resources. Maximum of `15` webhooks allowed per project. operationId: WebhookController_createWebhook_v1 parameters: - name: projectId required: true in: path description: The unique ID of the project. You can find this on the Sinch Dashboard. schema: type: string requestBody: required: true description: Webhook to register content: application/json: schema: $ref: '#/components/schemas/WebhookWebhookInputDto' examples: registerWebhookNoTriggerReq: summary: Register a webhook for all events value: secret: '{{WEBHOOK_SECRET}}' target: https://my.server.com/callback triggers: - ALL registerWebhookReq: summary: Register a webhook with specific event triggers value: secret: '{{WEBHOOK_SECRET}}' target: https://my.server.com/callback triggers: - WHATSAPP_TEMPLATE_APPROVED - WHATSAPP_TEMPLATE_REJECTED responses: '201': description: Webhook created content: application/json: schema: $ref: '#/components/schemas/WebhookWebhookDto' examples: registerWebhookNoTriggerRes: summary: Register a webhook for all events description: |2- Example of a response when registering for all triggers. value: id: '{{WEBHOOK_ID}}' projectId: '{{PROJECT_ID}}' target: https://my.server.com/callback triggers: - ALL registerWebhookRes: summary: Register a webhook with specific event triggers description: |2- Example of a response when registering for specific triggers. value: id: '{{WEBHOOK_ID}}' projectId: '{{PROJECT_ID}}' target: https://my.server.com/callback triggers: - WHATSAPP_TEMPLATE_APPROVED - WHATSAPP_TEMPLATE_REJECTED '400': description: BadRequest content: application/json: schema: oneOf: - title: InvalidInputErrorTitle properties: errorCode: type: string title: invalid_input example: invalid_input description: Error code allows to programatically handle errors. message: type: string title: Invalid input. example: Invalid input. description: Human readable message. resolution: type: string title: Correct the validation errors and submit again. example: Correct the validation errors and submit again. description: Human readable message with an explanation of how to solve the error. additionalInformation: type: object title: additionalInformation example: validationErrors: - target must be a string - target must be a URL address description: Additional information for error. - title: InvalidPayloadErrorTitle properties: errorCode: type: string title: invalid_payload example: invalid_payload description: Error code allows to programatically handle errors. message: type: string title: Invalid payload. example: Invalid payload. description: Human readable message. resolution: type: string title: Correct payload and submit again. example: Correct payload and submit again. description: Human readable message with an explanation of how to solve the error. '401': description: Unauthorized content: application/json: schema: example: errorCode: unauthorized_error message: Unauthorized error. resolution: Verify that projectId is correct. title: UnauthorizedErrorErrorTitle properties: errorCode: type: string title: unauthorized_error example: unauthorized_error description: Error code allows to programatically handle errors. message: type: string title: Unauthorized error. example: Unauthorized error. description: Human readable message. resolution: type: string title: Verify that projectId is correct. example: Verify that projectId is correct. description: Human readable message with an explanation of how to solve the error. '409': description: Conflict content: application/json: schema: example: errorCode: webhook_exists message: Webhook with the provided target already exists. resolution: Webhooks must have a unique target. Change the target and submit again. title: WebhookExistsErrorTitle properties: errorCode: type: string title: webhook_exists example: webhook_exists description: Error code allows to programatically handle errors. message: type: string title: Webhook with the provided target already exists. example: Webhook with the provided target already exists. description: Human readable message. resolution: type: string title: Webhooks must have a unique target. Change the target and submit again. example: Webhooks must have a unique target. Change the target and submit again. description: Human readable message with an explanation of how to solve the error. '424': description: FailedDependency content: application/json: schema: example: errorCode: webhook_limit_reached message: Number of webhooks has reached the limit. resolution: Delete some webhooks to be able to add more. title: WebhookLimitReachedErrorTitle properties: errorCode: type: string title: webhook_limit_reached example: webhook_limit_reached description: Error code allows to programatically handle errors. message: type: string title: Number of webhooks has reached the limit. example: Number of webhooks has reached the limit. description: Human readable message. resolution: type: string title: Delete some webhooks to be able to add more. example: Delete some webhooks to be able to add more. description: Human readable message with an explanation of how to solve the error. '500': description: InternalServerError content: application/json: schema: example: errorCode: internal_error message: Internal server error. resolution: Please wait and try again, if the error persist please contact support. title: InternalErrorErrorTitle properties: errorCode: type: string title: internal_error example: internal_error description: Error code allows to programatically handle errors. message: type: string title: Internal server error. example: Internal server error. description: Human readable message. resolution: type: string title: Please wait and try again, if the error persist please contact support. example: Please wait and try again, if the error persist please contact support. description: Human readable message with an explanation of how to solve the error. summary: Register a webhook for project tags: - Webhooks x-tagAfterOperationSummary: color: white background: green label: GA /v1/projects/{projectId}/webhooks/{webhookId}: get: description: |2- Return an already created webhook. operationId: WebhookController_getWebhook_v1 parameters: - name: projectId required: true in: path description: The unique ID of the project. You can find this on the Sinch Dashboard. schema: type: string - name: webhookId required: true in: path description: The unique ID of the webhook. schema: type: string responses: '200': description: Webhook response content: application/json: schema: $ref: '#/components/schemas/WebhookWebhookDto' examples: triggers: summary: Webhook with specific event triggers description: |2- Example of a response for a webhook with specific triggers. value: id: '{{WEBHOOK_ID}}' target: https://my.server.com/callback projectId: '{{PROJECT_ID}}' triggers: - WHATSAPP_TEMPLATE_APPROVED - WHATSAPP_TEMPLATE_REJECTED noTriggers: summary: Webhook for all events description: |2- Example of a response for a webhook for all triggers. value: id: '{{WEBHOOK_ID}}' target: https://my.server.com/callback projectId: '{{PROJECT_ID}}' triggers: - ALL '400': description: BadRequest content: application/json: schema: example: errorCode: invalid_id_format message: Id is not in the expected format. resolution: webhookId param is in the wrong format. Confirm that you're sending the correct value. title: InvalidIdFormatErrorTitle properties: errorCode: type: string title: invalid_id_format example: invalid_id_format description: Error code allows to programatically handle errors. message: type: string title: Id is not in the expected format. example: Id is not in the expected format. description: Human readable message. resolution: type: string title: webhookId param is in the wrong format. Confirm that you're sending the correct value. example: webhookId param is in the wrong format. Confirm that you're sending the correct value. description: Human readable message with an explanation of how to solve the error. '401': description: Unauthorized content: application/json: schema: example: errorCode: unauthorized_error message: Unauthorized error. resolution: Verify that projectId is correct. title: UnauthorizedErrorErrorTitle properties: errorCode: type: string title: unauthorized_error example: unauthorized_error description: Error code allows to programatically handle errors. message: type: string title: Unauthorized error. example: Unauthorized error. description: Human readable message. resolution: type: string title: Verify that projectId is correct. example: Verify that projectId is correct. description: Human readable message with an explanation of how to solve the error. '404': description: NotFound content: application/json: schema: example: errorCode: webhook_not_found message: Webhook not found. resolution: Verify that the parameters are correct. title: WebhookNotFoundErrorTitle properties: errorCode: type: string title: webhook_not_found example: webhook_not_found description: Error code allows to programatically handle errors. message: type: string title: Webhook not found. example: Webhook not found. description: Human readable message. resolution: type: string title: Verify that the parameters are correct. example: Verify that the parameters are correct. description: Human readable message with an explanation of how to solve the error. '500': description: InternalServerError content: application/json: schema: example: errorCode: internal_error message: Internal server error. resolution: Please wait and try again, if the error persist please contact support. title: InternalErrorErrorTitle properties: errorCode: type: string title: internal_error example: internal_error description: Error code allows to programatically handle errors. message: type: string title: Internal server error. example: Internal server error. description: Human readable message. resolution: type: string title: Please wait and try again, if the error persist please contact support. example: Please wait and try again, if the error persist please contact support. description: Human readable message with an explanation of how to solve the error. summary: Get webhook tags: - Webhooks x-tagAfterOperationSummary: color: white background: green label: GA delete: description: |2- Deletes an already created webhook. operationId: WebhookController_deleteWebhook_v1 parameters: - name: projectId required: true in: path description: The unique ID of the project. You can find this on the Sinch Dashboard. schema: type: string - name: webhookId required: true in: path description: The unique ID of the webhook. schema: type: string responses: '204': description: Webhook deleted '400': description: BadRequest content: application/json: schema: example: errorCode: invalid_id_format message: Id is not in the expected format. resolution: webhookId param is in the wrong format. Confirm that you're sending the correct value. title: InvalidIdFormatErrorTitle properties: errorCode: type: string title: invalid_id_format example: invalid_id_format description: Error code allows to programatically handle errors. message: type: string title: Id is not in the expected format. example: Id is not in the expected format. description: Human readable message. resolution: type: string title: webhookId param is in the wrong format. Confirm that you're sending the correct value. example: webhookId param is in the wrong format. Confirm that you're sending the correct value. description: Human readable message with an explanation of how to solve the error. '401': description: Unauthorized content: application/json: schema: example: errorCode: unauthorized_error message: Unauthorized error. resolution: Verify that projectId is correct. title: UnauthorizedErrorErrorTitle properties: errorCode: type: string title: unauthorized_error example: unauthorized_error description: Error code allows to programatically handle errors. message: type: string title: Unauthorized error. example: Unauthorized error. description: Human readable message. resolution: type: string title: Verify that projectId is correct. example: Verify that projectId is correct. description: Human readable message with an explanation of how to solve the error. '404': description: NotFound content: application/json: schema: example: errorCode: webhook_not_found message: Webhook not found. resolution: Verify that the parameters are correct. title: WebhookNotFoundErrorTitle properties: errorCode: type: string title: webhook_not_found example: webhook_not_found description: Error code allows to programatically handle errors. message: type: string title: Webhook not found. example: Webhook not found. description: Human readable message. resolution: type: string title: Verify that the parameters are correct. example: Verify that the parameters are correct. description: Human readable message with an explanation of how to solve the error. '500': description: InternalServerError content: application/json: schema: example: errorCode: internal_error message: Internal server error. resolution: Please wait and try again, if the error persist please contact support. title: InternalErrorErrorTitle properties: errorCode: type: string title: internal_error example: internal_error description: Error code allows to programatically handle errors. message: type: string title: Internal server error. example: Internal server error. description: Human readable message. resolution: type: string title: Please wait and try again, if the error persist please contact support. example: Please wait and try again, if the error persist please contact support. description: Human readable message with an explanation of how to solve the error. summary: Delete webhook tags: - Webhooks x-tagAfterOperationSummary: color: white background: green label: GA put: description: |2- Replace an already existing webhook. operationId: WebhookController_replaceWebhook_v1 parameters: - name: projectId required: true in: path description: The unique ID of the project. You can find this on the Sinch Dashboard. schema: type: string - name: webhookId required: true in: path description: The unique ID of the webhook. schema: type: string requestBody: required: true description: Webhook to replace content: application/json: schema: $ref: '#/components/schemas/WebhookWebhookInputDto' examples: updateWebhookReq: summary: Update a webhook with specific event triggers value: secret: '{{WEBHOOK_SECRET}}' target: https://my.server.com/callback triggers: - WHATSAPP_TEMPLATE_APPROVED - WHATSAPP_TEMPLATE_REJECTED updateWebhookNoTriggerReq: summary: Update a webhook to listen to all events value: secret: '{{WEBHOOK_SECRET}}' target: https://my.server.com/callback triggers: - ALL responses: '200': description: Webhook response content: application/json: schema: $ref: '#/components/schemas/WebhookWebhookDto' examples: updateWebhookRes: summary: Update a webhook with specific event triggers description: |2- Example of a response for an update to specific triggers. value: id: '{{WEBHOOK_ID}}' projectId: '{{PROJECT_ID}}' target: https://my.server.com/callback triggers: - WHATSAPP_TEMPLATE_APPROVED - WHATSAPP_TEMPLATE_REJECTED updateWebhookNoTriggerRes: summary: Update a webhook to listen to all events description: |2- Example of a response for an update to all triggers. value: id: '{{WEBHOOK_ID}}' projectId: '{{PROJECT_ID}}' target: https://my.server.com/callback triggers: - ALL '400': description: BadRequest content: application/json: schema: oneOf: - title: InvalidInputErrorTitle properties: errorCode: type: string title: invalid_input example: invalid_input description: Error code allows to programatically handle errors. message: type: string title: Invalid input. example: Invalid input. description: Human readable message. resolution: type: string title: Correct the validation errors and submit again. example: Correct the validation errors and submit again. description: Human readable message with an explanation of how to solve the error. additionalInformation: type: object title: additionalInformation example: validationErrors: - target must be a string - target must be a URL address description: Additional information for error. - title: InvalidPayloadErrorTitle properties: errorCode: type: string title: invalid_payload example: invalid_payload description: Error code allows to programatically handle errors. message: type: string title: Invalid payload. example: Invalid payload. description: Human readable message. resolution: type: string title: Correct payload and submit again. example: Correct payload and submit again. description: Human readable message with an explanation of how to solve the error. - title: InvalidIdFormatErrorTitle properties: errorCode: type: string title: invalid_id_format example: invalid_id_format description: Error code allows to programatically handle errors. message: type: string title: Id is not in the expected format. example: Id is not in the expected format. description: Human readable message. resolution: type: string title: webhookId param is in the wrong format. Confirm that you're sending the correct value. example: webhookId param is in the wrong format. Confirm that you're sending the correct value. description: Human readable message with an explanation of how to solve the error. '401': description: Unauthorized content: application/json: schema: example: errorCode: unauthorized_error message: Unauthorized error. resolution: Verify that projectId is correct. title: UnauthorizedErrorErrorTitle properties: errorCode: type: string title: unauthorized_error example: unauthorized_error description: Error code allows to programatically handle errors. message: type: string title: Unauthorized error. example: Unauthorized error. description: Human readable message. resolution: type: string title: Verify that projectId is correct. example: Verify that projectId is correct. description: Human readable message with an explanation of how to solve the error. '404': description: NotFound content: application/json: schema: example: errorCode: webhook_not_found message: Webhook not found. resolution: Verify that the parameters are correct. title: WebhookNotFoundErrorTitle properties: errorCode: type: string title: webhook_not_found example: webhook_not_found description: Error code allows to programatically handle errors. message: type: string title: Webhook not found. example: Webhook not found. description: Human readable message. resolution: type: string title: Verify that the parameters are correct. example: Verify that the parameters are correct. description: Human readable message with an explanation of how to solve the error. '409': description: Conflict content: application/json: schema: example: errorCode: webhook_exists message: Webhook with the provided target already exists. resolution: Webhooks must have a unique target. Change the target and submit again. title: WebhookExistsErrorTitle properties: errorCode: type: string title: webhook_exists example: webhook_exists description: Error code allows to programatically handle errors. message: type: string title: Webhook with the provided target already exists. example: Webhook with the provided target already exists. description: Human readable message. resolution: type: string title: Webhooks must have a unique target. Change the target and submit again. example: Webhooks must have a unique target. Change the target and submit again. description: Human readable message with an explanation of how to solve the error. '500': description: InternalServerError content: application/json: schema: example: errorCode: internal_error message: Internal server error. resolution: Please wait and try again, if the error persist please contact support. title: InternalErrorErrorTitle properties: errorCode: type: string title: internal_error example: internal_error description: Error code allows to programatically handle errors. message: type: string title: Internal server error. example: Internal server error. description: Human readable message. resolution: type: string title: Please wait and try again, if the error persist please contact support. example: Please wait and try again, if the error persist please contact support. description: Human readable message with an explanation of how to solve the error. summary: Replace webhook tags: - Webhooks x-tagAfterOperationSummary: color: white background: green label: GA patch: description: |2- Update an already existing webhook. operationId: WebhookController_updateWebhook_v1 parameters: - name: projectId required: true in: path description: The unique ID of the project. You can find this on the Sinch Dashboard. schema: type: string - name: webhookId required: true in: path description: The unique ID of the webhook. schema: type: string requestBody: required: true description: Webhook to update content: application/json: schema: $ref: '#/components/schemas/WebhookUpdateWebhookInputDto' examples: updateWebhookReq: summary: Update a webhook with specific event triggers value: secret: '{{WEBHOOK_SECRET}}' target: https://my.server.com/callback triggers: - WHATSAPP_TEMPLATE_APPROVED - WHATSAPP_TEMPLATE_REJECTED updateWebhookNoTriggerReq: summary: Update a webhook to listen to all events value: secret: '{{WEBHOOK_SECRET}}' target: https://my.server.com/callback triggers: - ALL responses: '200': description: Webhook response content: application/json: schema: $ref: '#/components/schemas/WebhookWebhookDto' examples: updateWebhookRes: summary: Update a webhook with specific event triggers description: |2- Example of a response for an update to specific triggers. value: id: '{{WEBHOOK_ID}}' projectId: '{{PROJECT_ID}}' target: https://my.server.com/callback triggers: - WHATSAPP_TEMPLATE_APPROVED - WHATSAPP_TEMPLATE_REJECTED updateWebhookNoTriggerRes: summary: Update a webhook to listen to all events description: |2- Example of a response for an update to all triggers. value: id: '{{WEBHOOK_ID}}' projectId: '{{PROJECT_ID}}' target: https://my.server.com/callback triggers: - ALL '400': description: BadRequest content: application/json: schema: oneOf: - title: InvalidInputErrorTitle properties: errorCode: type: string title: invalid_input example: invalid_input description: Error code allows to programatically handle errors. message: type: string title: Invalid input. example: Invalid input. description: Human readable message. resolution: type: string title: Correct the validation errors and submit again. example: Correct the validation errors and submit again. description: Human readable message with an explanation of how to solve the error. additionalInformation: type: object title: additionalInformation example: validationErrors: - target must be a string - target must be a URL address description: Additional information for error. - title: InvalidPayloadErrorTitle properties: errorCode: type: string title: invalid_payload example: invalid_payload description: Error code allows to programatically handle errors. message: type: string title: Invalid payload. example: Invalid payload. description: Human readable message. resolution: type: string title: Correct payload and submit again. example: Correct payload and submit again. description: Human readable message with an explanation of how to solve the error. - title: InvalidIdFormatErrorTitle properties: errorCode: type: string title: invalid_id_format example: invalid_id_format description: Error code allows to programatically handle errors. message: type: string title: Id is not in the expected format. example: Id is not in the expected format. description: Human readable message. resolution: type: string title: webhookId param is in the wrong format. Confirm that you're sending the correct value. example: webhookId param is in the wrong format. Confirm that you're sending the correct value. description: Human readable message with an explanation of how to solve the error. '401': description: Unauthorized content: application/json: schema: example: errorCode: unauthorized_error message: Unauthorized error. resolution: Verify that projectId is correct. title: UnauthorizedErrorErrorTitle properties: errorCode: type: string title: unauthorized_error example: unauthorized_error description: Error code allows to programatically handle errors. message: type: string title: Unauthorized error. example: Unauthorized error. description: Human readable message. resolution: type: string title: Verify that projectId is correct. example: Verify that projectId is correct. description: Human readable message with an explanation of how to solve the error. '404': description: NotFound content: application/json: schema: example: errorCode: webhook_not_found message: Webhook not found. resolution: Verify that the parameters are correct. title: WebhookNotFoundErrorTitle properties: errorCode: type: string title: webhook_not_found example: webhook_not_found description: Error code allows to programatically handle errors. message: type: string title: Webhook not found. example: Webhook not found. description: Human readable message. resolution: type: string title: Verify that the parameters are correct. example: Verify that the parameters are correct. description: Human readable message with an explanation of how to solve the error. '409': description: Conflict content: application/json: schema: example: errorCode: webhook_exists message: Webhook with the provided target already exists. resolution: Webhooks must have a unique target. Change the target and submit again. title: WebhookExistsErrorTitle properties: errorCode: type: string title: webhook_exists example: webhook_exists description: Error code allows to programatically handle errors. message: type: string title: Webhook with the provided target already exists. example: Webhook with the provided target already exists. description: Human readable message. resolution: type: string title: Webhooks must have a unique target. Change the target and submit again. example: Webhooks must have a unique target. Change the target and submit again. description: Human readable message with an explanation of how to solve the error. '500': description: InternalServerError content: application/json: schema: example: errorCode: internal_error message: Internal server error. resolution: Please wait and try again, if the error persist please contact support. title: InternalErrorErrorTitle properties: errorCode: type: string title: internal_error example: internal_error description: Error code allows to programatically handle errors. message: type: string title: Internal server error. example: Internal server error. description: Human readable message. resolution: type: string title: Please wait and try again, if the error persist please contact support. example: Please wait and try again, if the error persist please contact support. description: Human readable message with an explanation of how to solve the error. summary: Update webhook tags: - Webhooks x-tagAfterOperationSummary: color: white background: green label: GA /v1/projects/{projectId}/whatsapp: get: description: |2- Returns an account for a project. operationId: AccountsController_getAccount_v1 parameters: - name: projectId required: true in: path description: The unique ID of the project. You can find this on the Sinch Dashboard. schema: type: string responses: '200': description: Account content: application/json: schema: $ref: '#/components/schemas/WhatsappAccountDto' examples: response: summary: Get response description: |2- Response with an account. value: state: ONBOARDED isEmbeddedSignup: false businessManager: SINCH_UK wabaId: '1234567890' details: companyLegalName: Legal name of company clientBusinessManagerId: '1234567890' wabaEnabledForInsights: false compatibleRegions: - eu - us '401': description: Unauthorized content: application/json: schema: example: errorCode: unauthorized_error message: Unauthorized error. resolution: Verify that projectId is correct. title: UnauthorizedErrorErrorTitle properties: errorCode: type: string title: unauthorized_error example: unauthorized_error description: Error code allows to programatically handle errors. message: type: string title: Unauthorized error. example: Unauthorized error. description: Human readable message. resolution: type: string title: Verify that projectId is correct. example: Verify that projectId is correct. description: Human readable message with an explanation of how to solve the error. '404': description: NotFound content: application/json: schema: example: errorCode: account_not_found message: Account not found. resolution: Verify that the parameters are correct. title: AccountNotFoundErrorTitle properties: errorCode: type: string title: account_not_found example: account_not_found description: Error code allows to programatically handle errors. message: type: string title: Account not found. example: Account not found. description: Human readable message. resolution: type: string title: Verify that the parameters are correct. example: Verify that the parameters are correct. description: Human readable message with an explanation of how to solve the error. '409': description: Conflict content: application/json: schema: example: errorCode: account_data_is_corrupt message: Account data is corrupt. resolution: Please contact support. title: AccountDataIsCorruptErrorTitle properties: errorCode: type: string title: account_data_is_corrupt example: account_data_is_corrupt description: Error code allows to programatically handle errors. message: type: string title: Account data is corrupt. example: Account data is corrupt. description: Human readable message. resolution: type: string title: Please contact support. example: Please contact support. description: Human readable message with an explanation of how to solve the error. '500': description: InternalServerError content: application/json: schema: example: errorCode: internal_error message: Internal server error. resolution: Please wait and try again, if the error persist please contact support. title: InternalErrorErrorTitle properties: errorCode: type: string title: internal_error example: internal_error description: Error code allows to programatically handle errors. message: type: string title: Internal server error. example: Internal server error. description: Human readable message. resolution: type: string title: Please wait and try again, if the error persist please contact support. example: Please wait and try again, if the error persist please contact support. description: Human readable message with an explanation of how to solve the error. summary: Get account for project tags: - WhatsApp Accounts x-tagAfterOperationSummary: color: white background: green label: GA post: callbacks: Comment: '{$request.body#webhooks.target}': post: summary: Comment on account description: |2- Received when a comment has been added to the account. parameters: - in: header name: x-sinch-webhook-signature schema: type: string format: uuid example: - in: header name: x-sinch-webhook-signature-algorithm schema: type: string enum: - HmacSHA256 uniqueItems: false example: HmacSHA256 - in: header name: x-sinch-webhook-signature-nonce schema: type: string example: 01EAW2BNWCG9DC13RS582V0ZQ3 - in: header name: x-sinch-webhook-signature-timestamp schema: type: string format: timestamp example: '1592227387' requestBody: content: application/json: schema: type: object properties: type: description: Type of event in this case `WHATSAPP_ACCOUNT_COMMENT_ADDED`. type: string payload: description: Account at time of callback. allOf: - $ref: '#/components/schemas/WhatsappAccountDto' comment: description: Comment for account. type: string required: - type - payload - comment example: type: WHATSAPP_ACCOUNT_COMMENT_ADDED payload: state: ONBOARDED isEmbeddedSignup: false businessManager: SINCH_UK wabaId: '1234567890' details: companyLegalName: Legal name of company clientBusinessManagerId: '1234567890' wabaEnabledForInsights: false compatibleRegions: - eu - us comment: Example comment responses: '200': description: Response to callback will be ignored. The call will retry if unsuccessful. Onboard: '{$request.body#webhooks.target}': post: summary: Account onboarded description: |2- Received when an Account is onboarded. parameters: - in: header name: x-sinch-webhook-signature schema: type: string format: uuid example: - in: header name: x-sinch-webhook-signature-algorithm schema: type: string enum: - HmacSHA256 uniqueItems: false example: HmacSHA256 - in: header name: x-sinch-webhook-signature-nonce schema: type: string example: 01EAW2BNWCG9DC13RS582V0ZQ3 - in: header name: x-sinch-webhook-signature-timestamp schema: type: string format: timestamp example: '1592227387' requestBody: content: application/json: schema: type: object properties: type: description: Type of event in this case `WHATSAPP_ACCOUNT_ONBOARDED`. type: string payload: description: Account at time of callback. allOf: - $ref: '#/components/schemas/WhatsappAccountDto' comment: description: Comment for account. type: string required: - type - payload example: type: WHATSAPP_ACCOUNT_ONBOARDED payload: state: ONBOARDED isEmbeddedSignup: false businessManager: SINCH_UK wabaId: '1234567890' details: companyLegalName: Legal name of company clientBusinessManagerId: '1234567890' wabaEnabledForInsights: false compatibleRegions: - eu - us responses: '200': description: Response to callback will be ignored. The call will retry if unsuccessful. Rejected: '{$request.body#webhooks.target}': post: summary: Account rejected description: |2- Received when an Account is rejected. parameters: - in: header name: x-sinch-webhook-signature schema: type: string format: uuid example: - in: header name: x-sinch-webhook-signature-algorithm schema: type: string enum: - HmacSHA256 uniqueItems: false example: HmacSHA256 - in: header name: x-sinch-webhook-signature-nonce schema: type: string example: 01EAW2BNWCG9DC13RS582V0ZQ3 - in: header name: x-sinch-webhook-signature-timestamp schema: type: string format: timestamp example: '1592227387' requestBody: content: application/json: schema: type: object properties: type: description: Type of event in this case `WHATSAPP_ACCOUNT_REJECTED`. type: string payload: description: Account at time of callback. allOf: - $ref: '#/components/schemas/WhatsappAccountDto' comment: description: Comment for account. type: string required: - type - payload example: type: WHATSAPP_ACCOUNT_REJECTED payload: isEmbeddedSignup: false businessManager: SINCH_UK wabaId: '1234567890' changes: status: REJECTED details: companyLegalName: Legal name of company clientBusinessManagerId: '1234567890' compatibleRegions: - eu - us responses: '200': description: Response to callback will be ignored. The call will retry if unsuccessful. PendingVerification: '{$request.body#webhooks.target}': post: summary: Account pending verification description: |2- Received when an Account is in pending verification. parameters: - in: header name: x-sinch-webhook-signature schema: type: string format: uuid example: - in: header name: x-sinch-webhook-signature-algorithm schema: type: string enum: - HmacSHA256 uniqueItems: false example: HmacSHA256 - in: header name: x-sinch-webhook-signature-nonce schema: type: string example: 01EAW2BNWCG9DC13RS582V0ZQ3 - in: header name: x-sinch-webhook-signature-timestamp schema: type: string format: timestamp example: '1592227387' requestBody: content: application/json: schema: type: object properties: type: description: Type of event in this case `WHATSAPP_ACCOUNT_PENDING_VERIFICATION`. type: string payload: description: Account at time of callback. allOf: - $ref: '#/components/schemas/WhatsappAccountDto' comment: description: Comment for account. type: string required: - type - payload example: type: WHATSAPP_ACCOUNT_PENDING_VERIFICATION payload: isEmbeddedSignup: false businessManager: SINCH_UK wabaId: '1234567890' changes: status: PENDING_FACEBOOK_VERIFICATION details: companyLegalName: Legal name of company clientBusinessManagerId: '1234567890' compatibleRegions: - eu - us responses: '200': description: Response to callback will be ignored. The call will retry if unsuccessful. WabaInformationChanged: '{$request.body#webhooks.target}': post: summary: Account business information changed description: |2- Received when Account has some of its business information changed by Meta. parameters: - in: header name: x-sinch-webhook-signature schema: type: string format: uuid example: - in: header name: x-sinch-webhook-signature-algorithm schema: type: string enum: - HmacSHA256 uniqueItems: false example: HmacSHA256 - in: header name: x-sinch-webhook-signature-nonce schema: type: string example: 01EAW2BNWCG9DC13RS582V0ZQ3 - in: header name: x-sinch-webhook-signature-timestamp schema: type: string format: timestamp example: '1592227387' requestBody: content: application/json: schema: type: object properties: type: description: Type of event in this case `WHATSAPP_WABA_ACCOUNT_CHANGED`. type: string payload: description: Account at time of callback. allOf: - $ref: '#/components/schemas/WhatsappAccountDto' comment: description: Comment for account. type: string required: - type - payload example: type: WHATSAPP_WABA_ACCOUNT_CHANGED payload: state: ONBOARDED isEmbeddedSignup: false businessManager: SINCH_BR wabaId: '1234567890' details: companyLegalName: Legal name of company clientBusinessManagerId: '1234567890' wabaEnabledForInsights: true compatibleRegions: - br primaryBusinessLocation: BR responses: '200': description: Response to callback will be ignored. The call will retry if unsuccessful. description: |2- Create the WhatsApp account for the project. Each project can only have one account. operationId: AccountsController_createAccount_v1 parameters: - name: projectId required: true in: path description: The unique ID of the project. You can find this on the Sinch Dashboard. schema: type: string requestBody: required: true description: Account data content: application/json: schema: $ref: '#/components/schemas/WhatsappAccountInputDto' examples: input: summary: Body request description: |2- Example body request to create an account. value: companyLegalName: Legal name of company clientBusinessManagerId: '1234567890' responses: '201': description: Account content: application/json: schema: $ref: '#/components/schemas/WhatsappAccountDto' examples: response: summary: Create response description: |2- Response when successfully creating an account. value: isEmbeddedSignup: false businessManager: SINCH_UK wabaId: '1234567890' changes: status: IN_PROGRESS details: companyLegalName: Legal name of company clientBusinessManagerId: '1234567890' compatibleRegions: - eu - us '400': description: BadRequest content: application/json: schema: oneOf: - title: InvalidInputErrorTitle properties: errorCode: type: string title: invalid_input example: invalid_input description: Error code allows to programatically handle errors. message: type: string title: Invalid input. example: Invalid input. description: Human readable message. resolution: type: string title: Correct the validation errors and submit again. example: Correct the validation errors and submit again. description: Human readable message with an explanation of how to solve the error. additionalInformation: type: object title: additionalInformation example: validationErrors: - companyLegalName must be a string description: Additional information for error. - title: InvalidBusinessManagerForEnvironmentErrorTitle properties: errorCode: type: string title: invalid_business_manager_for_environment example: invalid_business_manager_for_environment description: Error code allows to programatically handle errors. message: type: string title: Invalid business manager for environment. example: Invalid business manager for environment. description: Human readable message. resolution: type: string title: Verify that business manager is valid for environment. Allowed business managers for environment SINCH_AMERICA, SINCH_UK. example: Verify that business manager is valid for environment. Allowed business managers for environment SINCH_AMERICA, SINCH_UK. description: Human readable message with an explanation of how to solve the error. - title: InvalidPayloadErrorTitle properties: errorCode: type: string title: invalid_payload example: invalid_payload description: Error code allows to programatically handle errors. message: type: string title: Invalid payload. example: Invalid payload. description: Human readable message. resolution: type: string title: Correct payload and submit again. example: Correct payload and submit again. description: Human readable message with an explanation of how to solve the error. '401': description: Unauthorized content: application/json: schema: example: errorCode: unauthorized_error message: Unauthorized error. resolution: Verify that projectId is correct. title: UnauthorizedErrorErrorTitle properties: errorCode: type: string title: unauthorized_error example: unauthorized_error description: Error code allows to programatically handle errors. message: type: string title: Unauthorized error. example: Unauthorized error. description: Human readable message. resolution: type: string title: Verify that projectId is correct. example: Verify that projectId is correct. description: Human readable message with an explanation of how to solve the error. '404': description: NotFound content: application/json: schema: example: errorCode: project_not_found message: Project not found. resolution: Verify that the projectId is correct. title: ProjectNotFoundErrorTitle properties: errorCode: type: string title: project_not_found example: project_not_found description: Error code allows to programatically handle errors. message: type: string title: Project not found. example: Project not found. description: Human readable message. resolution: type: string title: Verify that the projectId is correct. example: Verify that the projectId is correct. description: Human readable message with an explanation of how to solve the error. '409': description: Conflict content: application/json: schema: oneOf: - title: AccountExistsErrorTitle properties: errorCode: type: string title: account_exists example: account_exists description: Error code allows to programatically handle errors. message: type: string title: Account already exists. example: Account already exists. description: Human readable message. resolution: type: string title: There can only be one WhatsApp account for each project. Choose another one project to create a new WhatsApp account. example: There can only be one WhatsApp account for each project. Choose another one project to create a new WhatsApp account. description: Human readable message with an explanation of how to solve the error. - title: AccountDataIsCorruptErrorTitle properties: errorCode: type: string title: account_data_is_corrupt example: account_data_is_corrupt description: Error code allows to programatically handle errors. message: type: string title: Account data is corrupt. example: Account data is corrupt. description: Human readable message. resolution: type: string title: Please contact support. example: Please contact support. description: Human readable message with an explanation of how to solve the error. '500': description: InternalServerError content: application/json: schema: example: errorCode: internal_error message: Internal server error. resolution: Please wait and try again, if the error persist please contact support. title: InternalErrorErrorTitle properties: errorCode: type: string title: internal_error example: internal_error description: Error code allows to programatically handle errors. message: type: string title: Internal server error. example: Internal server error. description: Human readable message. resolution: type: string title: Please wait and try again, if the error persist please contact support. example: Please wait and try again, if the error persist please contact support. description: Human readable message with an explanation of how to solve the error. summary: Create account for project tags: - WhatsApp Accounts x-tagAfterOperationSummary: color: white background: green label: GA patch: description: |2- Update an account. It is only possible to update an account that has been rejected. After update the status will be set to `IN_PROGRESS`. operationId: AccountsController_updateAccount_v1 parameters: - name: projectId required: true in: path description: The unique ID of the project. You can find this on the Sinch Dashboard. schema: type: string requestBody: required: true description: Supported account fields to update. content: application/json: schema: $ref: '#/components/schemas/WhatsappUpdateAccountInputDto' examples: input: summary: Body request description: |2- Example body request to update an account. value: companyLegalName: Update legal name of company clientBusinessManagerId: '1234567890' responses: '200': description: Account content: application/json: schema: $ref: '#/components/schemas/WhatsappAccountDto' examples: response: summary: Update response description: |2- Response when successfully update an account. value: state: REJECTED isEmbeddedSignup: false businessManager: SINCH_UK wabaId: '1234567890' changes: status: IN_PROGRESS details: companyLegalName: Update legal name of company clientBusinessManagerId: '1234567890' details: companyLegalName: Legal name of company clientBusinessManagerId: '1234567890' wabaEnabledForInsights: true compatibleRegions: - eu - us '400': description: BadRequest content: application/json: schema: oneOf: - title: InvalidInputErrorTitle properties: errorCode: type: string title: invalid_input example: invalid_input description: Error code allows to programatically handle errors. message: type: string title: Invalid input. example: Invalid input. description: Human readable message. resolution: type: string title: Correct the validation errors and submit again. example: Correct the validation errors and submit again. description: Human readable message with an explanation of how to solve the error. additionalInformation: type: object title: additionalInformation example: validationErrors: - companyLegalName must be a string description: Additional information for error. - title: NoFieldsToUpdateErrorTitle properties: errorCode: type: string title: no_fields_to_update example: no_fields_to_update description: Error code allows to programatically handle errors. message: type: string title: No data to update. example: No data to update. description: Human readable message. resolution: type: string title: Add at least one field to update. example: Add at least one field to update. description: Human readable message with an explanation of how to solve the error. '401': description: Unauthorized content: application/json: schema: example: errorCode: unauthorized_error message: Unauthorized error. resolution: Verify that projectId is correct. title: UnauthorizedErrorErrorTitle properties: errorCode: type: string title: unauthorized_error example: unauthorized_error description: Error code allows to programatically handle errors. message: type: string title: Unauthorized error. example: Unauthorized error. description: Human readable message. resolution: type: string title: Verify that projectId is correct. example: Verify that projectId is correct. description: Human readable message with an explanation of how to solve the error. '404': description: NotFound content: application/json: schema: example: errorCode: account_not_found message: Account not found. resolution: Verify that the parameters are correct. title: AccountNotFoundErrorTitle properties: errorCode: type: string title: account_not_found example: account_not_found description: Error code allows to programatically handle errors. message: type: string title: Account not found. example: Account not found. description: Human readable message. resolution: type: string title: Verify that the parameters are correct. example: Verify that the parameters are correct. description: Human readable message with an explanation of how to solve the error. '409': description: Conflict content: application/json: schema: example: errorCode: account_not_updatable message: Account is not updatable. resolution: Only account that are in "REJECTED" state can be updated. title: AccountNotUpdatableErrorTitle properties: errorCode: type: string title: account_not_updatable example: account_not_updatable description: Error code allows to programatically handle errors. message: type: string title: Account is not updatable. example: Account is not updatable. description: Human readable message. resolution: type: string title: Only account that are in "REJECTED" state can be updated. example: Only account that are in "REJECTED" state can be updated. description: Human readable message with an explanation of how to solve the error. '500': description: InternalServerError content: application/json: schema: example: errorCode: internal_error message: Internal server error. resolution: Please wait and try again, if the error persist please contact support. title: InternalErrorErrorTitle properties: errorCode: type: string title: internal_error example: internal_error description: Error code allows to programatically handle errors. message: type: string title: Internal server error. example: Internal server error. description: Human readable message. resolution: type: string title: Please wait and try again, if the error persist please contact support. example: Please wait and try again, if the error persist please contact support. description: Human readable message with an explanation of how to solve the error. summary: Update account for project tags: - WhatsApp Accounts x-tagAfterOperationSummary: color: white background: green label: GA /v1/projects/{projectId}/whatsapp/activities: get: description: |2- Lists activities on account from the most recent one to the oldest one. operationId: AccountsController_listActivities_v1 parameters: - name: projectId required: true in: path description: The unique ID of the project. You can find this on the Sinch Dashboard. schema: type: string - name: pageToken required: false in: query schema: type: string description: The page token if retrieving the next page from a previous query. - name: pageSize required: false in: query schema: type: number minimum: 1 maximum: 100 description: The page size requested. responses: '200': description: Recent activities on account content: application/json: schema: $ref: '#/components/schemas/WhatsappAccountNotificationListDto' examples: response: summary: List account activities response description: |2- Response for all account activities. value: totalSize: 2 pageSize: 50 notifications: - type: CREATED created: '2023-01-19T13:11:08.204Z' author: Provisioning API user - type: COMMENT_ADDED created: '2023-01-19T13:11:08.204Z' comment: Example comment author: Provisioning API user '400': description: BadRequest content: application/json: schema: oneOf: - title: InvalidPageTokenErrorTitle properties: errorCode: type: string title: invalid_page_token example: invalid_page_token description: Error code allows to programatically handle errors. message: type: string title: Invalid page token. example: Invalid page token. description: Human readable message. resolution: type: string title: The page token to use is provided in the previous query response, for new queries simply leave this field undefined. example: The page token to use is provided in the previous query response, for new queries simply leave this field undefined. description: Human readable message with an explanation of how to solve the error. - title: InvalidPageSizeErrorTitle properties: errorCode: type: string title: invalid_page_size example: invalid_page_size description: Error code allows to programatically handle errors. message: type: string title: Page size must be numeric. example: Page size must be numeric. description: Human readable message. resolution: type: string title: Use a integer value for pageSize parameter. example: Use a integer value for pageSize parameter. description: Human readable message with an explanation of how to solve the error. '401': description: Unauthorized content: application/json: schema: example: errorCode: unauthorized_error message: Unauthorized error. resolution: Verify that projectId is correct. title: UnauthorizedErrorErrorTitle properties: errorCode: type: string title: unauthorized_error example: unauthorized_error description: Error code allows to programatically handle errors. message: type: string title: Unauthorized error. example: Unauthorized error. description: Human readable message. resolution: type: string title: Verify that projectId is correct. example: Verify that projectId is correct. description: Human readable message with an explanation of how to solve the error. '404': description: NotFound content: application/json: schema: example: errorCode: account_not_found message: Account not found. resolution: Verify that the parameters are correct. title: AccountNotFoundErrorTitle properties: errorCode: type: string title: account_not_found example: account_not_found description: Error code allows to programatically handle errors. message: type: string title: Account not found. example: Account not found. description: Human readable message. resolution: type: string title: Verify that the parameters are correct. example: Verify that the parameters are correct. description: Human readable message with an explanation of how to solve the error. '500': description: InternalServerError content: application/json: schema: example: errorCode: internal_error message: Internal server error. resolution: Please wait and try again, if the error persist please contact support. title: InternalErrorErrorTitle properties: errorCode: type: string title: internal_error example: internal_error description: Error code allows to programatically handle errors. message: type: string title: Internal server error. example: Internal server error. description: Human readable message. resolution: type: string title: Please wait and try again, if the error persist please contact support. example: Please wait and try again, if the error persist please contact support. description: Human readable message with an explanation of how to solve the error. summary: Lists activities on account tags: - WhatsApp Accounts x-tagAfterOperationSummary: color: white background: green label: GA /v1/projects/{projectId}/whatsapp/comments: post: description: |2- Creates a comment for an account. operationId: AccountsController_createComment_v1 parameters: - name: projectId required: true in: path description: The unique ID of the project. You can find this on the Sinch Dashboard. schema: type: string requestBody: required: true description: Comment data content: application/json: schema: $ref: '#/components/schemas/WhatsappCommentInputDto' examples: input: summary: Body request description: |2- Example body request to create a comment. value: comment: Example comment. responses: '201': description: Created comment for an account. content: application/json: schema: $ref: '#/components/schemas/WhatsappCommentDto' examples: created: summary: Create response description: |2- Response when successfully creating a comment. value: type: CREATED comment: Example comment created: '2023-01-19T13:11:08.204Z' '400': description: BadRequest content: application/json: schema: oneOf: - title: InvalidInputErrorTitle properties: errorCode: type: string title: invalid_input example: invalid_input description: Error code allows to programatically handle errors. message: type: string title: Invalid input. example: Invalid input. description: Human readable message. resolution: type: string title: Correct the validation errors and submit again. example: Correct the validation errors and submit again. description: Human readable message with an explanation of how to solve the error. additionalInformation: type: object title: additionalInformation example: validationErrors: - comment must be longer than or equal to 1 characters description: Additional information for error. - title: InvalidPayloadErrorTitle properties: errorCode: type: string title: invalid_payload example: invalid_payload description: Error code allows to programatically handle errors. message: type: string title: Invalid payload. example: Invalid payload. description: Human readable message. resolution: type: string title: Correct payload and submit again. example: Correct payload and submit again. description: Human readable message with an explanation of how to solve the error. '401': description: Unauthorized content: application/json: schema: example: errorCode: unauthorized_error message: Unauthorized error. resolution: Verify that projectId is correct. title: UnauthorizedErrorErrorTitle properties: errorCode: type: string title: unauthorized_error example: unauthorized_error description: Error code allows to programatically handle errors. message: type: string title: Unauthorized error. example: Unauthorized error. description: Human readable message. resolution: type: string title: Verify that projectId is correct. example: Verify that projectId is correct. description: Human readable message with an explanation of how to solve the error. '404': description: NotFound content: application/json: schema: example: errorCode: account_not_found message: Account not found. resolution: Verify that the parameters are correct. title: AccountNotFoundErrorTitle properties: errorCode: type: string title: account_not_found example: account_not_found description: Error code allows to programatically handle errors. message: type: string title: Account not found. example: Account not found. description: Human readable message. resolution: type: string title: Verify that the parameters are correct. example: Verify that the parameters are correct. description: Human readable message with an explanation of how to solve the error. '409': description: Conflict content: application/json: schema: example: errorCode: account_data_is_corrupt message: Account data is corrupt. resolution: Please contact support. title: AccountDataIsCorruptErrorTitle properties: errorCode: type: string title: account_data_is_corrupt example: account_data_is_corrupt description: Error code allows to programatically handle errors. message: type: string title: Account data is corrupt. example: Account data is corrupt. description: Human readable message. resolution: type: string title: Please contact support. example: Please contact support. description: Human readable message with an explanation of how to solve the error. '500': description: InternalServerError content: application/json: schema: oneOf: - title: FailedToCreateCommentErrorTitle properties: errorCode: type: string title: failed_to_create_comment example: failed_to_create_comment description: Error code allows to programatically handle errors. message: type: string title: Failed to create a comment. example: Failed to create a comment. description: Human readable message. resolution: type: string title: Please try again later. example: Please try again later. description: Human readable message with an explanation of how to solve the error. - title: InternalErrorErrorTitle properties: errorCode: type: string title: internal_error example: internal_error description: Error code allows to programatically handle errors. message: type: string title: Internal server error. example: Internal server error. description: Human readable message. resolution: type: string title: Please wait and try again, if the error persist please contact support. example: Please wait and try again, if the error persist please contact support. description: Human readable message with an explanation of how to solve the error. summary: Creates a comment for an account tags: - WhatsApp Accounts x-tagAfterOperationSummary: color: white background: green label: GA /v1/projects/{projectId}/whatsapp/enableTemplateAnalytics: put: description: |2- Enable Meta template analytics for WhatsApp Business Account. operationId: TemplateAnalyticsHelpersController_enableTemplateAnalytics_v1 parameters: - name: projectId required: true in: path description: The unique ID of the project. You can find this on the Sinch Dashboard. schema: type: string responses: '200': description: Meta template analytics enabled for WhatsApp Business Account. '400': description: BadRequest content: application/json: schema: example: errorCode: project_not_initialized message: Project not initialized for WhatsApp. resolution: Verify that the project ID is correct and that it has been onboarded for WhatsApp. title: ProjectNotInitializedErrorTitle properties: errorCode: type: string title: project_not_initialized example: project_not_initialized description: Error code allows to programatically handle errors. message: type: string title: Project not initialized for WhatsApp. example: Project not initialized for WhatsApp. description: Human readable message. resolution: type: string title: Verify that the project ID is correct and that it has been onboarded for WhatsApp. example: Verify that the project ID is correct and that it has been onboarded for WhatsApp. description: Human readable message with an explanation of how to solve the error. '401': description: Unauthorized content: application/json: schema: example: errorCode: unauthorized_error message: Unauthorized error. resolution: Verify that projectId is correct. title: UnauthorizedErrorErrorTitle properties: errorCode: type: string title: unauthorized_error example: unauthorized_error description: Error code allows to programatically handle errors. message: type: string title: Unauthorized error. example: Unauthorized error. description: Human readable message. resolution: type: string title: Verify that projectId is correct. example: Verify that projectId is correct. description: Human readable message with an explanation of how to solve the error. '424': description: FailedDependency content: application/json: schema: example: errorCode: template_insights_not_yet_available message: Template Insights unavailable. resolution: Template Insights are not available yet for this WhatsApp Business account, please contact support. title: TemplateInsightsNotYetAvailableErrorTitle properties: errorCode: type: string title: template_insights_not_yet_available example: template_insights_not_yet_available description: Error code allows to programatically handle errors. message: type: string title: Template Insights unavailable. example: Template Insights unavailable. description: Human readable message. resolution: type: string title: Template Insights are not available yet for this WhatsApp Business account, please contact support. example: Template Insights are not available yet for this WhatsApp Business account, please contact support. description: Human readable message with an explanation of how to solve the error. '500': description: InternalServerError content: application/json: schema: example: errorCode: internal_error message: Internal server error. resolution: Please wait and try again, if the error persist please contact support. title: InternalErrorErrorTitle properties: errorCode: type: string title: internal_error example: internal_error description: Error code allows to programatically handle errors. message: type: string title: Internal server error. example: Internal server error. description: Human readable message. resolution: type: string title: Please wait and try again, if the error persist please contact support. example: Please wait and try again, if the error persist please contact support. description: Human readable message with an explanation of how to solve the error. summary: Enable Meta template analytics tags: - WhatsApp x-tagAfterOperationSummary: color: white background: green label: GA /v1/projects/{projectId}/whatsapp/flows: get: description: |2- Retrieve the list of flows created in the WhatsApp business account (WABA) associated with the project. operationId: FlowsController_listFlows_v1 parameters: - name: projectId required: true in: path description: The unique ID of the project. You can find this on the Sinch Dashboard. schema: type: string - name: pageToken required: false in: query schema: type: string description: The page token if retrieving the next page from a previous query. - name: pageSize required: false in: query schema: type: number minimum: 1 maximum: 100 description: The page size requested. responses: '200': description: Flows content: application/json: schema: $ref: '#/components/schemas/WhatsappFlowListDto' examples: response: summary: Flows response description: |2- Successful response to a "list flows in a project" query. value: totalSize: 2 pageSize: 50 flows: - id: '12345678765432' name: flow1 status: FLOW_STATUS_PUBLISHED - id: '98765676543654567' name: flow2 status: FLOW_STATUS_DRAFT '400': description: BadRequest content: application/json: schema: example: errorCode: project_not_initialized message: Project not initialized for WhatsApp. resolution: Verify that the project ID is correct and that it has been onboarded for WhatsApp. title: ProjectNotInitializedErrorTitle properties: errorCode: type: string title: project_not_initialized example: project_not_initialized description: Error code allows to programatically handle errors. message: type: string title: Project not initialized for WhatsApp. example: Project not initialized for WhatsApp. description: Human readable message. resolution: type: string title: Verify that the project ID is correct and that it has been onboarded for WhatsApp. example: Verify that the project ID is correct and that it has been onboarded for WhatsApp. description: Human readable message with an explanation of how to solve the error. '401': description: Unauthorized content: application/json: schema: example: errorCode: unauthorized_error message: Unauthorized error. resolution: Verify that projectId is correct. title: UnauthorizedErrorErrorTitle properties: errorCode: type: string title: unauthorized_error example: unauthorized_error description: Error code allows to programatically handle errors. message: type: string title: Unauthorized error. example: Unauthorized error. description: Human readable message. resolution: type: string title: Verify that projectId is correct. example: Verify that projectId is correct. description: Human readable message with an explanation of how to solve the error. '404': description: NotFound content: application/json: schema: example: errorCode: project_not_found message: Project not found. resolution: Verify that the projectId is correct. title: ProjectNotFoundErrorTitle properties: errorCode: type: string title: project_not_found example: project_not_found description: Error code allows to programatically handle errors. message: type: string title: Project not found. example: Project not found. description: Human readable message. resolution: type: string title: Verify that the projectId is correct. example: Verify that the projectId is correct. description: Human readable message with an explanation of how to solve the error. '500': description: InternalServerError content: application/json: schema: example: errorCode: internal_error message: Internal server error. resolution: Please wait and try again, if the error persist please contact support. title: InternalErrorErrorTitle properties: errorCode: type: string title: internal_error example: internal_error description: Error code allows to programatically handle errors. message: type: string title: Internal server error. example: Internal server error. description: Human readable message. resolution: type: string title: Please wait and try again, if the error persist please contact support. example: Please wait and try again, if the error persist please contact support. description: Human readable message with an explanation of how to solve the error. summary: Get flows in the WhatsApp business account (WABA) associated to the project tags: - WhatsApp Flows x-tagAfterOperationSummary: color: white background: green label: GA /v1/projects/{projectId}/whatsapp/flows/{flowId}/screens: get: description: |2- Retrieve the list of screens in a flow. operationId: FlowsController_listFlowScreens_v1 parameters: - name: projectId required: true in: path description: The unique ID of the project. You can find this on the Sinch Dashboard. schema: type: string - name: flowId required: true in: path schema: type: string responses: '200': description: Flow screens content: application/json: schema: $ref: '#/components/schemas/WhatsappFlowScreenListDto' examples: response: summary: Flow screens response description: |2- Successful response to a "list screens for a flow" query. value: screens: - id: MY_FIRST_SCREEN '400': description: BadRequest content: application/json: schema: example: errorCode: project_not_initialized message: Project not initialized for WhatsApp. resolution: Verify that the project ID is correct and that it has been onboarded for WhatsApp. title: ProjectNotInitializedErrorTitle properties: errorCode: type: string title: project_not_initialized example: project_not_initialized description: Error code allows to programatically handle errors. message: type: string title: Project not initialized for WhatsApp. example: Project not initialized for WhatsApp. description: Human readable message. resolution: type: string title: Verify that the project ID is correct and that it has been onboarded for WhatsApp. example: Verify that the project ID is correct and that it has been onboarded for WhatsApp. description: Human readable message with an explanation of how to solve the error. '401': description: Unauthorized content: application/json: schema: example: errorCode: unauthorized_error message: Unauthorized error. resolution: Verify that projectId is correct. title: UnauthorizedErrorErrorTitle properties: errorCode: type: string title: unauthorized_error example: unauthorized_error description: Error code allows to programatically handle errors. message: type: string title: Unauthorized error. example: Unauthorized error. description: Human readable message. resolution: type: string title: Verify that projectId is correct. example: Verify that projectId is correct. description: Human readable message with an explanation of how to solve the error. '404': description: NotFound content: application/json: schema: oneOf: - title: ProjectNotFoundErrorTitle properties: errorCode: type: string title: project_not_found example: project_not_found description: Error code allows to programatically handle errors. message: type: string title: Project not found. example: Project not found. description: Human readable message. resolution: type: string title: Verify that the projectId is correct. example: Verify that the projectId is correct. description: Human readable message with an explanation of how to solve the error. - title: FlowNotFoundErrorTitle properties: errorCode: type: string title: flow_not_found example: flow_not_found description: Error code allows to programatically handle errors. message: type: string title: Flow not found. example: Flow not found. description: Human readable message. resolution: type: string title: Verify that the parameters are correct. example: Verify that the parameters are correct. description: Human readable message with an explanation of how to solve the error. - title: FlowScreensNotFoundErrorTitle properties: errorCode: type: string title: flow_screens_not_found example: flow_screens_not_found description: Error code allows to programatically handle errors. message: type: string title: Flow screens not found. example: Flow screens not found. description: Human readable message. resolution: type: string title: Verify if the flow screens exist. example: Verify if the flow screens exist. description: Human readable message with an explanation of how to solve the error. '500': description: InternalServerError content: application/json: schema: example: errorCode: internal_error message: Internal server error. resolution: Please wait and try again, if the error persist please contact support. title: InternalErrorErrorTitle properties: errorCode: type: string title: internal_error example: internal_error description: Error code allows to programatically handle errors. message: type: string title: Internal server error. example: Internal server error. description: Human readable message. resolution: type: string title: Please wait and try again, if the error persist please contact support. example: Please wait and try again, if the error persist please contact support. description: Human readable message with an explanation of how to solve the error. summary: Get screens of a flow tags: - WhatsApp Flows x-tagAfterOperationSummary: color: white background: green label: GA /v1/projects/{projectId}/whatsapp/longLivedAccessToken: post: deprecated: true description: |2- Returns a long lived access token based on the facebook token from the embedded signup. Valid for 60 days. operationId: EmbeddedSignupHelperController_createLongLivedAccessToken_v1 parameters: - name: projectId required: true in: path description: The unique ID of the project. You can find this on the Sinch Dashboard. schema: type: string requestBody: required: true description: Facebook token generated from the embedded signup process, or another long lived access token. content: application/json: schema: $ref: '#/components/schemas/WhatsappLongLivedAccessTokenInputDto' examples: withFacebookCode: summary: Body request facebookCode description: |2- Example body request to create a long lived access token. value: facebookCode: FACEBOOK_CODE withFacebookToken: summary: Body request facebookToken description: |2- Example body request to create a long lived access token. value: facebookToken: FACEBOOK_TOKEN responses: '201': description: The long lived access token. content: application/json: schema: $ref: '#/components/schemas/WhatsappLongLivedAccessTokenDto' examples: response: summary: Create response description: |2- Response when successfully creating a long lived access token. value: longLivedAccessToken: FACEBOOK_TOKEN '400': description: BadRequest content: application/json: schema: oneOf: - title: InvalidInputErrorTitle properties: errorCode: type: string title: invalid_input example: invalid_input description: Error code allows to programatically handle errors. message: type: string title: Invalid input. example: Invalid input. description: Human readable message. resolution: type: string title: Correct the validation errors and submit again. example: Correct the validation errors and submit again. description: Human readable message with an explanation of how to solve the error. additionalInformation: type: object title: additionalInformation example: validationErrors: - facebookToken must be a string description: Additional information for error. - title: InvalidInputErrorTitle properties: errorCode: type: string title: invalid_input example: invalid_input description: Error code allows to programatically handle errors. message: type: string title: Invalid input. example: Invalid input. description: Human readable message. resolution: type: string title: Correct the validation errors and submit again. example: Correct the validation errors and submit again. description: Human readable message with an explanation of how to solve the error. additionalInformation: type: object title: additionalInformation example: validationErrors: - facebookCode must be a string description: Additional information for error. - title: InvalidInputErrorTitle properties: errorCode: type: string title: invalid_input example: invalid_input description: Error code allows to programatically handle errors. message: type: string title: Invalid input. example: Invalid input. description: Human readable message. resolution: type: string title: Correct the validation errors and submit again. example: Correct the validation errors and submit again. description: Human readable message with an explanation of how to solve the error. additionalInformation: type: object title: additionalInformation example: validationErrors: - at least one of facebookToken or facebookCode must be provided description: Additional information for error. - title: InvalidFacebookTokenErrorTitle properties: errorCode: type: string title: invalid_facebook_token example: invalid_facebook_token description: Error code allows to programatically handle errors. message: type: string title: Facebook token is invalid or has expired example: Facebook token is invalid or has expired description: Human readable message. resolution: type: string title: Check that token is correct, or create a new one and try again. example: Check that token is correct, or create a new one and try again. description: Human readable message with an explanation of how to solve the error. - title: InvalidFacebookCodeErrorTitle properties: errorCode: type: string title: invalid_facebook_code example: invalid_facebook_code description: Error code allows to programatically handle errors. message: type: string title: Facebook code is invalid or has expired example: Facebook code is invalid or has expired description: Human readable message. resolution: type: string title: Check that code is correct, or request a new one and try again. example: Check that code is correct, or request a new one and try again. description: Human readable message with an explanation of how to solve the error. - title: InvalidBusinessManagerErrorTitle properties: errorCode: type: string title: invalid_business_manager example: invalid_business_manager description: Error code allows to programatically handle errors. message: type: string title: Invalid business manager. example: Invalid business manager. description: Human readable message. resolution: type: string title: Check that business manager is correct for project. example: Check that business manager is correct for project. description: Human readable message with an explanation of how to solve the error. - title: InvalidBusinessManagerForEnvironmentErrorTitle properties: errorCode: type: string title: invalid_business_manager_for_environment example: invalid_business_manager_for_environment description: Error code allows to programatically handle errors. message: type: string title: Invalid business manager for environment. example: Invalid business manager for environment. description: Human readable message. resolution: type: string title: Verify that business manager is valid for environment. Allowed business managers for environment SINCH_AMERICA, SINCH_UK. example: Verify that business manager is valid for environment. Allowed business managers for environment SINCH_AMERICA, SINCH_UK. description: Human readable message with an explanation of how to solve the error. - title: InvalidPayloadErrorTitle properties: errorCode: type: string title: invalid_payload example: invalid_payload description: Error code allows to programatically handle errors. message: type: string title: Invalid payload. example: Invalid payload. description: Human readable message. resolution: type: string title: Correct payload and submit again. example: Correct payload and submit again. description: Human readable message with an explanation of how to solve the error. '401': description: Unauthorized content: application/json: schema: example: errorCode: unauthorized_error message: Unauthorized error. resolution: Verify that projectId is correct. title: UnauthorizedErrorErrorTitle properties: errorCode: type: string title: unauthorized_error example: unauthorized_error description: Error code allows to programatically handle errors. message: type: string title: Unauthorized error. example: Unauthorized error. description: Human readable message. resolution: type: string title: Verify that projectId is correct. example: Verify that projectId is correct. description: Human readable message with an explanation of how to solve the error. '500': description: InternalServerError content: application/json: schema: oneOf: - title: FacebookRequestLimitReachedErrorTitle properties: errorCode: type: string title: facebook_Request_limit_reached example: facebook_Request_limit_reached description: Error code allows to programatically handle errors. message: type: string title: Facebook request limit reached. example: Facebook request limit reached. description: Human readable message. resolution: type: string title: Please try again later. example: Please try again later. description: Human readable message with an explanation of how to solve the error. - title: LogInFacebookRequiredErrorTitle properties: errorCode: type: string title: log_in_facebook_required example: log_in_facebook_required description: Error code allows to programatically handle errors. message: type: string title: Log in to facebook required. example: Log in to facebook required. description: Human readable message. resolution: type: string title: Log in to www.facebook.com and follow the instructions given. example: Log in to www.facebook.com and follow the instructions given. description: Human readable message with an explanation of how to solve the error. - title: InternalErrorErrorTitle properties: errorCode: type: string title: internal_error example: internal_error description: Error code allows to programatically handle errors. message: type: string title: Internal server error. example: Internal server error. description: Human readable message. resolution: type: string title: Please wait and try again, if the error persist please contact support. example: Please wait and try again, if the error persist please contact support. description: Human readable message with an explanation of how to solve the error. summary: Create a long lived access token tags: - WhatsApp x-tagAfterOperationSummary: color: white background: green label: GA /v1/projects/{projectId}/whatsapp/senders: get: description: |2- Returns a paginated list of senders for the specified project. If no page token is supplied then the first `50` will be returned. operationId: SendersController_listSenders_v1 parameters: - name: projectId required: true in: path description: The unique ID of the project. You can find this on the Sinch Dashboard. schema: type: string - name: pageToken required: false in: query schema: type: string description: The page token if retrieving the next page from a previous query. - name: pageSize required: false in: query schema: type: number minimum: 1 maximum: 100 description: The page size requested. - name: filterStates required: false in: query description: Optionally query for sender by states. schema: type: array items: $ref: '#/components/schemas/WhatsappSenderStatesEnum' - name: filterStatuses required: false in: query description: Optionally query for sender by statuses. schema: type: array items: $ref: '#/components/schemas/WhatsappSenderStatusesEnum' responses: '200': description: List of senders content: application/json: schema: $ref: '#/components/schemas/WhatsappSenderListDto' examples: response: summary: List response description: |2- Response with senders. value: totalSize: 2 pageSize: 50 senders: - id: cf11794a-6a5e-4a12-b103-da79bd378bf1 state: ACTIVE details: displayName: Test name description: Test description vertical: PROFESSIONAL_SERVICES email: test@test.com address: Test address about: Test about websiteOne: https://example-1.com photoUrl: https://example.com/photos/1.png created: '2023-01-19T13:11:08.204Z' modified: '2023-01-19T13:11:08.204Z' region: EU metaLocalStorage: DE conversationApiApp: 4CF9CE97504C4A468F4610919D17ECC1 conversationApiAppDetails: id: 4CF9CE97504C4A468F4610919D17ECC1 projectId: ea026751-3edf-40a9-ad93-1b382bd60a78 region: EU maxTps: 10 qualityRating: GREEN dailyLimit: NOT_SET bearerToken: aaaaAAAA.bbbbBBBB.ccccCCCC cloudApi: true countryCode: '48' phoneNumber: '777777777' numberProvider: CUSTOMER businessManager: SINCH_UK compatibleRegions: - eu - us - id: cf11794a-6a5e-4a12-b103-da79bd378bf1 changes: status: IN_PROGRESS details: displayName: Test name description: Test description vertical: PROFESSIONAL_SERVICES email: test@test.com address: Test address about: Test about websiteOne: https://example-1.com photoUrl: https://example.com/photos/1.png created: '2023-01-19T13:11:08.204Z' modified: '2023-01-19T13:11:08.204Z' region: EU metaLocalStorage: DE conversationApiApp: 4CF9CE97504C4A468F4610919D17ECC1 conversationApiAppDetails: id: 4CF9CE97504C4A468F4610919D17ECC1 projectId: ea026751-3edf-40a9-ad93-1b382bd60a78 region: EU maxTps: 10 qualityRating: GREEN dailyLimit: NOT_SET bearerToken: aaaaAAAA.bbbbBBBB.ccccCCCC cloudApi: true countryCode: '48' phoneNumber: '777777777' numberProvider: CUSTOMER businessManager: SINCH_UK compatibleRegions: - eu - us '400': description: BadRequest content: application/json: schema: oneOf: - title: ProjectNotInitializedErrorTitle properties: errorCode: type: string title: project_not_initialized example: project_not_initialized description: Error code allows to programatically handle errors. message: type: string title: Project not initialized for WhatsApp. example: Project not initialized for WhatsApp. description: Human readable message. resolution: type: string title: Verify that the project ID is correct and that it has been onboarded for WhatsApp. example: Verify that the project ID is correct and that it has been onboarded for WhatsApp. description: Human readable message with an explanation of how to solve the error. - title: InvalidPageTokenErrorTitle properties: errorCode: type: string title: invalid_page_token example: invalid_page_token description: Error code allows to programatically handle errors. message: type: string title: Invalid page token. example: Invalid page token. description: Human readable message. resolution: type: string title: The page token to use is provided in the previous query response, for new queries simply leave this field undefined. example: The page token to use is provided in the previous query response, for new queries simply leave this field undefined. description: Human readable message with an explanation of how to solve the error. - title: InvalidPageSizeErrorTitle properties: errorCode: type: string title: invalid_page_size example: invalid_page_size description: Error code allows to programatically handle errors. message: type: string title: Page size must be numeric. example: Page size must be numeric. description: Human readable message. resolution: type: string title: Use a integer value for pageSize parameter. example: Use a integer value for pageSize parameter. description: Human readable message with an explanation of how to solve the error. - title: InvalidFilterStatesErrorTitle properties: errorCode: type: string title: invalid_filter_states example: invalid_filter_states description: Error code allows to programatically handle errors. message: type: string title: Invalid filterStates. example: Invalid filterStates. description: Human readable message. resolution: type: string title: Verify that the filterStates used are supported by the Provisioning API. example: Verify that the filterStates used are supported by the Provisioning API. description: Human readable message with an explanation of how to solve the error. additionalInformation: type: object title: additionalInformation example: supportedCodes: ACTIVE, IN_PROGRESS, INACTIVE, PENDING_VERIFICATION, SUSPENDED, ERROR description: Additional information for error. - title: InvalidFilterStatusesErrorTitle properties: errorCode: type: string title: invalid_filter_statuses example: invalid_filter_statuses description: Error code allows to programatically handle errors. message: type: string title: Invalid filter statuses. example: Invalid filter statuses. description: Human readable message. resolution: type: string title: Verify that the filterStatuses used are supported by the Provisioning API. example: Verify that the filterStatuses used are supported by the Provisioning API. description: Human readable message with an explanation of how to solve the error. additionalInformation: type: object title: additionalInformation example: supportedCodes: DRAFT, ERROR, IN_PROGRESS, REJECTED description: Additional information for error. '401': description: Unauthorized content: application/json: schema: example: errorCode: unauthorized_error message: Unauthorized error. resolution: Verify that projectId is correct. title: UnauthorizedErrorErrorTitle properties: errorCode: type: string title: unauthorized_error example: unauthorized_error description: Error code allows to programatically handle errors. message: type: string title: Unauthorized error. example: Unauthorized error. description: Human readable message. resolution: type: string title: Verify that projectId is correct. example: Verify that projectId is correct. description: Human readable message with an explanation of how to solve the error. '404': description: NotFound content: application/json: schema: example: errorCode: sender_not_found message: Sender not found. resolution: Verify that the parameters are correct. title: SenderNotFoundErrorTitle properties: errorCode: type: string title: sender_not_found example: sender_not_found description: Error code allows to programatically handle errors. message: type: string title: Sender not found. example: Sender not found. description: Human readable message. resolution: type: string title: Verify that the parameters are correct. example: Verify that the parameters are correct. description: Human readable message with an explanation of how to solve the error. '500': description: InternalServerError content: application/json: schema: example: errorCode: internal_error message: Internal server error. resolution: Please wait and try again, if the error persist please contact support. title: InternalErrorErrorTitle properties: errorCode: type: string title: internal_error example: internal_error description: Error code allows to programatically handle errors. message: type: string title: Internal server error. example: Internal server error. description: Human readable message. resolution: type: string title: Please wait and try again, if the error persist please contact support. example: Please wait and try again, if the error persist please contact support. description: Human readable message with an explanation of how to solve the error. summary: List all senders in project tags: - WhatsApp Senders x-tagAfterOperationSummary: color: white background: green label: GA post: callbacks: Comment: '{$request.body#webhooks.target}': post: summary: Comment on sender description: |2- Received when a comment has been added to the sender. parameters: - in: header name: x-sinch-webhook-signature schema: type: string format: uuid example: - in: header name: x-sinch-webhook-signature-algorithm schema: type: string enum: - HmacSHA256 uniqueItems: false example: HmacSHA256 - in: header name: x-sinch-webhook-signature-nonce schema: type: string example: 01EAW2BNWCG9DC13RS582V0ZQ3 - in: header name: x-sinch-webhook-signature-timestamp schema: type: string format: timestamp example: '1592227387' requestBody: content: application/json: schema: type: object properties: type: description: Type of event, in this case `WHATSAPP_SENDER_COMMENT_ADDED`. type: string payload: description: Sender at time of callback. allOf: - $ref: '#/components/schemas/WhatsappSenderDto' comment: description: Comment for sender. type: string required: - type - payload - comment example: type: WHATSAPP_SENDER_COMMENT_ADDED payload: id: cf11794a-6a5e-4a12-b103-da79bd378bf1 state: INACTIVE details: displayName: Test name description: Test description vertical: PROFESSIONAL_SERVICES email: test@test.com address: Test address about: Test about websiteOne: https://example-1.com photoUrl: https://example.com/photos/1.png created: '2023-01-19T13:11:08.204Z' modified: '2023-01-19T13:11:08.204Z' region: EU metaLocalStorage: DE conversationApiApp: 4CF9CE97504C4A468F4610919D17ECC1 conversationApiAppDetails: id: 4CF9CE97504C4A468F4610919D17ECC1 projectId: ea026751-3edf-40a9-ad93-1b382bd60a78 region: EU maxTps: 10 qualityRating: GREEN dailyLimit: NOT_SET bearerToken: aaaaAAAA.bbbbBBBB.ccccCCCC cloudApi: true countryCode: '48' phoneNumber: '777777777' numberProvider: CUSTOMER businessManager: SINCH_UK compatibleRegions: - eu - us comment: Example comment responses: '200': description: Response to callback will be ignored. The call will retry if unsuccessful. Active: '{$request.body#webhooks.target}': post: summary: Sender completed description: |2- Received when a Sender is completed and ready for use. parameters: - in: header name: x-sinch-webhook-signature schema: type: string format: uuid example: - in: header name: x-sinch-webhook-signature-algorithm schema: type: string enum: - HmacSHA256 uniqueItems: false example: HmacSHA256 - in: header name: x-sinch-webhook-signature-nonce schema: type: string example: 01EAW2BNWCG9DC13RS582V0ZQ3 - in: header name: x-sinch-webhook-signature-timestamp schema: type: string format: timestamp example: '1592227387' requestBody: content: application/json: schema: type: object properties: type: description: Type of event, in this case `WHATSAPP_SENDER_ACTIVE`. type: string payload: description: Sender at time of callback. allOf: - $ref: '#/components/schemas/WhatsappSenderDto' comment: description: Comment for sender. type: string required: - type - payload example: type: WHATSAPP_SENDER_ACTIVE payload: id: cf11794a-6a5e-4a12-b103-da79bd378bf1 state: ACTIVE details: displayName: Test name description: Test description vertical: PROFESSIONAL_SERVICES email: test@test.com address: Test address about: Test about websiteOne: https://example-1.com photoUrl: https://example.com/photos/1.png created: '2023-01-19T13:11:08.204Z' modified: '2023-01-19T13:11:08.204Z' region: EU metaLocalStorage: DE conversationApiApp: 4CF9CE97504C4A468F4610919D17ECC1 conversationApiAppDetails: id: 4CF9CE97504C4A468F4610919D17ECC1 projectId: ea026751-3edf-40a9-ad93-1b382bd60a78 region: EU maxTps: 10 qualityRating: GREEN dailyLimit: NOT_SET bearerToken: aaaaAAAA.bbbbBBBB.ccccCCCC cloudApi: true countryCode: '48' phoneNumber: '777777777' numberProvider: CUSTOMER businessManager: SINCH_UK compatibleRegions: - eu - us responses: '200': description: Response to callback will be ignored. The call will retry if unsuccessful. Inactive: '{$request.body#webhooks.target}': post: summary: Sender inactive description: |2- Received when a sender is inactivated. parameters: - in: header name: x-sinch-webhook-signature schema: type: string format: uuid example: - in: header name: x-sinch-webhook-signature-algorithm schema: type: string enum: - HmacSHA256 uniqueItems: false example: HmacSHA256 - in: header name: x-sinch-webhook-signature-nonce schema: type: string example: 01EAW2BNWCG9DC13RS582V0ZQ3 - in: header name: x-sinch-webhook-signature-timestamp schema: type: string format: timestamp example: '1592227387' requestBody: content: application/json: schema: type: object properties: type: description: Type of event, in this case `WHATSAPP_SENDER_INACTIVE`. type: string payload: description: Sender at time of callback. allOf: - $ref: '#/components/schemas/WhatsappSenderDto' comment: description: Comment for sender. type: string required: - type - payload example: type: WHATSAPP_SENDER_INACTIVE payload: id: cf11794a-6a5e-4a12-b103-da79bd378bf1 state: INACTIVE details: displayName: Test name description: Test description vertical: PROFESSIONAL_SERVICES email: test@test.com address: Test address about: Test about websiteOne: https://example-1.com photoUrl: https://example.com/photos/1.png created: '2023-01-19T13:11:08.204Z' modified: '2023-01-19T13:11:08.204Z' region: EU metaLocalStorage: DE conversationApiApp: 4CF9CE97504C4A468F4610919D17ECC1 conversationApiAppDetails: id: 4CF9CE97504C4A468F4610919D17ECC1 projectId: ea026751-3edf-40a9-ad93-1b382bd60a78 region: EU maxTps: 10 qualityRating: GREEN dailyLimit: NOT_SET bearerToken: aaaaAAAA.bbbbBBBB.ccccCCCC cloudApi: true countryCode: '48' phoneNumber: '777777777' numberProvider: CUSTOMER businessManager: SINCH_UK compatibleRegions: - eu - us responses: '200': description: Response to callback will be ignored. The call will retry if unsuccessful. PendingVerification: '{$request.body#webhooks.target}': post: summary: Sender in pending verification description: |2- Received when a sender is in pending verification. parameters: - in: header name: x-sinch-webhook-signature schema: type: string format: uuid example: - in: header name: x-sinch-webhook-signature-algorithm schema: type: string enum: - HmacSHA256 uniqueItems: false example: HmacSHA256 - in: header name: x-sinch-webhook-signature-nonce schema: type: string example: 01EAW2BNWCG9DC13RS582V0ZQ3 - in: header name: x-sinch-webhook-signature-timestamp schema: type: string format: timestamp example: '1592227387' requestBody: content: application/json: schema: type: object properties: type: description: Type of event, in this case `WHATSAPP_SENDER_PENDING_VERIFICATION`. type: string payload: description: Sender at time of callback. allOf: - $ref: '#/components/schemas/WhatsappSenderDto' comment: description: Comment for sender. type: string required: - type - payload example: type: WHATSAPP_SENDER_PENDING_VERIFICATION payload: id: cf11794a-6a5e-4a12-b103-da79bd378bf1 state: PENDING_VERIFICATION details: displayName: Test name description: Test description vertical: PROFESSIONAL_SERVICES email: test@test.com address: Test address about: Test about websiteOne: https://example-1.com photoUrl: https://example.com/photos/1.png created: '2023-01-19T13:11:08.204Z' modified: '2023-01-19T13:11:08.204Z' region: EU metaLocalStorage: DE conversationApiApp: 4CF9CE97504C4A468F4610919D17ECC1 conversationApiAppDetails: id: 4CF9CE97504C4A468F4610919D17ECC1 projectId: ea026751-3edf-40a9-ad93-1b382bd60a78 region: EU maxTps: 10 qualityRating: GREEN dailyLimit: NOT_SET bearerToken: aaaaAAAA.bbbbBBBB.ccccCCCC cloudApi: true countryCode: '48' phoneNumber: '777777777' numberProvider: CUSTOMER businessManager: SINCH_UK compatibleRegions: - eu - us responses: '200': description: Response to callback will be ignored. The call will retry if unsuccessful. Rejected: '{$request.body#webhooks.target}': post: summary: Sender in rejected description: |2- Received when a sender is rejected. parameters: - in: header name: x-sinch-webhook-signature schema: type: string format: uuid example: - in: header name: x-sinch-webhook-signature-algorithm schema: type: string enum: - HmacSHA256 uniqueItems: false example: HmacSHA256 - in: header name: x-sinch-webhook-signature-nonce schema: type: string example: 01EAW2BNWCG9DC13RS582V0ZQ3 - in: header name: x-sinch-webhook-signature-timestamp schema: type: string format: timestamp example: '1592227387' requestBody: content: application/json: schema: type: object properties: type: description: Type of event, in this case `WHATSAPP_SENDER_REJECTED`. type: string payload: description: Sender at time of callback. allOf: - $ref: '#/components/schemas/WhatsappSenderDto' comment: description: Comment for sender. type: string required: - type - payload example: type: WHATSAPP_SENDER_REJECTED payload: id: cf11794a-6a5e-4a12-b103-da79bd378bf1 changes: status: REJECTED details: displayName: Test name description: Test description vertical: PROFESSIONAL_SERVICES email: test@test.com address: Test address about: Test about websiteOne: https://example-1.com photoUrl: https://example.com/photos/1.png created: '2023-01-19T13:11:08.204Z' modified: '2023-01-19T13:11:08.204Z' region: EU metaLocalStorage: DE conversationApiApp: 4CF9CE97504C4A468F4610919D17ECC1 conversationApiAppDetails: id: 4CF9CE97504C4A468F4610919D17ECC1 projectId: ea026751-3edf-40a9-ad93-1b382bd60a78 region: EU maxTps: 10 qualityRating: GREEN dailyLimit: NOT_SET bearerToken: aaaaAAAA.bbbbBBBB.ccccCCCC cloudApi: true countryCode: '48' phoneNumber: '777777777' numberProvider: CUSTOMER businessManager: SINCH_UK compatibleRegions: - eu - us responses: '200': description: Response to callback will be ignored. The call will retry if unsuccessful. Error: '{$request.body#webhooks.target}': post: summary: Sender in error description: |2- Received when a sender has error. parameters: - in: header name: x-sinch-webhook-signature schema: type: string format: uuid example: - in: header name: x-sinch-webhook-signature-algorithm schema: type: string enum: - HmacSHA256 uniqueItems: false example: HmacSHA256 - in: header name: x-sinch-webhook-signature-nonce schema: type: string example: 01EAW2BNWCG9DC13RS582V0ZQ3 - in: header name: x-sinch-webhook-signature-timestamp schema: type: string format: timestamp example: '1592227387' requestBody: content: application/json: schema: type: object properties: type: description: Type of event, in this case `WHATSAPP_SENDER_ERROR`. type: string payload: description: Sender at time of callback. allOf: - $ref: '#/components/schemas/WhatsappSenderDto' comment: description: Comment for sender. type: string required: - type - payload example: type: WHATSAPP_SENDER_ERROR payload: id: cf11794a-6a5e-4a12-b103-da79bd378bf1 changes: status: ERROR details: displayName: Test name description: Test description vertical: PROFESSIONAL_SERVICES email: test@test.com address: Test address about: Test about websiteOne: https://example-1.com photoUrl: https://example.com/photos/1.png errorReason: Reach out to support at support@sinch.com created: '2023-01-19T13:11:08.204Z' modified: '2023-01-19T13:11:08.204Z' region: EU metaLocalStorage: DE conversationApiApp: 4CF9CE97504C4A468F4610919D17ECC1 conversationApiAppDetails: id: 4CF9CE97504C4A468F4610919D17ECC1 projectId: ea026751-3edf-40a9-ad93-1b382bd60a78 region: EU maxTps: 10 qualityRating: GREEN dailyLimit: NOT_SET bearerToken: aaaaAAAA.bbbbBBBB.ccccCCCC cloudApi: true countryCode: '48' phoneNumber: '777777777' numberProvider: CUSTOMER businessManager: SINCH_UK compatibleRegions: - eu - us responses: '200': description: Response to callback will be ignored. The call will retry if unsuccessful. DailyLimitChanged: '{$request.body#webhooks.target}': post: summary: Daily limit changed for Sender description: |2- Received when a daily limit for sender is changed. parameters: - in: header name: x-sinch-webhook-signature schema: type: string format: uuid example: - in: header name: x-sinch-webhook-signature-algorithm schema: type: string enum: - HmacSHA256 uniqueItems: false example: HmacSHA256 - in: header name: x-sinch-webhook-signature-nonce schema: type: string example: 01EAW2BNWCG9DC13RS582V0ZQ3 - in: header name: x-sinch-webhook-signature-timestamp schema: type: string format: timestamp example: '1592227387' requestBody: content: application/json: schema: type: object properties: type: description: Type of event, in this case `WHATSAPP_SENDER_DAILY_LIMIT_CHANGED`. type: string payload: description: Sender at time of callback. allOf: - $ref: '#/components/schemas/WhatsappSenderDto' comment: description: Comment for sender. type: string required: - type - payload example: type: WHATSAPP_SENDER_DAILY_LIMIT_CHANGED payload: id: cf11794a-6a5e-4a12-b103-da79bd378bf1 state: ACTIVE details: displayName: Test name description: Test description vertical: PROFESSIONAL_SERVICES email: test@test.com address: Test address about: Test about websiteOne: https://example-1.com photoUrl: https://example.com/photos/1.png created: '2023-01-19T13:11:08.204Z' modified: '2023-01-19T13:11:08.204Z' region: EU metaLocalStorage: DE conversationApiApp: 4CF9CE97504C4A468F4610919D17ECC1 conversationApiAppDetails: id: 4CF9CE97504C4A468F4610919D17ECC1 projectId: ea026751-3edf-40a9-ad93-1b382bd60a78 region: EU maxTps: 10 qualityRating: GREEN dailyLimit: TIER_100K bearerToken: aaaaAAAA.bbbbBBBB.ccccCCCC cloudApi: true countryCode: '48' phoneNumber: '777777777' numberProvider: CUSTOMER businessManager: SINCH_UK compatibleRegions: - eu - us responses: '200': description: Response to callback will be ignored. The call will retry if unsuccessful. QualityRatingChanged: '{$request.body#webhooks.target}': post: summary: Quality rating changed for Sender description: |2- Received when a quality rating for sender is changed. parameters: - in: header name: x-sinch-webhook-signature schema: type: string format: uuid example: - in: header name: x-sinch-webhook-signature-algorithm schema: type: string enum: - HmacSHA256 uniqueItems: false example: HmacSHA256 - in: header name: x-sinch-webhook-signature-nonce schema: type: string example: 01EAW2BNWCG9DC13RS582V0ZQ3 - in: header name: x-sinch-webhook-signature-timestamp schema: type: string format: timestamp example: '1592227387' requestBody: content: application/json: schema: type: object properties: type: description: Type of event, in this case `WHATSAPP_SENDER_QUALITY_RATING_CHANGED`. type: string payload: description: Sender at time of callback. allOf: - $ref: '#/components/schemas/WhatsappSenderDto' comment: description: Comment for sender. type: string required: - type - payload example: type: WHATSAPP_SENDER_QUALITY_RATING_CHANGED payload: id: cf11794a-6a5e-4a12-b103-da79bd378bf1 state: ACTIVE details: displayName: Test name description: Test description vertical: PROFESSIONAL_SERVICES email: test@test.com address: Test address about: Test about websiteOne: https://example-1.com photoUrl: https://example.com/photos/1.png created: '2023-01-19T13:11:08.204Z' modified: '2023-01-19T13:11:08.204Z' region: EU metaLocalStorage: DE conversationApiApp: 4CF9CE97504C4A468F4610919D17ECC1 conversationApiAppDetails: id: 4CF9CE97504C4A468F4610919D17ECC1 projectId: ea026751-3edf-40a9-ad93-1b382bd60a78 region: EU maxTps: 10 qualityRating: YELLOW dailyLimit: NOT_SET bearerToken: aaaaAAAA.bbbbBBBB.ccccCCCC cloudApi: true countryCode: '48' phoneNumber: '777777777' numberProvider: CUSTOMER businessManager: SINCH_UK compatibleRegions: - eu - us responses: '200': description: Response to callback will be ignored. The call will retry if unsuccessful. description: |- Creates a sender for a project. The possible combinations of region, business manager and hosting type are the following | Region | | SINCH_BR | SINCH_MX | SINCH_UK | | --------- | -- | --- | --- | --- | | BR | Cloud API (ES) | ✅ Supported | ✅ Supported | ❌ Unsupported | | | Cloud API ( OBO ) | ✅ Supported | ✅ Supported | ❌ Unsupported | | EU | Cloud API (ES) | ❌ Unsupported | ❌ Unsupported | ✅ Supported | | | Cloud API ( OBO ) | ❌ Unsupported | ❌ Unsupported | ✅ Supported | | US | Cloud API (ES) | ✅ Supported | ✅ Supported | ✅ Supported | | | Cloud API ( OBO ) | ✅ Supported | ✅ Supported | ✅ Supported | operationId: SendersController_createSender_v1 parameters: - name: projectId required: true in: path description: The unique ID of the project. You can find this on the Sinch Dashboard. schema: type: string requestBody: required: true description: Sender data content: application/json: schema: oneOf: - $ref: '#/components/schemas/WhatsappSenderInputEsDto' - $ref: '#/components/schemas/WhatsappSenderInputOboDtoDeprecated' - $ref: '#/components/schemas/WhatsappSenderInputDtoDeprecated' examples: es: summary: Body request for ES description: |2- Example body request to create an ES. value: region: EU metaLocalStorage: DE wabaId: '11111111111111' phoneNumberId: '222222222222222' authenticationCode: 123asdf123 obo: summary: Body request for On Behalf of description: |2- Example body request to create an On Behalf of sender. value: region: EU metaLocalStorage: DE phoneNumberProvider: CUSTOMER details: countryCode: '48' phoneNumber: '777777777' displayName: Test name description: Test description vertical: EDUCATION email: test@test.com address: Test address websiteOne: https://example-1.com about: Test about photoUrl: https://example.com/photos/1.png esWithFacebookToken: summary: Body request for ES with Facebook token [Deprecated] description: |2- Example body request to create an ES. [Deprecated] value: region: EU metaLocalStorage: DE wabaId: '11111111111111' phoneNumberId: '222222222222222' facebookAccessToken: FACEBOOK_TOKEN name: Example name details: displayName: Test name description: Test description vertical: EDUCATION email: test@test.com address: Test address websiteOne: https://example-1.com about: Test about photoUrl: https://example.com/photos/1.png esWithFacebookCode: summary: Body request for ES with Facebook code [Deprecated] description: |2- Example body request to create an ES. [Deprecated] value: region: EU metaLocalStorage: DE wabaId: '11111111111111' phoneNumberId: '222222222222222' facebookCode: FACEBOOK_CODE name: Example name details: displayName: Test name description: Test description vertical: EDUCATION email: test@test.com address: Test address websiteOne: https://example-1.com about: Test about photoUrl: https://example.com/photos/1.png responses: '201': description: Sender content: application/json: schema: $ref: '#/components/schemas/WhatsappSenderDto' examples: response: summary: Create response description: |2- Response when successfully creating a sender. value: id: cf11794a-6a5e-4a12-b103-da79bd378bf1 changes: status: IN_PROGRESS details: displayName: Test name description: Test description vertical: PROFESSIONAL_SERVICES email: test@test.com address: Test address about: Test about websiteOne: https://example-1.com photoUrl: https://example.com/photos/1.png created: '2023-01-19T13:11:08.204Z' modified: '2023-01-19T13:11:08.204Z' region: EU metaLocalStorage: DE conversationApiApp: 4CF9CE97504C4A468F4610919D17ECC1 conversationApiAppDetails: id: 4CF9CE97504C4A468F4610919D17ECC1 projectId: ea026751-3edf-40a9-ad93-1b382bd60a78 region: EU maxTps: 10 qualityRating: GREEN dailyLimit: NOT_SET bearerToken: aaaaAAAA.bbbbBBBB.ccccCCCC cloudApi: true countryCode: '48' phoneNumber: '777777777' numberProvider: CUSTOMER businessManager: SINCH_UK compatibleRegions: - eu - us '400': description: BadRequest content: application/json: schema: oneOf: - title: InvalidInputErrorTitle properties: errorCode: type: string title: invalid_input example: invalid_input description: Error code allows to programatically handle errors. message: type: string title: Invalid input. example: Invalid input. description: Human readable message. resolution: type: string title: Correct the validation errors and submit again. example: Correct the validation errors and submit again. description: Human readable message with an explanation of how to solve the error. additionalInformation: type: object title: additionalInformation example: validationErrors: - details should not be null or undefined description: Additional information for error. - title: ProjectNotInitializedErrorTitle properties: errorCode: type: string title: project_not_initialized example: project_not_initialized description: Error code allows to programatically handle errors. message: type: string title: Project not initialized for WhatsApp. example: Project not initialized for WhatsApp. description: Human readable message. resolution: type: string title: Verify that the project ID is correct and that it has been onboarded for WhatsApp. example: Verify that the project ID is correct and that it has been onboarded for WhatsApp. description: Human readable message with an explanation of how to solve the error. - title: InvalidFacebookTokenErrorTitle properties: errorCode: type: string title: invalid_facebook_token example: invalid_facebook_token description: Error code allows to programatically handle errors. message: type: string title: Facebook token is invalid or has expired example: Facebook token is invalid or has expired description: Human readable message. resolution: type: string title: Check that token is correct, or create a new one and try again. example: Check that token is correct, or create a new one and try again. description: Human readable message with an explanation of how to solve the error. - title: InvalidBusinessManagerErrorTitle properties: errorCode: type: string title: invalid_business_manager example: invalid_business_manager description: Error code allows to programatically handle errors. message: type: string title: Invalid business manager. example: Invalid business manager. description: Human readable message. resolution: type: string title: Check that business manager is correct for project. example: Check that business manager is correct for project. description: Human readable message with an explanation of how to solve the error. - title: InvalidBusinessManagerForEnvironmentErrorTitle properties: errorCode: type: string title: invalid_business_manager_for_environment example: invalid_business_manager_for_environment description: Error code allows to programatically handle errors. message: type: string title: Invalid business manager for environment. example: Invalid business manager for environment. description: Human readable message. resolution: type: string title: Verify that business manager is valid for environment. Allowed business managers for environment SINCH_AMERICA, SINCH_UK. example: Verify that business manager is valid for environment. Allowed business managers for environment SINCH_AMERICA, SINCH_UK. description: Human readable message with an explanation of how to solve the error. - title: FileInvalidMimeTypeErrorTitle properties: errorCode: type: string title: file_invalid_mime_type example: file_invalid_mime_type description: Error code allows to programatically handle errors. message: type: string title: 'details.photoUrl: invalid file mime type.' example: 'details.photoUrl: invalid file mime type.' description: Human readable message. resolution: type: string title: 'Try again with supported mime types: image/jpeg, image/png, image/webp.' example: 'Try again with supported mime types: image/jpeg, image/png, image/webp.' description: Human readable message with an explanation of how to solve the error. - title: InvalidPayloadErrorTitle properties: errorCode: type: string title: invalid_payload example: invalid_payload description: Error code allows to programatically handle errors. message: type: string title: Invalid payload. example: Invalid payload. description: Human readable message. resolution: type: string title: Correct payload and submit again. example: Correct payload and submit again. description: Human readable message with an explanation of how to solve the error. '401': description: Unauthorized content: application/json: schema: example: errorCode: unauthorized_error message: Unauthorized error. resolution: Verify that projectId is correct. title: UnauthorizedErrorErrorTitle properties: errorCode: type: string title: unauthorized_error example: unauthorized_error description: Error code allows to programatically handle errors. message: type: string title: Unauthorized error. example: Unauthorized error. description: Human readable message. resolution: type: string title: Verify that projectId is correct. example: Verify that projectId is correct. description: Human readable message with an explanation of how to solve the error. '404': description: NotFound content: application/json: schema: example: errorCode: project_not_found message: Project not found. resolution: Verify that the projectId is correct. title: ProjectNotFoundErrorTitle properties: errorCode: type: string title: project_not_found example: project_not_found description: Error code allows to programatically handle errors. message: type: string title: Project not found. example: Project not found. description: Human readable message. resolution: type: string title: Verify that the projectId is correct. example: Verify that the projectId is correct. description: Human readable message with an explanation of how to solve the error. '409': description: Conflict content: application/json: schema: oneOf: - title: AccountDataIsCorruptErrorTitle properties: errorCode: type: string title: account_data_is_corrupt example: account_data_is_corrupt description: Error code allows to programatically handle errors. message: type: string title: Account data is corrupt. example: Account data is corrupt. description: Human readable message. resolution: type: string title: Please contact support. example: Please contact support. description: Human readable message with an explanation of how to solve the error. - title: WrongWabaIdErrorTitle properties: errorCode: type: string title: wrong_waba_id example: wrong_waba_id description: Error code allows to programatically handle errors. message: type: string title: Different wabaId already exists for sub account / project. example: Different wabaId already exists for sub account / project. description: Human readable message. resolution: type: string title: Please check if the WhatsApp Business Account is correct, or don't provide the WhatsApp Business Account in the request for this project. example: Please check if the WhatsApp Business Account is correct, or don't provide the WhatsApp Business Account in the request for this project. description: Human readable message with an explanation of how to solve the error. - title: NotFoundWabaIdErrorTitle properties: errorCode: type: string title: not_found_waba_id example: not_found_waba_id description: Error code allows to programatically handle errors. message: type: string title: Not found wabaId. example: Not found wabaId. description: Human readable message. resolution: type: string title: Verify that exist any WhatsApp Business Account for sub account / project. example: Verify that exist any WhatsApp Business Account for sub account / project. description: Human readable message with an explanation of how to solve the error. - title: TooManyWabaIdErrorTitle properties: errorCode: type: string title: too_many_waba_id example: too_many_waba_id description: Error code allows to programatically handle errors. message: type: string title: Too many wabaId. example: Too many wabaId. description: Human readable message. resolution: type: string title: We can't automatically select WhatsApp Business Account for this project, please provide WhatsApp Business Account in the request. example: We can't automatically select WhatsApp Business Account for this project, please provide WhatsApp Business Account in the request. description: Human readable message with an explanation of how to solve the error. - title: WabaIdUsedErrorTitle properties: errorCode: type: string title: waba_id_used example: waba_id_used description: Error code allows to programatically handle errors. message: type: string title: WabaId is used. example: WabaId is used. description: Human readable message. resolution: type: string title: WhatsApp Business Account is already used in another project. Use another id or create the sender under the correct project. example: WhatsApp Business Account is already used in another project. Use another id or create the sender under the correct project. description: Human readable message with an explanation of how to solve the error. - title: NotAllowedOboErrorTitle properties: errorCode: type: string title: not_allowed_obo example: not_allowed_obo description: Error code allows to programatically handle errors. message: type: string title: On Behalf Of WhatsApp sender can not be created in this project. example: On Behalf Of WhatsApp sender can not be created in this project. description: Human readable message. resolution: type: string title: Create an Embedded Signup WhatsApp sender or use another project. example: Create an Embedded Signup WhatsApp sender or use another project. description: Human readable message with an explanation of how to solve the error. - title: NotAllowedEmbeddedErrorTitle properties: errorCode: type: string title: not_allowed_embedded example: not_allowed_embedded description: Error code allows to programatically handle errors. message: type: string title: Sender cannot be created as embedded. example: Sender cannot be created as embedded. description: Human readable message. resolution: type: string title: Create an On Behalf Of WhatsApp sender instead or use another project. example: Create an On Behalf Of WhatsApp sender instead or use another project. description: Human readable message with an explanation of how to solve the error. - title: WrongBusinessManagerErrorTitle properties: errorCode: type: string title: wrong_business_manager example: wrong_business_manager description: Error code allows to programatically handle errors. message: type: string title: Different business manager already exists for sub account / project. example: Different business manager already exists for sub account / project. description: Human readable message. resolution: type: string title: Please check if the Business Manager is correct, or don't provide the Business Manager in the request for this project. example: Please check if the Business Manager is correct, or don't provide the Business Manager in the request for this project. description: Human readable message with an explanation of how to solve the error. - title: UsedPhoneNumberIdErrorTitle properties: errorCode: type: string title: used_phone_number_id example: used_phone_number_id description: Error code allows to programatically handle errors. message: type: string title: Used phoneNumberId. example: Used phoneNumberId. description: Human readable message. resolution: type: string title: PhoneNumberId is used. Choose another one. example: PhoneNumberId is used. Choose another one. description: Human readable message with an explanation of how to solve the error. - title: ProvisionedPhoneNumberIdErrorTitle properties: errorCode: type: string title: provisioned_phone_number_id example: provisioned_phone_number_id description: Error code allows to programatically handle errors. message: type: string title: Provisioned phoneNumberId. example: Provisioned phoneNumberId. description: Human readable message. resolution: type: string title: PhoneNumberId is provisioned. Choose another one. example: PhoneNumberId is provisioned. Choose another one. description: Human readable message with an explanation of how to solve the error. - title: AllPhoneNumberIdProvisionedErrorTitle properties: errorCode: type: string title: all_phone_number_id_provisioned example: all_phone_number_id_provisioned description: Error code allows to programatically handle errors. message: type: string title: All phoneNumberId are provisioned. example: All phoneNumberId are provisioned. description: Human readable message. resolution: type: string title: All phoneNumberId are provisioned. Add another one. example: All phoneNumberId are provisioned. Add another one. description: Human readable message with an explanation of how to solve the error. - title: InvalidWabaIdOrPhoneNumberIdForRegionErrorTitle properties: errorCode: type: string title: invalid_waba_id_or_phone_number_id_for_region example: invalid_waba_id_or_phone_number_id_for_region description: Error code allows to programatically handle errors. message: type: string title: Invalid wabaId or phoneNumberId for region. example: Invalid wabaId or phoneNumberId for region. description: Human readable message. resolution: type: string title: Please check if the WhatsApp Business Account, phone number id and region are correct. example: Please check if the WhatsApp Business Account, phone number id and region are correct. description: Human readable message with an explanation of how to solve the error. - title: FileNotFoundErrorTitle properties: errorCode: type: string title: file_not_found example: file_not_found description: Error code allows to programatically handle errors. message: type: string title: 'details.photoUrl: file not found.' example: 'details.photoUrl: file not found.' description: Human readable message. resolution: type: string title: Verify that the url is correct. example: Verify that the url is correct. description: Human readable message with an explanation of how to solve the error. - title: FileSizeTooLargeErrorTitle properties: errorCode: type: string title: file_size_too_large example: file_size_too_large description: Error code allows to programatically handle errors. message: type: string title: 'details.photoUrl: file size is too large.' example: 'details.photoUrl: file size is too large.' description: Human readable message. resolution: type: string title: Try again with a smaller file. Max size for `image/jpeg` is 5MB. example: Try again with a smaller file. Max size for `image/jpeg` is 5MB. description: Human readable message with an explanation of how to solve the error. - title: FileHasWrongDimensionsErrorTitle properties: errorCode: type: string title: file_has_wrong_dimensions example: file_has_wrong_dimensions description: Error code allows to programatically handle errors. message: type: string title: 'details.photoUrl: image has wrong dimensions.' example: 'details.photoUrl: image has wrong dimensions.' description: Human readable message. resolution: type: string title: 'Try again with image dimensions: min 192 x 192 px & max 640 x 640 px.' example: 'Try again with image dimensions: min 192 x 192 px & max 640 x 640 px.' description: Human readable message with an explanation of how to solve the error. - title: FileUnexpectedErrorErrorTitle properties: errorCode: type: string title: file_unexpected_error example: file_unexpected_error description: Error code allows to programatically handle errors. message: type: string title: 'details.photoUrl: file unexpected error.' example: 'details.photoUrl: file unexpected error.' description: Human readable message. resolution: type: string title: The file cannot be handled properly. Please try with another one. example: The file cannot be handled properly. Please try with another one. description: Human readable message with an explanation of how to solve the error. '500': description: InternalServerError content: application/json: schema: oneOf: - title: FacebookRequestLimitReachedErrorTitle properties: errorCode: type: string title: facebook_Request_limit_reached example: facebook_Request_limit_reached description: Error code allows to programatically handle errors. message: type: string title: Facebook request limit reached. example: Facebook request limit reached. description: Human readable message. resolution: type: string title: Please try again later. example: Please try again later. description: Human readable message with an explanation of how to solve the error. - title: LogInFacebookRequiredErrorTitle properties: errorCode: type: string title: log_in_facebook_required example: log_in_facebook_required description: Error code allows to programatically handle errors. message: type: string title: Log in to facebook required. example: Log in to facebook required. description: Human readable message. resolution: type: string title: Log in to www.facebook.com and follow the instructions given. example: Log in to www.facebook.com and follow the instructions given. description: Human readable message with an explanation of how to solve the error. - title: InternalErrorErrorTitle properties: errorCode: type: string title: internal_error example: internal_error description: Error code allows to programatically handle errors. message: type: string title: Internal server error. example: Internal server error. description: Human readable message. resolution: type: string title: Please wait and try again, if the error persist please contact support. example: Please wait and try again, if the error persist please contact support. description: Human readable message with an explanation of how to solve the error. summary: Create sender for project tags: - WhatsApp Senders x-tagAfterOperationSummary: color: white background: green label: GA /v1/projects/{projectId}/whatsapp/senders/{senderId}: get: description: |2- Returns a sender for a project. operationId: SendersController_get_v1 parameters: - name: projectId required: true in: path description: The unique ID of the project. You can find this on the Sinch Dashboard. schema: type: string - name: senderId required: true in: path description: The unique ID of the sender. schema: type: string responses: '200': description: Sender content: application/json: schema: $ref: '#/components/schemas/WhatsappSenderDto' examples: response: summary: Get response description: |2- Response with a sender. value: id: cf11794a-6a5e-4a12-b103-da79bd378bf1 state: ACTIVE details: displayName: Test name description: Test description vertical: PROFESSIONAL_SERVICES email: test@test.com address: Test address about: Test about websiteOne: https://example-1.com photoUrl: https://example.com/photos/1.png created: '2023-01-19T13:11:08.204Z' modified: '2023-01-19T13:11:08.204Z' region: EU metaLocalStorage: DE conversationApiApp: 4CF9CE97504C4A468F4610919D17ECC1 conversationApiAppDetails: id: 4CF9CE97504C4A468F4610919D17ECC1 projectId: ea026751-3edf-40a9-ad93-1b382bd60a78 region: EU maxTps: 10 qualityRating: GREEN dailyLimit: NOT_SET bearerToken: aaaaAAAA.bbbbBBBB.ccccCCCC cloudApi: true countryCode: '48' phoneNumber: '777777777' numberProvider: CUSTOMER businessManager: SINCH_UK compatibleRegions: - eu - us '400': description: BadRequest content: application/json: schema: example: errorCode: project_not_initialized message: Project not initialized for WhatsApp. resolution: Verify that the project ID is correct and that it has been onboarded for WhatsApp. title: ProjectNotInitializedErrorTitle properties: errorCode: type: string title: project_not_initialized example: project_not_initialized description: Error code allows to programatically handle errors. message: type: string title: Project not initialized for WhatsApp. example: Project not initialized for WhatsApp. description: Human readable message. resolution: type: string title: Verify that the project ID is correct and that it has been onboarded for WhatsApp. example: Verify that the project ID is correct and that it has been onboarded for WhatsApp. description: Human readable message with an explanation of how to solve the error. '401': description: Unauthorized content: application/json: schema: example: errorCode: unauthorized_error message: Unauthorized error. resolution: Verify that projectId is correct. title: UnauthorizedErrorErrorTitle properties: errorCode: type: string title: unauthorized_error example: unauthorized_error description: Error code allows to programatically handle errors. message: type: string title: Unauthorized error. example: Unauthorized error. description: Human readable message. resolution: type: string title: Verify that projectId is correct. example: Verify that projectId is correct. description: Human readable message with an explanation of how to solve the error. '404': description: NotFound content: application/json: schema: example: errorCode: sender_not_found message: Sender not found. resolution: Verify that the parameters are correct. title: SenderNotFoundErrorTitle properties: errorCode: type: string title: sender_not_found example: sender_not_found description: Error code allows to programatically handle errors. message: type: string title: Sender not found. example: Sender not found. description: Human readable message. resolution: type: string title: Verify that the parameters are correct. example: Verify that the parameters are correct. description: Human readable message with an explanation of how to solve the error. '500': description: InternalServerError content: application/json: schema: example: errorCode: internal_error message: Internal server error. resolution: Please wait and try again, if the error persist please contact support. title: InternalErrorErrorTitle properties: errorCode: type: string title: internal_error example: internal_error description: Error code allows to programatically handle errors. message: type: string title: Internal server error. example: Internal server error. description: Human readable message. resolution: type: string title: Please wait and try again, if the error persist please contact support. example: Please wait and try again, if the error persist please contact support. description: Human readable message with an explanation of how to solve the error. summary: Get sender for project tags: - WhatsApp Senders x-tagAfterOperationSummary: color: white background: green label: GA delete: description: |2- Marks a sender for removal. Once requested the sender will be active for 30 days to send final messages. After 30 days it will be removed. operationId: SendersController_delete_v1 parameters: - name: projectId required: true in: path description: The unique ID of the project. You can find this on the Sinch Dashboard. schema: type: string - name: senderId required: true in: path description: The unique ID of the sender. schema: type: string responses: '204': description: Sender deleted '400': description: BadRequest content: application/json: schema: example: errorCode: project_not_initialized message: Project not initialized for WhatsApp. resolution: Verify that the project ID is correct and that it has been onboarded for WhatsApp. title: ProjectNotInitializedErrorTitle properties: errorCode: type: string title: project_not_initialized example: project_not_initialized description: Error code allows to programatically handle errors. message: type: string title: Project not initialized for WhatsApp. example: Project not initialized for WhatsApp. description: Human readable message. resolution: type: string title: Verify that the project ID is correct and that it has been onboarded for WhatsApp. example: Verify that the project ID is correct and that it has been onboarded for WhatsApp. description: Human readable message with an explanation of how to solve the error. '401': description: Unauthorized content: application/json: schema: example: errorCode: unauthorized_error message: Unauthorized error. resolution: Verify that projectId is correct. title: UnauthorizedErrorErrorTitle properties: errorCode: type: string title: unauthorized_error example: unauthorized_error description: Error code allows to programatically handle errors. message: type: string title: Unauthorized error. example: Unauthorized error. description: Human readable message. resolution: type: string title: Verify that projectId is correct. example: Verify that projectId is correct. description: Human readable message with an explanation of how to solve the error. '404': description: NotFound content: application/json: schema: example: errorCode: sender_not_found message: Sender not found. resolution: Verify that the parameters are correct. title: SenderNotFoundErrorTitle properties: errorCode: type: string title: sender_not_found example: sender_not_found description: Error code allows to programatically handle errors. message: type: string title: Sender not found. example: Sender not found. description: Human readable message. resolution: type: string title: Verify that the parameters are correct. example: Verify that the parameters are correct. description: Human readable message with an explanation of how to solve the error. '409': description: Conflict content: application/json: schema: example: errorCode: sender_already_deleted message: A sender has been deleted within 30 days. resolution: Wait the required time. title: SenderAlreadyDeletedErrorTitle properties: errorCode: type: string title: sender_already_deleted example: sender_already_deleted description: Error code allows to programatically handle errors. message: type: string title: A sender has been deleted within 30 days. example: A sender has been deleted within 30 days. description: Human readable message. resolution: type: string title: Wait the required time. example: Wait the required time. description: Human readable message with an explanation of how to solve the error. '500': description: InternalServerError content: application/json: schema: example: errorCode: internal_error message: Internal server error. resolution: Please wait and try again, if the error persist please contact support. title: InternalErrorErrorTitle properties: errorCode: type: string title: internal_error example: internal_error description: Error code allows to programatically handle errors. message: type: string title: Internal server error. example: Internal server error. description: Human readable message. resolution: type: string title: Please wait and try again, if the error persist please contact support. example: Please wait and try again, if the error persist please contact support. description: Human readable message with an explanation of how to solve the error. summary: Delete sender for project tags: - WhatsApp Senders x-tagAfterOperationSummary: color: white background: green label: GA patch: callbacks: Comment: '{$request.body#webhooks.target}': post: summary: Comment on sender description: |2- Received when a comment has been added to the sender. parameters: - in: header name: x-sinch-webhook-signature schema: type: string format: uuid example: - in: header name: x-sinch-webhook-signature-algorithm schema: type: string enum: - HmacSHA256 uniqueItems: false example: HmacSHA256 - in: header name: x-sinch-webhook-signature-nonce schema: type: string example: 01EAW2BNWCG9DC13RS582V0ZQ3 - in: header name: x-sinch-webhook-signature-timestamp schema: type: string format: timestamp example: '1592227387' requestBody: content: application/json: schema: type: object properties: type: description: Type of event, in this case `WHATSAPP_SENDER_COMMENT_ADDED`. type: string payload: description: Sender at time of callback. allOf: - $ref: '#/components/schemas/WhatsappSenderDto' comment: description: Comment for sender. type: string required: - type - payload - comment example: type: WHATSAPP_SENDER_COMMENT_ADDED payload: id: cf11794a-6a5e-4a12-b103-da79bd378bf1 state: INACTIVE details: displayName: Test name description: Test description vertical: PROFESSIONAL_SERVICES email: test@test.com address: Test address about: Test about websiteOne: https://example-1.com photoUrl: https://example.com/photos/1.png created: '2023-01-19T13:11:08.204Z' modified: '2023-01-19T13:11:08.204Z' region: EU metaLocalStorage: DE conversationApiApp: 4CF9CE97504C4A468F4610919D17ECC1 conversationApiAppDetails: id: 4CF9CE97504C4A468F4610919D17ECC1 projectId: ea026751-3edf-40a9-ad93-1b382bd60a78 region: EU maxTps: 10 qualityRating: GREEN dailyLimit: NOT_SET bearerToken: aaaaAAAA.bbbbBBBB.ccccCCCC cloudApi: true countryCode: '48' phoneNumber: '777777777' numberProvider: CUSTOMER businessManager: SINCH_UK compatibleRegions: - eu - us comment: Example comment responses: '200': description: Response to callback will be ignored. The call will retry if unsuccessful. Active: '{$request.body#webhooks.target}': post: summary: Sender completed description: |2- Received when a Sender is completed and ready for use. parameters: - in: header name: x-sinch-webhook-signature schema: type: string format: uuid example: - in: header name: x-sinch-webhook-signature-algorithm schema: type: string enum: - HmacSHA256 uniqueItems: false example: HmacSHA256 - in: header name: x-sinch-webhook-signature-nonce schema: type: string example: 01EAW2BNWCG9DC13RS582V0ZQ3 - in: header name: x-sinch-webhook-signature-timestamp schema: type: string format: timestamp example: '1592227387' requestBody: content: application/json: schema: type: object properties: type: description: Type of event, in this case `WHATSAPP_SENDER_ACTIVE`. type: string payload: description: Sender at time of callback. allOf: - $ref: '#/components/schemas/WhatsappSenderDto' comment: description: Comment for sender. type: string required: - type - payload example: type: WHATSAPP_SENDER_ACTIVE payload: id: cf11794a-6a5e-4a12-b103-da79bd378bf1 state: ACTIVE details: displayName: Test name description: Test description vertical: PROFESSIONAL_SERVICES email: test@test.com address: Test address about: Test about websiteOne: https://example-1.com photoUrl: https://example.com/photos/1.png created: '2023-01-19T13:11:08.204Z' modified: '2023-01-19T13:11:08.204Z' region: EU metaLocalStorage: DE conversationApiApp: 4CF9CE97504C4A468F4610919D17ECC1 conversationApiAppDetails: id: 4CF9CE97504C4A468F4610919D17ECC1 projectId: ea026751-3edf-40a9-ad93-1b382bd60a78 region: EU maxTps: 10 qualityRating: GREEN dailyLimit: NOT_SET bearerToken: aaaaAAAA.bbbbBBBB.ccccCCCC cloudApi: true countryCode: '48' phoneNumber: '777777777' numberProvider: CUSTOMER businessManager: SINCH_UK compatibleRegions: - eu - us responses: '200': description: Response to callback will be ignored. The call will retry if unsuccessful. Inactive: '{$request.body#webhooks.target}': post: summary: Sender inactive description: |2- Received when a sender is inactivated. parameters: - in: header name: x-sinch-webhook-signature schema: type: string format: uuid example: - in: header name: x-sinch-webhook-signature-algorithm schema: type: string enum: - HmacSHA256 uniqueItems: false example: HmacSHA256 - in: header name: x-sinch-webhook-signature-nonce schema: type: string example: 01EAW2BNWCG9DC13RS582V0ZQ3 - in: header name: x-sinch-webhook-signature-timestamp schema: type: string format: timestamp example: '1592227387' requestBody: content: application/json: schema: type: object properties: type: description: Type of event, in this case `WHATSAPP_SENDER_INACTIVE`. type: string payload: description: Sender at time of callback. allOf: - $ref: '#/components/schemas/WhatsappSenderDto' comment: description: Comment for sender. type: string required: - type - payload example: type: WHATSAPP_SENDER_INACTIVE payload: id: cf11794a-6a5e-4a12-b103-da79bd378bf1 state: INACTIVE details: displayName: Test name description: Test description vertical: PROFESSIONAL_SERVICES email: test@test.com address: Test address about: Test about websiteOne: https://example-1.com photoUrl: https://example.com/photos/1.png created: '2023-01-19T13:11:08.204Z' modified: '2023-01-19T13:11:08.204Z' region: EU metaLocalStorage: DE conversationApiApp: 4CF9CE97504C4A468F4610919D17ECC1 conversationApiAppDetails: id: 4CF9CE97504C4A468F4610919D17ECC1 projectId: ea026751-3edf-40a9-ad93-1b382bd60a78 region: EU maxTps: 10 qualityRating: GREEN dailyLimit: NOT_SET bearerToken: aaaaAAAA.bbbbBBBB.ccccCCCC cloudApi: true countryCode: '48' phoneNumber: '777777777' numberProvider: CUSTOMER businessManager: SINCH_UK compatibleRegions: - eu - us responses: '200': description: Response to callback will be ignored. The call will retry if unsuccessful. PendingVerification: '{$request.body#webhooks.target}': post: summary: Sender in pending verification description: |2- Received when a sender is in pending verification. parameters: - in: header name: x-sinch-webhook-signature schema: type: string format: uuid example: - in: header name: x-sinch-webhook-signature-algorithm schema: type: string enum: - HmacSHA256 uniqueItems: false example: HmacSHA256 - in: header name: x-sinch-webhook-signature-nonce schema: type: string example: 01EAW2BNWCG9DC13RS582V0ZQ3 - in: header name: x-sinch-webhook-signature-timestamp schema: type: string format: timestamp example: '1592227387' requestBody: content: application/json: schema: type: object properties: type: description: Type of event, in this case `WHATSAPP_SENDER_PENDING_VERIFICATION`. type: string payload: description: Sender at time of callback. allOf: - $ref: '#/components/schemas/WhatsappSenderDto' comment: description: Comment for sender. type: string required: - type - payload example: type: WHATSAPP_SENDER_PENDING_VERIFICATION payload: id: cf11794a-6a5e-4a12-b103-da79bd378bf1 state: PENDING_VERIFICATION details: displayName: Test name description: Test description vertical: PROFESSIONAL_SERVICES email: test@test.com address: Test address about: Test about websiteOne: https://example-1.com photoUrl: https://example.com/photos/1.png created: '2023-01-19T13:11:08.204Z' modified: '2023-01-19T13:11:08.204Z' region: EU metaLocalStorage: DE conversationApiApp: 4CF9CE97504C4A468F4610919D17ECC1 conversationApiAppDetails: id: 4CF9CE97504C4A468F4610919D17ECC1 projectId: ea026751-3edf-40a9-ad93-1b382bd60a78 region: EU maxTps: 10 qualityRating: GREEN dailyLimit: NOT_SET bearerToken: aaaaAAAA.bbbbBBBB.ccccCCCC cloudApi: true countryCode: '48' phoneNumber: '777777777' numberProvider: CUSTOMER businessManager: SINCH_UK compatibleRegions: - eu - us responses: '200': description: Response to callback will be ignored. The call will retry if unsuccessful. Rejected: '{$request.body#webhooks.target}': post: summary: Sender in rejected description: |2- Received when a sender is rejected. parameters: - in: header name: x-sinch-webhook-signature schema: type: string format: uuid example: - in: header name: x-sinch-webhook-signature-algorithm schema: type: string enum: - HmacSHA256 uniqueItems: false example: HmacSHA256 - in: header name: x-sinch-webhook-signature-nonce schema: type: string example: 01EAW2BNWCG9DC13RS582V0ZQ3 - in: header name: x-sinch-webhook-signature-timestamp schema: type: string format: timestamp example: '1592227387' requestBody: content: application/json: schema: type: object properties: type: description: Type of event, in this case `WHATSAPP_SENDER_REJECTED`. type: string payload: description: Sender at time of callback. allOf: - $ref: '#/components/schemas/WhatsappSenderDto' comment: description: Comment for sender. type: string required: - type - payload example: type: WHATSAPP_SENDER_REJECTED payload: id: cf11794a-6a5e-4a12-b103-da79bd378bf1 changes: status: REJECTED details: displayName: Test name description: Test description vertical: PROFESSIONAL_SERVICES email: test@test.com address: Test address about: Test about websiteOne: https://example-1.com photoUrl: https://example.com/photos/1.png created: '2023-01-19T13:11:08.204Z' modified: '2023-01-19T13:11:08.204Z' region: EU metaLocalStorage: DE conversationApiApp: 4CF9CE97504C4A468F4610919D17ECC1 conversationApiAppDetails: id: 4CF9CE97504C4A468F4610919D17ECC1 projectId: ea026751-3edf-40a9-ad93-1b382bd60a78 region: EU maxTps: 10 qualityRating: GREEN dailyLimit: NOT_SET bearerToken: aaaaAAAA.bbbbBBBB.ccccCCCC cloudApi: true countryCode: '48' phoneNumber: '777777777' numberProvider: CUSTOMER businessManager: SINCH_UK compatibleRegions: - eu - us responses: '200': description: Response to callback will be ignored. The call will retry if unsuccessful. Error: '{$request.body#webhooks.target}': post: summary: Sender in error description: |2- Received when a sender has error. parameters: - in: header name: x-sinch-webhook-signature schema: type: string format: uuid example: - in: header name: x-sinch-webhook-signature-algorithm schema: type: string enum: - HmacSHA256 uniqueItems: false example: HmacSHA256 - in: header name: x-sinch-webhook-signature-nonce schema: type: string example: 01EAW2BNWCG9DC13RS582V0ZQ3 - in: header name: x-sinch-webhook-signature-timestamp schema: type: string format: timestamp example: '1592227387' requestBody: content: application/json: schema: type: object properties: type: description: Type of event, in this case `WHATSAPP_SENDER_ERROR`. type: string payload: description: Sender at time of callback. allOf: - $ref: '#/components/schemas/WhatsappSenderDto' comment: description: Comment for sender. type: string required: - type - payload example: type: WHATSAPP_SENDER_ERROR payload: id: cf11794a-6a5e-4a12-b103-da79bd378bf1 changes: status: ERROR details: displayName: Test name description: Test description vertical: PROFESSIONAL_SERVICES email: test@test.com address: Test address about: Test about websiteOne: https://example-1.com photoUrl: https://example.com/photos/1.png errorReason: Reach out to support at support@sinch.com created: '2023-01-19T13:11:08.204Z' modified: '2023-01-19T13:11:08.204Z' region: EU metaLocalStorage: DE conversationApiApp: 4CF9CE97504C4A468F4610919D17ECC1 conversationApiAppDetails: id: 4CF9CE97504C4A468F4610919D17ECC1 projectId: ea026751-3edf-40a9-ad93-1b382bd60a78 region: EU maxTps: 10 qualityRating: GREEN dailyLimit: NOT_SET bearerToken: aaaaAAAA.bbbbBBBB.ccccCCCC cloudApi: true countryCode: '48' phoneNumber: '777777777' numberProvider: CUSTOMER businessManager: SINCH_UK compatibleRegions: - eu - us responses: '200': description: Response to callback will be ignored. The call will retry if unsuccessful. DailyLimitChanged: '{$request.body#webhooks.target}': post: summary: Daily limit changed for Sender description: |2- Received when a daily limit for sender is changed. parameters: - in: header name: x-sinch-webhook-signature schema: type: string format: uuid example: - in: header name: x-sinch-webhook-signature-algorithm schema: type: string enum: - HmacSHA256 uniqueItems: false example: HmacSHA256 - in: header name: x-sinch-webhook-signature-nonce schema: type: string example: 01EAW2BNWCG9DC13RS582V0ZQ3 - in: header name: x-sinch-webhook-signature-timestamp schema: type: string format: timestamp example: '1592227387' requestBody: content: application/json: schema: type: object properties: type: description: Type of event, in this case `WHATSAPP_SENDER_DAILY_LIMIT_CHANGED`. type: string payload: description: Sender at time of callback. allOf: - $ref: '#/components/schemas/WhatsappSenderDto' comment: description: Comment for sender. type: string required: - type - payload example: type: WHATSAPP_SENDER_DAILY_LIMIT_CHANGED payload: id: cf11794a-6a5e-4a12-b103-da79bd378bf1 state: ACTIVE details: displayName: Test name description: Test description vertical: PROFESSIONAL_SERVICES email: test@test.com address: Test address about: Test about websiteOne: https://example-1.com photoUrl: https://example.com/photos/1.png created: '2023-01-19T13:11:08.204Z' modified: '2023-01-19T13:11:08.204Z' region: EU metaLocalStorage: DE conversationApiApp: 4CF9CE97504C4A468F4610919D17ECC1 conversationApiAppDetails: id: 4CF9CE97504C4A468F4610919D17ECC1 projectId: ea026751-3edf-40a9-ad93-1b382bd60a78 region: EU maxTps: 10 qualityRating: GREEN dailyLimit: TIER_100K bearerToken: aaaaAAAA.bbbbBBBB.ccccCCCC cloudApi: true countryCode: '48' phoneNumber: '777777777' numberProvider: CUSTOMER businessManager: SINCH_UK compatibleRegions: - eu - us responses: '200': description: Response to callback will be ignored. The call will retry if unsuccessful. QualityRatingChanged: '{$request.body#webhooks.target}': post: summary: Quality rating changed for Sender description: |2- Received when a quality rating for sender is changed. parameters: - in: header name: x-sinch-webhook-signature schema: type: string format: uuid example: - in: header name: x-sinch-webhook-signature-algorithm schema: type: string enum: - HmacSHA256 uniqueItems: false example: HmacSHA256 - in: header name: x-sinch-webhook-signature-nonce schema: type: string example: 01EAW2BNWCG9DC13RS582V0ZQ3 - in: header name: x-sinch-webhook-signature-timestamp schema: type: string format: timestamp example: '1592227387' requestBody: content: application/json: schema: type: object properties: type: description: Type of event, in this case `WHATSAPP_SENDER_QUALITY_RATING_CHANGED`. type: string payload: description: Sender at time of callback. allOf: - $ref: '#/components/schemas/WhatsappSenderDto' comment: description: Comment for sender. type: string required: - type - payload example: type: WHATSAPP_SENDER_QUALITY_RATING_CHANGED payload: id: cf11794a-6a5e-4a12-b103-da79bd378bf1 state: ACTIVE details: displayName: Test name description: Test description vertical: PROFESSIONAL_SERVICES email: test@test.com address: Test address about: Test about websiteOne: https://example-1.com photoUrl: https://example.com/photos/1.png created: '2023-01-19T13:11:08.204Z' modified: '2023-01-19T13:11:08.204Z' region: EU metaLocalStorage: DE conversationApiApp: 4CF9CE97504C4A468F4610919D17ECC1 conversationApiAppDetails: id: 4CF9CE97504C4A468F4610919D17ECC1 projectId: ea026751-3edf-40a9-ad93-1b382bd60a78 region: EU maxTps: 10 qualityRating: YELLOW dailyLimit: NOT_SET bearerToken: aaaaAAAA.bbbbBBBB.ccccCCCC cloudApi: true countryCode: '48' phoneNumber: '777777777' numberProvider: CUSTOMER businessManager: SINCH_UK compatibleRegions: - eu - us responses: '200': description: Response to callback will be ignored. The call will retry if unsuccessful. description: |2- Updates a sender in project. operationId: SendersController_update_v1 parameters: - name: projectId required: true in: path description: The unique ID of the project. You can find this on the Sinch Dashboard. schema: type: string - name: senderId required: true in: path description: The unique ID of the sender. schema: type: string requestBody: required: true description: Supported sender fields to update content: application/json: schema: $ref: '#/components/schemas/WhatsappUpdateSenderInputDto' examples: value: summary: Body request description: |2- Example body request to update a sender. value: details: displayName: Test name update description: Test description update email: null address: null websiteTwo: https://example-2.com about: Test about update photoUrl: https://example.com/photos/2.png responses: '200': description: Updated sender in project content: application/json: schema: $ref: '#/components/schemas/WhatsappSenderDto' examples: response: summary: Update response description: |2- Response when successfully update a sender. value: id: cf11794a-6a5e-4a12-b103-da79bd378bf1 state: ACTIVE changes: status: IN_PROGRESS details: displayName: Test name description: Test description vertical: PROFESSIONAL_SERVICES email: test@test.com address: Test address about: Test about websiteOne: https://example-1.com photoUrl: https://example.com/photos/1.png details: displayName: Test name description: Test description vertical: PROFESSIONAL_SERVICES email: test@test.com address: Test address about: Test about websiteOne: https://example-1.com photoUrl: https://example.com/photos/1.png created: '2023-01-19T13:11:08.204Z' modified: '2023-01-19T13:11:08.204Z' region: EU metaLocalStorage: DE conversationApiApp: 4CF9CE97504C4A468F4610919D17ECC1 conversationApiAppDetails: id: 4CF9CE97504C4A468F4610919D17ECC1 projectId: ea026751-3edf-40a9-ad93-1b382bd60a78 region: EU maxTps: 10 qualityRating: GREEN dailyLimit: NOT_SET bearerToken: aaaaAAAA.bbbbBBBB.ccccCCCC cloudApi: true countryCode: '48' phoneNumber: '777777777' numberProvider: CUSTOMER businessManager: SINCH_UK compatibleRegions: - eu - us '400': description: BadRequest content: application/json: schema: oneOf: - title: InvalidInputErrorTitle properties: errorCode: type: string title: invalid_input example: invalid_input description: Error code allows to programatically handle errors. message: type: string title: Invalid input. example: Invalid input. description: Human readable message. resolution: type: string title: Correct the validation errors and submit again. example: Correct the validation errors and submit again. description: Human readable message with an explanation of how to solve the error. additionalInformation: type: object title: additionalInformation example: validationErrors: - details.displayName must be a string - details.displayName must be longer than or equal to 1 characters - details.displayName must be shorter than or equal to 128 characters - details.displayName should not be equal to null description: Additional information for error. - title: ProjectNotInitializedErrorTitle properties: errorCode: type: string title: project_not_initialized example: project_not_initialized description: Error code allows to programatically handle errors. message: type: string title: Project not initialized for WhatsApp. example: Project not initialized for WhatsApp. description: Human readable message. resolution: type: string title: Verify that the project ID is correct and that it has been onboarded for WhatsApp. example: Verify that the project ID is correct and that it has been onboarded for WhatsApp. description: Human readable message with an explanation of how to solve the error. - title: NoFieldsToUpdateErrorTitle properties: errorCode: type: string title: no_fields_to_update example: no_fields_to_update description: Error code allows to programatically handle errors. message: type: string title: No fields to be updated. example: No fields to be updated. description: Human readable message. resolution: type: string title: Supply at least one field to be updated. example: Supply at least one field to be updated. description: Human readable message with an explanation of how to solve the error. - title: FileInvalidMimeTypeErrorTitle properties: errorCode: type: string title: file_invalid_mime_type example: file_invalid_mime_type description: Error code allows to programatically handle errors. message: type: string title: 'details.photoUrl: invalid file mime type.' example: 'details.photoUrl: invalid file mime type.' description: Human readable message. resolution: type: string title: 'Try again with supported mime types: image/jpeg, image/png, image/webp.' example: 'Try again with supported mime types: image/jpeg, image/png, image/webp.' description: Human readable message with an explanation of how to solve the error. - title: InvalidPayloadErrorTitle properties: errorCode: type: string title: invalid_payload example: invalid_payload description: Error code allows to programatically handle errors. message: type: string title: Invalid payload. example: Invalid payload. description: Human readable message. resolution: type: string title: Correct payload and submit again. example: Correct payload and submit again. description: Human readable message with an explanation of how to solve the error. '401': description: Unauthorized content: application/json: schema: example: errorCode: unauthorized_error message: Unauthorized error. resolution: Verify that projectId is correct. title: UnauthorizedErrorErrorTitle properties: errorCode: type: string title: unauthorized_error example: unauthorized_error description: Error code allows to programatically handle errors. message: type: string title: Unauthorized error. example: Unauthorized error. description: Human readable message. resolution: type: string title: Verify that projectId is correct. example: Verify that projectId is correct. description: Human readable message with an explanation of how to solve the error. '404': description: NotFound content: application/json: schema: example: errorCode: sender_not_found message: Sender not found. resolution: Verify that the parameters are correct. title: SenderNotFoundErrorTitle properties: errorCode: type: string title: sender_not_found example: sender_not_found description: Error code allows to programatically handle errors. message: type: string title: Sender not found. example: Sender not found. description: Human readable message. resolution: type: string title: Verify that the parameters are correct. example: Verify that the parameters are correct. description: Human readable message with an explanation of how to solve the error. '409': description: Conflict content: application/json: schema: oneOf: - title: SenderNotUpdatableErrorTitle properties: errorCode: type: string title: sender_not_updatable example: sender_not_updatable description: Error code allows to programatically handle errors. message: type: string title: Sender is not updatable. example: Sender is not updatable. description: Human readable message. resolution: type: string title: 'Updates are only supported by senders with state: ACTIVE.' example: 'Updates are only supported by senders with state: ACTIVE.' description: Human readable message with an explanation of how to solve the error. - title: SenderChangesNotUpdatableErrorTitle properties: errorCode: type: string title: sender_changes_not_updatable example: sender_changes_not_updatable description: Error code allows to programatically handle errors. message: type: string title: Sender is not updatable. example: Sender is not updatable. description: Human readable message. resolution: type: string title: 'Updates are only supported by senders changes with status: DRAFT, REJECTED.' example: 'Updates are only supported by senders changes with status: DRAFT, REJECTED.' description: Human readable message with an explanation of how to solve the error. - title: FileNotFoundErrorTitle properties: errorCode: type: string title: file_not_found example: file_not_found description: Error code allows to programatically handle errors. message: type: string title: 'details.photoUrl: file not found.' example: 'details.photoUrl: file not found.' description: Human readable message. resolution: type: string title: Verify that the url is correct. example: Verify that the url is correct. description: Human readable message with an explanation of how to solve the error. - title: FileSizeTooLargeErrorTitle properties: errorCode: type: string title: file_size_too_large example: file_size_too_large description: Error code allows to programatically handle errors. message: type: string title: 'details.photoUrl: file size is too large.' example: 'details.photoUrl: file size is too large.' description: Human readable message. resolution: type: string title: Try again with a smaller file. Max size for `image/jpeg` is 5MB. example: Try again with a smaller file. Max size for `image/jpeg` is 5MB. description: Human readable message with an explanation of how to solve the error. - title: FileHasWrongDimensionsErrorTitle properties: errorCode: type: string title: file_has_wrong_dimensions example: file_has_wrong_dimensions description: Error code allows to programatically handle errors. message: type: string title: 'details.photoUrl: image has wrong dimensions.' example: 'details.photoUrl: image has wrong dimensions.' description: Human readable message. resolution: type: string title: 'Try again with image dimensions: min 192 x 192 px & max 640 x 640 px.' example: 'Try again with image dimensions: min 192 x 192 px & max 640 x 640 px.' description: Human readable message with an explanation of how to solve the error. - title: FileUnexpectedErrorErrorTitle properties: errorCode: type: string title: file_unexpected_error example: file_unexpected_error description: Error code allows to programatically handle errors. message: type: string title: 'details.photoUrl: file unexpected error.' example: 'details.photoUrl: file unexpected error.' description: Human readable message. resolution: type: string title: The file cannot be handled properly. Please try with another one. example: The file cannot be handled properly. Please try with another one. description: Human readable message with an explanation of how to solve the error. '500': description: InternalServerError content: application/json: schema: example: errorCode: internal_error message: Internal server error. resolution: Please wait and try again, if the error persist please contact support. title: InternalErrorErrorTitle properties: errorCode: type: string title: internal_error example: internal_error description: Error code allows to programatically handle errors. message: type: string title: Internal server error. example: Internal server error. description: Human readable message. resolution: type: string title: Please wait and try again, if the error persist please contact support. example: Please wait and try again, if the error persist please contact support. description: Human readable message with an explanation of how to solve the error. summary: Updates a sender in project tags: - WhatsApp Senders x-tagAfterOperationSummary: color: white background: green label: GA /v1/projects/{projectId}/whatsapp/senders/{senderId}/activities: get: description: |2- Paginated list of activities for sender. Ordered from the most recent one to the oldest one. operationId: SendersController_listActivities_v1 parameters: - name: projectId required: true in: path description: The unique ID of the project. You can find this on the Sinch Dashboard. schema: type: string - name: senderId required: true in: path description: The unique ID of the sender. schema: type: string - name: pageToken required: false in: query schema: type: string description: The page token if retrieving the next page from a previous query. - name: pageSize required: false in: query schema: type: number minimum: 1 maximum: 100 description: The page size requested. responses: '200': description: Recent activities on sender content: application/json: schema: $ref: '#/components/schemas/WhatsappSenderNotificationListDto' examples: response: summary: List sender activities response description: |2- Response for all sender activities. value: totalSize: 2 pageSize: 50 notifications: - type: CREATED created: '2023-01-19T13:11:08.204Z' author: Provisioning API user - type: COMMENT_ADDED created: '2023-01-19T13:11:08.204Z' comment: Example comment author: Provisioning API user '400': description: BadRequest content: application/json: schema: oneOf: - title: ProjectNotInitializedErrorTitle properties: errorCode: type: string title: project_not_initialized example: project_not_initialized description: Error code allows to programatically handle errors. message: type: string title: Project not initialized for WhatsApp. example: Project not initialized for WhatsApp. description: Human readable message. resolution: type: string title: Verify that the project ID is correct and that it has been onboarded for WhatsApp. example: Verify that the project ID is correct and that it has been onboarded for WhatsApp. description: Human readable message with an explanation of how to solve the error. - title: InvalidPageTokenErrorTitle properties: errorCode: type: string title: invalid_page_token example: invalid_page_token description: Error code allows to programatically handle errors. message: type: string title: Invalid page token. example: Invalid page token. description: Human readable message. resolution: type: string title: The page token to use is provided in the previous query response, for new queries simply leave this field undefined. example: The page token to use is provided in the previous query response, for new queries simply leave this field undefined. description: Human readable message with an explanation of how to solve the error. - title: InvalidPageSizeErrorTitle properties: errorCode: type: string title: invalid_page_size example: invalid_page_size description: Error code allows to programatically handle errors. message: type: string title: Page size must be numeric. example: Page size must be numeric. description: Human readable message. resolution: type: string title: Use a integer value for pageSize parameter. example: Use a integer value for pageSize parameter. description: Human readable message with an explanation of how to solve the error. '401': description: Unauthorized content: application/json: schema: example: errorCode: unauthorized_error message: Unauthorized error. resolution: Verify that projectId is correct. title: UnauthorizedErrorErrorTitle properties: errorCode: type: string title: unauthorized_error example: unauthorized_error description: Error code allows to programatically handle errors. message: type: string title: Unauthorized error. example: Unauthorized error. description: Human readable message. resolution: type: string title: Verify that projectId is correct. example: Verify that projectId is correct. description: Human readable message with an explanation of how to solve the error. '404': description: NotFound content: application/json: schema: example: errorCode: sender_not_found message: Sender not found. resolution: Verify that the parameters are correct. title: SenderNotFoundErrorTitle properties: errorCode: type: string title: sender_not_found example: sender_not_found description: Error code allows to programatically handle errors. message: type: string title: Sender not found. example: Sender not found. description: Human readable message. resolution: type: string title: Verify that the parameters are correct. example: Verify that the parameters are correct. description: Human readable message with an explanation of how to solve the error. '500': description: InternalServerError content: application/json: schema: example: errorCode: internal_error message: Internal server error. resolution: Please wait and try again, if the error persist please contact support. title: InternalErrorErrorTitle properties: errorCode: type: string title: internal_error example: internal_error description: Error code allows to programatically handle errors. message: type: string title: Internal server error. example: Internal server error. description: Human readable message. resolution: type: string title: Please wait and try again, if the error persist please contact support. example: Please wait and try again, if the error persist please contact support. description: Human readable message with an explanation of how to solve the error. summary: Lists activities on sender tags: - WhatsApp Senders x-tagAfterOperationSummary: color: white background: green label: GA /v1/projects/{projectId}/whatsapp/senders/{senderId}/changes: delete: description: |2- Delete pending or rejected changes to a sender. operationId: SendersController_deleteChanges_v1 parameters: - name: projectId required: true in: path description: The unique ID of the project. You can find this on the Sinch Dashboard. schema: type: string - name: senderId required: true in: path description: The unique ID of the sender. schema: type: string responses: '204': description: Sender changes deleted '400': description: BadRequest content: application/json: schema: example: errorCode: project_not_initialized message: Project not initialized for WhatsApp. resolution: Verify that the project ID is correct and that it has been onboarded for WhatsApp. title: ProjectNotInitializedErrorTitle properties: errorCode: type: string title: project_not_initialized example: project_not_initialized description: Error code allows to programatically handle errors. message: type: string title: Project not initialized for WhatsApp. example: Project not initialized for WhatsApp. description: Human readable message. resolution: type: string title: Verify that the project ID is correct and that it has been onboarded for WhatsApp. example: Verify that the project ID is correct and that it has been onboarded for WhatsApp. description: Human readable message with an explanation of how to solve the error. '401': description: Unauthorized content: application/json: schema: example: errorCode: unauthorized_error message: Unauthorized error. resolution: Verify that projectId is correct. title: UnauthorizedErrorErrorTitle properties: errorCode: type: string title: unauthorized_error example: unauthorized_error description: Error code allows to programatically handle errors. message: type: string title: Unauthorized error. example: Unauthorized error. description: Human readable message. resolution: type: string title: Verify that projectId is correct. example: Verify that projectId is correct. description: Human readable message with an explanation of how to solve the error. '404': description: NotFound content: application/json: schema: example: errorCode: sender_changes_not_found message: Sender changes not found. resolution: Verify that the parameters are correct. title: SenderChangesNotFoundErrorTitle properties: errorCode: type: string title: sender_changes_not_found example: sender_changes_not_found description: Error code allows to programatically handle errors. message: type: string title: Sender changes not found. example: Sender changes not found. description: Human readable message. resolution: type: string title: Verify that the parameters are correct. example: Verify that the parameters are correct. description: Human readable message with an explanation of how to solve the error. '409': description: Conflict content: application/json: schema: example: errorCode: sender_changes_not_deletable message: Sender changes is not deletable. resolution: Only DRAFT, REJECTED senders changes can be marked for deletion. title: SenderChangesNotDeletableErrorTitle properties: errorCode: type: string title: sender_changes_not_deletable example: sender_changes_not_deletable description: Error code allows to programatically handle errors. message: type: string title: Sender changes is not deletable. example: Sender changes is not deletable. description: Human readable message. resolution: type: string title: Only DRAFT, REJECTED senders changes can be marked for deletion. example: Only DRAFT, REJECTED senders changes can be marked for deletion. description: Human readable message with an explanation of how to solve the error. '500': description: InternalServerError content: application/json: schema: example: errorCode: internal_error message: Internal server error. resolution: Please wait and try again, if the error persist please contact support. title: InternalErrorErrorTitle properties: errorCode: type: string title: internal_error example: internal_error description: Error code allows to programatically handle errors. message: type: string title: Internal server error. example: Internal server error. description: Human readable message. resolution: type: string title: Please wait and try again, if the error persist please contact support. example: Please wait and try again, if the error persist please contact support. description: Human readable message with an explanation of how to solve the error. summary: Delete pending or rejected changes to a sender tags: - WhatsApp Senders x-tagAfterOperationSummary: color: white background: green label: GA /v1/projects/{projectId}/whatsapp/senders/{senderId}/comments: post: description: |2- Creates a comment for a sender in project. operationId: SendersController_createComment_v1 parameters: - name: projectId required: true in: path description: The unique ID of the project. You can find this on the Sinch Dashboard. schema: type: string - name: senderId required: true in: path description: The unique ID of the sender. schema: type: string requestBody: required: true description: Comment data content: application/json: schema: $ref: '#/components/schemas/WhatsappCommentInputDto' examples: input: summary: Body request description: |2- Example body request to create a comment. value: comment: Example comment. responses: '201': description: Created comment for a sender in project content: application/json: schema: $ref: '#/components/schemas/WhatsappCommentDto' examples: created: summary: Create response description: |2- Response when successfully creating a comment. value: type: CREATED comment: Example comment created: '2023-01-19T13:11:08.204Z' '400': description: BadRequest content: application/json: schema: oneOf: - title: ProjectNotInitializedErrorTitle properties: errorCode: type: string title: project_not_initialized example: project_not_initialized description: Error code allows to programatically handle errors. message: type: string title: Project not initialized for WhatsApp. example: Project not initialized for WhatsApp. description: Human readable message. resolution: type: string title: Verify that the project ID is correct and that it has been onboarded for WhatsApp. example: Verify that the project ID is correct and that it has been onboarded for WhatsApp. description: Human readable message with an explanation of how to solve the error. - title: InvalidInputErrorTitle properties: errorCode: type: string title: invalid_input example: invalid_input description: Error code allows to programatically handle errors. message: type: string title: Invalid input. example: Invalid input. description: Human readable message. resolution: type: string title: Correct the validation errors and submit again. example: Correct the validation errors and submit again. description: Human readable message with an explanation of how to solve the error. additionalInformation: type: object title: additionalInformation example: validationErrors: - comment must be longer than or equal to 1 characters description: Additional information for error. - title: InvalidPayloadErrorTitle properties: errorCode: type: string title: invalid_payload example: invalid_payload description: Error code allows to programatically handle errors. message: type: string title: Invalid payload. example: Invalid payload. description: Human readable message. resolution: type: string title: Correct payload and submit again. example: Correct payload and submit again. description: Human readable message with an explanation of how to solve the error. '401': description: Unauthorized content: application/json: schema: example: errorCode: unauthorized_error message: Unauthorized error. resolution: Verify that projectId is correct. title: UnauthorizedErrorErrorTitle properties: errorCode: type: string title: unauthorized_error example: unauthorized_error description: Error code allows to programatically handle errors. message: type: string title: Unauthorized error. example: Unauthorized error. description: Human readable message. resolution: type: string title: Verify that projectId is correct. example: Verify that projectId is correct. description: Human readable message with an explanation of how to solve the error. '404': description: NotFound content: application/json: schema: example: errorCode: sender_not_found message: Sender not found. resolution: Verify that the parameters are correct. title: SenderNotFoundErrorTitle properties: errorCode: type: string title: sender_not_found example: sender_not_found description: Error code allows to programatically handle errors. message: type: string title: Sender not found. example: Sender not found. description: Human readable message. resolution: type: string title: Verify that the parameters are correct. example: Verify that the parameters are correct. description: Human readable message with an explanation of how to solve the error. '500': description: InternalServerError content: application/json: schema: oneOf: - title: FailedToCreateCommentErrorTitle properties: errorCode: type: string title: failed_to_create_comment example: failed_to_create_comment description: Error code allows to programatically handle errors. message: type: string title: Failed to create a comment. example: Failed to create a comment. description: Human readable message. resolution: type: string title: Please try again later. example: Please try again later. description: Human readable message with an explanation of how to solve the error. - title: InternalErrorErrorTitle properties: errorCode: type: string title: internal_error example: internal_error description: Error code allows to programatically handle errors. message: type: string title: Internal server error. example: Internal server error. description: Human readable message. resolution: type: string title: Please wait and try again, if the error persist please contact support. example: Please wait and try again, if the error persist please contact support. description: Human readable message with an explanation of how to solve the error. summary: Creates a comment for a sender in project tags: - WhatsApp Senders x-tagAfterOperationSummary: color: white background: green label: GA /v1/projects/{projectId}/whatsapp/senders/{senderId}/register: post: description: |2- Triggers sender registration with the requested method. An OTP code will be sent over the requested method that will need to be used in the Verify sender endpoint. operationId: SendersController_register_v1 parameters: - name: projectId required: true in: path description: The unique ID of the project. You can find this on the Sinch Dashboard. schema: type: string - name: senderId required: true in: path description: The unique ID of the sender. schema: type: string requestBody: required: true description: Sender register data content: application/json: schema: $ref: '#/components/schemas/WhatsappSenderInputRegisterDto' examples: input: summary: Body request description: |2- Example body request to register. value: method: SMS responses: '200': content: application/json: schema: $ref: '#/components/schemas/WhatsappSenderRegisterDto' examples: response: summary: Register response description: |2- Response when successfully register a sender. value: id: cf11794a-6a5e-4a12-b103-da79bd378bf1 method: SMS accepted: '2023-01-19T13:11:08.204Z' description: '' '400': description: BadRequest content: application/json: schema: oneOf: - title: InvalidInputErrorTitle properties: errorCode: type: string title: invalid_input example: invalid_input description: Error code allows to programatically handle errors. message: type: string title: Invalid input. example: Invalid input. description: Human readable message. resolution: type: string title: Correct the validation errors and submit again. example: Correct the validation errors and submit again. description: Human readable message with an explanation of how to solve the error. additionalInformation: type: object title: additionalInformation example: validationErrors: - 'method must be one of the following values: SMS, VOICE' description: Additional information for error. - title: ProjectNotInitializedErrorTitle properties: errorCode: type: string title: project_not_initialized example: project_not_initialized description: Error code allows to programatically handle errors. message: type: string title: Project not initialized for WhatsApp. example: Project not initialized for WhatsApp. description: Human readable message. resolution: type: string title: Verify that the project ID is correct and that it has been onboarded for WhatsApp. example: Verify that the project ID is correct and that it has been onboarded for WhatsApp. description: Human readable message with an explanation of how to solve the error. - title: InvalidPayloadErrorTitle properties: errorCode: type: string title: invalid_payload example: invalid_payload description: Error code allows to programatically handle errors. message: type: string title: Invalid payload. example: Invalid payload. description: Human readable message. resolution: type: string title: Correct payload and submit again. example: Correct payload and submit again. description: Human readable message with an explanation of how to solve the error. '401': description: Unauthorized content: application/json: schema: example: errorCode: unauthorized_error message: Unauthorized error. resolution: Verify that projectId is correct. title: UnauthorizedErrorErrorTitle properties: errorCode: type: string title: unauthorized_error example: unauthorized_error description: Error code allows to programatically handle errors. message: type: string title: Unauthorized error. example: Unauthorized error. description: Human readable message. resolution: type: string title: Verify that projectId is correct. example: Verify that projectId is correct. description: Human readable message with an explanation of how to solve the error. '404': description: NotFound content: application/json: schema: example: errorCode: sender_not_found message: Sender not found. resolution: Verify that the parameters are correct. title: SenderNotFoundErrorTitle properties: errorCode: type: string title: sender_not_found example: sender_not_found description: Error code allows to programatically handle errors. message: type: string title: Sender not found. example: Sender not found. description: Human readable message. resolution: type: string title: Verify that the parameters are correct. example: Verify that the parameters are correct. description: Human readable message with an explanation of how to solve the error. '409': description: Conflict content: application/json: schema: oneOf: - title: NotAllowedRegisterErrorTitle properties: errorCode: type: string title: not_allowed_register example: not_allowed_register description: Error code allows to programatically handle errors. message: type: string title: Sender not allowed to be registered. example: Sender not allowed to be registered. description: Human readable message. resolution: type: string title: Only "PENDING_VERIFICATION" sender can be registered. example: Only "PENDING_VERIFICATION" sender can be registered. description: Human readable message with an explanation of how to solve the error. - title: SenderNumberNotApprovedForEnterpriseErrorTitle properties: errorCode: type: string title: sender-number-not-approved-for-enterprise example: sender-number-not-approved-for-enterprise description: Error code allows to programatically handle errors. message: type: string title: Sender number not approved for enterprise. example: Sender number not approved for enterprise. description: Human readable message. resolution: type: string title: This number has not been approved for an enterprise. Please contact support for more info. example: This number has not been approved for an enterprise. Please contact support for more info. description: Human readable message with an explanation of how to solve the error. '429': description: TooManyRequests content: application/json: schema: oneOf: - title: SenderRegisterTooManyRequestsErrorTitle properties: errorCode: type: string title: sender-register-too-many-requests example: sender-register-too-many-requests description: Error code allows to programatically handle errors. message: type: string title: Sender register too many requests. example: Sender register too many requests. description: Human readable message. resolution: type: string title: Register sender request limits reached. Please try again later. example: Register sender request limits reached. Please try again later. description: Human readable message with an explanation of how to solve the error. - title: SenderAlreadyRegisteredErrorTitle properties: errorCode: type: string title: sender-already-registered example: sender-already-registered description: Error code allows to programatically handle errors. message: type: string title: Sender already registered. example: Sender already registered. description: Human readable message. resolution: type: string title: Verify that the parameters are correct. example: Verify that the parameters are correct. description: Human readable message with an explanation of how to solve the error. - title: TooManyInvalidVerificationCodesErrorTitle properties: errorCode: type: string title: too_many_invalid_verification_codes example: too_many_invalid_verification_codes description: Error code allows to programatically handle errors. message: type: string title: Too many invalid verification codes. example: Too many invalid verification codes. description: Human readable message. resolution: type: string title: You've tried too many invalid verification codes. Please try again later. example: You've tried too many invalid verification codes. Please try again later. description: Human readable message with an explanation of how to solve the error. '500': description: InternalServerError content: application/json: schema: example: errorCode: internal_error message: Internal server error. resolution: Please wait and try again, if the error persist please contact support. title: InternalErrorErrorTitle properties: errorCode: type: string title: internal_error example: internal_error description: Error code allows to programatically handle errors. message: type: string title: Internal server error. example: Internal server error. description: Human readable message. resolution: type: string title: Please wait and try again, if the error persist please contact support. example: Please wait and try again, if the error persist please contact support. description: Human readable message with an explanation of how to solve the error. summary: Register sender for project tags: - WhatsApp Senders x-tagAfterOperationSummary: color: white background: green label: GA /v1/projects/{projectId}/whatsapp/senders/{senderId}/verify: post: description: |2- Verify sender with the OTP received after triggering registration. operationId: SendersController_verify_v1 parameters: - name: projectId required: true in: path description: The unique ID of the project. You can find this on the Sinch Dashboard. schema: type: string - name: senderId required: true in: path description: The unique ID of the sender. schema: type: string requestBody: required: true description: Sender register data content: application/json: schema: $ref: '#/components/schemas/WhatsappSenderInputVerifyDto' examples: input: summary: Body request description: |2- Example body request to verify. value: code: '123456' responses: '204': description: Sender verified '400': description: BadRequest content: application/json: schema: oneOf: - title: InvalidInputErrorTitle properties: errorCode: type: string title: invalid_input example: invalid_input description: Error code allows to programatically handle errors. message: type: string title: Invalid input. example: Invalid input. description: Human readable message. resolution: type: string title: Correct the validation errors and submit again. example: Correct the validation errors and submit again. description: Human readable message with an explanation of how to solve the error. additionalInformation: type: object title: additionalInformation example: validationErrors: - code must be a string - code must be exactly 6 characters description: Additional information for error. - title: ProjectNotInitializedErrorTitle properties: errorCode: type: string title: project_not_initialized example: project_not_initialized description: Error code allows to programatically handle errors. message: type: string title: Project not initialized for WhatsApp. example: Project not initialized for WhatsApp. description: Human readable message. resolution: type: string title: Verify that the project ID is correct and that it has been onboarded for WhatsApp. example: Verify that the project ID is correct and that it has been onboarded for WhatsApp. description: Human readable message with an explanation of how to solve the error. - title: InvalidPayloadErrorTitle properties: errorCode: type: string title: invalid_payload example: invalid_payload description: Error code allows to programatically handle errors. message: type: string title: Invalid payload. example: Invalid payload. description: Human readable message. resolution: type: string title: Correct payload and submit again. example: Correct payload and submit again. description: Human readable message with an explanation of how to solve the error. '401': description: Unauthorized content: application/json: schema: example: errorCode: unauthorized_error message: Unauthorized error. resolution: Verify that projectId is correct. title: UnauthorizedErrorErrorTitle properties: errorCode: type: string title: unauthorized_error example: unauthorized_error description: Error code allows to programatically handle errors. message: type: string title: Unauthorized error. example: Unauthorized error. description: Human readable message. resolution: type: string title: Verify that projectId is correct. example: Verify that projectId is correct. description: Human readable message with an explanation of how to solve the error. '404': description: NotFound content: application/json: schema: example: errorCode: sender_not_found message: Sender not found. resolution: Verify that the parameters are correct. title: SenderNotFoundErrorTitle properties: errorCode: type: string title: sender_not_found example: sender_not_found description: Error code allows to programatically handle errors. message: type: string title: Sender not found. example: Sender not found. description: Human readable message. resolution: type: string title: Verify that the parameters are correct. example: Verify that the parameters are correct. description: Human readable message with an explanation of how to solve the error. '409': description: Conflict content: application/json: schema: oneOf: - title: NotAllowedVerifyErrorTitle properties: errorCode: type: string title: not_allowed_verify example: not_allowed_verify description: Error code allows to programatically handle errors. message: type: string title: Sender not allowed to be verified. example: Sender not allowed to be verified. description: Human readable message. resolution: type: string title: Only "PENDING_VERIFICATION" sender can be verified. example: Only "PENDING_VERIFICATION" sender can be verified. description: Human readable message with an explanation of how to solve the error. - title: WrongOtpErrorTitle properties: errorCode: type: string title: wrong_otp example: wrong_otp description: Error code allows to programatically handle errors. message: type: string title: Sender verification failed due to wrong OTP. example: Sender verification failed due to wrong OTP. description: Human readable message. resolution: type: string title: Please make sure that the correct OTP code is entered. example: Please make sure that the correct OTP code is entered. description: Human readable message with an explanation of how to solve the error. '500': description: InternalServerError content: application/json: schema: example: errorCode: internal_error message: Internal server error. resolution: Please wait and try again, if the error persist please contact support. title: InternalErrorErrorTitle properties: errorCode: type: string title: internal_error example: internal_error description: Error code allows to programatically handle errors. message: type: string title: Internal server error. example: Internal server error. description: Human readable message. resolution: type: string title: Please wait and try again, if the error persist please contact support. example: Please wait and try again, if the error persist please contact support. description: Human readable message with an explanation of how to solve the error. summary: Verify sender for project tags: - WhatsApp Senders x-tagAfterOperationSummary: color: white background: green label: GA /v1/projects/{projectId}/whatsapp/solutions: get: description: |2- Returns a list of solutions for the specified project. operationId: SolutionsController_listSolutions_v1 parameters: - name: projectId required: true in: path description: The unique ID of the project. You can find this on the Sinch Dashboard. schema: type: string responses: '200': description: List of solutions content: application/json: schema: $ref: '#/components/schemas/WhatsappSolutionListDto' examples: response: summary: List response description: |2- Response with solutions. value: solutions: - id: '123' details: name: Test name ownerApp: id: 456 name: Test owner app name partnerApp: id: 789 name: Test partner app name assigned: false - id: '123' details: name: Test name ownerApp: id: 456 name: Test owner app name partnerApp: id: 789 name: Test partner app name assigned: true - id: '123' details: name: Test name ownerApp: id: 456 name: Test owner app name partnerApp: id: 789 name: Test partner app name assigned: false '401': description: Unauthorized content: application/json: schema: example: errorCode: unauthorized_error message: Unauthorized error. resolution: Verify that projectId is correct. title: UnauthorizedErrorErrorTitle properties: errorCode: type: string title: unauthorized_error example: unauthorized_error description: Error code allows to programatically handle errors. message: type: string title: Unauthorized error. example: Unauthorized error. description: Human readable message. resolution: type: string title: Verify that projectId is correct. example: Verify that projectId is correct. description: Human readable message with an explanation of how to solve the error. '404': description: NotFound content: application/json: schema: example: errorCode: project_not_found message: Project not found. resolution: Verify that the projectId is correct. title: ProjectNotFoundErrorTitle properties: errorCode: type: string title: project_not_found example: project_not_found description: Error code allows to programatically handle errors. message: type: string title: Project not found. example: Project not found. description: Human readable message. resolution: type: string title: Verify that the projectId is correct. example: Verify that the projectId is correct. description: Human readable message with an explanation of how to solve the error. '500': description: InternalServerError content: application/json: schema: example: errorCode: internal_error message: Internal server error. resolution: Please wait and try again, if the error persist please contact support. title: InternalErrorErrorTitle properties: errorCode: type: string title: internal_error example: internal_error description: Error code allows to programatically handle errors. message: type: string title: Internal server error. example: Internal server error. description: Human readable message. resolution: type: string title: Please wait and try again, if the error persist please contact support. example: Please wait and try again, if the error persist please contact support. description: Human readable message with an explanation of how to solve the error. summary: List all solutions in project tags: - WhatsApp Solutions x-tagAfterOperationSummary: color: white background: orange label: Open Beta post: description: |2- Returns all solutions for a project. operationId: SolutionsController_createSolution_v1 parameters: - name: projectId required: true in: path description: The unique ID of the project. You can find this on the Sinch Dashboard. schema: type: string requestBody: required: true description: Solution data content: application/json: schema: $ref: '#/components/schemas/WhatsappSolutionInputDto' examples: input: summary: Body request for solution description: |2- Example body request to create a solution. value: accessToken: 1088bbbd-2083-4d27-a8e2-33c65a527790 businessManager: SINCH_UK details: name: Test name responses: '201': description: Solutions content: application/json: schema: $ref: '#/components/schemas/WhatsappSolutionListDto' examples: response: summary: Create response description: |2- Response when successfully creating a solution. value: solutions: - id: '123' details: name: Test name ownerApp: id: 456 name: Test owner app name partnerApp: id: 789 name: Test partner app name assigned: false - id: '123' details: name: Test name ownerApp: id: 456 name: Test owner app name partnerApp: id: 789 name: Test partner app name assigned: false - id: '123' details: name: Test name ownerApp: id: 456 name: Test owner app name partnerApp: id: 789 name: Test partner app name assigned: false '401': description: Unauthorized content: application/json: schema: example: errorCode: unauthorized_error message: Unauthorized error. resolution: Verify that projectId is correct. title: UnauthorizedErrorErrorTitle properties: errorCode: type: string title: unauthorized_error example: unauthorized_error description: Error code allows to programatically handle errors. message: type: string title: Unauthorized error. example: Unauthorized error. description: Human readable message. resolution: type: string title: Verify that projectId is correct. example: Verify that projectId is correct. description: Human readable message with an explanation of how to solve the error. '404': description: NotFound content: application/json: schema: example: errorCode: project_not_found message: Project not found. resolution: Verify that the projectId is correct. title: ProjectNotFoundErrorTitle properties: errorCode: type: string title: project_not_found example: project_not_found description: Error code allows to programatically handle errors. message: type: string title: Project not found. example: Project not found. description: Human readable message. resolution: type: string title: Verify that the projectId is correct. example: Verify that the projectId is correct. description: Human readable message with an explanation of how to solve the error. '500': description: InternalServerError content: application/json: schema: example: errorCode: internal_error message: Internal server error. resolution: Please wait and try again, if the error persist please contact support. title: InternalErrorErrorTitle properties: errorCode: type: string title: internal_error example: internal_error description: Error code allows to programatically handle errors. message: type: string title: Internal server error. example: Internal server error. description: Human readable message. resolution: type: string title: Please wait and try again, if the error persist please contact support. example: Please wait and try again, if the error persist please contact support. description: Human readable message with an explanation of how to solve the error. summary: Create solution for project tags: - WhatsApp Solutions x-tagAfterOperationSummary: color: white background: orange label: Open Beta /v1/projects/{projectId}/whatsapp/solutions/{solutionId}: get: description: |2- Returns a solution for a project. operationId: SolutionsController_getSolution_v1 parameters: - name: projectId required: true in: path description: The unique ID of the project. You can find this on the Sinch Dashboard. schema: type: string - name: solutionId required: true in: path description: The unique ID of the solution. schema: type: string responses: '200': description: Solution content: application/json: schema: $ref: '#/components/schemas/WhatsappSolutionDto' examples: assignedResponse: summary: Get assigned solution response description: |2- Response with assigned solution. value: id: '123' details: name: Test name ownerApp: id: 456 name: Test owner app name partnerApp: id: 789 name: Test partner app name assigned: true notAssignedResponse: summary: Get unassigned solution response description: |2- Response with unassigned solution. value: id: '123' details: name: Test name ownerApp: id: 456 name: Test owner app name partnerApp: id: 789 name: Test partner app name assigned: false '401': description: Unauthorized content: application/json: schema: example: errorCode: unauthorized_error message: Unauthorized error. resolution: Verify that projectId is correct. title: UnauthorizedErrorErrorTitle properties: errorCode: type: string title: unauthorized_error example: unauthorized_error description: Error code allows to programatically handle errors. message: type: string title: Unauthorized error. example: Unauthorized error. description: Human readable message. resolution: type: string title: Verify that projectId is correct. example: Verify that projectId is correct. description: Human readable message with an explanation of how to solve the error. '404': description: NotFound content: application/json: schema: oneOf: - title: ProjectNotFoundErrorTitle properties: errorCode: type: string title: project_not_found example: project_not_found description: Error code allows to programatically handle errors. message: type: string title: Project not found. example: Project not found. description: Human readable message. resolution: type: string title: Verify that the projectId is correct. example: Verify that the projectId is correct. description: Human readable message with an explanation of how to solve the error. - title: SolutionNotFoundErrorTitle properties: errorCode: type: string title: solution_not_found example: solution_not_found description: Error code allows to programatically handle errors. message: type: string title: Solution not found. example: Solution not found. description: Human readable message. resolution: type: string title: Verify that the parameters are correct. example: Verify that the parameters are correct. description: Human readable message with an explanation of how to solve the error. '500': description: InternalServerError content: application/json: schema: example: errorCode: internal_error message: Internal server error. resolution: Please wait and try again, if the error persist please contact support. title: InternalErrorErrorTitle properties: errorCode: type: string title: internal_error example: internal_error description: Error code allows to programatically handle errors. message: type: string title: Internal server error. example: Internal server error. description: Human readable message. resolution: type: string title: Please wait and try again, if the error persist please contact support. example: Please wait and try again, if the error persist please contact support. description: Human readable message with an explanation of how to solve the error. summary: Get solution for project tags: - WhatsApp Solutions x-tagAfterOperationSummary: color: white background: orange label: Open Beta /v1/projects/{projectId}/whatsapp/solutions/{solutionId}/assign: post: description: |2- Assign solution to project, to enable Embedded Signup onboarding. operationId: SolutionsController_assignSolution_v1 parameters: - name: projectId required: true in: path description: The unique ID of the project. You can find this on the Sinch Dashboard. schema: type: string - name: solutionId required: true in: path description: The unique ID of the solution. schema: type: string responses: '204': description: Solution assigned '401': description: Unauthorized content: application/json: schema: example: errorCode: unauthorized_error message: Unauthorized error. resolution: Verify that projectId is correct. title: UnauthorizedErrorErrorTitle properties: errorCode: type: string title: unauthorized_error example: unauthorized_error description: Error code allows to programatically handle errors. message: type: string title: Unauthorized error. example: Unauthorized error. description: Human readable message. resolution: type: string title: Verify that projectId is correct. example: Verify that projectId is correct. description: Human readable message with an explanation of how to solve the error. '404': description: NotFound content: application/json: schema: oneOf: - title: ProjectNotFoundErrorTitle properties: errorCode: type: string title: project_not_found example: project_not_found description: Error code allows to programatically handle errors. message: type: string title: Project not found. example: Project not found. description: Human readable message. resolution: type: string title: Verify that the projectId is correct. example: Verify that the projectId is correct. description: Human readable message with an explanation of how to solve the error. - title: SolutionNotFoundErrorTitle properties: errorCode: type: string title: solution_not_found example: solution_not_found description: Error code allows to programatically handle errors. message: type: string title: Solution not found. example: Solution not found. description: Human readable message. resolution: type: string title: Verify that the parameters are correct. example: Verify that the parameters are correct. description: Human readable message with an explanation of how to solve the error. '500': description: InternalServerError content: application/json: schema: example: errorCode: internal_error message: Internal server error. resolution: Please wait and try again, if the error persist please contact support. title: InternalErrorErrorTitle properties: errorCode: type: string title: internal_error example: internal_error description: Error code allows to programatically handle errors. message: type: string title: Internal server error. example: Internal server error. description: Human readable message. resolution: type: string title: Please wait and try again, if the error persist please contact support. example: Please wait and try again, if the error persist please contact support. description: Human readable message with an explanation of how to solve the error. summary: Assign solution to project tags: - WhatsApp Solutions x-tagAfterOperationSummary: color: white background: orange label: Open Beta /v1/projects/{projectId}/whatsapp/templates: get: description: |2- Returns a paginated list of templates for the specified project. If no page token is supplied then the first `50` templates are returned in alphabetical order. operationId: TemplatesController_listTemplates_v1 parameters: - name: projectId required: true in: path description: The unique ID of the project. You can find this on the Sinch Dashboard. schema: type: string - name: pageToken required: false in: query schema: type: string description: The page token if retrieving the next page from a previous query. - name: pageSize required: false in: query schema: type: number minimum: 1 maximum: 1000 description: The page size requested. - name: fieldMask required: false in: query description: Field masks are a way for API callers to list the fields that a request should return. schema: type: array items: $ref: '#/components/schemas/WhatsappTemplateDtoFieldMaskPathsEnum' - name: filterStates required: false in: query description: Optionally query for sender by states. schema: type: array items: $ref: '#/components/schemas/WhatsappTemplateStatesEnum' - name: filterStatuses required: false in: query description: Optionally query for sender by statuses. schema: type: array items: $ref: '#/components/schemas/WhatsappTemplateStatusesEnum' - name: templateAnalyticsDateRange required: false in: query description: The date range to retrieve template analytics for. Fallback to DAY if none is set. schema: $ref: '#/components/schemas/WhatsappTemplateAnalyticsDateRangesEnum' - name: templateName required: false in: query description: Optionally query for template by name. Will return all templates with names that begin with the query string. schema: type: string responses: '200': description: List of templates content: application/json: schema: oneOf: - $ref: '#/components/schemas/WhatsappTemplateListDto' - $ref: '#/components/schemas/WhatsappPartialTemplateListDto' '400': description: BadRequest content: application/json: schema: oneOf: - title: ProjectNotInitializedErrorTitle properties: errorCode: type: string title: project_not_initialized example: project_not_initialized description: Error code allows to programatically handle errors. message: type: string title: Project not initialized for WhatsApp. example: Project not initialized for WhatsApp. description: Human readable message. resolution: type: string title: Verify that the project ID is correct and that it has been onboarded for WhatsApp. example: Verify that the project ID is correct and that it has been onboarded for WhatsApp. description: Human readable message with an explanation of how to solve the error. - title: InvalidPageSizeErrorTitle properties: errorCode: type: string title: invalid_page_size example: invalid_page_size description: Error code allows to programatically handle errors. message: type: string title: Page size must be numeric. example: Page size must be numeric. description: Human readable message. resolution: type: string title: Use a integer value for pageSize parameter. example: Use a integer value for pageSize parameter. description: Human readable message with an explanation of how to solve the error. - title: InvalidPageTokenErrorTitle properties: errorCode: type: string title: invalid_page_token example: invalid_page_token description: Error code allows to programatically handle errors. message: type: string title: Invalid page token. example: Invalid page token. description: Human readable message. resolution: type: string title: The page token to use is provided in the previous query response, for new queries simply leave this field undefined. example: The page token to use is provided in the previous query response, for new queries simply leave this field undefined. description: Human readable message with an explanation of how to solve the error. - title: InvalidFilterStatesErrorTitle properties: errorCode: type: string title: invalid_filter_states example: invalid_filter_states description: Error code allows to programatically handle errors. message: type: string title: Invalid filterStates. example: Invalid filterStates. description: Human readable message. resolution: type: string title: Verify that the filterStates used are supported by the Provisioning API. example: Verify that the filterStates used are supported by the Provisioning API. description: Human readable message with an explanation of how to solve the error. additionalInformation: type: object title: additionalInformation example: supportedCodes: APPROVED, DISABLED, PAUSED, REJECTED description: Additional information for error. - title: InvalidFilterStatusesErrorTitle properties: errorCode: type: string title: invalid_filter_statuses example: invalid_filter_statuses description: Error code allows to programatically handle errors. message: type: string title: Invalid filter statuses. example: Invalid filter statuses. description: Human readable message. resolution: type: string title: Verify that the filterStatuses used are supported by the Provisioning API. example: Verify that the filterStatuses used are supported by the Provisioning API. description: Human readable message with an explanation of how to solve the error. additionalInformation: type: object title: additionalInformation example: supportedCodes: DRAFT, IN_PROGRESS, REJECTED description: Additional information for error. - title: InvalidFieldsErrorTitle properties: errorCode: type: string title: invalid_fields example: invalid_fields description: Error code allows to programatically handle errors. message: type: string title: Invalid fields. example: Invalid fields. description: Human readable message. resolution: type: string title: Verify that the fields used are supported by the Provisioning API. example: Verify that the fields used are supported by the Provisioning API. description: Human readable message with an explanation of how to solve the error. additionalInformation: type: object title: additionalInformation example: supportedCodes: whatsappId, state, name, language, category, rejectionCode, qualityScore, changes, changes.status, changes.allowCategoryChange, changes.details, changes.details.components, changes.details.components.0.type, changes.details.components.0.format, changes.details.components.0.text, changes.details.components.0.example, changes.details.components.0.example.url, changes.details.components.0.examples, changes.details.components.0.addSecurityRecommendation, changes.details.components.0.codeExpirationMinutes, changes.details.components.0.buttons, changes.details.components.0.buttons.0.type, changes.details.components.0.buttons.0.text, changes.details.components.0.buttons.0.phoneNumber, changes.details.components.0.buttons.0.url, changes.details.components.0.buttons.0.example, changes.details.components.0.buttons.0.otpType, changes.details.components.0.buttons.0.autofillText, changes.details.components.0.buttons.0.packageName, changes.details.components.0.buttons.0.signatureHash, changes.details.components.0.buttons.0.supportedApps, changes.details.components.0.buttons.0.supportedApps.0.packageName, changes.details.components.0.buttons.0.supportedApps.0.signatureHash, changes.details.components.0.buttons.0.zeroTapTermsAccepted, changes.details.components.0.buttons.0.flowId, changes.details.components.0.buttons.0.flowAction, changes.details.components.0.buttons.0.navigateScreen, changes.details.messageSendTtlSeconds, details, details.components, details.components.0.type, details.components.0.format, details.components.0.text, details.components.0.example, details.components.0.example.url, details.components.0.examples, details.components.0.addSecurityRecommendation, details.components.0.codeExpirationMinutes, details.components.0.buttons, details.components.0.buttons.0.type, details.components.0.buttons.0.text, details.components.0.buttons.0.phoneNumber, details.components.0.buttons.0.url, details.components.0.buttons.0.example, details.components.0.buttons.0.otpType, details.components.0.buttons.0.autofillText, details.components.0.buttons.0.packageName, details.components.0.buttons.0.signatureHash, details.components.0.buttons.0.supportedApps, details.components.0.buttons.0.supportedApps.0.packageName, details.components.0.buttons.0.supportedApps.0.signatureHash, details.components.0.buttons.0.zeroTapTermsAccepted, details.components.0.buttons.0.flowId, details.components.0.buttons.0.flowAction, details.components.0.buttons.0.navigateScreen, details.messageSendTtlSeconds, analytics, analytics.0.sent, analytics.0.delivered, analytics.0.read, analytics.0.start, analytics.0.end, analytics.0.buttons, analytics.0.buttons.0.type, analytics.0.buttons.0.content, analytics.0.buttons.0.clicks description: Additional information for error. '401': description: Unauthorized content: application/json: schema: example: errorCode: unauthorized_error message: Unauthorized error. resolution: Verify that projectId is correct. title: UnauthorizedErrorErrorTitle properties: errorCode: type: string title: unauthorized_error example: unauthorized_error description: Error code allows to programatically handle errors. message: type: string title: Unauthorized error. example: Unauthorized error. description: Human readable message. resolution: type: string title: Verify that projectId is correct. example: Verify that projectId is correct. description: Human readable message with an explanation of how to solve the error. '500': description: InternalServerError content: application/json: schema: example: errorCode: internal_error message: Internal server error. resolution: Please wait and try again, if the error persist please contact support. title: InternalErrorErrorTitle properties: errorCode: type: string title: internal_error example: internal_error description: Error code allows to programatically handle errors. message: type: string title: Internal server error. example: Internal server error. description: Human readable message. resolution: type: string title: Please wait and try again, if the error persist please contact support. example: Please wait and try again, if the error persist please contact support. description: Human readable message with an explanation of how to solve the error. summary: List all templates in project tags: - WhatsApp Templates x-tagAfterOperationSummary: color: white background: green label: GA post: callbacks: Comment: '{$request.body#webhooks.target}': post: summary: WhatsApp Template received a comment description: |2- Callback sent when a comment is placed on a template. parameters: - in: header name: x-sinch-webhook-signature schema: type: string format: uuid example: - in: header name: x-sinch-webhook-signature-algorithm schema: type: string enum: - HmacSHA256 uniqueItems: false example: HmacSHA256 - in: header name: x-sinch-webhook-signature-nonce schema: type: string example: 01EAW2BNWCG9DC13RS582V0ZQ3 - in: header name: x-sinch-webhook-signature-timestamp schema: type: string format: timestamp example: '1592227387' requestBody: content: application/json: schema: type: object properties: type: description: Type of event, in this case `WHATSAPP_TEMPLATE_COMMENT_ADDED`. type: string payload: description: Template at time of callback. allOf: - $ref: '#/components/schemas/WhatsappTemplateDto' comment: description: Comment for template. type: string required: - type - payload example: type: WHATSAPP_TEMPLATE_COMMENT_ADDED payload: name: My WhatsApp Template category: UTILITY language: EN_US qualityScore: QUALITY_SCORE_GREEN changes: status: DRAFT details: components: - type: HEADER format: TEXT text: Save {{1}}% on your next purchase! example: '20' - type: HEADER format: DOCUMENT example: url: https://example.com/photos/1.png - type: HEADER format: LOCATION - type: BODY text: Good morning {{1}}, your package has arrived. examples: - Mr. Smith addSecurityRecommendation: true - type: FOOTER text: To track your order please click the 'Track Your Order' button codeExpirationMinutes: 5 - type: BUTTONS buttons: - type: PHONE_NUMBER text: Example text. phoneNumber: +48 777 777777 - type: URL text: Example test url: https://www.my-website.com?name={{1}} example: https://www.my-website.com?name=john - type: QUICK_REPLY text: Track Your Order - type: OTP otpType: COPY_CODE text: Example text. - type: CAROUSEL cards: - components: - type: HEADER format: IMAGE example: url: https://example.com/photos/1.png - type: BODY text: Good morning {{1}}, your package has arrived. examples: - Mr. Smith - type: BUTTONS buttons: - type: URL text: Example test url: https://www.my-website.com?name={{1}} example: https://www.my-website.com?name=john - type: QUICK_REPLY text: Track Your Order - type: PHONE_NUMBER text: Example text. phoneNumber: +48 777 777777 messageSendTtlSeconds: 60 analytics: [] responses: '200': description: Response to callback will be ignored. The call will retry if unsuccessful. Approved: '{$request.body#webhooks.target}': post: summary: WhatsApp Template approved description: |2- Callback sent when a template is approved. parameters: - in: header name: x-sinch-webhook-signature schema: type: string format: uuid example: - in: header name: x-sinch-webhook-signature-algorithm schema: type: string enum: - HmacSHA256 uniqueItems: false example: HmacSHA256 - in: header name: x-sinch-webhook-signature-nonce schema: type: string example: 01EAW2BNWCG9DC13RS582V0ZQ3 - in: header name: x-sinch-webhook-signature-timestamp schema: type: string format: timestamp example: '1592227387' requestBody: content: application/json: schema: type: object properties: type: description: Type of event, in this case `WHATSAPP_TEMPLATE_APPROVED`. type: string payload: description: Template at time of callback. allOf: - $ref: '#/components/schemas/WhatsappTemplateDto' comment: description: Comment for template. type: string required: - type - payload example: type: WHATSAPP_TEMPLATE_APPROVED payload: whatsappId: '123456' name: My WhatsApp Template state: APPROVED category: UTILITY language: EN_US qualityScore: QUALITY_SCORE_GREEN details: components: - type: HEADER format: TEXT text: Save {{1}}% on your next purchase! example: '20' messageSendTtlSeconds: 60 analytics: [] responses: '200': description: Response to callback will be ignored. The call will retry if unsuccessful. Rejected: '{$request.body#webhooks.target}': post: summary: WhatsApp Template rejected description: |2- Callback sent when a template is rejected. parameters: - in: header name: x-sinch-webhook-signature schema: type: string format: uuid example: - in: header name: x-sinch-webhook-signature-algorithm schema: type: string enum: - HmacSHA256 uniqueItems: false example: HmacSHA256 - in: header name: x-sinch-webhook-signature-nonce schema: type: string example: 01EAW2BNWCG9DC13RS582V0ZQ3 - in: header name: x-sinch-webhook-signature-timestamp schema: type: string format: timestamp example: '1592227387' requestBody: content: application/json: schema: type: object properties: type: description: Type of event, in this case `WHATSAPP_TEMPLATE_REJECTED`. type: string payload: description: Template at time of callback. allOf: - $ref: '#/components/schemas/WhatsappTemplateDto' comment: description: Comment for template. type: string required: - type - payload example: type: WHATSAPP_TEMPLATE_REJECTED payload: name: My WhatsApp Template state: REJECTED category: UTILITY language: EN_US qualityScore: QUALITY_SCORE_GREEN details: components: - type: HEADER format: TEXT text: Save {{1}}% on your next purchase! example: '20' messageSendTtlSeconds: 60 analytics: [] responses: '200': description: Response to callback will be ignored. The call will retry if unsuccessful. StatusUpdated: '{$request.body#webhooks.target}': post: summary: WhatsApp Template status updated description: |2- Callback sent when a template status in changed to `DISABLED`, `FLAGGED`, `PAUSED`, `REINSTATED` or `UNPAUSED`. parameters: - in: header name: x-sinch-webhook-signature schema: type: string format: uuid example: - in: header name: x-sinch-webhook-signature-algorithm schema: type: string enum: - HmacSHA256 uniqueItems: false example: HmacSHA256 - in: header name: x-sinch-webhook-signature-nonce schema: type: string example: 01EAW2BNWCG9DC13RS582V0ZQ3 - in: header name: x-sinch-webhook-signature-timestamp schema: type: string format: timestamp example: '1592227387' requestBody: content: application/json: schema: type: object properties: type: description: Type of event, in this case `WHATSAPP_TEMPLATE_STATUS_UPDATED`. type: string payload: description: Template at time of callback. allOf: - $ref: '#/components/schemas/WhatsappTemplateDto' newState: description: New state for template. type: string enum: - DISABLED - FLAGGED - PAUSED - REINSTATED - UNPAUSED comment: description: Comment for template. type: string required: - type - payload - newState example: type: WHATSAPP_TEMPLATE_STATUS_UPDATED payload: whatsappId: '123456' name: My WhatsApp Template state: PAUSED category: UTILITY language: EN_US qualityScore: QUALITY_SCORE_GREEN details: components: - type: HEADER format: TEXT text: Save {{1}}% on your next purchase! example: '20' messageSendTtlSeconds: 60 analytics: [] newState: PAUSED responses: '200': description: Response to callback will be ignored. The call will retry if unsuccessful. Deleted: '{$request.body#webhooks.target}': post: summary: WhatsApp Template deleted description: Callback sent when a template is deleted. parameters: - in: header name: x-sinch-webhook-signature schema: type: string format: uuid example: - in: header name: x-sinch-webhook-signature-algorithm schema: type: string enum: - HmacSHA256 uniqueItems: false example: HmacSHA256 - in: header name: x-sinch-webhook-signature-nonce schema: type: string example: 01EAW2BNWCG9DC13RS582V0ZQ3 - in: header name: x-sinch-webhook-signature-timestamp schema: type: string format: timestamp example: '1592227387' requestBody: content: application/json: schema: type: object properties: type: description: Type of event, in this case WHATSAPP_TEMPLATE_DELETED. type: string required: - type example: type: WHATSAPP_TEMPLATE_DELETED payload: whatsappId: '123456' name: My WhatsApp Template category: UTILITY language: EN_US qualityScore: QUALITY_SCORE_GREEN details: components: - type: HEADER format: TEXT text: Save {{1}}% on your next purchase! example: '20' messageSendTtlSeconds: 60 analytics: [] responses: '200': description: Response to callback will be ignored. The call will retry if unsuccessful. QualityScoreUpdated: '{$request.body#webhooks.target}': post: summary: WhatsApp Template quality score updated description: |2- Callback sent when a template quality score changed. parameters: - in: header name: x-sinch-webhook-signature schema: type: string format: uuid example: - in: header name: x-sinch-webhook-signature-algorithm schema: type: string enum: - HmacSHA256 uniqueItems: false example: HmacSHA256 - in: header name: x-sinch-webhook-signature-nonce schema: type: string example: 01EAW2BNWCG9DC13RS582V0ZQ3 - in: header name: x-sinch-webhook-signature-timestamp schema: type: string format: timestamp example: '1592227387' requestBody: content: application/json: schema: type: object properties: type: description: Type of event, in this case `WHATSAPP_TEMPLATE_QUALITY_SCORE_UPDATED`. type: string payload: description: Template at time of callback. allOf: - $ref: '#/components/schemas/WhatsappTemplateDto' comment: description: Comment for template. type: string required: - type - payload example: type: WHATSAPP_TEMPLATE_QUALITY_SCORE_UPDATED payload: whatsappId: '123456' name: My WhatsApp Template state: APPROVED category: UTILITY language: EN_US qualityScore: QUALITY_SCORE_GREEN details: components: - type: HEADER format: TEXT text: Save {{1}}% on your next purchase! example: '20' messageSendTtlSeconds: 60 analytics: [] responses: '200': description: Response to callback will be ignored. The call will retry if unsuccessful. CategoryUpdated: '{$request.body#webhooks.target}': post: summary: WhatsApp Template category updated description: |2- Callback sent when a templates category is changed. parameters: - in: header name: x-sinch-webhook-signature schema: type: string format: uuid example: - in: header name: x-sinch-webhook-signature-algorithm schema: type: string enum: - HmacSHA256 uniqueItems: false example: HmacSHA256 - in: header name: x-sinch-webhook-signature-nonce schema: type: string example: 01EAW2BNWCG9DC13RS582V0ZQ3 - in: header name: x-sinch-webhook-signature-timestamp schema: type: string format: timestamp example: '1592227387' requestBody: content: application/json: schema: type: object properties: type: description: Type of event, in this case `WHATSAPP_TEMPLATE_CATEGORY_UPDATED`. type: string payload: description: Template at time of callback. allOf: - $ref: '#/components/schemas/WhatsappTemplateDto' comment: description: Comment for template. type: string required: - type - payload example: type: WHATSAPP_TEMPLATE_CATEGORY_UPDATED payload: whatsappId: '123456' name: My WhatsApp Template state: APPROVED category: UTILITY language: EN_US qualityScore: QUALITY_SCORE_GREEN details: components: - type: HEADER format: TEXT text: Save {{1}}% on your next purchase! example: '20' messageSendTtlSeconds: 60 analytics: [] responses: '200': description: Response to callback will be ignored. The call will retry if unsuccessful. FutureCategoryUpdate: '{$request.body#webhooks.target}': post: summary: WhatsApp Template category coming update description: |2- Callback sent when a templates category coming to be changed. parameters: - in: header name: x-sinch-webhook-signature schema: type: string format: uuid example: - in: header name: x-sinch-webhook-signature-algorithm schema: type: string enum: - HmacSHA256 uniqueItems: false example: HmacSHA256 - in: header name: x-sinch-webhook-signature-nonce schema: type: string example: 01EAW2BNWCG9DC13RS582V0ZQ3 - in: header name: x-sinch-webhook-signature-timestamp schema: type: string format: timestamp example: '1592227387' requestBody: content: application/json: schema: type: object properties: type: description: Type of event, in this case `WHATSAPP_TEMPLATE_CATEGORY_FUTURE_UPDATE`. type: string payload: description: Template at time of callback. allOf: - $ref: '#/components/schemas/WhatsappTemplateDto' futureCategory: description: Future category for template. type: string enum: - AUTHENTICATION - MARKETING - UTILITY - UNRECOGNIZED comment: description: Comment for template. type: string required: - type - payload - futureCategory example: type: WHATSAPP_TEMPLATE_CATEGORY_FUTURE_UPDATE payload: whatsappId: '123456' name: My WhatsApp Template state: APPROVED category: UTILITY language: EN_US qualityScore: QUALITY_SCORE_GREEN details: components: - type: HEADER format: TEXT text: Save {{1}}% on your next purchase! example: '20' messageSendTtlSeconds: 60 analytics: [] futureCategory: MARKETING responses: '200': description: Response to callback will be ignored. The call will retry if unsuccessful. description: |2- Creates a new template with the request data. If the `status` field is set to `submit` the template will be created immediately, otherwise it will be saved as a `draft`. operationId: TemplatesController_createTemplate_v1 parameters: - name: projectId required: true in: path description: The unique ID of the project. You can find this on the Sinch Dashboard. schema: type: string requestBody: required: true description: Template data content: application/json: schema: $ref: '#/components/schemas/WhatsappTemplateInputDto' examples: marketingOrUtilityFull: summary: Marketing or Utility full example description: |2- Full body to create a Marketing or Utility template. value: name: my_template category: MARKETING language: EN details: components: - type: HEADER format: LOCATION - type: HEADER format: TEXT text: Save {{1}}% on your next purchase! example: '20' - type: HEADER format: DOCUMENT example: url: https://example.com/photos/1.png - type: BODY text: Good morning {{1}}, your package has arrived. examples: - Mr. Smith addSecurityRecommendation: true - type: FOOTER text: To track your order please click the 'Track Your Order' button codeExpirationMinutes: 5 - type: BUTTONS buttons: - type: PHONE_NUMBER text: Example text. phoneNumber: +48 777 777777 - type: URL text: Example test url: https://www.my-website.com?name={{1}} example: https://www.my-website.com?name=john - type: QUICK_REPLY text: Track Your Order - type: OTP otpType: COPY_CODE text: Example text. - type: FLOW text: Start Flow flowId: flow-id navigateScreen: QUESTION_ONE flowAction: NAVIGATE - type: CAROUSEL cards: - components: - type: HEADER format: IMAGE example: url: https://example.com/photos/1.png - type: BODY text: Good morning {{1}}, your package has arrived. examples: - Mr. Smith - type: BUTTONS buttons: - type: URL text: Example test url: https://www.my-website.com?name={{1}} example: https://www.my-website.com?name=john - type: QUICK_REPLY text: Track Your Order - type: PHONE_NUMBER text: Example text. phoneNumber: +48 777 777777 marketingOrUtilityMinimum: summary: Minimalist Marketing or Utility example description: |2- Minimalist body to create a Marketing or Utility template. value: name: my_template category: UTILITY language: EN details: components: - type: HEADER format: TEXT text: Save {{1}}% on your next purchase! example: '20' - type: BODY text: Good morning {{1}}, your package has arrived. examples: - Mr. Smith addSecurityRecommendation: true authenticationFull: summary: Authentication full example description: |2- Full body to create an Authentication template. value: name: my_template category: AUTHENTICATION language: EN details: components: - type: BODY addSecurityRecommendation: true - type: FOOTER codeExpirationMinutes: 62 - type: BUTTONS buttons: - type: OTP otpType: ONE_TAP text: My copy code text autofillText: My autofill text packageName: com.android.chrome signatureHash: sample+hash supportedApps: - packageName: com.android.chrome signatureHash: sample+hash - type: BUTTONS buttons: - type: OTP otpType: ZERO_TAP text: My copy code text autofillText: My autofill text packageName: com.android.chrome signatureHash: sample+hash supportedApps: - packageName: com.android.chrome signatureHash: sample+hash zeroTapTermsAccepted: true messageSendTtlSeconds: 360 authenticationMinimum: summary: Minimalist Authentication example description: |2- Minimalist body to create an Authentication template. value: name: my_template category: AUTHENTICATION language: EN details: components: - type: BODY addSecurityRecommendation: false - type: BUTTONS buttons: - type: OTP otpType: COPY_CODE text: Copy code flowUtility: summary: Start Flow Utility example description: |2- Body example to create a Flow template of utility category. value: name: my_template category: UTILITY language: EN details: components: - type: BUTTONS buttons: - type: FLOW flowId: flow-id text: Start Flow navigateScreen: QUESTION_ONE flowAction: NAVIGATE flowMarketing: summary: Start Flow Marketing example description: |2- Body example to create a Flow template of marketing category. value: name: my_template category: MARKETING language: EN details: components: - type: BUTTONS buttons: - type: FLOW flowId: flow-id text: Start Flow navigateScreen: QUESTION_ONE flowAction: NAVIGATE responses: '201': description: Created template content: application/json: schema: $ref: '#/components/schemas/WhatsappTemplateDto' examples: response: summary: Create response description: |2- Response when successfully creating a template. value: name: My WhatsApp Template category: UTILITY language: EN_US qualityScore: QUALITY_SCORE_GREEN changes: status: DRAFT details: components: - type: HEADER format: TEXT text: Save {{1}}% on your next purchase! example: '20' - type: HEADER format: DOCUMENT example: url: https://example.com/photos/1.png - type: HEADER format: LOCATION - type: BODY text: Good morning {{1}}, your package has arrived. examples: - Mr. Smith addSecurityRecommendation: true - type: FOOTER text: To track your order please click the 'Track Your Order' button codeExpirationMinutes: 5 - type: BUTTONS buttons: - type: PHONE_NUMBER text: Example text. phoneNumber: +48 777 777777 - type: URL text: Example test url: https://www.my-website.com?name={{1}} example: https://www.my-website.com?name=john - type: QUICK_REPLY text: Track Your Order - type: OTP otpType: COPY_CODE text: Example text. - type: CAROUSEL cards: - components: - type: HEADER format: IMAGE example: url: https://example.com/photos/1.png - type: BODY text: Good morning {{1}}, your package has arrived. examples: - Mr. Smith - type: BUTTONS buttons: - type: URL text: Example test url: https://www.my-website.com?name={{1}} example: https://www.my-website.com?name=john - type: QUICK_REPLY text: Track Your Order - type: PHONE_NUMBER text: Example text. phoneNumber: +48 777 777777 messageSendTtlSeconds: 60 analytics: [] '400': description: BadRequest content: application/json: schema: oneOf: - title: InvalidInputErrorTitle properties: errorCode: type: string title: invalid_input example: invalid_input description: Error code allows to programatically handle errors. message: type: string title: Invalid input. example: Invalid input. description: Human readable message. resolution: type: string title: Correct the validation errors and submit again. example: Correct the validation errors and submit again. description: Human readable message with an explanation of how to solve the error. additionalInformation: type: object title: additionalInformation example: validationErrors: - 'category must be one of the following values: AUTHENTICATION, MARKETING, UTILITY' description: Additional information for error. - title: ProjectNotInitializedErrorTitle properties: errorCode: type: string title: project_not_initialized example: project_not_initialized description: Error code allows to programatically handle errors. message: type: string title: Project not initialized for WhatsApp. example: Project not initialized for WhatsApp. description: Human readable message. resolution: type: string title: Verify that the project ID is correct and that it has been onboarded for WhatsApp. example: Verify that the project ID is correct and that it has been onboarded for WhatsApp. description: Human readable message with an explanation of how to solve the error. - title: TemplatePoliciesViolationsErrorTitle properties: errorCode: type: string title: template_policies_violations example: template_policies_violations description: Error code allows to programatically handle errors. message: type: string title: Your message couldn't be sent because it includes content that other people on Facebook have reported as abusive. example: Your message couldn't be sent because it includes content that other people on Facebook have reported as abusive. description: Human readable message. resolution: type: string title: Remove violating content. If template is saved as draft, try to submit the template again. If option "saveDraftOnFailure" is specified as "false", try the request again. example: Remove violating content. If template is saved as draft, try to submit the template again. If option "saveDraftOnFailure" is specified as "false", try the request again. description: Human readable message with an explanation of how to solve the error. - title: TemplateCheckMediaFileSizeErrorTitle properties: errorCode: type: string title: template_check_media_file_size example: template_check_media_file_size description: Error code allows to programatically handle errors. message: type: string title: Failed to check media file size. example: Failed to check media file size. description: Human readable message. resolution: type: string title: Ensure media file URL is correct and then try again later. If template is saved as draft, try to submit the template again. If option "saveDraftOnFailure" is specified as "false", try the request again. example: Ensure media file URL is correct and then try again later. If template is saved as draft, try to submit the template again. If option "saveDraftOnFailure" is specified as "false", try the request again. description: Human readable message with an explanation of how to solve the error. - title: TemplateInvalidCategoryErrorTitle properties: errorCode: type: string title: template_invalid_category example: template_invalid_category description: Error code allows to programatically handle errors. message: type: string title: Template invalid category. example: Template invalid category. description: Human readable message. resolution: type: string title: 'Verify that categories are correct: AUTHENTICATION, MARKETING, UTILITY.' example: 'Verify that categories are correct: AUTHENTICATION, MARKETING, UTILITY.' description: Human readable message with an explanation of how to solve the error. - title: TemplateInvalidButtonExampleErrorTitle properties: errorCode: type: string title: template_invalid_button_example example: template_invalid_button_example description: Error code allows to programatically handle errors. message: type: string title: Invalid button example. example: Invalid button example. description: Human readable message. resolution: type: string title: Only dynamic URL buttons are allowed to have an example. example: Only dynamic URL buttons are allowed to have an example. description: Human readable message with an explanation of how to solve the error. - title: TemplateMediaFileSizeExceedsMaximumFileSizeLimitErrorTitle properties: errorCode: type: string title: template_media_file_size_exceeds_maximum_file_size_limit example: template_media_file_size_exceeds_maximum_file_size_limit description: Error code allows to programatically handle errors. message: type: string title: Template media file size exceeds maximum file size limit. example: Template media file size exceeds maximum file size limit. description: Human readable message. resolution: type: string title: Try again with a smaller file. example: Try again with a smaller file. description: Human readable message with an explanation of how to solve the error. - title: FileInvalidMimeTypeErrorTitle properties: errorCode: type: string title: file_invalid_mime_type example: file_invalid_mime_type description: Error code allows to programatically handle errors. message: type: string title: 'details.components[0].headerExample.media.url: invalid file mime type.' example: 'details.components[0].headerExample.media.url: invalid file mime type.' description: Human readable message. resolution: type: string title: 'Try again with supported mime types: image/jpeg, image/png, application/pdf, video/3gp, video/mp4.' example: 'Try again with supported mime types: image/jpeg, image/png, application/pdf, video/3gp, video/mp4.' description: Human readable message with an explanation of how to solve the error. - title: InvalidPayloadErrorTitle properties: errorCode: type: string title: invalid_payload example: invalid_payload description: Error code allows to programatically handle errors. message: type: string title: Invalid payload. example: Invalid payload. description: Human readable message. resolution: type: string title: Correct payload and submit again. example: Correct payload and submit again. description: Human readable message with an explanation of how to solve the error. '401': description: Unauthorized content: application/json: schema: example: errorCode: unauthorized_error message: Unauthorized error. resolution: Verify that projectId is correct. title: UnauthorizedErrorErrorTitle properties: errorCode: type: string title: unauthorized_error example: unauthorized_error description: Error code allows to programatically handle errors. message: type: string title: Unauthorized error. example: Unauthorized error. description: Human readable message. resolution: type: string title: Verify that projectId is correct. example: Verify that projectId is correct. description: Human readable message with an explanation of how to solve the error. '409': description: Conflict content: application/json: schema: oneOf: - title: TemplateExistsErrorTitle properties: errorCode: type: string title: template_exists example: template_exists description: Error code allows to programatically handle errors. message: type: string title: Template already exists. example: Template already exists. description: Human readable message. resolution: type: string title: Templates must have unique name and language. Change language or name and submit again. example: Templates must have unique name and language. Change language or name and submit again. description: Human readable message with an explanation of how to solve the error. additionalInformation: type: object title: additionalInformation example: supportedCodes: AF, AR, AZ, BG, BN, CA, CS, DA, DE, EL, EN, EN_GB, EN_US, ES, ES_AR, ES_ES, ES_MX, ET, FA, FI, FIL, FR, GA, GU, HA, HE, HI, HR, HU, ID, IT, JA, KA, KK, KN, KO, KY_KG, LO, LT, LV, MK, ML, MR, MS, NB, NL, PA, PL, PT_BR, PT_PT, RO, RU, RW_RW, SK, SL, SQ, SR, SV, SW, TA, TE, TH, TR, UK, UR, UZ, VI, ZH_CN, ZH_HK, ZH_TW, ZU description: Additional information for error. - title: TemplateNameRecentlyUsedErrorTitle properties: errorCode: type: string title: template_name_recently_used example: template_name_recently_used description: Error code allows to programatically handle errors. message: type: string title: A template with the same name has been deleted within 30 days. example: A template with the same name has been deleted within 30 days. description: Human readable message. resolution: type: string title: Use another "name" for "EN" or wait the required time. example: Use another "name" for "EN" or wait the required time. description: Human readable message with an explanation of how to solve the error. - title: TemplateIncorrectCategoryErrorTitle properties: errorCode: type: string title: template_incorrect_category example: template_incorrect_category description: Error code allows to programatically handle errors. message: type: string title: Template incorrect category. example: Template incorrect category. description: Human readable message. resolution: type: string title: 'Use a category that has been used in another language: "UTILITY".' example: 'Use a category that has been used in another language: "UTILITY".' description: Human readable message with an explanation of how to solve the error. - title: TemplateRestrictedDomainForButtonUrlErrorTitle properties: errorCode: type: string title: template_restricted_Domain_for_button_url example: template_restricted_Domain_for_button_url description: Error code allows to programatically handle errors. message: type: string title: Restricted domain for button url. example: Restricted domain for button url. description: Human readable message. resolution: type: string title: 'Replace any of the following restricted domains: facebook.com, fbcdn.net, instagram.com, tfbnw.net, wa.me, whatsapp.com' example: 'Replace any of the following restricted domains: facebook.com, fbcdn.net, instagram.com, tfbnw.net, wa.me, whatsapp.com' description: Human readable message with an explanation of how to solve the error. - title: FileNotFoundErrorTitle properties: errorCode: type: string title: file_not_found example: file_not_found description: Error code allows to programatically handle errors. message: type: string title: 'details.components[0].headerExample.media.url: file not found.' example: 'details.components[0].headerExample.media.url: file not found.' description: Human readable message. resolution: type: string title: Verify that the url is correct. example: Verify that the url is correct. description: Human readable message with an explanation of how to solve the error. - title: FileSizeTooLargeErrorTitle properties: errorCode: type: string title: file_size_too_large example: file_size_too_large description: Error code allows to programatically handle errors. message: type: string title: 'details.components[0].headerExample.media.url: file size is too large.' example: 'details.components[0].headerExample.media.url: file size is too large.' description: Human readable message. resolution: type: string title: Try again with a smaller file. Max size for `image/jpeg` is 5MB. example: Try again with a smaller file. Max size for `image/jpeg` is 5MB. description: Human readable message with an explanation of how to solve the error. - title: FileUnexpectedErrorErrorTitle properties: errorCode: type: string title: file_unexpected_error example: file_unexpected_error description: Error code allows to programatically handle errors. message: type: string title: 'details.components[0].headerExample.media.url: file unexpected error.' example: 'details.components[0].headerExample.media.url: file unexpected error.' description: Human readable message. resolution: type: string title: The file cannot be handled properly. Please try with another one. example: The file cannot be handled properly. Please try with another one. description: Human readable message with an explanation of how to solve the error. - title: ObjectWithWhatsappBusinessAccountIdDoesNotExistErrorTitle properties: errorCode: type: string title: object_with_whatsapp_business_account_id_does_not_exist example: object_with_whatsapp_business_account_id_does_not_exist description: Error code allows to programatically handle errors. message: type: string title: WhatsApp Business Account does not exist. example: WhatsApp Business Account does not exist. description: Human readable message. resolution: type: string title: Verify that WhatsApp Business ID still exists and contact support. example: Verify that WhatsApp Business ID still exists and contact support. description: Human readable message with an explanation of how to solve the error. - title: TemplateLanguageRecentlyDeletedErrorTitle properties: errorCode: type: string title: template_language_recently_deleted example: template_language_recently_deleted description: Error code allows to programatically handle errors. message: type: string title: A template with the same language has been deleted within 4 weeks. example: A template with the same language has been deleted within 4 weeks. description: Human readable message. resolution: type: string title: Try to create EN content again in 4 weeks or create a new template. example: Try to create EN content again in 4 weeks or create a new template. description: Human readable message with an explanation of how to solve the error. '424': description: FailedDependency content: application/json: schema: oneOf: - title: TemplateLimitReachedErrorTitle properties: errorCode: type: string title: template_limit_reached example: template_limit_reached description: Error code allows to programatically handle errors. message: type: string title: Number of templates has reached the limit. example: Number of templates has reached the limit. description: Human readable message. resolution: type: string title: Delete some templates or reach out to support to increase the template limit. If template is saved as draft, try to submit the template again. If option "saveDraftOnFailure" is specified as "false", try the request again. example: Delete some templates or reach out to support to increase the template limit. If template is saved as draft, try to submit the template again. If option "saveDraftOnFailure" is specified as "false", try the request again. description: Human readable message with an explanation of how to solve the error. - title: TemplateContentAlreadyExistsErrorTitle properties: errorCode: type: string title: template_content_already_exists example: template_content_already_exists description: Error code allows to programatically handle errors. message: type: string title: Template cannot be submitted because the content is the same as the content in another template. example: Template cannot be submitted because the content is the same as the content in another template. description: Human readable message. resolution: type: string title: Use other template or edit template data and submit again. If template is saved as draft, try to submit the template again. If option "saveDraftOnFailure" is specified as "false", try the request again. example: Use other template or edit template data and submit again. If template is saved as draft, try to submit the template again. If option "saveDraftOnFailure" is specified as "false", try the request again. description: Human readable message with an explanation of how to solve the error. - title: TemplateSubmitErrorErrorTitle properties: errorCode: type: string title: template_submit_error example: template_submit_error description: Error code allows to programatically handle errors. message: type: string title: Template submit error. example: Template submit error. description: Human readable message. resolution: type: string title: Please try again later. If template is saved as draft, try to submit the template again. If option "saveDraftOnFailure" is specified as "false", try the request again. example: Please try again later. If template is saved as draft, try to submit the template again. If option "saveDraftOnFailure" is specified as "false", try the request again. description: Human readable message with an explanation of how to solve the error. additionalInformation: type: object title: additionalInformation example: metaError: code: '123' subcode: '123456' message: Invalid parameter description: Character Limit Exceeded reason: field 'name' can't have more than 1,024 characters description: Additional information for error. '429': description: TooManyRequests content: application/json: schema: example: errorCode: whatsapp_business_api_request_limit_exceeded message: WhatsApp business api request limit reached. resolution: WhatsApp business API request limits reached. Please try again later. title: WhatsappBusinessApiRequestLimitExceededErrorTitle properties: errorCode: type: string title: whatsapp_business_api_request_limit_exceeded example: whatsapp_business_api_request_limit_exceeded description: Error code allows to programatically handle errors. message: type: string title: WhatsApp business api request limit reached. example: WhatsApp business api request limit reached. description: Human readable message. resolution: type: string title: WhatsApp business API request limits reached. Please try again later. example: WhatsApp business API request limits reached. Please try again later. description: Human readable message with an explanation of how to solve the error. '500': description: InternalServerError content: application/json: schema: oneOf: - title: TemplateStartSessionForUploadingMediaErrorTitle properties: errorCode: type: string title: template_start_session_for_uploading_media example: template_start_session_for_uploading_media description: Error code allows to programatically handle errors. message: type: string title: Failed to start session for uploading template media example. example: Failed to start session for uploading template media example. description: Human readable message. resolution: type: string title: Please try again later. If template is saved as draft, try to submit the template again. If option "saveDraftOnFailure" is specified as "false", try the request again. example: Please try again later. If template is saved as draft, try to submit the template again. If option "saveDraftOnFailure" is specified as "false", try the request again. description: Human readable message with an explanation of how to solve the error. - title: InternalErrorErrorTitle properties: errorCode: type: string title: internal_error example: internal_error description: Error code allows to programatically handle errors. message: type: string title: Internal server error. example: Internal server error. description: Human readable message. resolution: type: string title: Please wait and try again, if the error persist please contact support. If template is saved as draft, try to submit the template again. If option "saveDraftOnFailure" is specified as "false", try the request again. example: Please wait and try again, if the error persist please contact support. If template is saved as draft, try to submit the template again. If option "saveDraftOnFailure" is specified as "false", try the request again. description: Human readable message with an explanation of how to solve the error. - title: InternalErrorErrorTitle properties: errorCode: type: string title: internal_error example: internal_error description: Error code allows to programatically handle errors. message: type: string title: Internal server error. example: Internal server error. description: Human readable message. resolution: type: string title: Please wait and try again, if the error persist please contact support. example: Please wait and try again, if the error persist please contact support. description: Human readable message with an explanation of how to solve the error. summary: Create a template in project tags: - WhatsApp Templates x-tagAfterOperationSummary: color: white background: green label: GA /v1/projects/{projectId}/whatsapp/templates/{templateName}: get: description: |2- Returns a paginated list of templates for the specified project and name. If no page token is supplied then the first `50` templates are returned in alphabetical order. operationId: TemplatesController_listTemplatesByName_v1 parameters: - name: projectId required: true in: path description: The unique ID of the project. You can find this on the Sinch Dashboard. schema: type: string - name: templateName required: true in: path description: The unique name of the template. schema: type: string - name: pageToken required: false in: query schema: type: string description: The page token if retrieving the next page from a previous query. - name: pageSize required: false in: query schema: type: number minimum: 1 maximum: 1000 description: The page size requested. - name: fieldMask required: false in: query description: Field masks are a way for API callers to list the fields that a request should return. schema: type: array items: $ref: '#/components/schemas/WhatsappTemplateDtoFieldMaskPathsEnum' - name: templateAnalyticsDateRange required: false in: query description: The date range to retrieve template analytics for. Fallback to DAY if none is set. schema: $ref: '#/components/schemas/WhatsappTemplateAnalyticsDateRangesEnum' responses: '200': description: List of templates with the same name content: application/json: schema: oneOf: - $ref: '#/components/schemas/WhatsappTemplateListDto' - $ref: '#/components/schemas/WhatsappPartialTemplateListDto' '400': description: BadRequest content: application/json: schema: oneOf: - title: ProjectNotInitializedErrorTitle properties: errorCode: type: string title: project_not_initialized example: project_not_initialized description: Error code allows to programatically handle errors. message: type: string title: Project not initialized for WhatsApp. example: Project not initialized for WhatsApp. description: Human readable message. resolution: type: string title: Verify that the project ID is correct and that it has been onboarded for WhatsApp. example: Verify that the project ID is correct and that it has been onboarded for WhatsApp. description: Human readable message with an explanation of how to solve the error. - title: InvalidPageSizeErrorTitle properties: errorCode: type: string title: invalid_page_size example: invalid_page_size description: Error code allows to programatically handle errors. message: type: string title: Page size must be numeric. example: Page size must be numeric. description: Human readable message. resolution: type: string title: Use a integer value for pageSize parameter. example: Use a integer value for pageSize parameter. description: Human readable message with an explanation of how to solve the error. - title: InvalidPageTokenErrorTitle properties: errorCode: type: string title: invalid_page_token example: invalid_page_token description: Error code allows to programatically handle errors. message: type: string title: Invalid page token. example: Invalid page token. description: Human readable message. resolution: type: string title: The page token to use is provided in the previous query response, for new queries simply leave this field undefined. example: The page token to use is provided in the previous query response, for new queries simply leave this field undefined. description: Human readable message with an explanation of how to solve the error. - title: InvalidFieldsErrorTitle properties: errorCode: type: string title: invalid_fields example: invalid_fields description: Error code allows to programatically handle errors. message: type: string title: Invalid fields. example: Invalid fields. description: Human readable message. resolution: type: string title: Verify that the fields used are supported by the Provisioning API. example: Verify that the fields used are supported by the Provisioning API. description: Human readable message with an explanation of how to solve the error. additionalInformation: type: object title: additionalInformation example: supportedCodes: whatsappId, state, name, language, category, rejectionCode, qualityScore, changes, changes.status, changes.allowCategoryChange, changes.details, changes.details.components, changes.details.components.0.type, changes.details.components.0.format, changes.details.components.0.text, changes.details.components.0.example, changes.details.components.0.example.url, changes.details.components.0.examples, changes.details.components.0.addSecurityRecommendation, changes.details.components.0.codeExpirationMinutes, changes.details.components.0.buttons, changes.details.components.0.buttons.0.type, changes.details.components.0.buttons.0.text, changes.details.components.0.buttons.0.phoneNumber, changes.details.components.0.buttons.0.url, changes.details.components.0.buttons.0.example, changes.details.components.0.buttons.0.otpType, changes.details.components.0.buttons.0.autofillText, changes.details.components.0.buttons.0.packageName, changes.details.components.0.buttons.0.signatureHash, changes.details.components.0.buttons.0.supportedApps, changes.details.components.0.buttons.0.supportedApps.0.packageName, changes.details.components.0.buttons.0.supportedApps.0.signatureHash, changes.details.components.0.buttons.0.zeroTapTermsAccepted, changes.details.components.0.buttons.0.flowId, changes.details.components.0.buttons.0.flowAction, changes.details.components.0.buttons.0.navigateScreen, changes.details.messageSendTtlSeconds, details, details.components, details.components.0.type, details.components.0.format, details.components.0.text, details.components.0.example, details.components.0.example.url, details.components.0.examples, details.components.0.addSecurityRecommendation, details.components.0.codeExpirationMinutes, details.components.0.buttons, details.components.0.buttons.0.type, details.components.0.buttons.0.text, details.components.0.buttons.0.phoneNumber, details.components.0.buttons.0.url, details.components.0.buttons.0.example, details.components.0.buttons.0.otpType, details.components.0.buttons.0.autofillText, details.components.0.buttons.0.packageName, details.components.0.buttons.0.signatureHash, details.components.0.buttons.0.supportedApps, details.components.0.buttons.0.supportedApps.0.packageName, details.components.0.buttons.0.supportedApps.0.signatureHash, details.components.0.buttons.0.zeroTapTermsAccepted, details.components.0.buttons.0.flowId, details.components.0.buttons.0.flowAction, details.components.0.buttons.0.navigateScreen, details.messageSendTtlSeconds, analytics, analytics.0.sent, analytics.0.delivered, analytics.0.read, analytics.0.start, analytics.0.end, analytics.0.buttons, analytics.0.buttons.0.type, analytics.0.buttons.0.content, analytics.0.buttons.0.clicks description: Additional information for error. '401': description: Unauthorized content: application/json: schema: example: errorCode: unauthorized_error message: Unauthorized error. resolution: Verify that projectId is correct. title: UnauthorizedErrorErrorTitle properties: errorCode: type: string title: unauthorized_error example: unauthorized_error description: Error code allows to programatically handle errors. message: type: string title: Unauthorized error. example: Unauthorized error. description: Human readable message. resolution: type: string title: Verify that projectId is correct. example: Verify that projectId is correct. description: Human readable message with an explanation of how to solve the error. '404': description: NotFound content: application/json: schema: example: errorCode: template_not_found message: Template not found. resolution: Verify that the parameters are correct. title: TemplateNotFoundErrorTitle properties: errorCode: type: string title: template_not_found example: template_not_found description: Error code allows to programatically handle errors. message: type: string title: Template not found. example: Template not found. description: Human readable message. resolution: type: string title: Verify that the parameters are correct. example: Verify that the parameters are correct. description: Human readable message with an explanation of how to solve the error. '500': description: InternalServerError content: application/json: schema: example: errorCode: internal_error message: Internal server error. resolution: Please wait and try again, if the error persist please contact support. title: InternalErrorErrorTitle properties: errorCode: type: string title: internal_error example: internal_error description: Error code allows to programatically handle errors. message: type: string title: Internal server error. example: Internal server error. description: Human readable message. resolution: type: string title: Please wait and try again, if the error persist please contact support. example: Please wait and try again, if the error persist please contact support. description: Human readable message with an explanation of how to solve the error. summary: List all templates for a specific name tags: - WhatsApp Templates x-tagAfterOperationSummary: color: white background: green label: GA delete: description: |2 Delete template that matches the name. If message templates with the same name exists in multiple languages, all those templates will also be deleted. Once deleted the name can not be used for new message templates for 30 days. Use a different name to create future templates during that time period. Messages that have been sent with the deleted template, but not yet delivered, will be attempted to be deliver for 30 days from the time of the message. operationId: TemplatesController_deleteTemplatesByName_v1 parameters: - name: projectId required: true in: path description: The unique ID of the project. You can find this on the Sinch Dashboard. schema: type: string - name: templateName required: true in: path description: The unique name of the template. schema: type: string responses: '204': description: Template(s) deleted '400': description: BadRequest content: application/json: schema: oneOf: - title: ProjectNotInitializedErrorTitle properties: errorCode: type: string title: project_not_initialized example: project_not_initialized description: Error code allows to programatically handle errors. message: type: string title: Project not initialized for WhatsApp. example: Project not initialized for WhatsApp. description: Human readable message. resolution: type: string title: Verify that the project ID is correct and that it has been onboarded for WhatsApp. example: Verify that the project ID is correct and that it has been onboarded for WhatsApp. description: Human readable message with an explanation of how to solve the error. - title: TemplateInvalidLanguageCodeErrorTitle properties: errorCode: type: string title: template_invalid_language_code example: template_invalid_language_code description: Error code allows to programatically handle errors. message: type: string title: Invalid language code. example: Invalid language code. description: Human readable message. resolution: type: string title: Verify that the language code used is supported by the Provisioning API and WhatsApp. example: Verify that the language code used is supported by the Provisioning API and WhatsApp. description: Human readable message with an explanation of how to solve the error. additionalInformation: type: object title: additionalInformation example: supportedCodes: AF, AR, AZ, BG, BN, CA, CS, DA, DE, EL, EN, EN_GB, EN_US, ES, ES_AR, ES_ES, ES_MX, ET, FA, FI, FIL, FR, GA, GU, HA, HE, HI, HR, HU, ID, IT, JA, KA, KK, KN, KO, KY_KG, LO, LT, LV, MK, ML, MR, MS, NB, NL, PA, PL, PT_BR, PT_PT, RO, RU, RW_RW, SK, SL, SQ, SR, SV, SW, TA, TE, TH, TR, UK, UR, UZ, VI, ZH_CN, ZH_HK, ZH_TW, ZU description: Additional information for error. '401': description: Unauthorized content: application/json: schema: example: errorCode: unauthorized_error message: Unauthorized error. resolution: Verify that projectId is correct. title: UnauthorizedErrorErrorTitle properties: errorCode: type: string title: unauthorized_error example: unauthorized_error description: Error code allows to programatically handle errors. message: type: string title: Unauthorized error. example: Unauthorized error. description: Human readable message. resolution: type: string title: Verify that projectId is correct. example: Verify that projectId is correct. description: Human readable message with an explanation of how to solve the error. '404': description: NotFound content: application/json: schema: example: errorCode: template_not_found message: Template not found. resolution: Verify that the parameters are correct. title: TemplateNotFoundErrorTitle properties: errorCode: type: string title: template_not_found example: template_not_found description: Error code allows to programatically handle errors. message: type: string title: Template not found. example: Template not found. description: Human readable message. resolution: type: string title: Verify that the parameters are correct. example: Verify that the parameters are correct. description: Human readable message with an explanation of how to solve the error. '429': description: TooManyRequests content: application/json: schema: example: errorCode: whatsapp_business_api_request_limit_exceeded message: WhatsApp business api request limit reached. resolution: WhatsApp business API request limits reached. Please try again later. title: WhatsappBusinessApiRequestLimitExceededErrorTitle properties: errorCode: type: string title: whatsapp_business_api_request_limit_exceeded example: whatsapp_business_api_request_limit_exceeded description: Error code allows to programatically handle errors. message: type: string title: WhatsApp business api request limit reached. example: WhatsApp business api request limit reached. description: Human readable message. resolution: type: string title: WhatsApp business API request limits reached. Please try again later. example: WhatsApp business API request limits reached. Please try again later. description: Human readable message with an explanation of how to solve the error. '500': description: InternalServerError content: application/json: schema: example: errorCode: internal_error message: Internal server error. resolution: Please wait and try again, if the error persist please contact support. title: InternalErrorErrorTitle properties: errorCode: type: string title: internal_error example: internal_error description: Error code allows to programatically handle errors. message: type: string title: Internal server error. example: Internal server error. description: Human readable message. resolution: type: string title: Please wait and try again, if the error persist please contact support. example: Please wait and try again, if the error persist please contact support. description: Human readable message with an explanation of how to solve the error. summary: Delete template by name tags: - WhatsApp Templates x-tagAfterOperationSummary: color: white background: green label: GA /v1/projects/{projectId}/whatsapp/templates/{templateName}/languages/{languageCode}: get: description: |2- Returns a template for a project, with the specified name and language. operationId: TemplatesController_getTemplate_v1 parameters: - name: projectId required: true in: path description: The unique ID of the project. You can find this on the Sinch Dashboard. schema: type: string - name: templateName required: true in: path description: The unique name of the template. schema: type: string - name: languageCode required: true in: path description: The language code of the specific template. schema: $ref: '#/components/schemas/WhatsappTemplateLanguagesEnum' - name: fieldMask required: false in: query description: Field masks are a way for API callers to list the fields that a request should return. schema: type: array items: $ref: '#/components/schemas/WhatsappTemplateDtoFieldMaskPathsEnum' - name: templateAnalyticsDateRange required: false in: query description: The date range to retrieve template analytics for. Fallback to DAY if none is set. schema: $ref: '#/components/schemas/WhatsappTemplateAnalyticsDateRangesEnum' responses: '200': description: Template content: application/json: schema: oneOf: - $ref: '#/components/schemas/WhatsappTemplateDto' - $ref: '#/components/schemas/WhatsappPartialTemplateDto' '400': description: BadRequest content: application/json: schema: oneOf: - title: ProjectNotInitializedErrorTitle properties: errorCode: type: string title: project_not_initialized example: project_not_initialized description: Error code allows to programatically handle errors. message: type: string title: Project not initialized for WhatsApp. example: Project not initialized for WhatsApp. description: Human readable message. resolution: type: string title: Verify that the project ID is correct and that it has been onboarded for WhatsApp. example: Verify that the project ID is correct and that it has been onboarded for WhatsApp. description: Human readable message with an explanation of how to solve the error. - title: TemplateInvalidLanguageCodeErrorTitle properties: errorCode: type: string title: template_invalid_language_code example: template_invalid_language_code description: Error code allows to programatically handle errors. message: type: string title: Invalid language code. example: Invalid language code. description: Human readable message. resolution: type: string title: Verify that the language code used is supported by the Provisioning API and WhatsApp. example: Verify that the language code used is supported by the Provisioning API and WhatsApp. description: Human readable message with an explanation of how to solve the error. additionalInformation: type: object title: additionalInformation example: supportedCodes: AF, AR, AZ, BG, BN, CA, CS, DA, DE, EL, EN, EN_GB, EN_US, ES, ES_AR, ES_ES, ES_MX, ET, FA, FI, FIL, FR, GA, GU, HA, HE, HI, HR, HU, ID, IT, JA, KA, KK, KN, KO, KY_KG, LO, LT, LV, MK, ML, MR, MS, NB, NL, PA, PL, PT_BR, PT_PT, RO, RU, RW_RW, SK, SL, SQ, SR, SV, SW, TA, TE, TH, TR, UK, UR, UZ, VI, ZH_CN, ZH_HK, ZH_TW, ZU description: Additional information for error. - title: InvalidFieldsErrorTitle properties: errorCode: type: string title: invalid_fields example: invalid_fields description: Error code allows to programatically handle errors. message: type: string title: Invalid fields. example: Invalid fields. description: Human readable message. resolution: type: string title: Verify that the fields used are supported by the Provisioning API. example: Verify that the fields used are supported by the Provisioning API. description: Human readable message with an explanation of how to solve the error. additionalInformation: type: object title: additionalInformation example: supportedCodes: whatsappId, state, name, language, category, rejectionCode, qualityScore, changes, changes.status, changes.allowCategoryChange, changes.details, changes.details.components, changes.details.components.0.type, changes.details.components.0.format, changes.details.components.0.text, changes.details.components.0.example, changes.details.components.0.example.url, changes.details.components.0.examples, changes.details.components.0.addSecurityRecommendation, changes.details.components.0.codeExpirationMinutes, changes.details.components.0.buttons, changes.details.components.0.buttons.0.type, changes.details.components.0.buttons.0.text, changes.details.components.0.buttons.0.phoneNumber, changes.details.components.0.buttons.0.url, changes.details.components.0.buttons.0.example, changes.details.components.0.buttons.0.otpType, changes.details.components.0.buttons.0.autofillText, changes.details.components.0.buttons.0.packageName, changes.details.components.0.buttons.0.signatureHash, changes.details.components.0.buttons.0.supportedApps, changes.details.components.0.buttons.0.supportedApps.0.packageName, changes.details.components.0.buttons.0.supportedApps.0.signatureHash, changes.details.components.0.buttons.0.zeroTapTermsAccepted, changes.details.components.0.buttons.0.flowId, changes.details.components.0.buttons.0.flowAction, changes.details.components.0.buttons.0.navigateScreen, changes.details.messageSendTtlSeconds, details, details.components, details.components.0.type, details.components.0.format, details.components.0.text, details.components.0.example, details.components.0.example.url, details.components.0.examples, details.components.0.addSecurityRecommendation, details.components.0.codeExpirationMinutes, details.components.0.buttons, details.components.0.buttons.0.type, details.components.0.buttons.0.text, details.components.0.buttons.0.phoneNumber, details.components.0.buttons.0.url, details.components.0.buttons.0.example, details.components.0.buttons.0.otpType, details.components.0.buttons.0.autofillText, details.components.0.buttons.0.packageName, details.components.0.buttons.0.signatureHash, details.components.0.buttons.0.supportedApps, details.components.0.buttons.0.supportedApps.0.packageName, details.components.0.buttons.0.supportedApps.0.signatureHash, details.components.0.buttons.0.zeroTapTermsAccepted, details.components.0.buttons.0.flowId, details.components.0.buttons.0.flowAction, details.components.0.buttons.0.navigateScreen, details.messageSendTtlSeconds, analytics, analytics.0.sent, analytics.0.delivered, analytics.0.read, analytics.0.start, analytics.0.end, analytics.0.buttons, analytics.0.buttons.0.type, analytics.0.buttons.0.content, analytics.0.buttons.0.clicks description: Additional information for error. '401': description: Unauthorized content: application/json: schema: example: errorCode: unauthorized_error message: Unauthorized error. resolution: Verify that projectId is correct. title: UnauthorizedErrorErrorTitle properties: errorCode: type: string title: unauthorized_error example: unauthorized_error description: Error code allows to programatically handle errors. message: type: string title: Unauthorized error. example: Unauthorized error. description: Human readable message. resolution: type: string title: Verify that projectId is correct. example: Verify that projectId is correct. description: Human readable message with an explanation of how to solve the error. '404': description: NotFound content: application/json: schema: example: errorCode: template_not_found message: Template not found. resolution: Verify that the parameters are correct. title: TemplateNotFoundErrorTitle properties: errorCode: type: string title: template_not_found example: template_not_found description: Error code allows to programatically handle errors. message: type: string title: Template not found. example: Template not found. description: Human readable message. resolution: type: string title: Verify that the parameters are correct. example: Verify that the parameters are correct. description: Human readable message with an explanation of how to solve the error. '500': description: InternalServerError content: application/json: schema: example: errorCode: internal_error message: Internal server error. resolution: Please wait and try again, if the error persist please contact support. title: InternalErrorErrorTitle properties: errorCode: type: string title: internal_error example: internal_error description: Error code allows to programatically handle errors. message: type: string title: Internal server error. example: Internal server error. description: Human readable message. resolution: type: string title: Please wait and try again, if the error persist please contact support. example: Please wait and try again, if the error persist please contact support. description: Human readable message with an explanation of how to solve the error. summary: Get template in project tags: - WhatsApp Templates x-tagAfterOperationSummary: color: white background: green label: GA delete: description: |2- Delete a template by name and language. Please note that by default only draft is removed. Use query parameter `deleteSubmitted=true` to also remove the submitted template. Once an approved template is deleted, the template cannot be recreated again with this name and language for 30 days. Consequently, be aware that you must use a different name to create template for this language within this 30 days long period. If you need the template in this language soon, update the submitted template for a specific language instead of trying to delete and recreate it again. operationId: TemplatesController_deleteTemplateByNameAndLanguage_v1 parameters: - name: projectId required: true in: path description: The unique ID of the project. You can find this on the Sinch Dashboard. schema: type: string - name: templateName required: true in: path description: The unique name of the template. schema: type: string - name: languageCode required: true in: path description: The language code of the specific template. schema: $ref: '#/components/schemas/WhatsappTemplateLanguagesEnum' - name: deleteSubmitted required: false in: query description: Set this flag to true if you want to delete a template already submitted to Meta. Otherwise, it defaults to false, meaning that it deletes a template in "draft" state only, and throws an error if you attempt to delete a submitted template. schema: default: false type: boolean responses: '204': description: Template deleted '400': description: BadRequest content: application/json: schema: oneOf: - title: ProjectNotInitializedErrorTitle properties: errorCode: type: string title: project_not_initialized example: project_not_initialized description: Error code allows to programatically handle errors. message: type: string title: Project not initialized for WhatsApp. example: Project not initialized for WhatsApp. description: Human readable message. resolution: type: string title: Verify that the project ID is correct and that it has been onboarded for WhatsApp. example: Verify that the project ID is correct and that it has been onboarded for WhatsApp. description: Human readable message with an explanation of how to solve the error. - title: TemplateInvalidLanguageCodeErrorTitle properties: errorCode: type: string title: template_invalid_language_code example: template_invalid_language_code description: Error code allows to programatically handle errors. message: type: string title: Invalid language code. example: Invalid language code. description: Human readable message. resolution: type: string title: Verify that the language code used is supported by the Provisioning API and WhatsApp. example: Verify that the language code used is supported by the Provisioning API and WhatsApp. description: Human readable message with an explanation of how to solve the error. additionalInformation: type: object title: additionalInformation example: supportedCodes: AF, AR, AZ, BG, BN, CA, CS, DA, DE, EL, EN, EN_GB, EN_US, ES, ES_AR, ES_ES, ES_MX, ET, FA, FI, FIL, FR, GA, GU, HA, HE, HI, HR, HU, ID, IT, JA, KA, KK, KN, KO, KY_KG, LO, LT, LV, MK, ML, MR, MS, NB, NL, PA, PL, PT_BR, PT_PT, RO, RU, RW_RW, SK, SL, SQ, SR, SV, SW, TA, TE, TH, TR, UK, UR, UZ, VI, ZH_CN, ZH_HK, ZH_TW, ZU description: Additional information for error. '401': description: Unauthorized content: application/json: schema: example: errorCode: unauthorized_error message: Unauthorized error. resolution: Verify that projectId is correct. title: UnauthorizedErrorErrorTitle properties: errorCode: type: string title: unauthorized_error example: unauthorized_error description: Error code allows to programatically handle errors. message: type: string title: Unauthorized error. example: Unauthorized error. description: Human readable message. resolution: type: string title: Verify that projectId is correct. example: Verify that projectId is correct. description: Human readable message with an explanation of how to solve the error. '404': description: NotFound content: application/json: schema: oneOf: - title: TemplateNotFoundErrorTitle properties: errorCode: type: string title: template_not_found example: template_not_found description: Error code allows to programatically handle errors. message: type: string title: Template not found. example: Template not found. description: Human readable message. resolution: type: string title: Verify that the parameters are correct. example: Verify that the parameters are correct. description: Human readable message with an explanation of how to solve the error. - title: TemplateChangesNotFoundErrorTitle properties: errorCode: type: string title: template_changes_not_found example: template_changes_not_found description: Error code allows to programatically handle errors. message: type: string title: Template changes not found. example: Template changes not found. description: Human readable message. resolution: type: string title: Verify that the template has pending changes. example: Verify that the template has pending changes. description: Human readable message with an explanation of how to solve the error. '409': description: Conflict content: application/json: schema: example: errorCode: template_not_deletable_due_to_input_config message: Template is not deletable due to input config. resolution: Only draft templates will be deleted by name and language code if `deleteSubmitted` is `false` or not provided. Be aware that templates deleted for a language cannot be recreated for 30 days with the same template name. If you need the template in this language soon, update the submitted template for the language instead of trying to delete and recreate it again. title: TemplateNotDeletableDueToInputConfigErrorTitle properties: errorCode: type: string title: template_not_deletable_due_to_input_config example: template_not_deletable_due_to_input_config description: Error code allows to programatically handle errors. message: type: string title: Template is not deletable due to input config. example: Template is not deletable due to input config. description: Human readable message. resolution: type: string title: Only draft templates will be deleted by name and language code if `deleteSubmitted` is `false` or not provided. Be aware that templates deleted for a language cannot be recreated for 30 days with the same template name. If you need the template in this language soon, update the submitted template for the language instead of trying to delete and recreate it again. example: Only draft templates will be deleted by name and language code if `deleteSubmitted` is `false` or not provided. Be aware that templates deleted for a language cannot be recreated for 30 days with the same template name. If you need the template in this language soon, update the submitted template for the language instead of trying to delete and recreate it again. description: Human readable message with an explanation of how to solve the error. '500': description: InternalServerError content: application/json: schema: example: errorCode: internal_error message: Internal server error. resolution: Please wait and try again, if the error persist please contact support. title: InternalErrorErrorTitle properties: errorCode: type: string title: internal_error example: internal_error description: Error code allows to programatically handle errors. message: type: string title: Internal server error. example: Internal server error. description: Human readable message. resolution: type: string title: Please wait and try again, if the error persist please contact support. example: Please wait and try again, if the error persist please contact support. description: Human readable message with an explanation of how to solve the error. summary: Delete template by name and language tags: - WhatsApp Templates x-tagAfterOperationSummary: color: white background: green label: GA patch: callbacks: Comment: '{$request.body#webhooks.target}': post: summary: WhatsApp Template received a comment description: |2- Callback sent when a comment is placed on a template. parameters: - in: header name: x-sinch-webhook-signature schema: type: string format: uuid example: - in: header name: x-sinch-webhook-signature-algorithm schema: type: string enum: - HmacSHA256 uniqueItems: false example: HmacSHA256 - in: header name: x-sinch-webhook-signature-nonce schema: type: string example: 01EAW2BNWCG9DC13RS582V0ZQ3 - in: header name: x-sinch-webhook-signature-timestamp schema: type: string format: timestamp example: '1592227387' requestBody: content: application/json: schema: type: object properties: type: description: Type of event, in this case `WHATSAPP_TEMPLATE_COMMENT_ADDED`. type: string payload: description: Template at time of callback. allOf: - $ref: '#/components/schemas/WhatsappTemplateDto' comment: description: Comment for template. type: string required: - type - payload example: type: WHATSAPP_TEMPLATE_COMMENT_ADDED payload: name: My WhatsApp Template category: UTILITY language: EN_US qualityScore: QUALITY_SCORE_GREEN changes: status: DRAFT details: components: - type: HEADER format: TEXT text: Save {{1}}% on your next purchase! example: '20' - type: HEADER format: DOCUMENT example: url: https://example.com/photos/1.png - type: HEADER format: LOCATION - type: BODY text: Good morning {{1}}, your package has arrived. examples: - Mr. Smith addSecurityRecommendation: true - type: FOOTER text: To track your order please click the 'Track Your Order' button codeExpirationMinutes: 5 - type: BUTTONS buttons: - type: PHONE_NUMBER text: Example text. phoneNumber: +48 777 777777 - type: URL text: Example test url: https://www.my-website.com?name={{1}} example: https://www.my-website.com?name=john - type: QUICK_REPLY text: Track Your Order - type: OTP otpType: COPY_CODE text: Example text. - type: CAROUSEL cards: - components: - type: HEADER format: IMAGE example: url: https://example.com/photos/1.png - type: BODY text: Good morning {{1}}, your package has arrived. examples: - Mr. Smith - type: BUTTONS buttons: - type: URL text: Example test url: https://www.my-website.com?name={{1}} example: https://www.my-website.com?name=john - type: QUICK_REPLY text: Track Your Order - type: PHONE_NUMBER text: Example text. phoneNumber: +48 777 777777 messageSendTtlSeconds: 60 analytics: [] responses: '200': description: Response to callback will be ignored. The call will retry if unsuccessful. Approved: '{$request.body#webhooks.target}': post: summary: WhatsApp Template approved description: |2- Callback sent when a template is approved. parameters: - in: header name: x-sinch-webhook-signature schema: type: string format: uuid example: - in: header name: x-sinch-webhook-signature-algorithm schema: type: string enum: - HmacSHA256 uniqueItems: false example: HmacSHA256 - in: header name: x-sinch-webhook-signature-nonce schema: type: string example: 01EAW2BNWCG9DC13RS582V0ZQ3 - in: header name: x-sinch-webhook-signature-timestamp schema: type: string format: timestamp example: '1592227387' requestBody: content: application/json: schema: type: object properties: type: description: Type of event, in this case `WHATSAPP_TEMPLATE_APPROVED`. type: string payload: description: Template at time of callback. allOf: - $ref: '#/components/schemas/WhatsappTemplateDto' comment: description: Comment for template. type: string required: - type - payload example: type: WHATSAPP_TEMPLATE_APPROVED payload: whatsappId: '123456' name: My WhatsApp Template state: APPROVED category: UTILITY language: EN_US qualityScore: QUALITY_SCORE_GREEN details: components: - type: HEADER format: TEXT text: Save {{1}}% on your next purchase! example: '20' messageSendTtlSeconds: 60 analytics: [] responses: '200': description: Response to callback will be ignored. The call will retry if unsuccessful. Rejected: '{$request.body#webhooks.target}': post: summary: WhatsApp Template rejected description: |2- Callback sent when a template is rejected. parameters: - in: header name: x-sinch-webhook-signature schema: type: string format: uuid example: - in: header name: x-sinch-webhook-signature-algorithm schema: type: string enum: - HmacSHA256 uniqueItems: false example: HmacSHA256 - in: header name: x-sinch-webhook-signature-nonce schema: type: string example: 01EAW2BNWCG9DC13RS582V0ZQ3 - in: header name: x-sinch-webhook-signature-timestamp schema: type: string format: timestamp example: '1592227387' requestBody: content: application/json: schema: type: object properties: type: description: Type of event, in this case `WHATSAPP_TEMPLATE_REJECTED`. type: string payload: description: Template at time of callback. allOf: - $ref: '#/components/schemas/WhatsappTemplateDto' comment: description: Comment for template. type: string required: - type - payload example: type: WHATSAPP_TEMPLATE_REJECTED payload: name: My WhatsApp Template state: REJECTED category: UTILITY language: EN_US qualityScore: QUALITY_SCORE_GREEN details: components: - type: HEADER format: TEXT text: Save {{1}}% on your next purchase! example: '20' messageSendTtlSeconds: 60 analytics: [] responses: '200': description: Response to callback will be ignored. The call will retry if unsuccessful. StatusUpdated: '{$request.body#webhooks.target}': post: summary: WhatsApp Template status updated description: |2- Callback sent when a template status in changed to `DISABLED`, `FLAGGED`, `PAUSED`, `REINSTATED` or `UNPAUSED`. parameters: - in: header name: x-sinch-webhook-signature schema: type: string format: uuid example: - in: header name: x-sinch-webhook-signature-algorithm schema: type: string enum: - HmacSHA256 uniqueItems: false example: HmacSHA256 - in: header name: x-sinch-webhook-signature-nonce schema: type: string example: 01EAW2BNWCG9DC13RS582V0ZQ3 - in: header name: x-sinch-webhook-signature-timestamp schema: type: string format: timestamp example: '1592227387' requestBody: content: application/json: schema: type: object properties: type: description: Type of event, in this case `WHATSAPP_TEMPLATE_STATUS_UPDATED`. type: string payload: description: Template at time of callback. allOf: - $ref: '#/components/schemas/WhatsappTemplateDto' newState: description: New state for template. type: string enum: - DISABLED - FLAGGED - PAUSED - REINSTATED - UNPAUSED comment: description: Comment for template. type: string required: - type - payload - newState example: type: WHATSAPP_TEMPLATE_STATUS_UPDATED payload: whatsappId: '123456' name: My WhatsApp Template state: PAUSED category: UTILITY language: EN_US qualityScore: QUALITY_SCORE_GREEN details: components: - type: HEADER format: TEXT text: Save {{1}}% on your next purchase! example: '20' messageSendTtlSeconds: 60 analytics: [] newState: PAUSED responses: '200': description: Response to callback will be ignored. The call will retry if unsuccessful. Deleted: '{$request.body#webhooks.target}': post: summary: WhatsApp Template deleted description: Callback sent when a template is deleted. parameters: - in: header name: x-sinch-webhook-signature schema: type: string format: uuid example: - in: header name: x-sinch-webhook-signature-algorithm schema: type: string enum: - HmacSHA256 uniqueItems: false example: HmacSHA256 - in: header name: x-sinch-webhook-signature-nonce schema: type: string example: 01EAW2BNWCG9DC13RS582V0ZQ3 - in: header name: x-sinch-webhook-signature-timestamp schema: type: string format: timestamp example: '1592227387' requestBody: content: application/json: schema: type: object properties: type: description: Type of event, in this case WHATSAPP_TEMPLATE_DELETED. type: string required: - type example: type: WHATSAPP_TEMPLATE_DELETED payload: whatsappId: '123456' name: My WhatsApp Template category: UTILITY language: EN_US qualityScore: QUALITY_SCORE_GREEN details: components: - type: HEADER format: TEXT text: Save {{1}}% on your next purchase! example: '20' messageSendTtlSeconds: 60 analytics: [] responses: '200': description: Response to callback will be ignored. The call will retry if unsuccessful. QualityScoreUpdated: '{$request.body#webhooks.target}': post: summary: WhatsApp Template quality score updated description: |2- Callback sent when a template quality score changed. parameters: - in: header name: x-sinch-webhook-signature schema: type: string format: uuid example: - in: header name: x-sinch-webhook-signature-algorithm schema: type: string enum: - HmacSHA256 uniqueItems: false example: HmacSHA256 - in: header name: x-sinch-webhook-signature-nonce schema: type: string example: 01EAW2BNWCG9DC13RS582V0ZQ3 - in: header name: x-sinch-webhook-signature-timestamp schema: type: string format: timestamp example: '1592227387' requestBody: content: application/json: schema: type: object properties: type: description: Type of event, in this case `WHATSAPP_TEMPLATE_QUALITY_SCORE_UPDATED`. type: string payload: description: Template at time of callback. allOf: - $ref: '#/components/schemas/WhatsappTemplateDto' comment: description: Comment for template. type: string required: - type - payload example: type: WHATSAPP_TEMPLATE_QUALITY_SCORE_UPDATED payload: whatsappId: '123456' name: My WhatsApp Template state: APPROVED category: UTILITY language: EN_US qualityScore: QUALITY_SCORE_GREEN details: components: - type: HEADER format: TEXT text: Save {{1}}% on your next purchase! example: '20' messageSendTtlSeconds: 60 analytics: [] responses: '200': description: Response to callback will be ignored. The call will retry if unsuccessful. CategoryUpdated: '{$request.body#webhooks.target}': post: summary: WhatsApp Template category updated description: |2- Callback sent when a templates category is changed. parameters: - in: header name: x-sinch-webhook-signature schema: type: string format: uuid example: - in: header name: x-sinch-webhook-signature-algorithm schema: type: string enum: - HmacSHA256 uniqueItems: false example: HmacSHA256 - in: header name: x-sinch-webhook-signature-nonce schema: type: string example: 01EAW2BNWCG9DC13RS582V0ZQ3 - in: header name: x-sinch-webhook-signature-timestamp schema: type: string format: timestamp example: '1592227387' requestBody: content: application/json: schema: type: object properties: type: description: Type of event, in this case `WHATSAPP_TEMPLATE_CATEGORY_UPDATED`. type: string payload: description: Template at time of callback. allOf: - $ref: '#/components/schemas/WhatsappTemplateDto' comment: description: Comment for template. type: string required: - type - payload example: type: WHATSAPP_TEMPLATE_CATEGORY_UPDATED payload: whatsappId: '123456' name: My WhatsApp Template state: APPROVED category: UTILITY language: EN_US qualityScore: QUALITY_SCORE_GREEN details: components: - type: HEADER format: TEXT text: Save {{1}}% on your next purchase! example: '20' messageSendTtlSeconds: 60 analytics: [] responses: '200': description: Response to callback will be ignored. The call will retry if unsuccessful. FutureCategoryUpdate: '{$request.body#webhooks.target}': post: summary: WhatsApp Template category coming update description: |2- Callback sent when a templates category coming to be changed. parameters: - in: header name: x-sinch-webhook-signature schema: type: string format: uuid example: - in: header name: x-sinch-webhook-signature-algorithm schema: type: string enum: - HmacSHA256 uniqueItems: false example: HmacSHA256 - in: header name: x-sinch-webhook-signature-nonce schema: type: string example: 01EAW2BNWCG9DC13RS582V0ZQ3 - in: header name: x-sinch-webhook-signature-timestamp schema: type: string format: timestamp example: '1592227387' requestBody: content: application/json: schema: type: object properties: type: description: Type of event, in this case `WHATSAPP_TEMPLATE_CATEGORY_FUTURE_UPDATE`. type: string payload: description: Template at time of callback. allOf: - $ref: '#/components/schemas/WhatsappTemplateDto' futureCategory: description: Future category for template. type: string enum: - AUTHENTICATION - MARKETING - UTILITY - UNRECOGNIZED comment: description: Comment for template. type: string required: - type - payload - futureCategory example: type: WHATSAPP_TEMPLATE_CATEGORY_FUTURE_UPDATE payload: whatsappId: '123456' name: My WhatsApp Template state: APPROVED category: UTILITY language: EN_US qualityScore: QUALITY_SCORE_GREEN details: components: - type: HEADER format: TEXT text: Save {{1}}% on your next purchase! example: '20' messageSendTtlSeconds: 60 analytics: [] futureCategory: MARKETING responses: '200': description: Response to callback will be ignored. The call will retry if unsuccessful. description: |2 Updates a template DRAFT. Note that it is not possible to update all fields for a template, if you want to update a field that is not supported you will need to delete the draft and create a new one. Update a template REJECTED / APPROVED / PAUSED / DISABLED It is possible to update templates that have been rejected, approved, paused or disabled, we will automatically set the status to draft when update a rejected template. operationId: TemplatesController_updateTemplate_v1 parameters: - name: projectId required: true in: path description: The unique ID of the project. You can find this on the Sinch Dashboard. schema: type: string - name: templateName required: true in: path description: The unique name of the template. schema: type: string - name: languageCode required: true in: path description: The language code of the specific template. schema: $ref: '#/components/schemas/WhatsappTemplateLanguagesEnum' requestBody: required: true description: Supported template fields to update. content: application/json: schema: $ref: '#/components/schemas/WhatsappUpdateTemplateInputDto' examples: value: summary: Body request description: |2- Example body request to update a template. value: details: components: - type: HEADER format: LOCATION - type: HEADER format: TEXT text: Save {{1}}% on your next purchase! example: '20' - type: HEADER format: DOCUMENT example: url: https://example.com/photos/1.png - type: BODY text: Good morning {{1}}, your package has arrived. examples: - Mr. Smith addSecurityRecommendation: true - type: FOOTER text: To track your order please click the 'Track Your Order' button codeExpirationMinutes: 5 - type: BUTTONS buttons: - type: PHONE_NUMBER text: Example text. phoneNumber: +48 777 777777 - type: URL text: Example test url: https://www.my-website.com?name={{1}} example: https://www.my-website.com?name=john - type: QUICK_REPLY text: Track Your Order - type: OTP otpType: COPY_CODE text: Example text. - type: FLOW text: Start Flow flowId: flow-id navigateScreen: QUESTION_ONE flowAction: NAVIGATE - type: CAROUSEL cards: - components: - type: HEADER format: IMAGE example: url: https://example.com/photos/1.png - type: BODY text: Good morning {{1}}, your package has arrived. examples: - Mr. Smith - type: BUTTONS buttons: - type: URL text: Example test url: https://www.my-website.com?name={{1}} example: https://www.my-website.com?name=john - type: QUICK_REPLY text: Track Your Order - type: PHONE_NUMBER text: Example text. phoneNumber: +48 777 777777 messageSendTtlSeconds: 60 responses: '200': description: Updated template draft content: application/json: schema: $ref: '#/components/schemas/WhatsappTemplateDto' examples: response: summary: Update response description: |2- Response when successfully update a template. value: whatsappId: '123456' name: My WhatsApp Template state: APPROVED category: UTILITY language: EN_US qualityScore: QUALITY_SCORE_GREEN changes: status: IN_PROGRESS details: components: - type: HEADER format: TEXT text: Save {{1}}% on your next purchase! example: '20' - type: HEADER format: DOCUMENT example: url: https://example.com/photos/1.png - type: HEADER format: LOCATION - type: BODY text: Good morning {{1}}, your package has arrived. examples: - Mr. Smith addSecurityRecommendation: true - type: FOOTER text: To track your order please click the 'Track Your Order' button codeExpirationMinutes: 5 - type: BUTTONS buttons: - type: PHONE_NUMBER text: Example text. phoneNumber: +48 777 777777 - type: URL text: Example test url: https://www.my-website.com?name={{1}} example: https://www.my-website.com?name=john - type: QUICK_REPLY text: Track Your Order - type: OTP otpType: COPY_CODE text: Example text. - type: CAROUSEL cards: - components: - type: HEADER format: IMAGE example: url: https://example.com/photos/1.png - type: BODY text: Good morning {{1}}, your package has arrived. examples: - Mr. Smith - type: BUTTONS buttons: - type: URL text: Example test url: https://www.my-website.com?name={{1}} example: https://www.my-website.com?name=john - type: QUICK_REPLY text: Track Your Order - type: PHONE_NUMBER text: Example text. phoneNumber: +48 777 777777 messageSendTtlSeconds: 60 details: components: - type: HEADER format: TEXT text: Save {{1}}% on your next purchase! example: '20' messageSendTtlSeconds: 60 analytics: [] '400': description: BadRequest content: application/json: schema: oneOf: - title: ProjectNotInitializedErrorTitle properties: errorCode: type: string title: project_not_initialized example: project_not_initialized description: Error code allows to programatically handle errors. message: type: string title: Project not initialized for WhatsApp. example: Project not initialized for WhatsApp. description: Human readable message. resolution: type: string title: Verify that the project ID is correct and that it has been onboarded for WhatsApp. example: Verify that the project ID is correct and that it has been onboarded for WhatsApp. description: Human readable message with an explanation of how to solve the error. - title: TemplateInvalidLanguageCodeErrorTitle properties: errorCode: type: string title: template_invalid_language_code example: template_invalid_language_code description: Error code allows to programatically handle errors. message: type: string title: Invalid language code. example: Invalid language code. description: Human readable message. resolution: type: string title: Verify that the language code used is supported by the Provisioning API and WhatsApp. example: Verify that the language code used is supported by the Provisioning API and WhatsApp. description: Human readable message with an explanation of how to solve the error. additionalInformation: type: object title: additionalInformation example: supportedCodes: AF, AR, AZ, BG, BN, CA, CS, DA, DE, EL, EN, EN_GB, EN_US, ES, ES_AR, ES_ES, ES_MX, ET, FA, FI, FIL, FR, GA, GU, HA, HE, HI, HR, HU, ID, IT, JA, KA, KK, KN, KO, KY_KG, LO, LT, LV, MK, ML, MR, MS, NB, NL, PA, PL, PT_BR, PT_PT, RO, RU, RW_RW, SK, SL, SQ, SR, SV, SW, TA, TE, TH, TR, UK, UR, UZ, VI, ZH_CN, ZH_HK, ZH_TW, ZU description: Additional information for error. - title: TemplatePoliciesViolationsErrorTitle properties: errorCode: type: string title: template_policies_violations example: template_policies_violations description: Error code allows to programatically handle errors. message: type: string title: Your message couldn't be sent because it includes content that other people on Facebook have reported as abusive. example: Your message couldn't be sent because it includes content that other people on Facebook have reported as abusive. description: Human readable message. resolution: type: string title: Remove violating content. If template is saved as draft, try to submit the template again. If option "saveDraftOnFailure" is specified as "false", try the request again. example: Remove violating content. If template is saved as draft, try to submit the template again. If option "saveDraftOnFailure" is specified as "false", try the request again. description: Human readable message with an explanation of how to solve the error. - title: TemplateCheckMediaFileSizeErrorTitle properties: errorCode: type: string title: template_check_media_file_size example: template_check_media_file_size description: Error code allows to programatically handle errors. message: type: string title: Failed to check media file size. example: Failed to check media file size. description: Human readable message. resolution: type: string title: Ensure media file URL is correct and then try again later. If template is saved as draft, try to submit the template again. If option "saveDraftOnFailure" is specified as "false", try the request again. example: Ensure media file URL is correct and then try again later. If template is saved as draft, try to submit the template again. If option "saveDraftOnFailure" is specified as "false", try the request again. description: Human readable message with an explanation of how to solve the error. - title: TemplateInvalidButtonExampleErrorTitle properties: errorCode: type: string title: template_invalid_button_example example: template_invalid_button_example description: Error code allows to programatically handle errors. message: type: string title: Invalid button example. example: Invalid button example. description: Human readable message. resolution: type: string title: Only dynamic URL buttons are allowed to have an example. example: Only dynamic URL buttons are allowed to have an example. description: Human readable message with an explanation of how to solve the error. - title: TemplateMediaFileSizeExceedsMaximumFileSizeLimitErrorTitle properties: errorCode: type: string title: template_media_file_size_exceeds_maximum_file_size_limit example: template_media_file_size_exceeds_maximum_file_size_limit description: Error code allows to programatically handle errors. message: type: string title: Template media file size exceeds maximum file size limit. example: Template media file size exceeds maximum file size limit. description: Human readable message. resolution: type: string title: Try again with a smaller file. example: Try again with a smaller file. description: Human readable message with an explanation of how to solve the error. - title: FileInvalidMimeTypeErrorTitle properties: errorCode: type: string title: file_invalid_mime_type example: file_invalid_mime_type description: Error code allows to programatically handle errors. message: type: string title: 'details.components[0].headerExample.media.url: invalid file mime type.' example: 'details.components[0].headerExample.media.url: invalid file mime type.' description: Human readable message. resolution: type: string title: 'Try again with supported mime types: image/jpeg, image/png, application/pdf, video/3gp, video/mp4.' example: 'Try again with supported mime types: image/jpeg, image/png, application/pdf, video/3gp, video/mp4.' description: Human readable message with an explanation of how to solve the error. - title: InvalidPayloadErrorTitle properties: errorCode: type: string title: invalid_payload example: invalid_payload description: Error code allows to programatically handle errors. message: type: string title: Invalid payload. example: Invalid payload. description: Human readable message. resolution: type: string title: Correct payload and submit again. example: Correct payload and submit again. description: Human readable message with an explanation of how to solve the error. '401': description: Unauthorized content: application/json: schema: example: errorCode: unauthorized_error message: Unauthorized error. resolution: Verify that projectId is correct. title: UnauthorizedErrorErrorTitle properties: errorCode: type: string title: unauthorized_error example: unauthorized_error description: Error code allows to programatically handle errors. message: type: string title: Unauthorized error. example: Unauthorized error. description: Human readable message. resolution: type: string title: Verify that projectId is correct. example: Verify that projectId is correct. description: Human readable message with an explanation of how to solve the error. '404': description: NotFound content: application/json: schema: example: errorCode: template_not_found message: Template not found. resolution: Verify that the parameters are correct. title: TemplateNotFoundErrorTitle properties: errorCode: type: string title: template_not_found example: template_not_found description: Error code allows to programatically handle errors. message: type: string title: Template not found. example: Template not found. description: Human readable message. resolution: type: string title: Verify that the parameters are correct. example: Verify that the parameters are correct. description: Human readable message with an explanation of how to solve the error. '409': description: Conflict content: application/json: schema: oneOf: - title: TemplateNotUpdatableErrorTitle properties: errorCode: type: string title: template_not_updatable example: template_not_updatable description: Error code allows to programatically handle errors. message: type: string title: Template is not updatable. example: Template is not updatable. description: Human readable message. resolution: type: string title: 'Updates are only supported by templates with state: APPROVED, DISABLED, PAUSED, REJECTED.' example: 'Updates are only supported by templates with state: APPROVED, DISABLED, PAUSED, REJECTED.' description: Human readable message with an explanation of how to solve the error. - title: TemplateChangesNotUpdatableErrorTitle properties: errorCode: type: string title: template_changes_not_updatable example: template_changes_not_updatable description: Error code allows to programatically handle errors. message: type: string title: Template is not updatable. example: Template is not updatable. description: Human readable message. resolution: type: string title: 'Updates are only supported by template changes with status: DRAFT, REJECTED.' example: 'Updates are only supported by template changes with status: DRAFT, REJECTED.' description: Human readable message with an explanation of how to solve the error. - title: TemplateCategoryNotUpdatableErrorTitle properties: errorCode: type: string title: template_category_not_updatable example: template_category_not_updatable description: Error code allows to programatically handle errors. message: type: string title: Template category is not updatable. example: Template category is not updatable. description: Human readable message. resolution: type: string title: 'Updates are only supported by template with state: DRAFT or with state: REJECTED and rejectionCode: INCORRECT_CATEGORY.' example: 'Updates are only supported by template with state: DRAFT or with state: REJECTED and rejectionCode: INCORRECT_CATEGORY.' description: Human readable message with an explanation of how to solve the error. - title: TemplateAllowCategoryChangeNotUpdatableErrorTitle properties: errorCode: type: string title: template_allow_category_change_not_updatable example: template_allow_category_change_not_updatable description: Error code allows to programatically handle errors. message: type: string title: Template allowCategoryChange is not updatable. example: Template allowCategoryChange is not updatable. description: Human readable message. resolution: type: string title: 'Updates are only supported by template with state: DRAFT or with state: REJECTED and rejectionCode: INCORRECT_CATEGORY.' example: 'Updates are only supported by template with state: DRAFT or with state: REJECTED and rejectionCode: INCORRECT_CATEGORY.' description: Human readable message with an explanation of how to solve the error. - title: TemplateNameRecentlyUsedErrorTitle properties: errorCode: type: string title: template_name_recently_used example: template_name_recently_used description: Error code allows to programatically handle errors. message: type: string title: A template with the same name has been deleted within 30 days. example: A template with the same name has been deleted within 30 days. description: Human readable message. resolution: type: string title: Use another "name" for "EN" or wait the required time. example: Use another "name" for "EN" or wait the required time. description: Human readable message with an explanation of how to solve the error. - title: TemplateRestrictedDomainForButtonUrlErrorTitle properties: errorCode: type: string title: template_restricted_Domain_for_button_url example: template_restricted_Domain_for_button_url description: Error code allows to programatically handle errors. message: type: string title: Restricted domain for button url. example: Restricted domain for button url. description: Human readable message. resolution: type: string title: 'Replace any of the following restricted domains: facebook.com, fbcdn.net, instagram.com, tfbnw.net, wa.me, whatsapp.com' example: 'Replace any of the following restricted domains: facebook.com, fbcdn.net, instagram.com, tfbnw.net, wa.me, whatsapp.com' description: Human readable message with an explanation of how to solve the error. - title: FileNotFoundErrorTitle properties: errorCode: type: string title: file_not_found example: file_not_found description: Error code allows to programatically handle errors. message: type: string title: 'details.components[0].headerExample.media.url: file not found.' example: 'details.components[0].headerExample.media.url: file not found.' description: Human readable message. resolution: type: string title: Verify that the url is correct. example: Verify that the url is correct. description: Human readable message with an explanation of how to solve the error. - title: FileSizeTooLargeErrorTitle properties: errorCode: type: string title: file_size_too_large example: file_size_too_large description: Error code allows to programatically handle errors. message: type: string title: 'details.components[0].headerExample.media.url: file size is too large.' example: 'details.components[0].headerExample.media.url: file size is too large.' description: Human readable message. resolution: type: string title: Try again with a smaller file. Max size for `image/jpeg` is 5MB. example: Try again with a smaller file. Max size for `image/jpeg` is 5MB. description: Human readable message with an explanation of how to solve the error. - title: FileUnexpectedErrorErrorTitle properties: errorCode: type: string title: file_unexpected_error example: file_unexpected_error description: Error code allows to programatically handle errors. message: type: string title: 'details.components[0].headerExample.media.url: file unexpected error.' example: 'details.components[0].headerExample.media.url: file unexpected error.' description: Human readable message. resolution: type: string title: The file cannot be handled properly. Please try with another one. example: The file cannot be handled properly. Please try with another one. description: Human readable message with an explanation of how to solve the error. - title: ObjectWithWhatsappBusinessAccountIdDoesNotExistErrorTitle properties: errorCode: type: string title: object_with_whatsapp_business_account_id_does_not_exist example: object_with_whatsapp_business_account_id_does_not_exist description: Error code allows to programatically handle errors. message: type: string title: WhatsApp Business Account does not exist. example: WhatsApp Business Account does not exist. description: Human readable message. resolution: type: string title: Verify that WhatsApp Business ID still exists and contact support. example: Verify that WhatsApp Business ID still exists and contact support. description: Human readable message with an explanation of how to solve the error. - title: TemplateLanguageRecentlyDeletedErrorTitle properties: errorCode: type: string title: template_language_recently_deleted example: template_language_recently_deleted description: Error code allows to programatically handle errors. message: type: string title: A template with the same language has been deleted within 4 weeks. example: A template with the same language has been deleted within 4 weeks. description: Human readable message. resolution: type: string title: Try to create EN content again in 4 weeks or create a new template. example: Try to create EN content again in 4 weeks or create a new template. description: Human readable message with an explanation of how to solve the error. '424': description: FailedDependency content: application/json: schema: oneOf: - title: TemplateLimitReachedErrorTitle properties: errorCode: type: string title: template_limit_reached example: template_limit_reached description: Error code allows to programatically handle errors. message: type: string title: Number of templates has reached the limit. example: Number of templates has reached the limit. description: Human readable message. resolution: type: string title: Delete some templates or reach out to support to increase the template limit. If template is saved as draft, try to submit the template again. If option "saveDraftOnFailure" is specified as "false", try the request again. example: Delete some templates or reach out to support to increase the template limit. If template is saved as draft, try to submit the template again. If option "saveDraftOnFailure" is specified as "false", try the request again. description: Human readable message with an explanation of how to solve the error. - title: TemplateContentAlreadyExistsErrorTitle properties: errorCode: type: string title: template_content_already_exists example: template_content_already_exists description: Error code allows to programatically handle errors. message: type: string title: Template cannot be submitted because the content is the same as the content in another template. example: Template cannot be submitted because the content is the same as the content in another template. description: Human readable message. resolution: type: string title: Use other template or edit template data and submit again. If template is saved as draft, try to submit the template again. If option "saveDraftOnFailure" is specified as "false", try the request again. example: Use other template or edit template data and submit again. If template is saved as draft, try to submit the template again. If option "saveDraftOnFailure" is specified as "false", try the request again. description: Human readable message with an explanation of how to solve the error. - title: TemplateSubmitErrorErrorTitle properties: errorCode: type: string title: template_submit_error example: template_submit_error description: Error code allows to programatically handle errors. message: type: string title: Template submit error. example: Template submit error. description: Human readable message. resolution: type: string title: Please try again later. If template is saved as draft, try to submit the template again. If option "saveDraftOnFailure" is specified as "false", try the request again. example: Please try again later. If template is saved as draft, try to submit the template again. If option "saveDraftOnFailure" is specified as "false", try the request again. description: Human readable message with an explanation of how to solve the error. additionalInformation: type: object title: additionalInformation example: metaError: code: '123' subcode: '123456' message: Invalid parameter description: Character Limit Exceeded reason: field 'name' can't have more than 1,024 characters description: Additional information for error. '429': description: TooManyRequests content: application/json: schema: example: errorCode: whatsapp_business_api_request_limit_exceeded message: WhatsApp business api request limit reached. resolution: WhatsApp business API request limits reached. Please try again later. title: WhatsappBusinessApiRequestLimitExceededErrorTitle properties: errorCode: type: string title: whatsapp_business_api_request_limit_exceeded example: whatsapp_business_api_request_limit_exceeded description: Error code allows to programatically handle errors. message: type: string title: WhatsApp business api request limit reached. example: WhatsApp business api request limit reached. description: Human readable message. resolution: type: string title: WhatsApp business API request limits reached. Please try again later. example: WhatsApp business API request limits reached. Please try again later. description: Human readable message with an explanation of how to solve the error. '500': description: InternalServerError content: application/json: schema: oneOf: - title: TemplateStartSessionForUploadingMediaErrorTitle properties: errorCode: type: string title: template_start_session_for_uploading_media example: template_start_session_for_uploading_media description: Error code allows to programatically handle errors. message: type: string title: Failed to start session for uploading template media example. example: Failed to start session for uploading template media example. description: Human readable message. resolution: type: string title: Please try again later. If template is saved as draft, try to submit the template again. If option "saveDraftOnFailure" is specified as "false", try the request again. example: Please try again later. If template is saved as draft, try to submit the template again. If option "saveDraftOnFailure" is specified as "false", try the request again. description: Human readable message with an explanation of how to solve the error. - title: InternalErrorErrorTitle properties: errorCode: type: string title: internal_error example: internal_error description: Error code allows to programatically handle errors. message: type: string title: Internal server error. example: Internal server error. description: Human readable message. resolution: type: string title: Please wait and try again, if the error persist please contact support. If template is saved as draft, try to submit the template again. If option "saveDraftOnFailure" is specified as "false", try the request again. example: Please wait and try again, if the error persist please contact support. If template is saved as draft, try to submit the template again. If option "saveDraftOnFailure" is specified as "false", try the request again. description: Human readable message with an explanation of how to solve the error. - title: InternalErrorErrorTitle properties: errorCode: type: string title: internal_error example: internal_error description: Error code allows to programatically handle errors. message: type: string title: Internal server error. example: Internal server error. description: Human readable message. resolution: type: string title: Please wait and try again, if the error persist please contact support. example: Please wait and try again, if the error persist please contact support. description: Human readable message with an explanation of how to solve the error. summary: Update a template in project tags: - WhatsApp Templates x-tagAfterOperationSummary: color: white background: green label: GA /v1/projects/{projectId}/whatsapp/templates/{templateName}/languages/{languageCode}/activities: get: description: |2- Paginated list of activities for a template. Ordered from the most recent one to the oldest one. operationId: TemplatesController_listActivities_v1 parameters: - name: projectId required: true in: path description: The unique ID of the project. You can find this on the Sinch Dashboard. schema: type: string - name: templateName required: true in: path description: The unique name of the template. schema: type: string - name: languageCode required: true in: path description: The language code of the specific template. schema: $ref: '#/components/schemas/WhatsappTemplateLanguagesEnum' - name: pageToken required: false in: query schema: type: string description: The page token if retrieving the next page from a previous query. - name: pageSize required: false in: query schema: type: number minimum: 1 maximum: 100 description: The page size requested. responses: '200': description: Recent activities on template content: application/json: schema: $ref: '#/components/schemas/WhatsappTemplateNotificationListDto' examples: response: summary: List template activities response description: |2- Response for all template activities. value: totalSize: 2 pageSize: 50 notifications: - type: CREATED created: '2023-01-19T13:11:08.204Z' author: Provisioning API user - type: COMMENT_ADDED created: '2023-01-19T13:11:08.204Z' comment: Example comment author: Provisioning API user '400': description: BadRequest content: application/json: schema: oneOf: - title: ProjectNotInitializedErrorTitle properties: errorCode: type: string title: project_not_initialized example: project_not_initialized description: Error code allows to programatically handle errors. message: type: string title: Project not initialized for WhatsApp. example: Project not initialized for WhatsApp. description: Human readable message. resolution: type: string title: Verify that the project ID is correct and that it has been onboarded for WhatsApp. example: Verify that the project ID is correct and that it has been onboarded for WhatsApp. description: Human readable message with an explanation of how to solve the error. - title: TemplateInvalidLanguageCodeErrorTitle properties: errorCode: type: string title: template_invalid_language_code example: template_invalid_language_code description: Error code allows to programatically handle errors. message: type: string title: Invalid language code. example: Invalid language code. description: Human readable message. resolution: type: string title: Verify that the language code used is supported by the Provisioning API and WhatsApp. example: Verify that the language code used is supported by the Provisioning API and WhatsApp. description: Human readable message with an explanation of how to solve the error. additionalInformation: type: object title: additionalInformation example: supportedCodes: AF, AR, AZ, BG, BN, CA, CS, DA, DE, EL, EN, EN_GB, EN_US, ES, ES_AR, ES_ES, ES_MX, ET, FA, FI, FIL, FR, GA, GU, HA, HE, HI, HR, HU, ID, IT, JA, KA, KK, KN, KO, KY_KG, LO, LT, LV, MK, ML, MR, MS, NB, NL, PA, PL, PT_BR, PT_PT, RO, RU, RW_RW, SK, SL, SQ, SR, SV, SW, TA, TE, TH, TR, UK, UR, UZ, VI, ZH_CN, ZH_HK, ZH_TW, ZU description: Additional information for error. - title: InvalidPageTokenErrorTitle properties: errorCode: type: string title: invalid_page_token example: invalid_page_token description: Error code allows to programatically handle errors. message: type: string title: Invalid page token. example: Invalid page token. description: Human readable message. resolution: type: string title: The page token to use is provided in the previous query response, for new queries simply leave this field undefined. example: The page token to use is provided in the previous query response, for new queries simply leave this field undefined. description: Human readable message with an explanation of how to solve the error. - title: InvalidPageSizeErrorTitle properties: errorCode: type: string title: invalid_page_size example: invalid_page_size description: Error code allows to programatically handle errors. message: type: string title: Page size must be numeric. example: Page size must be numeric. description: Human readable message. resolution: type: string title: Use a integer value for pageSize parameter. example: Use a integer value for pageSize parameter. description: Human readable message with an explanation of how to solve the error. '401': description: Unauthorized content: application/json: schema: example: errorCode: unauthorized_error message: Unauthorized error. resolution: Verify that projectId is correct. title: UnauthorizedErrorErrorTitle properties: errorCode: type: string title: unauthorized_error example: unauthorized_error description: Error code allows to programatically handle errors. message: type: string title: Unauthorized error. example: Unauthorized error. description: Human readable message. resolution: type: string title: Verify that projectId is correct. example: Verify that projectId is correct. description: Human readable message with an explanation of how to solve the error. '404': description: NotFound content: application/json: schema: example: errorCode: template_not_found message: Template not found. resolution: Verify that the parameters are correct. title: TemplateNotFoundErrorTitle properties: errorCode: type: string title: template_not_found example: template_not_found description: Error code allows to programatically handle errors. message: type: string title: Template not found. example: Template not found. description: Human readable message. resolution: type: string title: Verify that the parameters are correct. example: Verify that the parameters are correct. description: Human readable message with an explanation of how to solve the error. '500': description: InternalServerError content: application/json: schema: example: errorCode: internal_error message: Internal server error. resolution: Please wait and try again, if the error persist please contact support. title: InternalErrorErrorTitle properties: errorCode: type: string title: internal_error example: internal_error description: Error code allows to programatically handle errors. message: type: string title: Internal server error. example: Internal server error. description: Human readable message. resolution: type: string title: Please wait and try again, if the error persist please contact support. example: Please wait and try again, if the error persist please contact support. description: Human readable message with an explanation of how to solve the error. summary: Lists activities on project template tags: - WhatsApp Templates x-tagAfterOperationSummary: color: white background: green label: GA /v1/projects/{projectId}/whatsapp/templates/{templateName}/languages/{languageCode}/comments: post: description: |2- Creates a comment for a template. operationId: TemplatesController_createComment_v1 parameters: - name: projectId required: true in: path description: The unique ID of the project. You can find this on the Sinch Dashboard. schema: type: string - name: templateName required: true in: path description: The unique name of the template. schema: type: string - name: languageCode required: true in: path description: The language code of the specific template. schema: $ref: '#/components/schemas/WhatsappTemplateLanguagesEnum' requestBody: required: true description: Comment data content: application/json: schema: $ref: '#/components/schemas/WhatsappCommentInputDto' examples: input: summary: Body request description: |2- Example body request to create a comment. value: comment: Example comment. responses: '201': description: Created comment for a template content: application/json: schema: $ref: '#/components/schemas/WhatsappCommentDto' examples: created: summary: Create response description: |2- Response when successfully creating a comment. value: type: CREATED comment: Example comment created: '2023-01-19T13:11:08.204Z' '400': description: BadRequest content: application/json: schema: oneOf: - title: InvalidInputErrorTitle properties: errorCode: type: string title: invalid_input example: invalid_input description: Error code allows to programatically handle errors. message: type: string title: Invalid input. example: Invalid input. description: Human readable message. resolution: type: string title: Correct the validation errors and submit again. example: Correct the validation errors and submit again. description: Human readable message with an explanation of how to solve the error. additionalInformation: type: object title: additionalInformation example: validationErrors: - comment must be longer than or equal to 1 characters description: Additional information for error. - title: ProjectNotInitializedErrorTitle properties: errorCode: type: string title: project_not_initialized example: project_not_initialized description: Error code allows to programatically handle errors. message: type: string title: Project not initialized for WhatsApp. example: Project not initialized for WhatsApp. description: Human readable message. resolution: type: string title: Verify that the project ID is correct and that it has been onboarded for WhatsApp. example: Verify that the project ID is correct and that it has been onboarded for WhatsApp. description: Human readable message with an explanation of how to solve the error. - title: TemplateInvalidLanguageCodeErrorTitle properties: errorCode: type: string title: template_invalid_language_code example: template_invalid_language_code description: Error code allows to programatically handle errors. message: type: string title: Invalid language code. example: Invalid language code. description: Human readable message. resolution: type: string title: Verify that the language code used is supported by the Provisioning API and WhatsApp. example: Verify that the language code used is supported by the Provisioning API and WhatsApp. description: Human readable message with an explanation of how to solve the error. additionalInformation: type: object title: additionalInformation example: supportedCodes: AF, AR, AZ, BG, BN, CA, CS, DA, DE, EL, EN, EN_GB, EN_US, ES, ES_AR, ES_ES, ES_MX, ET, FA, FI, FIL, FR, GA, GU, HA, HE, HI, HR, HU, ID, IT, JA, KA, KK, KN, KO, KY_KG, LO, LT, LV, MK, ML, MR, MS, NB, NL, PA, PL, PT_BR, PT_PT, RO, RU, RW_RW, SK, SL, SQ, SR, SV, SW, TA, TE, TH, TR, UK, UR, UZ, VI, ZH_CN, ZH_HK, ZH_TW, ZU description: Additional information for error. - title: InvalidPayloadErrorTitle properties: errorCode: type: string title: invalid_payload example: invalid_payload description: Error code allows to programatically handle errors. message: type: string title: Invalid payload. example: Invalid payload. description: Human readable message. resolution: type: string title: Correct payload and submit again. example: Correct payload and submit again. description: Human readable message with an explanation of how to solve the error. '401': description: Unauthorized content: application/json: schema: example: errorCode: unauthorized_error message: Unauthorized error. resolution: Verify that projectId is correct. title: UnauthorizedErrorErrorTitle properties: errorCode: type: string title: unauthorized_error example: unauthorized_error description: Error code allows to programatically handle errors. message: type: string title: Unauthorized error. example: Unauthorized error. description: Human readable message. resolution: type: string title: Verify that projectId is correct. example: Verify that projectId is correct. description: Human readable message with an explanation of how to solve the error. '404': description: NotFound content: application/json: schema: example: errorCode: template_not_found message: Template not found. resolution: Verify that the parameters are correct. title: TemplateNotFoundErrorTitle properties: errorCode: type: string title: template_not_found example: template_not_found description: Error code allows to programatically handle errors. message: type: string title: Template not found. example: Template not found. description: Human readable message. resolution: type: string title: Verify that the parameters are correct. example: Verify that the parameters are correct. description: Human readable message with an explanation of how to solve the error. '500': description: InternalServerError content: application/json: schema: oneOf: - title: FailedToCreateCommentErrorTitle properties: errorCode: type: string title: failed_to_create_comment example: failed_to_create_comment description: Error code allows to programatically handle errors. message: type: string title: Failed to create a comment. example: Failed to create a comment. description: Human readable message. resolution: type: string title: Please try again later. example: Please try again later. description: Human readable message with an explanation of how to solve the error. - title: InternalErrorErrorTitle properties: errorCode: type: string title: internal_error example: internal_error description: Error code allows to programatically handle errors. message: type: string title: Internal server error. example: Internal server error. description: Human readable message. resolution: type: string title: Please wait and try again, if the error persist please contact support. example: Please wait and try again, if the error persist please contact support. description: Human readable message with an explanation of how to solve the error. summary: Creates a comment for a template tags: - WhatsApp Templates x-tagAfterOperationSummary: color: white background: green label: GA /v1/projects/{projectId}/whatsapp/templates/{templateName}/languages/{languageCode}/compare: post: description: |2- Compare two templates. operationId: TemplatesController_compareTemplates_v1 parameters: - name: projectId required: true in: path description: The unique ID of the project. You can find this on the Sinch Dashboard. schema: type: string - name: templateName required: true in: path description: The unique name of the template. schema: type: string - name: languageCode required: true in: path description: The language code of the specific template. schema: $ref: '#/components/schemas/WhatsappTemplateLanguagesEnum' requestBody: required: true description: Compare data content: application/json: schema: $ref: '#/components/schemas/WhatsappInputTemplateCompareDto' examples: input: summary: Body request description: |2- Example body request compare templates. value: templates: - templateName: templateName2 templateLanguage: PL timeframe: '60' endTimestamp: 1694612898734 responses: '200': description: Compared template response content: application/json: schema: $ref: '#/components/schemas/WhatsappTemplateCompareDto' examples: created: summary: Compare template response description: |2- Response when successfully compared templates. value: templates: - name: templateName1 language: EN blockOrder: 1 messageSends: 1000 topBlockReason: NO_REASON - name: templateName1 language: PL blockOrder: 2 messageSends: 2000 topBlockReason: NO_REASON_GIVEN '400': description: BadRequest content: application/json: schema: oneOf: - title: InvalidInputErrorTitle properties: errorCode: type: string title: invalid_input example: invalid_input description: Error code allows to programatically handle errors. message: type: string title: Invalid input. example: Invalid input. description: Human readable message. resolution: type: string title: Correct the validation errors and submit again. example: Correct the validation errors and submit again. description: Human readable message with an explanation of how to solve the error. additionalInformation: type: object title: additionalInformation example: validationErrors: - templates must be an array - templates must contain no more than 1 elements - templates must contain at least 1 elements description: Additional information for error. - title: ProjectNotInitializedErrorTitle properties: errorCode: type: string title: project_not_initialized example: project_not_initialized description: Error code allows to programatically handle errors. message: type: string title: Project not initialized for WhatsApp. example: Project not initialized for WhatsApp. description: Human readable message. resolution: type: string title: Verify that the project ID is correct and that it has been onboarded for WhatsApp. example: Verify that the project ID is correct and that it has been onboarded for WhatsApp. description: Human readable message with an explanation of how to solve the error. - title: TemplateInvalidLanguageCodeErrorTitle properties: errorCode: type: string title: template_invalid_language_code example: template_invalid_language_code description: Error code allows to programatically handle errors. message: type: string title: Invalid language code. example: Invalid language code. description: Human readable message. resolution: type: string title: Verify that the language code used is supported by the Provisioning API and WhatsApp. example: Verify that the language code used is supported by the Provisioning API and WhatsApp. description: Human readable message with an explanation of how to solve the error. additionalInformation: type: object title: additionalInformation example: supportedCodes: AF, AR, AZ, BG, BN, CA, CS, DA, DE, EL, EN, EN_GB, EN_US, ES, ES_AR, ES_ES, ES_MX, ET, FA, FI, FIL, FR, GA, GU, HA, HE, HI, HR, HU, ID, IT, JA, KA, KK, KN, KO, KY_KG, LO, LT, LV, MK, ML, MR, MS, NB, NL, PA, PL, PT_BR, PT_PT, RO, RU, RW_RW, SK, SL, SQ, SR, SV, SW, TA, TE, TH, TR, UK, UR, UZ, VI, ZH_CN, ZH_HK, ZH_TW, ZU description: Additional information for error. - title: InvalidPayloadErrorTitle properties: errorCode: type: string title: invalid_payload example: invalid_payload description: Error code allows to programatically handle errors. message: type: string title: Invalid payload. example: Invalid payload. description: Human readable message. resolution: type: string title: Correct payload and submit again. example: Correct payload and submit again. description: Human readable message with an explanation of how to solve the error. '401': description: Unauthorized content: application/json: schema: example: errorCode: unauthorized_error message: Unauthorized error. resolution: Verify that projectId is correct. title: UnauthorizedErrorErrorTitle properties: errorCode: type: string title: unauthorized_error example: unauthorized_error description: Error code allows to programatically handle errors. message: type: string title: Unauthorized error. example: Unauthorized error. description: Human readable message. resolution: type: string title: Verify that projectId is correct. example: Verify that projectId is correct. description: Human readable message with an explanation of how to solve the error. '404': description: NotFound content: application/json: schema: oneOf: - title: TemplateNotFoundErrorTitle properties: errorCode: type: string title: template_not_found example: template_not_found description: Error code allows to programatically handle errors. message: type: string title: Template not found. example: Template not found. description: Human readable message. resolution: type: string title: Verify that the parameters are correct. example: Verify that the parameters are correct. description: Human readable message with an explanation of how to solve the error. - title: TemplatesCompareNotFoundErrorTitle properties: errorCode: type: string title: templates_compare_not_found example: templates_compare_not_found description: Error code allows to programatically handle errors. message: type: string title: Templates to compare not found. example: Templates to compare not found. description: Human readable message. resolution: type: string title: 'Verify that the parameters are correct. No templates found for templateName: templateName and templateLanguage: EN' example: 'Verify that the parameters are correct. No templates found for templateName: templateName and templateLanguage: EN' description: Human readable message with an explanation of how to solve the error. '409': description: Conflict content: application/json: schema: oneOf: - title: TemplatesNotEligibleForComparisonErrorTitle properties: errorCode: type: string title: templates_not_eligible_for_comparison example: templates_not_eligible_for_comparison description: Error code allows to programatically handle errors. message: type: string title: Templates not eligible for comparison. example: Templates not eligible for comparison. description: Human readable message. resolution: type: string title: Templates must have been sent at least 1,000 times in the specified timeframe. example: Templates must have been sent at least 1,000 times in the specified timeframe. description: Human readable message with an explanation of how to solve the error. - title: TemplatesCompareNotUniqueErrorTitle properties: errorCode: type: string title: templates_compare_not_unique example: templates_compare_not_unique description: Error code allows to programatically handle errors. message: type: string title: Templates to compare not unique. example: Templates to compare not unique. description: Human readable message. resolution: type: string title: Template can't be compared with itself. Provide unique templates for comparison. example: Template can't be compared with itself. Provide unique templates for comparison. description: Human readable message with an explanation of how to solve the error. '500': description: InternalServerError content: application/json: schema: example: errorCode: internal_error message: Internal server error. resolution: Please wait and try again, if the error persist please contact support. title: InternalErrorErrorTitle properties: errorCode: type: string title: internal_error example: internal_error description: Error code allows to programatically handle errors. message: type: string title: Internal server error. example: Internal server error. description: Human readable message. resolution: type: string title: Please wait and try again, if the error persist please contact support. example: Please wait and try again, if the error persist please contact support. description: Human readable message with an explanation of how to solve the error. summary: Compare two templates tags: - WhatsApp Templates x-tagAfterOperationSummary: color: white background: green label: GA /v1/projects/{projectId}/whatsapp/wabaDetails: post: deprecated: true description: |2- Returns a list of all the WhatsApp Business Accounts that the facebook token is associated with, together with the numbers that are shared. operationId: EmbeddedSignupHelperController_listWabaDetailsForToken_v1 parameters: - name: projectId required: true in: path description: The unique ID of the project. You can find this on the Sinch Dashboard. schema: type: string requestBody: required: true description: WabaDetails data with Facebook token generated from the embedded signup process. content: application/json: schema: $ref: '#/components/schemas/WhatsappWabaDetailsListInputDto' examples: input: summary: Body request description: |2- Example body request to list WhatsApp Business Accounts details. value: facebookToken: FACEBOOK_TOKEN responses: '200': description: List of WhatsApp Business Accounts. content: application/json: schema: $ref: '#/components/schemas/WhatsappWabaDetailsListDto' examples: response: summary: List waba details response description: |2- Response for all waba details. value: wabas: - id: '100000000000000' name: Example company numbers: - id: '222222222222222' displayPhoneNumber: +48 777 777777 provisioned: false '400': description: BadRequest content: application/json: schema: oneOf: - title: InvalidInputErrorTitle properties: errorCode: type: string title: invalid_input example: invalid_input description: Error code allows to programatically handle errors. message: type: string title: Invalid input. example: Invalid input. description: Human readable message. resolution: type: string title: Correct the validation errors and submit again. example: Correct the validation errors and submit again. description: Human readable message with an explanation of how to solve the error. additionalInformation: type: object title: additionalInformation example: validationErrors: - facebookToken must be a string description: Additional information for error. - title: InvalidFacebookTokenErrorTitle properties: errorCode: type: string title: invalid_facebook_token example: invalid_facebook_token description: Error code allows to programatically handle errors. message: type: string title: Facebook token is invalid or has expired example: Facebook token is invalid or has expired description: Human readable message. resolution: type: string title: Check that token is correct, or create a new one and try again. example: Check that token is correct, or create a new one and try again. description: Human readable message with an explanation of how to solve the error. - title: InvalidBusinessManagerErrorTitle properties: errorCode: type: string title: invalid_business_manager example: invalid_business_manager description: Error code allows to programatically handle errors. message: type: string title: Invalid business manager. example: Invalid business manager. description: Human readable message. resolution: type: string title: Check that business manager is correct for project. example: Check that business manager is correct for project. description: Human readable message with an explanation of how to solve the error. - title: InvalidBusinessManagerForEnvironmentErrorTitle properties: errorCode: type: string title: invalid_business_manager_for_environment example: invalid_business_manager_for_environment description: Error code allows to programatically handle errors. message: type: string title: Invalid business manager for environment. example: Invalid business manager for environment. description: Human readable message. resolution: type: string title: Verify that business manager is valid for environment. Allowed business managers for environment SINCH_AMERICA, SINCH_UK. example: Verify that business manager is valid for environment. Allowed business managers for environment SINCH_AMERICA, SINCH_UK. description: Human readable message with an explanation of how to solve the error. - title: InvalidPayloadErrorTitle properties: errorCode: type: string title: invalid_payload example: invalid_payload description: Error code allows to programatically handle errors. message: type: string title: Invalid payload. example: Invalid payload. description: Human readable message. resolution: type: string title: Correct payload and submit again. example: Correct payload and submit again. description: Human readable message with an explanation of how to solve the error. '401': description: Unauthorized content: application/json: schema: example: errorCode: unauthorized_error message: Unauthorized error. resolution: Verify that projectId is correct. title: UnauthorizedErrorErrorTitle properties: errorCode: type: string title: unauthorized_error example: unauthorized_error description: Error code allows to programatically handle errors. message: type: string title: Unauthorized error. example: Unauthorized error. description: Human readable message. resolution: type: string title: Verify that projectId is correct. example: Verify that projectId is correct. description: Human readable message with an explanation of how to solve the error. '500': description: InternalServerError content: application/json: schema: oneOf: - title: FacebookRequestLimitReachedErrorTitle properties: errorCode: type: string title: facebook_Request_limit_reached example: facebook_Request_limit_reached description: Error code allows to programatically handle errors. message: type: string title: Facebook request limit reached. example: Facebook request limit reached. description: Human readable message. resolution: type: string title: Please try again later. example: Please try again later. description: Human readable message with an explanation of how to solve the error. - title: LogInFacebookRequiredErrorTitle properties: errorCode: type: string title: log_in_facebook_required example: log_in_facebook_required description: Error code allows to programatically handle errors. message: type: string title: Log in to facebook required. example: Log in to facebook required. description: Human readable message. resolution: type: string title: Log in to www.facebook.com and follow the instructions given. example: Log in to www.facebook.com and follow the instructions given. description: Human readable message with an explanation of how to solve the error. - title: InternalErrorErrorTitle properties: errorCode: type: string title: internal_error example: internal_error description: Error code allows to programatically handle errors. message: type: string title: Internal server error. example: Internal server error. description: Human readable message. resolution: type: string title: Please wait and try again, if the error persist please contact support. example: Please wait and try again, if the error persist please contact support. description: Human readable message with an explanation of how to solve the error. summary: List WhatsApp Business Accounts details tags: - WhatsApp x-tagAfterOperationSummary: color: white background: green label: GA /v1/projects/{projectId}/bundles: post: callbacks: BundleDone: '{$request.body#webhooks.target}': post: summary: Bundle Done Event description: |2- When a bundle is completed, the system makes a `POST` request to the specified callback URL. parameters: - in: header name: x-sinch-webhook-signature schema: type: string format: uuid example: - in: header name: x-sinch-webhook-signature-algorithm schema: type: string enum: - HmacSHA256 uniqueItems: false example: HmacSHA256 - in: header name: x-sinch-webhook-signature-nonce schema: type: string example: 01EAW2BNWCG9DC13RS582V0ZQ3 - in: header name: x-sinch-webhook-signature-timestamp schema: type: string format: timestamp example: '1592227387' requestBody: content: application/json: schema: type: object properties: type: description: Type of event, will always be `BUNDLE_DONE` for this callback. type: string payload: description: Bundle data representing the completed form. allOf: - $ref: '#/components/schemas/BundlesBundlesDto' required: - type - payload example: type: BUNDLE_DONE payload: id: 62a02dd40000000000000000 projectId: ea026751-3edf-40a9-ad93-1b382bd60a78 name: Sample response region: US subproject: id: ea026751-3edf-40a9-ad93-1b382bd60a78 name: Sample response parentProjectId: 18bbdcc8-117d-42f0-85cc-e30462c49404 status: READY smsApp: id: 54e5eb6cae6242c88c132c8da8bb1072 smsServiceId: d84b09da00fb4b76ff63f2fcea8d46c7 name: Sample response status: ACTIVE accessTokens: - token convApp: id: 31c12b1042d14b37ae96df96bb13575b name: Sample response processingMode: CONVERSATION webhooks: - id: 7c60ce550f1d40198d5ffb113d58591b projectId: ea026751-3edf-40a9-ad93-1b382bd60a78 target: https://webhook.site/d614d077-302a-4e0b-a06a-276923f7d8d4 triggers: - BUNDLE_DONE state: DONE webhookDeliveryStatuses: - webhookId: 7c60ce550f1d40198d5ffb113d58591b date: '2025-02-14T10:54:15.676Z' httpStatusCode: 200 responses: '200': description: Response to callback will be ignored. The call will retry if unsuccessful. description: |2- Creates a new bundle of resources based on the input work order. operationId: BundlesController_create_v1 parameters: - name: projectId required: true in: path description: The unique ID of the project. You can find this on the Sinch Dashboard. schema: type: string requestBody: required: true description: Example Bundle create requests content: application/json: schema: $ref: '#/components/schemas/BundlesBundlesInputDto' examples: small: summary: Small example description: |2- Small example to create a subproject, SMS App and Conversation API App. The webhooks for Conversation API and Provisioning API are examples and can be extended. value: name: Small bundle example region: US subproject: true smsApp: true convApp: webhooks: - target: https://webhook.site/d614d077-302a-4e0b-a06a-276923f7d8d4 secret: secret triggers: - MESSAGE_DELIVERY processingMode: DISPATCH retentionPolicy: retentionPolicyType: MESSAGE_EXPIRE_POLICY ttl: 7 webhooks: - target: https://webhook.site/d614d077-302a-4e0b-a06a-276923f7d8d4 secret: secret triggers: - BUNDLE_DONE minimal: summary: Minimal example description: |2- Minimal example to create a subproject, SMS App and Conversation API App. This will not register any webhooks which will have to be done separately. value: name: Minimal bundle example region: US subproject: true smsApp: true convApp: true responses: '201': description: Responds with the bundle created. At time of response the bundle might not be completed. To receive the complete payload register a webhook for the `BUNDLE_DONE` trigger. content: application/json: schema: $ref: '#/components/schemas/BundlesBundlesDto' examples: notReady: summary: Pending response description: |2- Response if the SMS App is not ready. This is the most likely response. value: id: 62a02dd40000000000000000 projectId: ea026751-3edf-40a9-ad93-1b382bd60a78 name: Sample response region: US subproject: id: ea026751-3edf-40a9-ad93-1b382bd60a78 name: Sample response parentProjectId: 18bbdcc8-117d-42f0-85cc-e30462c49404 status: PENDING smsApp: id: 54e5eb6cae6242c88c132c8da8bb1072 smsServiceId: d84b09da00fb4b76ff63f2fcea8d46c7 name: Sample response status: PENDING_ADD convApp: id: 31c12b1042d14b37ae96df96bb13575b name: Sample response processingMode: CONVERSATION webhooks: - id: 7c60ce550f1d40198d5ffb113d58591b projectId: ea026751-3edf-40a9-ad93-1b382bd60a78 target: https://webhook.site/d614d077-302a-4e0b-a06a-276923f7d8d4 triggers: - BUNDLE_DONE state: IN_PROGRESS ready: summary: Completed response description: |2- Response if the SMS App is ready. The data is the same as the callback payload. value: id: 62a02dd40000000000000000 projectId: ea026751-3edf-40a9-ad93-1b382bd60a78 name: Sample response region: US subproject: id: ea026751-3edf-40a9-ad93-1b382bd60a78 name: Sample response parentProjectId: 18bbdcc8-117d-42f0-85cc-e30462c49404 status: READY smsApp: id: 54e5eb6cae6242c88c132c8da8bb1072 smsServiceId: d84b09da00fb4b76ff63f2fcea8d46c7 name: Sample response status: ACTIVE accessTokens: - token convApp: id: 31c12b1042d14b37ae96df96bb13575b name: Sample response processingMode: CONVERSATION webhooks: - id: 7c60ce550f1d40198d5ffb113d58591b projectId: ea026751-3edf-40a9-ad93-1b382bd60a78 target: https://webhook.site/d614d077-302a-4e0b-a06a-276923f7d8d4 triggers: - BUNDLE_DONE state: DONE webhookDeliveryStatuses: - webhookId: 7c60ce550f1d40198d5ffb113d58591b date: '2025-02-14T10:54:15.676Z' httpStatusCode: 200 '400': description: BadRequest content: application/json: schema: oneOf: - title: InvalidInputErrorTitle properties: errorCode: type: string title: invalid_input example: invalid_input description: Error code allows to programatically handle errors. message: type: string title: Invalid input. example: Invalid input. description: Human readable message. resolution: type: string title: Correct the validation errors and submit again. example: Correct the validation errors and submit again. description: Human readable message with an explanation of how to solve the error. additionalInformation: type: object title: additionalInformation example: validationErrors: - subproject must be boolean or object description: Additional information for error. - title: NoServicesToCreateErrorTitle properties: errorCode: type: string title: no_services_to_create example: no_services_to_create description: Error code allows to programatically handle errors. message: type: string title: No services to create. example: No services to create. description: Human readable message. resolution: type: string title: Add at least one service to create. example: Add at least one service to create. description: Human readable message with an explanation of how to solve the error. - title: MissingNameErrorTitle properties: errorCode: type: string title: missing_name example: missing_name description: Error code allows to programatically handle errors. message: type: string title: Missing name for bundles. example: Missing name for bundles. description: Human readable message. resolution: type: string title: Make sure you have given a separate service name or principal. example: Make sure you have given a separate service name or principal. description: Human readable message with an explanation of how to solve the error. - title: InvalidWebhooksErrorTitle properties: errorCode: type: string title: invalid_webhooks example: invalid_webhooks description: Error code allows to programatically handle errors. message: type: string title: Unable to create webhooks. example: Unable to create webhooks. description: Human readable message. resolution: type: string title: Please try again. example: Please try again. description: Human readable message with an explanation of how to solve the error. - title: InvalidStagingBundlesInputRegionErrorTitle properties: errorCode: type: string title: invalid_staging_bundles_input_region example: invalid_staging_bundles_input_region description: Error code allows to programatically handle errors. message: type: string title: Invalid bundles region for staging. example: Invalid bundles region for staging. description: Human readable message. resolution: type: string title: Verify that bundles region is valid for staging. Allowed bundles regions for staging EU, US. example: Verify that bundles region is valid for staging. Allowed bundles regions for staging EU, US. description: Human readable message with an explanation of how to solve the error. - title: InvalidPayloadErrorTitle properties: errorCode: type: string title: invalid_payload example: invalid_payload description: Error code allows to programatically handle errors. message: type: string title: Invalid payload. example: Invalid payload. description: Human readable message. resolution: type: string title: Correct payload and submit again. example: Correct payload and submit again. description: Human readable message with an explanation of how to solve the error. '401': description: Unauthorized content: application/json: schema: example: errorCode: unauthorized_error message: Unauthorized error. resolution: Verify that projectId is correct. title: UnauthorizedErrorErrorTitle properties: errorCode: type: string title: unauthorized_error example: unauthorized_error description: Error code allows to programatically handle errors. message: type: string title: Unauthorized error. example: Unauthorized error. description: Human readable message. resolution: type: string title: Verify that projectId is correct. example: Verify that projectId is correct. description: Human readable message with an explanation of how to solve the error. '409': description: Conflict content: application/json: schema: example: errorCode: webhook_exists message: Webhook with the provided target already exists. resolution: Webhooks must have a unique target. Change the target and submit again. title: WebhookExistsErrorTitle properties: errorCode: type: string title: webhook_exists example: webhook_exists description: Error code allows to programatically handle errors. message: type: string title: Webhook with the provided target already exists. example: Webhook with the provided target already exists. description: Human readable message. resolution: type: string title: Webhooks must have a unique target. Change the target and submit again. example: Webhooks must have a unique target. Change the target and submit again. description: Human readable message with an explanation of how to solve the error. '424': description: FailedDependency content: application/json: schema: example: errorCode: webhook_limit_reached message: Number of webhooks has reached the limit. resolution: Delete some webhooks to be able to add more. title: WebhookLimitReachedErrorTitle properties: errorCode: type: string title: webhook_limit_reached example: webhook_limit_reached description: Error code allows to programatically handle errors. message: type: string title: Number of webhooks has reached the limit. example: Number of webhooks has reached the limit. description: Human readable message. resolution: type: string title: Delete some webhooks to be able to add more. example: Delete some webhooks to be able to add more. description: Human readable message with an explanation of how to solve the error. '500': description: InternalServerError content: application/json: schema: oneOf: - title: FailedToCreateSubprojectErrorTitle properties: errorCode: type: string title: failed_to_create_subproject example: failed_to_create_subproject description: Error code allows to programatically handle errors. message: type: string title: Failed to create subproject. example: Failed to create subproject. description: Human readable message. resolution: type: string title: Please try again. example: Please try again. description: Human readable message with an explanation of how to solve the error. - title: FailedToCreateSmsServiceErrorTitle properties: errorCode: type: string title: failed_to_create_sms_service example: failed_to_create_sms_service description: Error code allows to programatically handle errors. message: type: string title: Failed to create sms service. example: Failed to create sms service. description: Human readable message. resolution: type: string title: Please try again. example: Please try again. description: Human readable message with an explanation of how to solve the error. - title: FailedToCreateConversationServiceErrorTitle properties: errorCode: type: string title: failed_to_create_conversation_service example: failed_to_create_conversation_service description: Error code allows to programatically handle errors. message: type: string title: Failed to create conversation service. example: Failed to create conversation service. description: Human readable message. resolution: type: string title: Please try again. example: Please try again. description: Human readable message with an explanation of how to solve the error. - title: InternalErrorErrorTitle properties: errorCode: type: string title: internal_error example: internal_error description: Error code allows to programatically handle errors. message: type: string title: Internal server error. example: Internal server error. description: Human readable message. resolution: type: string title: Please wait and try again, if the error persist please contact support. example: Please wait and try again, if the error persist please contact support. description: Human readable message with an explanation of how to solve the error. summary: Create bundle for project tags: - Bundles x-tagAfterOperationSummary: color: white background: green label: GA /v1/projects/{projectId}/bundles/{bundleId}: get: description: |2- Retrieve created bundle and resources created. operationId: BundlesController_get_v1 parameters: - name: projectId required: true in: path description: The unique ID of the project. You can find this on the Sinch Dashboard. schema: type: string - name: bundleId required: true in: path description: The unique ID of the bundle. schema: type: string responses: '200': description: Responds with the bundle created. At time of response the bundle might not be completed. content: application/json: schema: $ref: '#/components/schemas/BundlesBundlesDto' examples: notReady: summary: Pending response description: |2- Response if the SMS App is not ready. This is the most likely response. value: id: 62a02dd40000000000000000 projectId: ea026751-3edf-40a9-ad93-1b382bd60a78 name: Sample response region: US subproject: id: ea026751-3edf-40a9-ad93-1b382bd60a78 name: Sample response parentProjectId: 18bbdcc8-117d-42f0-85cc-e30462c49404 status: PENDING smsApp: id: 54e5eb6cae6242c88c132c8da8bb1072 smsServiceId: d84b09da00fb4b76ff63f2fcea8d46c7 name: Sample response status: PENDING_ADD convApp: id: 31c12b1042d14b37ae96df96bb13575b name: Sample response processingMode: CONVERSATION webhooks: - id: 7c60ce550f1d40198d5ffb113d58591b projectId: ea026751-3edf-40a9-ad93-1b382bd60a78 target: https://webhook.site/d614d077-302a-4e0b-a06a-276923f7d8d4 triggers: - BUNDLE_DONE state: IN_PROGRESS ready: summary: Completed response description: |2- Response if the SMS App is ready. The data is the same as the callback payload. value: id: 62a02dd40000000000000000 projectId: ea026751-3edf-40a9-ad93-1b382bd60a78 name: Sample response region: US subproject: id: ea026751-3edf-40a9-ad93-1b382bd60a78 name: Sample response parentProjectId: 18bbdcc8-117d-42f0-85cc-e30462c49404 status: READY smsApp: id: 54e5eb6cae6242c88c132c8da8bb1072 smsServiceId: d84b09da00fb4b76ff63f2fcea8d46c7 name: Sample response status: ACTIVE accessTokens: - token convApp: id: 31c12b1042d14b37ae96df96bb13575b name: Sample response processingMode: CONVERSATION webhooks: - id: 7c60ce550f1d40198d5ffb113d58591b projectId: ea026751-3edf-40a9-ad93-1b382bd60a78 target: https://webhook.site/d614d077-302a-4e0b-a06a-276923f7d8d4 triggers: - BUNDLE_DONE state: DONE webhookDeliveryStatuses: - webhookId: 7c60ce550f1d40198d5ffb113d58591b date: '2025-02-14T10:54:15.676Z' httpStatusCode: 200 '400': description: BadRequest content: application/json: schema: example: errorCode: invalid_id_format message: Id is not in the expected format. resolution: bundleId param is in the wrong format. Confirm that you're sending the correct value. title: InvalidIdFormatErrorTitle properties: errorCode: type: string title: invalid_id_format example: invalid_id_format description: Error code allows to programatically handle errors. message: type: string title: Id is not in the expected format. example: Id is not in the expected format. description: Human readable message. resolution: type: string title: bundleId param is in the wrong format. Confirm that you're sending the correct value. example: bundleId param is in the wrong format. Confirm that you're sending the correct value. description: Human readable message with an explanation of how to solve the error. '401': description: Unauthorized content: application/json: schema: example: errorCode: unauthorized_error message: Unauthorized error. resolution: Verify that projectId is correct. title: UnauthorizedErrorErrorTitle properties: errorCode: type: string title: unauthorized_error example: unauthorized_error description: Error code allows to programatically handle errors. message: type: string title: Unauthorized error. example: Unauthorized error. description: Human readable message. resolution: type: string title: Verify that projectId is correct. example: Verify that projectId is correct. description: Human readable message with an explanation of how to solve the error. '404': description: NotFound content: application/json: schema: example: errorCode: bundle_not_found message: Bundle not found. resolution: Verify that the parameters are correct. title: BundleNotFoundErrorTitle properties: errorCode: type: string title: bundle_not_found example: bundle_not_found description: Error code allows to programatically handle errors. message: type: string title: Bundle not found. example: Bundle not found. description: Human readable message. resolution: type: string title: Verify that the parameters are correct. example: Verify that the parameters are correct. description: Human readable message with an explanation of how to solve the error. '500': description: InternalServerError content: application/json: schema: example: errorCode: internal_error message: Internal server error. resolution: Please wait and try again, if the error persist please contact support. title: InternalErrorErrorTitle properties: errorCode: type: string title: internal_error example: internal_error description: Error code allows to programatically handle errors. message: type: string title: Internal server error. example: Internal server error. description: Human readable message. resolution: type: string title: Please wait and try again, if the error persist please contact support. example: Please wait and try again, if the error persist please contact support. description: Human readable message with an explanation of how to solve the error. summary: Get bundle by projectId and bundleId tags: - Bundles x-tagAfterOperationSummary: color: white background: green label: GA /v1/projects/{projectId}/kakaotalk/categories/senders: get: description: |2- Returns a list of sender categories. operationId: CategoriesController_listSenderCategories_v1 parameters: - name: projectId required: true in: path description: The unique ID of the project. You can find this on the Sinch Dashboard. schema: type: string responses: '200': description: List of sender categories. content: application/json: schema: $ref: '#/components/schemas/KakaotalkSenderCategoryListDto' examples: response: summary: List response. description: |2- Response with sender categories. value: categories: - parentCode: '' depth: 1 code: '001' name: 건강 subcategories: - parentCode: '001' depth: 2 code: '0001' name: 병원 subcategories: - parentCode: '0001' depth: 3 code: '0001' name: 종합병원 subcategories: [] - parentCode: '0001' depth: 3 code: '0002' name: 피부과 subcategories: [] - parentCode: '0001' depth: 3 code: '0003' name: 성형외과 subcategories: [] - parentCode: '001' depth: 2 code: '0002' name: 약국 subcategories: - parentCode: '0002' depth: 3 code: '0001' name: 약국 subcategories: [] - parentCode: '001' depth: 2 code: '0003' name: 의료기기/의약품 subcategories: - parentCode: '0003' depth: 3 code: '0001' name: 의료기기/의약품 subcategories: [] - parentCode: '001' depth: 2 code: '0004' name: 건강식품/건강정보 subcategories: - parentCode: '0004' depth: 3 code: '0001' name: 건강식품/건강정보 subcategories: [] - parentCode: '' depth: 1 code: '002' name: 교육 subcategories: - parentCode: '002' depth: 2 code: '0001' name: 학교 subcategories: - parentCode: '0001' depth: 3 code: '0001' name: 유치원 subcategories: [] '400': description: BadRequest content: application/json: schema: example: errorCode: project_not_initialized message: Project not initialized for KakaoTalk. resolution: Verify that the project ID is correct and that it has been onboarded for KakaoTalk. title: ProjectNotInitializedErrorTitle properties: errorCode: type: string title: project_not_initialized example: project_not_initialized description: Error code allows to programatically handle errors. message: type: string title: Project not initialized for KakaoTalk. example: Project not initialized for KakaoTalk. description: Human readable message. resolution: type: string title: Verify that the project ID is correct and that it has been onboarded for KakaoTalk. example: Verify that the project ID is correct and that it has been onboarded for KakaoTalk. description: Human readable message with an explanation of how to solve the error. '401': description: Unauthorized content: application/json: schema: example: errorCode: unauthorized_error message: Unauthorized error. resolution: Verify that projectId is correct. title: UnauthorizedErrorErrorTitle properties: errorCode: type: string title: unauthorized_error example: unauthorized_error description: Error code allows to programatically handle errors. message: type: string title: Unauthorized error. example: Unauthorized error. description: Human readable message. resolution: type: string title: Verify that projectId is correct. example: Verify that projectId is correct. description: Human readable message with an explanation of how to solve the error. '500': description: InternalServerError content: application/json: schema: example: errorCode: internal_error message: Internal server error. resolution: Please wait and try again, if the error persist please contact support. title: InternalErrorErrorTitle properties: errorCode: type: string title: internal_error example: internal_error description: Error code allows to programatically handle errors. message: type: string title: Internal server error. example: Internal server error. description: Human readable message. resolution: type: string title: Please wait and try again, if the error persist please contact support. example: Please wait and try again, if the error persist please contact support. description: Human readable message with an explanation of how to solve the error. summary: List all sender categories. tags: - KakaoTalk Categories x-tagAfterOperationSummary: color: white background: green label: GA /v1/projects/{projectId}/kakaotalk/categories/senders/{plusFriendId}/templates: get: description: |2- Returns a list of template categories for the specified project. operationId: CategoriesController_getTemplateCategories_v1 parameters: - name: projectId required: true in: path description: The unique ID of the project. You can find this on the Sinch Dashboard. schema: type: string - name: plusFriendId required: true in: path description: The unique ID of the sender. schema: type: string - name: pageSize required: false in: query schema: type: number minimum: 1 maximum: 100 description: The page size requested. - name: pageToken required: false in: query schema: type: string description: The page token if retrieving the next page from a previous query. responses: '200': description: List of template categories content: application/json: schema: $ref: '#/components/schemas/KakaotalkTemplateCategoryListDto' examples: response: summary: List response. description: |2- Response with categories. value: totalSize: 2 pageSize: 50 categories: - name: 회원 nameEnglish: Membership subcategories: - code: '001001' name: 회원가입 nameEnglish: Join membership groupName: 회원 inclusion: 회원가입 완료 내용의 템플릿이 대상입니다. 가입에 따른 축하적립금/쿠폰을 포함합니다. exclusion: 상품/서비스가입은 구매 > 상품가입 (002002)로 분류합니다. - code: '001002' name: 인증/비밀번호/로그인 nameEnglish: Authentication/Password/Login groupName: 회원 inclusion: OTP, 로그인여부, 임시비밀번호, 본인확인 용도의 템플릿이 대상입니다. exclusion: '' - code: '001003' name: 회원정보/회원혜택 nameEnglish: Membership information/Member ship benefits groupName: 회원 inclusion: 회원등급안내, 혜택안내, 생일/기념일 축하 동의 템플릿이 대상입니다. exclusion: '' '400': description: BadRequest content: application/json: schema: oneOf: - title: ProjectNotInitializedErrorTitle properties: errorCode: type: string title: project_not_initialized example: project_not_initialized description: Error code allows to programatically handle errors. message: type: string title: Project not initialized for KakaoTalk. example: Project not initialized for KakaoTalk. description: Human readable message. resolution: type: string title: Verify that the project ID is correct and that it has been onboarded for KakaoTalk. example: Verify that the project ID is correct and that it has been onboarded for KakaoTalk. description: Human readable message with an explanation of how to solve the error. - title: InvalidPageSizeErrorTitle properties: errorCode: type: string title: invalid_page_size example: invalid_page_size description: Error code allows to programatically handle errors. message: type: string title: Page size must be numeric. example: Page size must be numeric. description: Human readable message. resolution: type: string title: Use a integer value for pageSize parameter. example: Use a integer value for pageSize parameter. description: Human readable message with an explanation of how to solve the error. - title: InvalidPageTokenErrorTitle properties: errorCode: type: string title: invalid_page_token example: invalid_page_token description: Error code allows to programatically handle errors. message: type: string title: Invalid page token. example: Invalid page token. description: Human readable message. resolution: type: string title: The page token to use is provided in the previous query response, for new queries simply leave this field undefined. example: The page token to use is provided in the previous query response, for new queries simply leave this field undefined. description: Human readable message with an explanation of how to solve the error. '401': description: Unauthorized content: application/json: schema: example: errorCode: unauthorized_error message: Unauthorized error. resolution: Verify that projectId is correct. title: UnauthorizedErrorErrorTitle properties: errorCode: type: string title: unauthorized_error example: unauthorized_error description: Error code allows to programatically handle errors. message: type: string title: Unauthorized error. example: Unauthorized error. description: Human readable message. resolution: type: string title: Verify that projectId is correct. example: Verify that projectId is correct. description: Human readable message with an explanation of how to solve the error. '404': description: NotFound content: application/json: schema: example: errorCode: sender_not_found message: Sender not found. resolution: Verify that the parameters are correct. title: SenderNotFoundErrorTitle properties: errorCode: type: string title: sender_not_found example: sender_not_found description: Error code allows to programatically handle errors. message: type: string title: Sender not found. example: Sender not found. description: Human readable message. resolution: type: string title: Verify that the parameters are correct. example: Verify that the parameters are correct. description: Human readable message with an explanation of how to solve the error. '500': description: InternalServerError content: application/json: schema: example: errorCode: internal_error message: Internal server error. resolution: Please wait and try again, if the error persist please contact support. title: InternalErrorErrorTitle properties: errorCode: type: string title: internal_error example: internal_error description: Error code allows to programatically handle errors. message: type: string title: Internal server error. example: Internal server error. description: Human readable message. resolution: type: string title: Please wait and try again, if the error persist please contact support. example: Please wait and try again, if the error persist please contact support. description: Human readable message with an explanation of how to solve the error. summary: List all template categories in project tags: - KakaoTalk Categories x-tagAfterOperationSummary: color: white background: green label: GA /v1/projects/{projectId}/kakaotalk/senders: get: description: |2- Returns a paginated list of senders for the specified project. If no page token is supplied then the first `50` will be returned. operationId: KakaotalkSendersController_listSenders_v1 parameters: - name: projectId required: true in: path description: The unique ID of the project. You can find this on the Sinch Dashboard. schema: type: string - name: pageToken required: false in: query schema: type: string description: The page token if retrieving the next page from a previous query. - name: pageSize required: false in: query schema: type: number minimum: 1 maximum: 100 description: The page size requested. - name: filterStates required: false in: query description: Optionally query for sender by states. schema: type: array items: $ref: '#/components/schemas/KakaotalkSenderStatesEnum' - name: filterStatuses required: false in: query description: Optionally query for sender by statuses. schema: type: array items: $ref: '#/components/schemas/KakaotalkSenderStatusesEnum' responses: '200': description: List of senders content: application/json: schema: $ref: '#/components/schemas/KakaotalkSenderListDto' examples: response: summary: List response description: |2- Response with senders. value: totalSize: 2 pageSize: 50 senders: - id: cf11794a-6a5e-4a12-b103-da79bd378bf1 plusFriendId: 5WY5zKfY3pB56EmDVUPQ state: ACTIVE details: adminPhoneNo: '+48777777777' name: Test Name logoImage: https://example-logo-image.com topLevelCategoryCode: '019' midLevelCategoryCode: '0006' subLevelCategoryCode: '0001' created: '2023-02-23T11:28:51.194Z' modified: '2023-02-23T11:28:51.194Z' - id: cf11794a-6a5e-4a12-b103-da79bd378bf1 plusFriendId: 5WY5zKfY3pB56EmDVUPQ changes: status: REJECTED details: adminPhoneNo: '+48777777777' name: Test Name logoImage: https://example-logo-image.com topLevelCategoryCode: '019' midLevelCategoryCode: '0006' subLevelCategoryCode: '0001' created: '2023-02-23T11:28:51.194Z' modified: '2023-02-23T11:28:51.194Z' '400': description: BadRequest content: application/json: schema: oneOf: - title: InvalidPageTokenErrorTitle properties: errorCode: type: string title: invalid_page_token example: invalid_page_token description: Error code allows to programatically handle errors. message: type: string title: Invalid page token. example: Invalid page token. description: Human readable message. resolution: type: string title: The page token to use is provided in the previous query response, for new queries simply leave this field undefined. example: The page token to use is provided in the previous query response, for new queries simply leave this field undefined. description: Human readable message with an explanation of how to solve the error. - title: InvalidPageSizeErrorTitle properties: errorCode: type: string title: invalid_page_size example: invalid_page_size description: Error code allows to programatically handle errors. message: type: string title: Page size must be numeric. example: Page size must be numeric. description: Human readable message. resolution: type: string title: Use a integer value for pageSize parameter. example: Use a integer value for pageSize parameter. description: Human readable message with an explanation of how to solve the error. - title: ProjectNotInitializedErrorTitle properties: errorCode: type: string title: project_not_initialized example: project_not_initialized description: Error code allows to programatically handle errors. message: type: string title: Project not initialized for KakaoTalk. example: Project not initialized for KakaoTalk. description: Human readable message. resolution: type: string title: Verify that the project ID is correct and that it has been onboarded for KakaoTalk. example: Verify that the project ID is correct and that it has been onboarded for KakaoTalk. description: Human readable message with an explanation of how to solve the error. - title: InvalidFilterStatesErrorTitle properties: errorCode: type: string title: invalid_filter_states example: invalid_filter_states description: Error code allows to programatically handle errors. message: type: string title: Invalid filterStates. example: Invalid filterStates. description: Human readable message. resolution: type: string title: Verify that the filterStates used are supported by the Provisioning API. example: Verify that the filterStates used are supported by the Provisioning API. description: Human readable message with an explanation of how to solve the error. additionalInformation: type: object title: additionalInformation example: supportedCodes: ACTIVE, BLOCKED, INACTIVE, SUSPENDED, VERIFYING description: Additional information for error. - title: InvalidFilterStatusesErrorTitle properties: errorCode: type: string title: invalid_filter_statuses example: invalid_filter_statuses description: Error code allows to programatically handle errors. message: type: string title: Invalid filter statuses. example: Invalid filter statuses. description: Human readable message. resolution: type: string title: Verify that the filterStatuses used are supported by the Provisioning API. example: Verify that the filterStatuses used are supported by the Provisioning API. description: Human readable message with an explanation of how to solve the error. additionalInformation: type: object title: additionalInformation example: supportedCodes: DRAFT, IN_PROGRESS, REJECTED description: Additional information for error. '401': description: Unauthorized content: application/json: schema: example: errorCode: unauthorized_error message: Unauthorized error. resolution: Verify that projectId is correct. title: UnauthorizedErrorErrorTitle properties: errorCode: type: string title: unauthorized_error example: unauthorized_error description: Error code allows to programatically handle errors. message: type: string title: Unauthorized error. example: Unauthorized error. description: Human readable message. resolution: type: string title: Verify that projectId is correct. example: Verify that projectId is correct. description: Human readable message with an explanation of how to solve the error. '404': description: NotFound content: application/json: schema: example: errorCode: sender_not_found message: Sender not found. resolution: Verify that the parameters are correct. title: SenderNotFoundErrorTitle properties: errorCode: type: string title: sender_not_found example: sender_not_found description: Error code allows to programatically handle errors. message: type: string title: Sender not found. example: Sender not found. description: Human readable message. resolution: type: string title: Verify that the parameters are correct. example: Verify that the parameters are correct. description: Human readable message with an explanation of how to solve the error. '500': description: InternalServerError content: application/json: schema: example: errorCode: internal_error message: Internal server error. resolution: Please wait and try again, if the error persist please contact support. title: InternalErrorErrorTitle properties: errorCode: type: string title: internal_error example: internal_error description: Error code allows to programatically handle errors. message: type: string title: Internal server error. example: Internal server error. description: Human readable message. resolution: type: string title: Please wait and try again, if the error persist please contact support. example: Please wait and try again, if the error persist please contact support. description: Human readable message with an explanation of how to solve the error. summary: List all senders in project tags: - KakaoTalk Senders x-tagAfterOperationSummary: color: white background: green label: GA post: callbacks: Active: '{$request.body#webhooks.target}': post: summary: Sender state active description: |2- Received when sender verification is complete and sender is ready to use. parameters: - in: header name: x-sinch-webhook-signature schema: type: string format: uuid example: - in: header name: x-sinch-webhook-signature-algorithm schema: type: string enum: - HmacSHA256 uniqueItems: false example: HmacSHA256 - in: header name: x-sinch-webhook-signature-nonce schema: type: string example: 01EAW2BNWCG9DC13RS582V0ZQ3 - in: header name: x-sinch-webhook-signature-timestamp schema: type: string format: timestamp example: '1592227387' requestBody: content: application/json: schema: type: object properties: type: description: Type of event, in this case `KAKAOTALK_SENDER_ACTIVE`. type: string payload: description: Sender at time of callback. allOf: - $ref: '#/components/schemas/KakaotalkSenderDto' comment: description: Comment for sender. type: string required: - type - payload example: type: KAKAOTALK_SENDER_ACTIVE payload: id: cf11794a-6a5e-4a12-b103-da79bd378bf1 plusFriendId: 5WY5zKfY3pB56EmDVUPQ state: ACTIVE details: adminPhoneNo: '+48777777777' name: Test Name logoImage: https://example-logo-image.com topLevelCategoryCode: '019' midLevelCategoryCode: '0006' subLevelCategoryCode: '0001' created: '2023-02-23T11:28:51.194Z' modified: '2023-02-23T11:28:51.194Z' responses: '200': description: Response to callback will be ignored. The call will retry if unsuccessful. Inactive: '{$request.body#webhooks.target}': post: summary: Sender inactive description: |2- Received when a sender is inactivated. parameters: - in: header name: x-sinch-webhook-signature schema: type: string format: uuid example: - in: header name: x-sinch-webhook-signature-algorithm schema: type: string enum: - HmacSHA256 uniqueItems: false example: HmacSHA256 - in: header name: x-sinch-webhook-signature-nonce schema: type: string example: 01EAW2BNWCG9DC13RS582V0ZQ3 - in: header name: x-sinch-webhook-signature-timestamp schema: type: string format: timestamp example: '1592227387' requestBody: content: application/json: schema: type: object properties: type: description: Type of event, in this case `KAKAOTALK_SENDER_INACTIVE`. type: string payload: description: Sender at time of callback. allOf: - $ref: '#/components/schemas/KakaotalkSenderDto' comment: description: Comment for sender. type: string required: - type - payload example: type: KAKAOTALK_SENDER_INACTIVE payload: id: cf11794a-6a5e-4a12-b103-da79bd378bf1 plusFriendId: 5WY5zKfY3pB56EmDVUPQ state: INACTIVE details: adminPhoneNo: '+48777777777' name: Test Name logoImage: https://example-logo-image.com topLevelCategoryCode: '019' midLevelCategoryCode: '0006' subLevelCategoryCode: '0001' created: '2023-02-23T11:28:51.194Z' modified: '2023-02-23T11:28:51.194Z' responses: '200': description: Response to callback will be ignored. The call will retry if unsuccessful. Rejected: '{$request.body#webhooks.target}': post: summary: Sender rejected description: |2- Received when a sender is rejected. parameters: - in: header name: x-sinch-webhook-signature schema: type: string format: uuid example: - in: header name: x-sinch-webhook-signature-algorithm schema: type: string enum: - HmacSHA256 uniqueItems: false example: HmacSHA256 - in: header name: x-sinch-webhook-signature-nonce schema: type: string example: 01EAW2BNWCG9DC13RS582V0ZQ3 - in: header name: x-sinch-webhook-signature-timestamp schema: type: string format: timestamp example: '1592227387' requestBody: content: application/json: schema: type: object properties: type: description: Type of event, in this case `KAKAOTALK_SENDER_REJECTED`. type: string payload: description: Sender at time of callback. allOf: - $ref: '#/components/schemas/KakaotalkSenderDto' comment: description: Comment for sender. type: string required: - type - payload example: type: KAKAOTALK_SENDER_REJECTED payload: id: cf11794a-6a5e-4a12-b103-da79bd378bf1 plusFriendId: 5WY5zKfY3pB56EmDVUPQ changes: status: REJECTED details: adminPhoneNo: '+48777777777' name: Test Name logoImage: https://example-logo-image.com topLevelCategoryCode: '019' midLevelCategoryCode: '0006' subLevelCategoryCode: '0001' created: '2023-02-23T11:28:51.194Z' modified: '2023-02-23T11:28:51.194Z' responses: '200': description: Response to callback will be ignored. The call will retry if unsuccessful. Comment: '{$request.body#webhooks.target}': post: summary: Comment on sender description: |2- Received when a comment has been added to the sender. parameters: - in: header name: x-sinch-webhook-signature schema: type: string format: uuid example: - in: header name: x-sinch-webhook-signature-algorithm schema: type: string enum: - HmacSHA256 uniqueItems: false example: HmacSHA256 - in: header name: x-sinch-webhook-signature-nonce schema: type: string example: 01EAW2BNWCG9DC13RS582V0ZQ3 - in: header name: x-sinch-webhook-signature-timestamp schema: type: string format: timestamp example: '1592227387' requestBody: content: application/json: schema: type: object properties: type: description: Type of event, in this case `KAKAOTALK_SENDER_COMMENT_ADDED`. type: string payload: description: Sender at time of callback. allOf: - $ref: '#/components/schemas/KakaotalkSenderDto' comment: description: Comment for sender. type: string required: - type - payload - comment example: type: KAKAOTALK_SENDER_COMMENT_ADDED payload: id: cf11794a-6a5e-4a12-b103-da79bd378bf1 plusFriendId: 5WY5zKfY3pB56EmDVUPQ state: INACTIVE details: adminPhoneNo: '+48777777777' name: Test Name logoImage: https://example-logo-image.com topLevelCategoryCode: '019' midLevelCategoryCode: '0006' subLevelCategoryCode: '0001' created: '2023-02-23T11:28:51.194Z' modified: '2023-02-23T11:28:51.194Z' comment: Example comment responses: '200': description: Response to callback will be ignored. The call will retry if unsuccessful. description: |2- Creates a sender for a project. operationId: KakaotalkSendersController_createSender_v1 parameters: - name: projectId required: true in: path description: The unique ID of the project. You can find this on the Sinch Dashboard. schema: type: string requestBody: required: true description: Sender data content: application/json: schema: $ref: '#/components/schemas/KakaotalkInputSenderDto' examples: full: summary: Full body request description: |2- Example of full body to create a sender. value: plusFriendId: plusFriendId status: SUBMIT saveDraftOnFailure: true details: adminPhoneNo: '+48777777777' name: Test Name logoImage: https://example-logo-image.com topLevelCategoryCode: '019' midLevelCategoryCode: '0006' subLevelCategoryCode: '0001' minimal: summary: Minimal body request description: |2- Example of minimal body to create a sender. value: plusFriendId: plusFriendId details: adminPhoneNo: '+48777777777' name: Test Name topLevelCategoryCode: '019' midLevelCategoryCode: '0006' subLevelCategoryCode: '0001' responses: '201': description: Sender content: application/json: schema: $ref: '#/components/schemas/KakaotalkSenderDto' examples: response: summary: Create response description: |2- Response when successfully creating a sender. value: id: cf11794a-6a5e-4a12-b103-da79bd378bf1 plusFriendId: 5WY5zKfY3pB56EmDVUPQ changes: status: REJECTED details: adminPhoneNo: '+48777777777' name: Test Name logoImage: https://example-logo-image.com topLevelCategoryCode: '019' midLevelCategoryCode: '0006' subLevelCategoryCode: '0001' created: '2023-02-23T11:28:51.194Z' modified: '2023-02-23T11:28:51.194Z' '400': description: BadRequest content: application/json: schema: oneOf: - title: FileInvalidMimeTypeErrorTitle properties: errorCode: type: string title: file_invalid_mime_type example: file_invalid_mime_type description: Error code allows to programatically handle errors. message: type: string title: 'details.logoImage: invalid file mime type.' example: 'details.logoImage: invalid file mime type.' description: Human readable message. resolution: type: string title: 'Try again with supported mime types: image/jpeg, image/png.' example: 'Try again with supported mime types: image/jpeg, image/png.' description: Human readable message with an explanation of how to solve the error. - title: SenderInvalidCategoryCodeErrorTitle properties: errorCode: type: string title: sender_invalid_category_code example: sender_invalid_category_code description: Error code allows to programatically handle errors. message: type: string title: Invalid sender category code(s). example: Invalid sender category code(s). description: Human readable message. resolution: type: string title: Verify that the sender category code(s) used is supported. example: Verify that the sender category code(s) used is supported. description: Human readable message with an explanation of how to solve the error. - title: InvalidInputErrorTitle properties: errorCode: type: string title: invalid_input example: invalid_input description: Error code allows to programatically handle errors. message: type: string title: Invalid input. example: Invalid input. description: Human readable message. resolution: type: string title: Correct the validation errors and submit again. example: Correct the validation errors and submit again. description: Human readable message with an explanation of how to solve the error. additionalInformation: type: object title: additionalInformation example: validationErrors: - plusFriendId must be longer than or equal to 1 characters description: Additional information for error. '401': description: Unauthorized content: application/json: schema: example: errorCode: unauthorized_error message: Unauthorized error. resolution: Verify that projectId is correct. title: UnauthorizedErrorErrorTitle properties: errorCode: type: string title: unauthorized_error example: unauthorized_error description: Error code allows to programatically handle errors. message: type: string title: Unauthorized error. example: Unauthorized error. description: Human readable message. resolution: type: string title: Verify that projectId is correct. example: Verify that projectId is correct. description: Human readable message with an explanation of how to solve the error. '404': description: NotFound content: application/json: schema: example: errorCode: project_not_found message: Project not found. resolution: Verify that the projectId is correct. title: ProjectNotFoundErrorTitle properties: errorCode: type: string title: project_not_found example: project_not_found description: Error code allows to programatically handle errors. message: type: string title: Project not found. example: Project not found. description: Human readable message. resolution: type: string title: Verify that the projectId is correct. example: Verify that the projectId is correct. description: Human readable message with an explanation of how to solve the error. '409': description: Conflict content: application/json: schema: oneOf: - title: AccountExistsErrorTitle properties: errorCode: type: string title: account_exists example: account_exists description: Error code allows to programatically handle errors. message: type: string title: Account already exists. example: Account already exists. description: Human readable message. resolution: type: string title: There can only be one KakaoTalk account for each project. example: There can only be one KakaoTalk account for each project. description: Human readable message with an explanation of how to solve the error. - title: AccountNotUpdatableErrorTitle properties: errorCode: type: string title: account_not_updatable example: account_not_updatable description: Error code allows to programatically handle errors. message: type: string title: Account is not updatable. example: Account is not updatable. description: Human readable message. resolution: type: string title: Please contact support. example: Please contact support. description: Human readable message with an explanation of how to solve the error. - title: AccountDataIsCorruptErrorTitle properties: errorCode: type: string title: account_data_is_corrupt example: account_data_is_corrupt description: Error code allows to programatically handle errors. message: type: string title: Account data is corrupt. example: Account data is corrupt. description: Human readable message. resolution: type: string title: Please contact support. example: Please contact support. description: Human readable message with an explanation of how to solve the error. - title: FileNotFoundErrorTitle properties: errorCode: type: string title: file_not_found example: file_not_found description: Error code allows to programatically handle errors. message: type: string title: 'details.logoImage: file not found.' example: 'details.logoImage: file not found.' description: Human readable message. resolution: type: string title: Verify that the url is correct. example: Verify that the url is correct. description: Human readable message with an explanation of how to solve the error. - title: FileUnexpectedErrorErrorTitle properties: errorCode: type: string title: file_unexpected_error example: file_unexpected_error description: Error code allows to programatically handle errors. message: type: string title: 'details.logoImage: file unexpected error.' example: 'details.logoImage: file unexpected error.' description: Human readable message. resolution: type: string title: The file cannot be handled properly. Please try with another one. example: The file cannot be handled properly. Please try with another one. description: Human readable message with an explanation of how to solve the error. - title: FileSizeTooLargeErrorTitle properties: errorCode: type: string title: file_size_too_large example: file_size_too_large description: Error code allows to programatically handle errors. message: type: string title: 'details.logoImage: file size is too large.' example: 'details.logoImage: file size is too large.' description: Human readable message. resolution: type: string title: Try again with a smaller file. Max size for `image/jpeg` is 5MB. example: Try again with a smaller file. Max size for `image/jpeg` is 5MB. description: Human readable message with an explanation of how to solve the error. - title: PlusFriendIdUsedErrorTitle properties: errorCode: type: string title: plus_friend_id_used example: plus_friend_id_used description: Error code allows to programatically handle errors. message: type: string title: plusFriendId is already used. example: plusFriendId is already used. description: Human readable message. resolution: type: string title: plusFriendId is already used by another Sender, verify that the parameters are correct. example: plusFriendId is already used by another Sender, verify that the parameters are correct. description: Human readable message with an explanation of how to solve the error. '412': description: PreconditionFailed content: application/json: schema: example: errorCode: account_is_in_progress message: Account creation is in progress. resolution: Please contact support. title: AccountIsInProgressErrorTitle properties: errorCode: type: string title: account_is_in_progress example: account_is_in_progress description: Error code allows to programatically handle errors. message: type: string title: Account creation is in progress. example: Account creation is in progress. description: Human readable message. resolution: type: string title: Please contact support. example: Please contact support. description: Human readable message with an explanation of how to solve the error. '500': description: InternalServerError content: application/json: schema: example: errorCode: internal_error message: Internal server error. resolution: Please wait and try again, if the error persist please contact support. title: InternalErrorErrorTitle properties: errorCode: type: string title: internal_error example: internal_error description: Error code allows to programatically handle errors. message: type: string title: Internal server error. example: Internal server error. description: Human readable message. resolution: type: string title: Please wait and try again, if the error persist please contact support. example: Please wait and try again, if the error persist please contact support. description: Human readable message with an explanation of how to solve the error. summary: Create sender for project tags: - KakaoTalk Senders x-tagAfterOperationSummary: color: white background: green label: GA /v1/projects/{projectId}/kakaotalk/senders/{plusFriendId}: get: description: |2- Returns a sender for a project. operationId: SendersController_getSender_v1 parameters: - name: projectId required: true in: path description: The unique ID of the project. You can find this on the Sinch Dashboard. schema: type: string - name: plusFriendId required: true in: path description: The unique ID of the sender. schema: type: string responses: '200': description: Sender content: application/json: schema: $ref: '#/components/schemas/KakaotalkSenderDto' examples: response: summary: Get response description: |2- Response with a sender. value: id: cf11794a-6a5e-4a12-b103-da79bd378bf1 plusFriendId: 5WY5zKfY3pB56EmDVUPQ state: ACTIVE details: adminPhoneNo: '+48777777777' name: Test Name logoImage: https://example-logo-image.com topLevelCategoryCode: '019' midLevelCategoryCode: '0006' subLevelCategoryCode: '0001' created: '2023-02-23T11:28:51.194Z' modified: '2023-02-23T11:28:51.194Z' '400': description: BadRequest content: application/json: schema: example: errorCode: project_not_initialized message: Project not initialized for KakaoTalk. resolution: Verify that the project ID is correct and that it has been onboarded for KakaoTalk. title: ProjectNotInitializedErrorTitle properties: errorCode: type: string title: project_not_initialized example: project_not_initialized description: Error code allows to programatically handle errors. message: type: string title: Project not initialized for KakaoTalk. example: Project not initialized for KakaoTalk. description: Human readable message. resolution: type: string title: Verify that the project ID is correct and that it has been onboarded for KakaoTalk. example: Verify that the project ID is correct and that it has been onboarded for KakaoTalk. description: Human readable message with an explanation of how to solve the error. '401': description: Unauthorized content: application/json: schema: example: errorCode: unauthorized_error message: Unauthorized error. resolution: Verify that projectId is correct. title: UnauthorizedErrorErrorTitle properties: errorCode: type: string title: unauthorized_error example: unauthorized_error description: Error code allows to programatically handle errors. message: type: string title: Unauthorized error. example: Unauthorized error. description: Human readable message. resolution: type: string title: Verify that projectId is correct. example: Verify that projectId is correct. description: Human readable message with an explanation of how to solve the error. '404': description: NotFound content: application/json: schema: example: errorCode: sender_not_found message: Sender not found. resolution: Verify that the parameters are correct. title: SenderNotFoundErrorTitle properties: errorCode: type: string title: sender_not_found example: sender_not_found description: Error code allows to programatically handle errors. message: type: string title: Sender not found. example: Sender not found. description: Human readable message. resolution: type: string title: Verify that the parameters are correct. example: Verify that the parameters are correct. description: Human readable message with an explanation of how to solve the error. '500': description: InternalServerError content: application/json: schema: example: errorCode: internal_error message: Internal server error. resolution: Please wait and try again, if the error persist please contact support. title: InternalErrorErrorTitle properties: errorCode: type: string title: internal_error example: internal_error description: Error code allows to programatically handle errors. message: type: string title: Internal server error. example: Internal server error. description: Human readable message. resolution: type: string title: Please wait and try again, if the error persist please contact support. example: Please wait and try again, if the error persist please contact support. description: Human readable message with an explanation of how to solve the error. summary: Get sender for project tags: - KakaoTalk Senders x-tagAfterOperationSummary: color: white background: green label: GA delete: description: |2- Marks a sender for removal. Once requested the sender will be active for 60 days to deliver final messages. After 60 days it will be removed. operationId: SendersController_deleteSender_v1 parameters: - name: projectId required: true in: path description: The unique ID of the project. You can find this on the Sinch Dashboard. schema: type: string - name: plusFriendId required: true in: path description: The unique ID of the sender. schema: type: string responses: '204': description: Sender marked for delete after 60 days. '400': description: BadRequest content: application/json: schema: example: errorCode: project_not_initialized message: Project not initialized for KakaoTalk. resolution: Verify that the project ID is correct and that it has been onboarded for KakaoTalk. title: ProjectNotInitializedErrorTitle properties: errorCode: type: string title: project_not_initialized example: project_not_initialized description: Error code allows to programatically handle errors. message: type: string title: Project not initialized for KakaoTalk. example: Project not initialized for KakaoTalk. description: Human readable message. resolution: type: string title: Verify that the project ID is correct and that it has been onboarded for KakaoTalk. example: Verify that the project ID is correct and that it has been onboarded for KakaoTalk. description: Human readable message with an explanation of how to solve the error. '401': description: Unauthorized content: application/json: schema: example: errorCode: unauthorized_error message: Unauthorized error. resolution: Verify that projectId is correct. title: UnauthorizedErrorErrorTitle properties: errorCode: type: string title: unauthorized_error example: unauthorized_error description: Error code allows to programatically handle errors. message: type: string title: Unauthorized error. example: Unauthorized error. description: Human readable message. resolution: type: string title: Verify that projectId is correct. example: Verify that projectId is correct. description: Human readable message with an explanation of how to solve the error. '404': description: NotFound content: application/json: schema: example: errorCode: sender_not_found message: Sender not found. resolution: Verify that the parameters are correct. title: SenderNotFoundErrorTitle properties: errorCode: type: string title: sender_not_found example: sender_not_found description: Error code allows to programatically handle errors. message: type: string title: Sender not found. example: Sender not found. description: Human readable message. resolution: type: string title: Verify that the parameters are correct. example: Verify that the parameters are correct. description: Human readable message with an explanation of how to solve the error. '409': description: Conflict content: application/json: schema: example: errorCode: sender_already_deleted message: The sender has been deleted within the last 60 days. resolution: Wait the required time. title: SenderAlreadyDeletedErrorTitle properties: errorCode: type: string title: sender_already_deleted example: sender_already_deleted description: Error code allows to programatically handle errors. message: type: string title: The sender has been deleted within the last 60 days. example: The sender has been deleted within the last 60 days. description: Human readable message. resolution: type: string title: Wait the required time. example: Wait the required time. description: Human readable message with an explanation of how to solve the error. '500': description: InternalServerError content: application/json: schema: example: errorCode: internal_error message: Internal server error. resolution: Please wait and try again, if the error persist please contact support. title: InternalErrorErrorTitle properties: errorCode: type: string title: internal_error example: internal_error description: Error code allows to programatically handle errors. message: type: string title: Internal server error. example: Internal server error. description: Human readable message. resolution: type: string title: Please wait and try again, if the error persist please contact support. example: Please wait and try again, if the error persist please contact support. description: Human readable message with an explanation of how to solve the error. summary: Delete sender for project tags: - KakaoTalk Senders x-tagAfterOperationSummary: color: white background: green label: GA patch: description: |2- Updates a draft sender in project. operationId: SendersController_updateSender_v1 parameters: - name: projectId required: true in: path description: The unique ID of the project. You can find this on the Sinch Dashboard. schema: type: string - name: plusFriendId required: true in: path description: The unique ID of the sender. schema: type: string requestBody: required: true description: Supported sender fields to update content: application/json: schema: $ref: '#/components/schemas/KakaotalkInputUpdateSenderDto' examples: full: summary: Full body request description: |2- Example of full body to update a sender. value: status: SUBMIT details: adminPhoneNo: '+48777777777' name: Test Name logoImage: https://example-logo-image.com topLevelCategoryCode: '019' midLevelCategoryCode: '0006' subLevelCategoryCode: '0001' responses: '200': description: Updated sender in project content: application/json: schema: $ref: '#/components/schemas/KakaotalkSenderDto' examples: response: summary: Update response description: |2- Response when successfully update a sender. value: id: cf11794a-6a5e-4a12-b103-da79bd378bf1 plusFriendId: 5WY5zKfY3pB56EmDVUPQ state: ACTIVE changes: status: REJECTED details: adminPhoneNo: '+48777777777' name: Test Name logoImage: https://example-logo-image.com topLevelCategoryCode: '019' midLevelCategoryCode: '0006' subLevelCategoryCode: '0001' details: adminPhoneNo: '+48777777777' name: Test Name logoImage: https://example-logo-image.com topLevelCategoryCode: '019' midLevelCategoryCode: '0006' subLevelCategoryCode: '0001' created: '2023-02-23T11:28:51.194Z' modified: '2023-02-23T11:28:51.194Z' responseSenderDraft: summary: Update response of a draft description: |2- Response when successfully updating a sender draft. value: plusFriendId: 5WY5zKfY3pB56EmDVUPQ changes: status: REJECTED details: adminPhoneNo: '+48777777777' name: Test Name logoImage: https://example-logo-image.com topLevelCategoryCode: '019' midLevelCategoryCode: '0006' subLevelCategoryCode: '0001' '400': description: BadRequest content: application/json: schema: oneOf: - title: FileInvalidMimeTypeErrorTitle properties: errorCode: type: string title: file_invalid_mime_type example: file_invalid_mime_type description: Error code allows to programatically handle errors. message: type: string title: 'details.logoImage: invalid file mime type.' example: 'details.logoImage: invalid file mime type.' description: Human readable message. resolution: type: string title: 'Try again with supported mime types: image/jpeg, image/png.' example: 'Try again with supported mime types: image/jpeg, image/png.' description: Human readable message with an explanation of how to solve the error. - title: InvalidInputErrorTitle properties: errorCode: type: string title: invalid_input example: invalid_input description: Error code allows to programatically handle errors. message: type: string title: Invalid input. example: Invalid input. description: Human readable message. resolution: type: string title: Correct the validation errors and submit again. example: Correct the validation errors and submit again. description: Human readable message with an explanation of how to solve the error. additionalInformation: type: object title: additionalInformation example: validationErrors: - Description of fields failing validation description: Additional information for error. - title: ProjectNotInitializedErrorTitle properties: errorCode: type: string title: project_not_initialized example: project_not_initialized description: Error code allows to programatically handle errors. message: type: string title: Project not initialized for KakaoTalk. example: Project not initialized for KakaoTalk. description: Human readable message. resolution: type: string title: Verify that the project ID is correct and that it has been onboarded for KakaoTalk. example: Verify that the project ID is correct and that it has been onboarded for KakaoTalk. description: Human readable message with an explanation of how to solve the error. - title: NoFieldsToUpdateErrorTitle properties: errorCode: type: string title: no_fields_to_update example: no_fields_to_update description: Error code allows to programatically handle errors. message: type: string title: No fields to be updated. example: No fields to be updated. description: Human readable message. resolution: type: string title: Supply at least one field to be updated. example: Supply at least one field to be updated. description: Human readable message with an explanation of how to solve the error. - title: SenderInvalidCategoryCodeErrorTitle properties: errorCode: type: string title: sender_invalid_category_code example: sender_invalid_category_code description: Error code allows to programatically handle errors. message: type: string title: Invalid sender category code(s). example: Invalid sender category code(s). description: Human readable message. resolution: type: string title: Verify that the sender category code(s) used is supported. example: Verify that the sender category code(s) used is supported. description: Human readable message with an explanation of how to solve the error. '401': description: Unauthorized content: application/json: schema: example: errorCode: unauthorized_error message: Unauthorized error. resolution: Verify that projectId is correct. title: UnauthorizedErrorErrorTitle properties: errorCode: type: string title: unauthorized_error example: unauthorized_error description: Error code allows to programatically handle errors. message: type: string title: Unauthorized error. example: Unauthorized error. description: Human readable message. resolution: type: string title: Verify that projectId is correct. example: Verify that projectId is correct. description: Human readable message with an explanation of how to solve the error. '404': description: NotFound content: application/json: schema: oneOf: - title: ProjectNotFoundErrorTitle properties: errorCode: type: string title: project_not_found example: project_not_found description: Error code allows to programatically handle errors. message: type: string title: Project not found. example: Project not found. description: Human readable message. resolution: type: string title: Verify that the projectId is correct. example: Verify that the projectId is correct. description: Human readable message with an explanation of how to solve the error. - title: SenderNotFoundErrorTitle properties: errorCode: type: string title: sender_not_found example: sender_not_found description: Error code allows to programatically handle errors. message: type: string title: Sender not found. example: Sender not found. description: Human readable message. resolution: type: string title: Verify that the parameters are correct. example: Verify that the parameters are correct. description: Human readable message with an explanation of how to solve the error. '409': description: Conflict content: application/json: schema: oneOf: - title: FileNotFoundErrorTitle properties: errorCode: type: string title: file_not_found example: file_not_found description: Error code allows to programatically handle errors. message: type: string title: 'details.logoImage: file not found.' example: 'details.logoImage: file not found.' description: Human readable message. resolution: type: string title: Verify that the url is correct. example: Verify that the url is correct. description: Human readable message with an explanation of how to solve the error. - title: FileUnexpectedErrorErrorTitle properties: errorCode: type: string title: file_unexpected_error example: file_unexpected_error description: Error code allows to programatically handle errors. message: type: string title: 'details.logoImage: file unexpected error.' example: 'details.logoImage: file unexpected error.' description: Human readable message. resolution: type: string title: The file cannot be handled properly. Please try with another one. example: The file cannot be handled properly. Please try with another one. description: Human readable message with an explanation of how to solve the error. - title: FileSizeTooLargeErrorTitle properties: errorCode: type: string title: file_size_too_large example: file_size_too_large description: Error code allows to programatically handle errors. message: type: string title: 'details.logoImage: file size is too large.' example: 'details.logoImage: file size is too large.' description: Human readable message. resolution: type: string title: Try again with a smaller file. Max size for `image/jpeg` is 5MB. example: Try again with a smaller file. Max size for `image/jpeg` is 5MB. description: Human readable message with an explanation of how to solve the error. - title: SenderChangesNotUpdatableErrorTitle properties: errorCode: type: string title: sender_changes_not_updatable example: sender_changes_not_updatable description: Error code allows to programatically handle errors. message: type: string title: Sender is not updatable. example: Sender is not updatable. description: Human readable message. resolution: type: string title: 'Updates are only supported by sender changes with status: DRAFT' example: 'Updates are only supported by sender changes with status: DRAFT' description: Human readable message with an explanation of how to solve the error. - title: SenderNotUpdatableErrorTitle properties: errorCode: type: string title: sender_not_updatable example: sender_not_updatable description: Error code allows to programatically handle errors. message: type: string title: Sender is not updatable. example: Sender is not updatable. description: Human readable message. resolution: type: string title: 'Updates are only supported by senders with state: ACTIVE.' example: 'Updates are only supported by senders with state: ACTIVE.' description: Human readable message with an explanation of how to solve the error. '500': description: InternalServerError content: application/json: schema: example: errorCode: internal_error message: Internal server error. resolution: Please wait and try again, if the error persist please contact support. title: InternalErrorErrorTitle properties: errorCode: type: string title: internal_error example: internal_error description: Error code allows to programatically handle errors. message: type: string title: Internal server error. example: Internal server error. description: Human readable message. resolution: type: string title: Please wait and try again, if the error persist please contact support. example: Please wait and try again, if the error persist please contact support. description: Human readable message with an explanation of how to solve the error. summary: Updates a draft sender in project tags: - KakaoTalk Senders x-tagAfterOperationSummary: color: white background: green label: GA /v1/projects/{projectId}/kakaotalk/senders/{plusFriendId}/activities: get: description: Paginated list of activities for sender. Ordered from the most recent one to the oldest one. operationId: KakaotalkSendersController_listActivities_v1 parameters: - name: projectId required: true in: path description: The unique ID of the project. You can find this on the Sinch Dashboard. schema: type: string - name: plusFriendId required: true in: path description: The unique ID of the sender. schema: type: string - name: pageSize required: false in: query schema: type: number minimum: 1 maximum: 100 description: The page size requested. - name: pageToken required: false in: query schema: type: string description: The page token if retrieving the next page from a previous query. responses: '200': description: Recent activities on sender content: application/json: schema: $ref: '#/components/schemas/KakaotalkSenderNotificationListDto' examples: response: summary: List sender activities response description: Response for all sender activities. value: totalSize: 2 pageSize: 50 notifications: - type: CREATED created: '2023-12-20T15:00:11.310Z' author: Provisioning API user - type: COMMENT_ADDED created: '2023-12-20T15:00:10.303Z' comment: Example comment author: Provisioning API user '400': description: BadRequest content: application/json: schema: oneOf: - title: ProjectNotInitializedErrorTitle properties: errorCode: type: string title: project_not_initialized example: project_not_initialized description: Error code allows to programatically handle errors. message: type: string title: Project not initialized for KakaoTalk. example: Project not initialized for KakaoTalk. description: Human readable message. resolution: type: string title: Verify that the project ID is correct and that it has been onboarded for KakaoTalk. example: Verify that the project ID is correct and that it has been onboarded for KakaoTalk. description: Human readable message with an explanation of how to solve the error. - title: InvalidPageTokenErrorTitle properties: errorCode: type: string title: invalid_page_token example: invalid_page_token description: Error code allows to programatically handle errors. message: type: string title: Invalid page token. example: Invalid page token. description: Human readable message. resolution: type: string title: The page token to use is provided in the previous query response, for new queries simply leave this field undefined. example: The page token to use is provided in the previous query response, for new queries simply leave this field undefined. description: Human readable message with an explanation of how to solve the error. - title: InvalidPageSizeErrorTitle properties: errorCode: type: string title: invalid_page_size example: invalid_page_size description: Error code allows to programatically handle errors. message: type: string title: Page size must be numeric. example: Page size must be numeric. description: Human readable message. resolution: type: string title: Use a integer value for pageSize parameter. example: Use a integer value for pageSize parameter. description: Human readable message with an explanation of how to solve the error. '401': description: Unauthorized content: application/json: schema: example: errorCode: unauthorized_error message: Unauthorized error. resolution: Verify that projectId is correct. title: UnauthorizedErrorErrorTitle properties: errorCode: type: string title: unauthorized_error example: unauthorized_error description: Error code allows to programatically handle errors. message: type: string title: Unauthorized error. example: Unauthorized error. description: Human readable message. resolution: type: string title: Verify that projectId is correct. example: Verify that projectId is correct. description: Human readable message with an explanation of how to solve the error. '404': description: NotFound content: application/json: schema: example: errorCode: sender_not_found message: Sender not found. resolution: Verify that the parameters are correct. title: SenderNotFoundErrorTitle properties: errorCode: type: string title: sender_not_found example: sender_not_found description: Error code allows to programatically handle errors. message: type: string title: Sender not found. example: Sender not found. description: Human readable message. resolution: type: string title: Verify that the parameters are correct. example: Verify that the parameters are correct. description: Human readable message with an explanation of how to solve the error. '500': description: InternalServerError content: application/json: schema: example: errorCode: internal_error message: Internal server error. resolution: Please wait and try again, if the error persist please contact support. title: InternalErrorErrorTitle properties: errorCode: type: string title: internal_error example: internal_error description: Error code allows to programatically handle errors. message: type: string title: Internal server error. example: Internal server error. description: Human readable message. resolution: type: string title: Please wait and try again, if the error persist please contact support. example: Please wait and try again, if the error persist please contact support. description: Human readable message with an explanation of how to solve the error. summary: Lists activities on sender tags: - KakaoTalk Senders x-tagAfterOperationSummary: color: white background: green label: GA /v1/projects/{projectId}/kakaotalk/senders/{plusFriendId}/changes: delete: description: |2- Delete pending or rejected changes to a sender. operationId: KakaotalkSendersController_deleteChanges_v1 parameters: - name: projectId required: true in: path description: The unique ID of the project. You can find this on the Sinch Dashboard. schema: type: string - name: plusFriendId required: true in: path description: The unique ID of the sender. schema: type: string responses: '204': description: Sender changes deleted '400': description: BadRequest content: application/json: schema: example: errorCode: project_not_initialized message: Project not initialized for KakaoTalk. resolution: Verify that the project ID is correct and that it has been onboarded for KakaoTalk. title: ProjectNotInitializedErrorTitle properties: errorCode: type: string title: project_not_initialized example: project_not_initialized description: Error code allows to programatically handle errors. message: type: string title: Project not initialized for KakaoTalk. example: Project not initialized for KakaoTalk. description: Human readable message. resolution: type: string title: Verify that the project ID is correct and that it has been onboarded for KakaoTalk. example: Verify that the project ID is correct and that it has been onboarded for KakaoTalk. description: Human readable message with an explanation of how to solve the error. '401': description: Unauthorized content: application/json: schema: example: errorCode: unauthorized_error message: Unauthorized error. resolution: Verify that projectId is correct. title: UnauthorizedErrorErrorTitle properties: errorCode: type: string title: unauthorized_error example: unauthorized_error description: Error code allows to programatically handle errors. message: type: string title: Unauthorized error. example: Unauthorized error. description: Human readable message. resolution: type: string title: Verify that projectId is correct. example: Verify that projectId is correct. description: Human readable message with an explanation of how to solve the error. '404': description: NotFound content: application/json: schema: example: errorCode: sender_changes_not_found message: Sender changes not found. resolution: Verify that the parameters are correct. title: SenderChangesNotFoundErrorTitle properties: errorCode: type: string title: sender_changes_not_found example: sender_changes_not_found description: Error code allows to programatically handle errors. message: type: string title: Sender changes not found. example: Sender changes not found. description: Human readable message. resolution: type: string title: Verify that the parameters are correct. example: Verify that the parameters are correct. description: Human readable message with an explanation of how to solve the error. '409': description: Conflict content: application/json: schema: example: errorCode: sender_changes_not_deletable message: Sender changes is not deletable. resolution: Only DRAFT, REJECTED senders changes can be marked for deletion. title: SenderChangesNotDeletableErrorTitle properties: errorCode: type: string title: sender_changes_not_deletable example: sender_changes_not_deletable description: Error code allows to programatically handle errors. message: type: string title: Sender changes is not deletable. example: Sender changes is not deletable. description: Human readable message. resolution: type: string title: Only DRAFT, REJECTED senders changes can be marked for deletion. example: Only DRAFT, REJECTED senders changes can be marked for deletion. description: Human readable message with an explanation of how to solve the error. '500': description: InternalServerError content: application/json: schema: example: errorCode: internal_error message: Internal server error. resolution: Please wait and try again, if the error persist please contact support. title: InternalErrorErrorTitle properties: errorCode: type: string title: internal_error example: internal_error description: Error code allows to programatically handle errors. message: type: string title: Internal server error. example: Internal server error. description: Human readable message. resolution: type: string title: Please wait and try again, if the error persist please contact support. example: Please wait and try again, if the error persist please contact support. description: Human readable message with an explanation of how to solve the error. summary: Delete pending or rejected changes to a sender tags: - KakaoTalk Senders x-tagAfterOperationSummary: color: white background: green label: GA /v1/projects/{projectId}/kakaotalk/senders/{plusFriendId}/comments: post: description: |2- Creates a comment for a sender. operationId: KakaotalkSendersController_createComment_v1 parameters: - name: projectId required: true in: path description: The unique ID of the project. You can find this on the Sinch Dashboard. schema: type: string - name: plusFriendId required: true in: path description: The unique ID of the sender. schema: type: string requestBody: required: true description: Comment data content: application/json: schema: $ref: '#/components/schemas/KakaotalkCommentInputDto' examples: input: summary: Body request description: |2- Example body request to create a comment. value: comment: Example comment. responses: '201': description: Created comment for a sender content: application/json: schema: $ref: '#/components/schemas/KakaotalkCommentDto' examples: created: summary: Create response description: |2- Response when successfully creating a comment. value: type: CREATED comment: Example comment created: '2023-01-19T13:11:08.204Z' '400': description: BadRequest content: application/json: schema: oneOf: - title: InvalidInputErrorTitle properties: errorCode: type: string title: invalid_input example: invalid_input description: Error code allows to programatically handle errors. message: type: string title: Invalid input. example: Invalid input. description: Human readable message. resolution: type: string title: Correct the validation errors and submit again. example: Correct the validation errors and submit again. description: Human readable message with an explanation of how to solve the error. additionalInformation: type: object title: additionalInformation example: validationErrors: - details.buttons.0.name must be a string description: Additional information for error. - title: ProjectNotInitializedErrorTitle properties: errorCode: type: string title: project_not_initialized example: project_not_initialized description: Error code allows to programatically handle errors. message: type: string title: Project not initialized for KakaoTalk. example: Project not initialized for KakaoTalk. description: Human readable message. resolution: type: string title: Verify that the project ID is correct and that it has been onboarded for KakaoTalk. example: Verify that the project ID is correct and that it has been onboarded for KakaoTalk. description: Human readable message with an explanation of how to solve the error. - title: InvalidPayloadErrorTitle properties: errorCode: type: string title: invalid_payload example: invalid_payload description: Error code allows to programatically handle errors. message: type: string title: Invalid payload. example: Invalid payload. description: Human readable message. resolution: type: string title: Correct payload and submit again. example: Correct payload and submit again. description: Human readable message with an explanation of how to solve the error. '401': description: Unauthorized content: application/json: schema: example: errorCode: unauthorized_error message: Unauthorized error. resolution: Verify that projectId is correct. title: UnauthorizedErrorErrorTitle properties: errorCode: type: string title: unauthorized_error example: unauthorized_error description: Error code allows to programatically handle errors. message: type: string title: Unauthorized error. example: Unauthorized error. description: Human readable message. resolution: type: string title: Verify that projectId is correct. example: Verify that projectId is correct. description: Human readable message with an explanation of how to solve the error. '404': description: NotFound content: application/json: schema: example: errorCode: sender_not_found message: Sender not found. resolution: Verify that the parameters are correct. title: SenderNotFoundErrorTitle properties: errorCode: type: string title: sender_not_found example: sender_not_found description: Error code allows to programatically handle errors. message: type: string title: Sender not found. example: Sender not found. description: Human readable message. resolution: type: string title: Verify that the parameters are correct. example: Verify that the parameters are correct. description: Human readable message with an explanation of how to solve the error. '500': description: InternalServerError content: application/json: schema: oneOf: - title: FailedToCreateCommentErrorTitle properties: errorCode: type: string title: failed_to_create_comment example: failed_to_create_comment description: Error code allows to programatically handle errors. message: type: string title: Failed to create a comment. example: Failed to create a comment. description: Human readable message. resolution: type: string title: Please try again later. example: Please try again later. description: Human readable message with an explanation of how to solve the error. - title: InternalErrorErrorTitle properties: errorCode: type: string title: internal_error example: internal_error description: Error code allows to programatically handle errors. message: type: string title: Internal server error. example: Internal server error. description: Human readable message. resolution: type: string title: Please wait and try again, if the error persist please contact support. example: Please wait and try again, if the error persist please contact support. description: Human readable message with an explanation of how to solve the error. summary: Creates a comment for a sender in project tags: - KakaoTalk Senders x-tagAfterOperationSummary: color: white background: green label: GA /v1/projects/{projectId}/kakaotalk/senders/{plusFriendId}/register: post: description: |2- Requests sender registration for a project. operationId: SendersController_registerSender_v1 parameters: - name: projectId required: true in: path description: The unique ID of the project. You can find this on the Sinch Dashboard. schema: type: string - name: plusFriendId required: true in: path description: The unique ID of the sender. schema: type: string responses: '200': description: Sender content: application/json: schema: $ref: '#/components/schemas/KakaotalkSenderDto' examples: response: summary: Register response description: |2- Response when successfully registering a sender. value: id: cf11794a-6a5e-4a12-b103-da79bd378bf1 plusFriendId: 5WY5zKfY3pB56EmDVUPQ state: VERIFYING details: adminPhoneNo: '+48777777777' name: Test Name logoImage: https://example-logo-image.com topLevelCategoryCode: '019' midLevelCategoryCode: '0006' subLevelCategoryCode: '0001' created: '2023-02-23T11:28:51.194Z' modified: '2023-02-23T11:28:51.194Z' '400': description: BadRequest content: application/json: schema: oneOf: - title: ProjectNotInitializedErrorTitle properties: errorCode: type: string title: project_not_initialized example: project_not_initialized description: Error code allows to programatically handle errors. message: type: string title: Project not initialized for KakaoTalk. example: Project not initialized for KakaoTalk. description: Human readable message. resolution: type: string title: Verify that the project ID is correct and that it has been onboarded for KakaoTalk. example: Verify that the project ID is correct and that it has been onboarded for KakaoTalk. description: Human readable message with an explanation of how to solve the error. - title: InvalidAppKeyErrorTitle properties: errorCode: type: string title: invalid_app_key example: invalid_app_key description: Error code allows to programatically handle errors. message: type: string title: Invalid app key. example: Invalid app key. description: Human readable message. resolution: type: string title: Please check if the app key is correct example: Please check if the app key is correct description: Human readable message with an explanation of how to solve the error. '401': description: Unauthorized content: application/json: schema: example: errorCode: unauthorized_error message: Unauthorized error. resolution: Verify that projectId is correct. title: UnauthorizedErrorErrorTitle properties: errorCode: type: string title: unauthorized_error example: unauthorized_error description: Error code allows to programatically handle errors. message: type: string title: Unauthorized error. example: Unauthorized error. description: Human readable message. resolution: type: string title: Verify that projectId is correct. example: Verify that projectId is correct. description: Human readable message with an explanation of how to solve the error. '404': description: NotFound content: application/json: schema: example: errorCode: sender_not_found message: Sender not found. resolution: Verify that the parameters are correct. title: SenderNotFoundErrorTitle properties: errorCode: type: string title: sender_not_found example: sender_not_found description: Error code allows to programatically handle errors. message: type: string title: Sender not found. example: Sender not found. description: Human readable message. resolution: type: string title: Verify that the parameters are correct. example: Verify that the parameters are correct. description: Human readable message with an explanation of how to solve the error. '409': description: Conflict content: application/json: schema: example: errorCode: not_allowed_register message: Sender not allowed to be registered. resolution: Sender in "ACTIVE" state can't be registered. title: NotAllowedRegisterErrorTitle properties: errorCode: type: string title: not_allowed_register example: not_allowed_register description: Error code allows to programatically handle errors. message: type: string title: Sender not allowed to be registered. example: Sender not allowed to be registered. description: Human readable message. resolution: type: string title: Sender in "ACTIVE" state can't be registered. example: Sender in "ACTIVE" state can't be registered. description: Human readable message with an explanation of how to solve the error. '500': description: InternalServerError content: application/json: schema: example: errorCode: internal_error message: Internal server error. resolution: Please wait and try again, if the error persist please contact support. title: InternalErrorErrorTitle properties: errorCode: type: string title: internal_error example: internal_error description: Error code allows to programatically handle errors. message: type: string title: Internal server error. example: Internal server error. description: Human readable message. resolution: type: string title: Please wait and try again, if the error persist please contact support. example: Please wait and try again, if the error persist please contact support. description: Human readable message with an explanation of how to solve the error. summary: Register sender for project tags: - KakaoTalk Senders x-tagAfterOperationSummary: color: white background: green label: GA /v1/projects/{projectId}/kakaotalk/senders/{plusFriendId}/templates: get: description: |2- Returns a paginated list of templates for the specified project. If no page token is supplied then the first `50` templates are returned in alphabetical order. operationId: KakaotalkTemplatesController_listTemplates_v1 parameters: - name: projectId required: true in: path description: The unique ID of the project. You can find this on the Sinch Dashboard. schema: type: string - name: plusFriendId required: true in: path description: The unique ID of the sender. schema: type: string - name: filterStates required: false in: query description: Optionally query for template by states. schema: type: array items: $ref: '#/components/schemas/KakaotalkTemplateStatesEnum' - name: filterStatuses required: false in: query description: Optionally query for template by statuses. schema: type: array items: $ref: '#/components/schemas/KakaotalkTemplateStatusesEnum' - name: pageSize required: false in: query schema: type: number minimum: 1 maximum: 1000 description: The page size requested. - name: pageToken required: false in: query schema: type: string description: The page token if retrieving the next page from a previous query. - name: templateName required: false in: query description: Optionally query for template by name. Will return all templates with names that begin with the query string. schema: type: string responses: '200': description: List of templates content: application/json: schema: $ref: '#/components/schemas/KakaotalkTemplateListDto' examples: response: summary: List response description: |2- Response with templates. value: totalSize: 2 pageSize: 50 templates: - id: 1a76b24e-bead-4c72-b468-6c3bdfff0ee6 code: S7yFqaKqJ8tsnBZH2CEd state: APPROVED details: language: EN messageType: BASIC emphasizeType: EMPHASIZE_TYPE_NONE categoryCode: '001001' securityFlag: false name: Example name content: Example content extra: Example extra ad: Example ad title: Example title subtitle: Example subtitle imageName: Example image name imageUrl: https://example-image-url.com buttons: - ordering: 1 type: APP_LINK name: Example Name linkMo: https://example-link-mo.com linkPc: https://example-link-pc.com schemeIos: https://example-scheme-ios.com schemeAndroid: https://example-scheme-android.com created: '2023-02-24T10:19:31.372Z' modified: '2023-02-24T10:19:31.372Z' - id: 1a76b24e-bead-4c72-b468-6c3bdfff0ee6 code: S7yFqaKqJ8tsnBZH2CEd state: APPROVED details: language: EN messageType: BASIC emphasizeType: EMPHASIZE_TYPE_NONE categoryCode: '001001' securityFlag: false name: Example name content: Example content extra: Example extra ad: Example ad title: Example title subtitle: Example subtitle imageName: Example image name imageUrl: https://example-image-url.com buttons: - ordering: 1 type: APP_LINK name: Example Name linkMo: https://example-link-mo.com linkPc: https://example-link-pc.com schemeIos: https://example-scheme-ios.com schemeAndroid: https://example-scheme-android.com changes: status: IN_PROGRESS details: language: EN messageType: BASIC emphasizeType: EMPHASIZE_TYPE_NONE categoryCode: '001001' securityFlag: false name: Example name content: Example content extra: Example extra ad: Example ad title: Example title subtitle: Example subtitle imageName: Example image name imageUrl: https://example-image-url.com buttons: - ordering: 1 type: APP_LINK name: Example Name linkMo: https://example-link-mo.com linkPc: https://example-link-pc.com schemeIos: https://example-scheme-ios.com schemeAndroid: https://example-scheme-android.com created: '2023-02-24T10:19:31.372Z' modified: '2023-02-24T10:19:31.372Z' '400': description: BadRequest content: application/json: schema: oneOf: - title: ProjectNotInitializedErrorTitle properties: errorCode: type: string title: project_not_initialized example: project_not_initialized description: Error code allows to programatically handle errors. message: type: string title: Project not initialized for KakaoTalk. example: Project not initialized for KakaoTalk. description: Human readable message. resolution: type: string title: Verify that the project ID is correct and that it has been onboarded for KakaoTalk. example: Verify that the project ID is correct and that it has been onboarded for KakaoTalk. description: Human readable message with an explanation of how to solve the error. - title: InvalidPageSizeErrorTitle properties: errorCode: type: string title: invalid_page_size example: invalid_page_size description: Error code allows to programatically handle errors. message: type: string title: Page size must be numeric. example: Page size must be numeric. description: Human readable message. resolution: type: string title: Use a integer value for pageSize parameter. example: Use a integer value for pageSize parameter. description: Human readable message with an explanation of how to solve the error. - title: InvalidPageTokenErrorTitle properties: errorCode: type: string title: invalid_page_token example: invalid_page_token description: Error code allows to programatically handle errors. message: type: string title: Invalid page token. example: Invalid page token. description: Human readable message. resolution: type: string title: The page token to use is provided in the previous query response, for new queries simply leave this field undefined. example: The page token to use is provided in the previous query response, for new queries simply leave this field undefined. description: Human readable message with an explanation of how to solve the error. '401': description: Unauthorized content: application/json: schema: example: errorCode: unauthorized_error message: Unauthorized error. resolution: Verify that projectId is correct. title: UnauthorizedErrorErrorTitle properties: errorCode: type: string title: unauthorized_error example: unauthorized_error description: Error code allows to programatically handle errors. message: type: string title: Unauthorized error. example: Unauthorized error. description: Human readable message. resolution: type: string title: Verify that projectId is correct. example: Verify that projectId is correct. description: Human readable message with an explanation of how to solve the error. '404': description: NotFound content: application/json: schema: oneOf: - title: SenderNotFoundErrorTitle properties: errorCode: type: string title: sender_not_found example: sender_not_found description: Error code allows to programatically handle errors. message: type: string title: Sender not found. example: Sender not found. description: Human readable message. resolution: type: string title: Verify that the parameters are correct. example: Verify that the parameters are correct. description: Human readable message with an explanation of how to solve the error. - title: TemplateNotFoundErrorTitle properties: errorCode: type: string title: template_not_found example: template_not_found description: Error code allows to programatically handle errors. message: type: string title: Template not found. example: Template not found. description: Human readable message. resolution: type: string title: Verify that the parameters are correct. example: Verify that the parameters are correct. description: Human readable message with an explanation of how to solve the error. '500': description: InternalServerError content: application/json: schema: example: errorCode: internal_error message: Internal server error. resolution: Please wait and try again, if the error persist please contact support. title: InternalErrorErrorTitle properties: errorCode: type: string title: internal_error example: internal_error description: Error code allows to programatically handle errors. message: type: string title: Internal server error. example: Internal server error. description: Human readable message. resolution: type: string title: Please wait and try again, if the error persist please contact support. example: Please wait and try again, if the error persist please contact support. description: Human readable message with an explanation of how to solve the error. summary: List all templates in project tags: - KakaoTalk Templates x-tagAfterOperationSummary: color: white background: green label: GA post: callbacks: Comment: '{$request.body#webhooks.target}': post: summary: KakaoTalk Template received a comment description: |2- Callback sent when a comment is placed on a template. parameters: - in: header name: x-sinch-webhook-signature schema: type: string format: uuid example: - in: header name: x-sinch-webhook-signature-algorithm schema: type: string enum: - HmacSHA256 uniqueItems: false example: HmacSHA256 - in: header name: x-sinch-webhook-signature-nonce schema: type: string example: 01EAW2BNWCG9DC13RS582V0ZQ3 - in: header name: x-sinch-webhook-signature-timestamp schema: type: string format: timestamp example: '1592227387' requestBody: content: application/json: schema: type: object properties: type: description: Type of event, in this case `KAKAOTALK_TEMPLATE_COMMENT_ADDED`. type: string payload: description: Template at time of callback. allOf: - $ref: '#/components/schemas/KakaotalkTemplateDto' comment: description: Comment for template. type: string required: - type - payload - comment example: type: KAKAOTALK_TEMPLATE_COMMENT_ADDED comment: new template comment responses: '200': description: Response to callback will be ignored. The call will retry if unsuccessful. Approved: '{$request.body#webhooks.target}': post: summary: KakaoTalk Template approved description: |2- Callback sent when a template is approved. parameters: - in: header name: x-sinch-webhook-signature schema: type: string format: uuid example: - in: header name: x-sinch-webhook-signature-algorithm schema: type: string enum: - HmacSHA256 uniqueItems: false example: HmacSHA256 - in: header name: x-sinch-webhook-signature-nonce schema: type: string example: 01EAW2BNWCG9DC13RS582V0ZQ3 - in: header name: x-sinch-webhook-signature-timestamp schema: type: string format: timestamp example: '1592227387' requestBody: content: application/json: schema: type: object properties: type: description: Type of event, in this case `KAKAOTALK_TEMPLATE_APPROVED`. type: string payload: description: Template at time of callback. allOf: - $ref: '#/components/schemas/KakaotalkTemplateDto' required: - type - payload example: type: KAKAOTALK_TEMPLATE_APPROVED payload: id: 1a76b24e-bead-4c72-b468-6c3bdfff0ee6 code: S7yFqaKqJ8tsnBZH2CEd state: APPROVED details: language: EN messageType: BASIC emphasizeType: EMPHASIZE_TYPE_NONE categoryCode: '001001' securityFlag: false name: Example name content: Example content extra: Example extra ad: Example ad title: Example title subtitle: Example subtitle imageName: Example image name imageUrl: https://example-image-url.com buttons: - ordering: 1 type: APP_LINK name: Example Name linkMo: https://example-link-mo.com linkPc: https://example-link-pc.com schemeIos: https://example-scheme-ios.com schemeAndroid: https://example-scheme-android.com created: '2023-02-24T10:19:31.372Z' modified: '2023-02-24T10:19:31.372Z' responses: '200': description: Response to callback will be ignored. The call will retry if unsuccessful. Rejected: '{$request.body#webhooks.target}': post: summary: KakaoTalk Template rejected description: |2- Callback sent when a template is rejected. parameters: - in: header name: x-sinch-webhook-signature schema: type: string format: uuid example: - in: header name: x-sinch-webhook-signature-algorithm schema: type: string enum: - HmacSHA256 uniqueItems: false example: HmacSHA256 - in: header name: x-sinch-webhook-signature-nonce schema: type: string example: 01EAW2BNWCG9DC13RS582V0ZQ3 - in: header name: x-sinch-webhook-signature-timestamp schema: type: string format: timestamp example: '1592227387' requestBody: content: application/json: schema: type: object properties: type: description: Type of event, in this case `KAKAOTALK_TEMPLATE_REJECTED`. type: string payload: description: Template at time of callback. allOf: - $ref: '#/components/schemas/KakaotalkTemplateDto' required: - type - payload example: type: KAKAOTALK_TEMPLATE_REJECTED payload: id: 1a76b24e-bead-4c72-b468-6c3bdfff0ee6 code: S7yFqaKqJ8tsnBZH2CEd state: REJECTED details: language: EN messageType: BASIC emphasizeType: EMPHASIZE_TYPE_NONE categoryCode: '001001' securityFlag: false name: Example name content: Example content extra: Example extra ad: Example ad title: Example title subtitle: Example subtitle imageName: Example image name imageUrl: https://example-image-url.com buttons: - ordering: 1 type: APP_LINK name: Example Name linkMo: https://example-link-mo.com linkPc: https://example-link-pc.com schemeIos: https://example-scheme-ios.com schemeAndroid: https://example-scheme-android.com created: '2023-02-24T10:19:31.372Z' modified: '2023-02-24T10:19:31.372Z' responses: '200': description: Response to callback will be ignored. The call will retry if unsuccessful. description: |2- Creates a new template with the request data. operationId: KakaotalkTemplatesController_createTemplate_v1 parameters: - name: projectId required: true in: path description: The unique ID of the project. You can find this on the Sinch Dashboard. schema: type: string - name: plusFriendId required: true in: path description: The unique ID of the sender. schema: type: string requestBody: required: true description: Template data content: application/json: schema: $ref: '#/components/schemas/KakaotalkInputTemplateDto' examples: minimal: summary: Minimum example description: |2- Minimum body to create a template. value: details: name: Example name content: Example content language: EN full: summary: Full example description: |2- Full body to create a template. value: status: SUBMIT details: language: EN messageType: BASIC emphasizeType: EMPHASIZE_TYPE_NONE categoryCode: '001001' securityFlag: false name: Example name content: Example content extra: Example extra title: Example title subtitle: Example subtitle imageName: Example image name imageUrl: https://example-image-url.com buttons: - ordering: 1 type: APP_LINK name: Example Name linkMo: https://example-link-mo.com linkPc: https://example-link-pc.com schemeIos: https://example-scheme-ios.com schemeAndroid: https://example-scheme-android.com responses: '201': description: Created template content: application/json: schema: $ref: '#/components/schemas/KakaotalkTemplateDto' examples: response: summary: Create response description: |2- Response when successfully creating a template. value: id: 1a76b24e-bead-4c72-b468-6c3bdfff0ee6 code: S7yFqaKqJ8tsnBZH2CEd changes: status: IN_PROGRESS details: language: EN messageType: BASIC emphasizeType: EMPHASIZE_TYPE_NONE categoryCode: '001001' securityFlag: false name: Example name content: Example content extra: Example extra ad: Example ad title: Example title subtitle: Example subtitle imageName: Example image name imageUrl: https://example-image-url.com buttons: - ordering: 1 type: APP_LINK name: Example Name linkMo: https://example-link-mo.com linkPc: https://example-link-pc.com schemeIos: https://example-scheme-ios.com schemeAndroid: https://example-scheme-android.com created: '2023-02-24T10:19:31.372Z' modified: '2023-02-24T10:19:31.372Z' '400': description: BadRequest content: application/json: schema: oneOf: - title: ProjectNotInitializedErrorTitle properties: errorCode: type: string title: project_not_initialized example: project_not_initialized description: Error code allows to programatically handle errors. message: type: string title: Project not initialized for KakaoTalk. example: Project not initialized for KakaoTalk. description: Human readable message. resolution: type: string title: Verify that the project ID is correct and that it has been onboarded for KakaoTalk. example: Verify that the project ID is correct and that it has been onboarded for KakaoTalk. description: Human readable message with an explanation of how to solve the error. - title: TemplateInvalidCategoryCodeErrorTitle properties: errorCode: type: string title: template_invalid_category_code example: template_invalid_category_code description: Error code allows to programatically handle errors. message: type: string title: Invalid template category code. example: Invalid template category code. description: Human readable message. resolution: type: string title: Verify that the template category code used is supported for the provided project. example: Verify that the template category code used is supported for the provided project. description: Human readable message with an explanation of how to solve the error. - title: InvalidPayloadErrorTitle properties: errorCode: type: string title: invalid_payload example: invalid_payload description: Error code allows to programatically handle errors. message: type: string title: Invalid payload. example: Invalid payload. description: Human readable message. resolution: type: string title: Correct payload and submit again. example: Correct payload and submit again. description: Human readable message with an explanation of how to solve the error. '401': description: Unauthorized content: application/json: schema: example: errorCode: unauthorized_error message: Unauthorized error. resolution: Verify that projectId is correct. title: UnauthorizedErrorErrorTitle properties: errorCode: type: string title: unauthorized_error example: unauthorized_error description: Error code allows to programatically handle errors. message: type: string title: Unauthorized error. example: Unauthorized error. description: Human readable message. resolution: type: string title: Verify that projectId is correct. example: Verify that projectId is correct. description: Human readable message with an explanation of how to solve the error. '404': description: NotFound content: application/json: schema: example: errorCode: sender_not_found message: Sender not found. resolution: Verify that the parameters are correct. title: SenderNotFoundErrorTitle properties: errorCode: type: string title: sender_not_found example: sender_not_found description: Error code allows to programatically handle errors. message: type: string title: Sender not found. example: Sender not found. description: Human readable message. resolution: type: string title: Verify that the parameters are correct. example: Verify that the parameters are correct. description: Human readable message with an explanation of how to solve the error. '409': description: Conflict content: application/json: schema: example: errorCode: template_exists message: Template already exists. resolution: Templates must have unique name. Change name and submit again. title: TemplateExistsErrorTitle properties: errorCode: type: string title: template_exists example: template_exists description: Error code allows to programatically handle errors. message: type: string title: Template already exists. example: Template already exists. description: Human readable message. resolution: type: string title: Templates must have unique name. Change name and submit again. example: Templates must have unique name. Change name and submit again. description: Human readable message with an explanation of how to solve the error. '424': description: FailedDependency content: application/json: schema: oneOf: - title: TemplateKakaotalkValidationErrorErrorTitle properties: errorCode: type: string title: template_kakaotalk_validation_error example: template_kakaotalk_validation_error description: Error code allows to programatically handle errors. message: type: string title: 'Template kakaoTalk validation error: Some details from provider' example: 'Template kakaoTalk validation error: Some details from provider' description: Human readable message. resolution: type: string title: Please try again later. If template is saved as draft, try to submit the template again. If option "saveDraftOnFailure" is specified as "false", try the request again. example: Please try again later. If template is saved as draft, try to submit the template again. If option "saveDraftOnFailure" is specified as "false", try the request again. description: Human readable message with an explanation of how to solve the error. additionalInformation: type: object title: additionalInformation description: Additional information for error. - title: TemplateKakaotalkValidationErrorErrorTitle properties: errorCode: type: string title: template_kakaotalk_validation_error example: template_kakaotalk_validation_error description: Error code allows to programatically handle errors. message: type: string title: 'Template kakaoTalk validation error: Some details from provider' example: 'Template kakaoTalk validation error: Some details from provider' description: Human readable message. resolution: type: string title: Please try again later. If template is saved as draft, try to submit the template again. If option "saveDraftOnFailure" is specified as "false", try the request again. example: Please try again later. If template is saved as draft, try to submit the template again. If option "saveDraftOnFailure" is specified as "false", try the request again. description: Human readable message with an explanation of how to solve the error. additionalInformation: type: object title: additionalInformation example: templateCode: AX5NnkwWABRXG7LjDBGa description: Additional information for error. '500': description: InternalServerError content: application/json: schema: oneOf: - title: InternalErrorErrorTitle properties: errorCode: type: string title: internal_error example: internal_error description: Error code allows to programatically handle errors. message: type: string title: Internal server error. example: Internal server error. description: Human readable message. resolution: type: string title: Please wait and try again, if the error persist please contact support. If template is saved as draft, try to submit the template again. If option "saveDraftOnFailure" is specified as "false", try the request again. example: Please wait and try again, if the error persist please contact support. If template is saved as draft, try to submit the template again. If option "saveDraftOnFailure" is specified as "false", try the request again. description: Human readable message with an explanation of how to solve the error. additionalInformation: type: object title: additionalInformation description: Additional information for error. - title: InternalErrorErrorTitle properties: errorCode: type: string title: internal_error example: internal_error description: Error code allows to programatically handle errors. message: type: string title: Internal server error. example: Internal server error. description: Human readable message. resolution: type: string title: Please wait and try again, if the error persist please contact support. If template is saved as draft, try to submit the template again. If option "saveDraftOnFailure" is specified as "false", try the request again. example: Please wait and try again, if the error persist please contact support. If template is saved as draft, try to submit the template again. If option "saveDraftOnFailure" is specified as "false", try the request again. description: Human readable message with an explanation of how to solve the error. additionalInformation: type: object title: additionalInformation example: templateCode: templateCode description: Additional information for error. - title: InternalErrorErrorTitle properties: errorCode: type: string title: internal_error example: internal_error description: Error code allows to programatically handle errors. message: type: string title: Internal server error. example: Internal server error. description: Human readable message. resolution: type: string title: Please wait and try again, if the error persist please contact support. example: Please wait and try again, if the error persist please contact support. description: Human readable message with an explanation of how to solve the error. summary: Create a template in project tags: - KakaoTalk Templates x-tagAfterOperationSummary: color: white background: green label: GA /v1/projects/{projectId}/kakaotalk/senders/{plusFriendId}/templates/{templateCode}: get: description: |2- Returns a template for a project, with the specified name and language. operationId: TemplatesController_get_v1 parameters: - name: projectId required: true in: path description: The unique ID of the project. You can find this on the Sinch Dashboard. schema: type: string - name: plusFriendId required: true in: path description: The unique ID of the sender. schema: type: string - name: templateCode required: true in: path description: The unique name of the template. schema: type: string responses: '200': description: Template content: application/json: schema: $ref: '#/components/schemas/KakaotalkTemplateDto' examples: response: summary: Get response description: |2- Response when successfully creating a template. value: id: 1a76b24e-bead-4c72-b468-6c3bdfff0ee6 code: S7yFqaKqJ8tsnBZH2CEd state: APPROVED details: language: EN messageType: BASIC emphasizeType: EMPHASIZE_TYPE_NONE categoryCode: '001001' securityFlag: false name: Example name content: Example content extra: Example extra ad: Example ad title: Example title subtitle: Example subtitle imageName: Example image name imageUrl: https://example-image-url.com buttons: - ordering: 1 type: APP_LINK name: Example Name linkMo: https://example-link-mo.com linkPc: https://example-link-pc.com schemeIos: https://example-scheme-ios.com schemeAndroid: https://example-scheme-android.com created: '2023-02-24T10:19:31.372Z' modified: '2023-02-24T10:19:31.372Z' '400': description: BadRequest content: application/json: schema: example: errorCode: project_not_initialized message: Project not initialized for KakaoTalk. resolution: Verify that the project ID is correct and that it has been onboarded for KakaoTalk. title: ProjectNotInitializedErrorTitle properties: errorCode: type: string title: project_not_initialized example: project_not_initialized description: Error code allows to programatically handle errors. message: type: string title: Project not initialized for KakaoTalk. example: Project not initialized for KakaoTalk. description: Human readable message. resolution: type: string title: Verify that the project ID is correct and that it has been onboarded for KakaoTalk. example: Verify that the project ID is correct and that it has been onboarded for KakaoTalk. description: Human readable message with an explanation of how to solve the error. '401': description: Unauthorized content: application/json: schema: example: errorCode: unauthorized_error message: Unauthorized error. resolution: Verify that projectId is correct. title: UnauthorizedErrorErrorTitle properties: errorCode: type: string title: unauthorized_error example: unauthorized_error description: Error code allows to programatically handle errors. message: type: string title: Unauthorized error. example: Unauthorized error. description: Human readable message. resolution: type: string title: Verify that projectId is correct. example: Verify that projectId is correct. description: Human readable message with an explanation of how to solve the error. '404': description: NotFound content: application/json: schema: oneOf: - title: SenderNotFoundErrorTitle properties: errorCode: type: string title: sender_not_found example: sender_not_found description: Error code allows to programatically handle errors. message: type: string title: Sender not found. example: Sender not found. description: Human readable message. resolution: type: string title: Verify that the parameters are correct. example: Verify that the parameters are correct. description: Human readable message with an explanation of how to solve the error. - title: TemplateNotFoundErrorTitle properties: errorCode: type: string title: template_not_found example: template_not_found description: Error code allows to programatically handle errors. message: type: string title: Template not found. example: Template not found. description: Human readable message. resolution: type: string title: Verify that the parameters are correct. example: Verify that the parameters are correct. description: Human readable message with an explanation of how to solve the error. '500': description: InternalServerError content: application/json: schema: example: errorCode: internal_error message: Internal server error. resolution: Please wait and try again, if the error persist please contact support. title: InternalErrorErrorTitle properties: errorCode: type: string title: internal_error example: internal_error description: Error code allows to programatically handle errors. message: type: string title: Internal server error. example: Internal server error. description: Human readable message. resolution: type: string title: Please wait and try again, if the error persist please contact support. example: Please wait and try again, if the error persist please contact support. description: Human readable message with an explanation of how to solve the error. summary: Get template in project tags: - KakaoTalk Templates x-tagAfterOperationSummary: color: white background: green label: GA delete: description: |2- Delete template that matches the template code. operationId: TemplatesController_deleteTemplate_v1 parameters: - name: projectId required: true in: path description: The unique ID of the project. You can find this on the Sinch Dashboard. schema: type: string - name: plusFriendId required: true in: path description: The unique ID of the sender. schema: type: string - name: templateCode required: true in: path description: The unique name of the template. schema: type: string responses: '204': description: Template deleted '400': description: BadRequest content: application/json: schema: example: errorCode: project_not_initialized message: Project not initialized for KakaoTalk. resolution: Verify that the project ID is correct and that it has been onboarded for KakaoTalk. title: ProjectNotInitializedErrorTitle properties: errorCode: type: string title: project_not_initialized example: project_not_initialized description: Error code allows to programatically handle errors. message: type: string title: Project not initialized for KakaoTalk. example: Project not initialized for KakaoTalk. description: Human readable message. resolution: type: string title: Verify that the project ID is correct and that it has been onboarded for KakaoTalk. example: Verify that the project ID is correct and that it has been onboarded for KakaoTalk. description: Human readable message with an explanation of how to solve the error. '401': description: Unauthorized content: application/json: schema: example: errorCode: unauthorized_error message: Unauthorized error. resolution: Verify that projectId is correct. title: UnauthorizedErrorErrorTitle properties: errorCode: type: string title: unauthorized_error example: unauthorized_error description: Error code allows to programatically handle errors. message: type: string title: Unauthorized error. example: Unauthorized error. description: Human readable message. resolution: type: string title: Verify that projectId is correct. example: Verify that projectId is correct. description: Human readable message with an explanation of how to solve the error. '404': description: NotFound content: application/json: schema: oneOf: - title: TemplateNotFoundErrorTitle properties: errorCode: type: string title: template_not_found example: template_not_found description: Error code allows to programatically handle errors. message: type: string title: Template not found. example: Template not found. description: Human readable message. resolution: type: string title: Verify that the parameters are correct. example: Verify that the parameters are correct. description: Human readable message with an explanation of how to solve the error. - title: SenderNotFoundErrorTitle properties: errorCode: type: string title: sender_not_found example: sender_not_found description: Error code allows to programatically handle errors. message: type: string title: Sender not found. example: Sender not found. description: Human readable message. resolution: type: string title: Verify that the parameters are correct. example: Verify that the parameters are correct. description: Human readable message with an explanation of how to solve the error. '500': description: InternalServerError content: application/json: schema: example: errorCode: internal_error message: Internal server error. resolution: Please wait and try again, if the error persist please contact support. title: InternalErrorErrorTitle properties: errorCode: type: string title: internal_error example: internal_error description: Error code allows to programatically handle errors. message: type: string title: Internal server error. example: Internal server error. description: Human readable message. resolution: type: string title: Please wait and try again, if the error persist please contact support. example: Please wait and try again, if the error persist please contact support. description: Human readable message with an explanation of how to solve the error. summary: Delete template for project tags: - KakaoTalk Templates x-tagAfterOperationSummary: color: white background: green label: GA patch: description: |2- Updates an existing template with the request data. operationId: KakaotalkTemplatesController_updateTemplate_v1 parameters: - name: projectId required: true in: path description: The unique ID of the project. You can find this on the Sinch Dashboard. schema: type: string - name: plusFriendId required: true in: path description: The unique ID of the sender. schema: type: string - name: templateCode required: true in: path schema: type: string requestBody: required: true description: Updating data content: application/json: schema: $ref: '#/components/schemas/KakaotalkInputUpdateTemplateDto' examples: minimal: summary: Minimum example description: |2- Minimum body to update a template. value: {} full: summary: Full example description: |2- Full body to update a template. value: status: DRAFT details: messageType: BASIC emphasizeType: EMPHASIZE_TYPE_NONE categoryCode: '001001' securityFlag: false name: Example name content: Example content extra: Example extra title: Example title subtitle: Example subtitle imageName: Example image name imageUrl: https://example-image-url.com buttons: - ordering: 1 type: APP_LINK name: Example Name linkMo: https://example-link-mo.com linkPc: https://example-link-pc.com schemeIos: https://example-scheme-ios.com schemeAndroid: https://example-scheme-android.com responses: '200': description: Updated template content: application/json: schema: $ref: '#/components/schemas/KakaotalkTemplateDto' examples: response: summary: Update response description: |2- Response when successfully updating a template. value: id: 1a76b24e-bead-4c72-b468-6c3bdfff0ee6 code: S7yFqaKqJ8tsnBZH2CEd changes: status: IN_PROGRESS details: language: EN messageType: BASIC emphasizeType: EMPHASIZE_TYPE_NONE categoryCode: '001001' securityFlag: false name: Example name content: Example content extra: Example extra ad: Example ad title: Example title subtitle: Example subtitle imageName: Example image name imageUrl: https://example-image-url.com buttons: - ordering: 1 type: APP_LINK name: Example Name linkMo: https://example-link-mo.com linkPc: https://example-link-pc.com schemeIos: https://example-scheme-ios.com schemeAndroid: https://example-scheme-android.com created: '2023-02-24T10:19:31.372Z' modified: '2023-02-24T10:19:31.372Z' '400': description: BadRequest content: application/json: schema: oneOf: - title: ProjectNotInitializedErrorTitle properties: errorCode: type: string title: project_not_initialized example: project_not_initialized description: Error code allows to programatically handle errors. message: type: string title: Project not initialized for KakaoTalk. example: Project not initialized for KakaoTalk. description: Human readable message. resolution: type: string title: Verify that the project ID is correct and that it has been onboarded for KakaoTalk. example: Verify that the project ID is correct and that it has been onboarded for KakaoTalk. description: Human readable message with an explanation of how to solve the error. - title: TemplateInvalidCategoryCodeErrorTitle properties: errorCode: type: string title: template_invalid_category_code example: template_invalid_category_code description: Error code allows to programatically handle errors. message: type: string title: Invalid template category code. example: Invalid template category code. description: Human readable message. resolution: type: string title: Verify that the template category code used is supported for the provided project. example: Verify that the template category code used is supported for the provided project. description: Human readable message with an explanation of how to solve the error. '401': description: Unauthorized content: application/json: schema: example: errorCode: unauthorized_error message: Unauthorized error. resolution: Verify that projectId is correct. title: UnauthorizedErrorErrorTitle properties: errorCode: type: string title: unauthorized_error example: unauthorized_error description: Error code allows to programatically handle errors. message: type: string title: Unauthorized error. example: Unauthorized error. description: Human readable message. resolution: type: string title: Verify that projectId is correct. example: Verify that projectId is correct. description: Human readable message with an explanation of how to solve the error. '404': description: NotFound content: application/json: schema: oneOf: - title: SenderNotFoundErrorTitle properties: errorCode: type: string title: sender_not_found example: sender_not_found description: Error code allows to programatically handle errors. message: type: string title: Sender not found. example: Sender not found. description: Human readable message. resolution: type: string title: Verify that the parameters are correct. example: Verify that the parameters are correct. description: Human readable message with an explanation of how to solve the error. - title: TemplateNotFoundErrorTitle properties: errorCode: type: string title: template_not_found example: template_not_found description: Error code allows to programatically handle errors. message: type: string title: Template not found. example: Template not found. description: Human readable message. resolution: type: string title: Verify that the parameters are correct. example: Verify that the parameters are correct. description: Human readable message with an explanation of how to solve the error. '409': description: Conflict content: application/json: schema: oneOf: - title: TemplateExistsErrorTitle properties: errorCode: type: string title: template_exists example: template_exists description: Error code allows to programatically handle errors. message: type: string title: Template already exists. example: Template already exists. description: Human readable message. resolution: type: string title: Templates must have unique name. Change name and submit again. example: Templates must have unique name. Change name and submit again. description: Human readable message with an explanation of how to solve the error. - title: TemplateNotUpdatableErrorTitle properties: errorCode: type: string title: template_not_updatable example: template_not_updatable description: Error code allows to programatically handle errors. message: type: string title: Template is not updatable. example: Template is not updatable. description: Human readable message. resolution: type: string title: 'Updates are only supported by templates with state: APPROVED, REJECTED.' example: 'Updates are only supported by templates with state: APPROVED, REJECTED.' description: Human readable message with an explanation of how to solve the error. - title: TemplateChangesNotUpdatableErrorTitle properties: errorCode: type: string title: template_changes_not_updatable example: template_changes_not_updatable description: Error code allows to programatically handle errors. message: type: string title: Template is not updatable. example: Template is not updatable. description: Human readable message. resolution: type: string title: 'Updates are only supported by template changes with status: DRAFT, REJECTED.' example: 'Updates are only supported by template changes with status: DRAFT, REJECTED.' description: Human readable message with an explanation of how to solve the error. '424': description: FailedDependency content: application/json: schema: oneOf: - title: TemplateKakaotalkValidationErrorErrorTitle properties: errorCode: type: string title: template_kakaotalk_validation_error example: template_kakaotalk_validation_error description: Error code allows to programatically handle errors. message: type: string title: 'Template kakaoTalk validation error: Some details from provider' example: 'Template kakaoTalk validation error: Some details from provider' description: Human readable message. resolution: type: string title: Please try again later. If template is saved as draft, try to submit the template again. If option "saveDraftOnFailure" is specified as "false", try the request again. example: Please try again later. If template is saved as draft, try to submit the template again. If option "saveDraftOnFailure" is specified as "false", try the request again. description: Human readable message with an explanation of how to solve the error. additionalInformation: type: object title: additionalInformation description: Additional information for error. - title: TemplateKakaotalkValidationErrorErrorTitle properties: errorCode: type: string title: template_kakaotalk_validation_error example: template_kakaotalk_validation_error description: Error code allows to programatically handle errors. message: type: string title: 'Template kakaoTalk validation error: Some details from provider' example: 'Template kakaoTalk validation error: Some details from provider' description: Human readable message. resolution: type: string title: Please try again later. If template is saved as draft, try to submit the template again. If option "saveDraftOnFailure" is specified as "false", try the request again. example: Please try again later. If template is saved as draft, try to submit the template again. If option "saveDraftOnFailure" is specified as "false", try the request again. description: Human readable message with an explanation of how to solve the error. additionalInformation: type: object title: additionalInformation example: templateCode: AX5NnkwWABRXG7LjDBGa description: Additional information for error. '500': description: InternalServerError content: application/json: schema: example: errorCode: internal_error message: Internal server error. resolution: Please wait and try again, if the error persist please contact support. title: InternalErrorErrorTitle properties: errorCode: type: string title: internal_error example: internal_error description: Error code allows to programatically handle errors. message: type: string title: Internal server error. example: Internal server error. description: Human readable message. resolution: type: string title: Please wait and try again, if the error persist please contact support. example: Please wait and try again, if the error persist please contact support. description: Human readable message with an explanation of how to solve the error. summary: Update a template in project tags: - KakaoTalk Templates x-tagAfterOperationSummary: color: white background: green label: GA /v1/projects/{projectId}/kakaotalk/senders/{plusFriendId}/templates/{templateCode}/activities: get: description: |2- Paginated list of activities for a template. Ordered from the most recent one to the oldest one. operationId: KakaotalkTemplatesController_listActivities_v1 parameters: - name: projectId required: true in: path description: The unique ID of the project. You can find this on the Sinch Dashboard. schema: type: string - name: plusFriendId required: true in: path description: The unique ID of the sender. schema: type: string - name: templateCode required: true in: path description: The unique name of the template. schema: type: string - name: pageSize required: false in: query schema: type: number minimum: 1 maximum: 100 description: The page size requested. - name: pageToken required: false in: query schema: type: string description: The page token if retrieving the next page from a previous query. responses: '200': description: Recent activities on template content: application/json: schema: $ref: '#/components/schemas/KakaotalkTemplateNotificationListDto' examples: response: summary: List template activities response description: |2- Response for all template activities. value: totalSize: 2 pageSize: 50 notifications: - type: CREATED created: '2023-01-19T13:11:08.204Z' author: Provisioning API user - type: COMMENT_ADDED created: '2023-01-19T13:11:08.204Z' comment: Example comment author: Provisioning API user '400': description: BadRequest content: application/json: schema: oneOf: - title: ProjectNotInitializedErrorTitle properties: errorCode: type: string title: project_not_initialized example: project_not_initialized description: Error code allows to programatically handle errors. message: type: string title: Project not initialized for KakaoTalk. example: Project not initialized for KakaoTalk. description: Human readable message. resolution: type: string title: Verify that the project ID is correct and that it has been onboarded for KakaoTalk. example: Verify that the project ID is correct and that it has been onboarded for KakaoTalk. description: Human readable message with an explanation of how to solve the error. - title: InvalidPageTokenErrorTitle properties: errorCode: type: string title: invalid_page_token example: invalid_page_token description: Error code allows to programatically handle errors. message: type: string title: Invalid page token. example: Invalid page token. description: Human readable message. resolution: type: string title: The page token to use is provided in the previous query response, for new queries simply leave this field undefined. example: The page token to use is provided in the previous query response, for new queries simply leave this field undefined. description: Human readable message with an explanation of how to solve the error. - title: InvalidPageSizeErrorTitle properties: errorCode: type: string title: invalid_page_size example: invalid_page_size description: Error code allows to programatically handle errors. message: type: string title: Page size must be numeric. example: Page size must be numeric. description: Human readable message. resolution: type: string title: Use a integer value for pageSize parameter. example: Use a integer value for pageSize parameter. description: Human readable message with an explanation of how to solve the error. '401': description: Unauthorized content: application/json: schema: example: errorCode: unauthorized_error message: Unauthorized error. resolution: Verify that projectId is correct. title: UnauthorizedErrorErrorTitle properties: errorCode: type: string title: unauthorized_error example: unauthorized_error description: Error code allows to programatically handle errors. message: type: string title: Unauthorized error. example: Unauthorized error. description: Human readable message. resolution: type: string title: Verify that projectId is correct. example: Verify that projectId is correct. description: Human readable message with an explanation of how to solve the error. '404': description: NotFound content: application/json: schema: oneOf: - title: SenderNotFoundErrorTitle properties: errorCode: type: string title: sender_not_found example: sender_not_found description: Error code allows to programatically handle errors. message: type: string title: Sender not found. example: Sender not found. description: Human readable message. resolution: type: string title: Verify that the parameters are correct. example: Verify that the parameters are correct. description: Human readable message with an explanation of how to solve the error. - title: TemplateNotFoundErrorTitle properties: errorCode: type: string title: template_not_found example: template_not_found description: Error code allows to programatically handle errors. message: type: string title: Template not found. example: Template not found. description: Human readable message. resolution: type: string title: Verify that the parameters are correct. example: Verify that the parameters are correct. description: Human readable message with an explanation of how to solve the error. '500': description: InternalServerError content: application/json: schema: example: errorCode: internal_error message: Internal server error. resolution: Please wait and try again, if the error persist please contact support. title: InternalErrorErrorTitle properties: errorCode: type: string title: internal_error example: internal_error description: Error code allows to programatically handle errors. message: type: string title: Internal server error. example: Internal server error. description: Human readable message. resolution: type: string title: Please wait and try again, if the error persist please contact support. example: Please wait and try again, if the error persist please contact support. description: Human readable message with an explanation of how to solve the error. summary: Lists activities on project template tags: - KakaoTalk Templates x-tagAfterOperationSummary: color: white background: green label: GA /v1/projects/{projectId}/kakaotalk/senders/{plusFriendId}/templates/{templateCode}/changes: delete: description: |2- Delete a template draft. Please note that it is only possible to delete templates that have not yet been submitted to KakaoTalk. operationId: TemplatesController_deleteTemplateDraft_v1 parameters: - name: projectId required: true in: path description: The unique ID of the project. You can find this on the Sinch Dashboard. schema: type: string - name: plusFriendId required: true in: path description: The unique ID of the sender. schema: type: string - name: templateCode required: true in: path description: The unique name of the template. schema: type: string responses: '204': description: Template draft deleted '400': description: BadRequest content: application/json: schema: example: errorCode: project_not_initialized message: Project not initialized for KakaoTalk. resolution: Verify that the project ID is correct and that it has been onboarded for KakaoTalk. title: ProjectNotInitializedErrorTitle properties: errorCode: type: string title: project_not_initialized example: project_not_initialized description: Error code allows to programatically handle errors. message: type: string title: Project not initialized for KakaoTalk. example: Project not initialized for KakaoTalk. description: Human readable message. resolution: type: string title: Verify that the project ID is correct and that it has been onboarded for KakaoTalk. example: Verify that the project ID is correct and that it has been onboarded for KakaoTalk. description: Human readable message with an explanation of how to solve the error. '401': description: Unauthorized content: application/json: schema: example: errorCode: unauthorized_error message: Unauthorized error. resolution: Verify that projectId is correct. title: UnauthorizedErrorErrorTitle properties: errorCode: type: string title: unauthorized_error example: unauthorized_error description: Error code allows to programatically handle errors. message: type: string title: Unauthorized error. example: Unauthorized error. description: Human readable message. resolution: type: string title: Verify that projectId is correct. example: Verify that projectId is correct. description: Human readable message with an explanation of how to solve the error. '404': description: NotFound content: application/json: schema: example: errorCode: template_not_found message: Template not found. resolution: Verify that the parameters are correct. title: TemplateNotFoundErrorTitle properties: errorCode: type: string title: template_not_found example: template_not_found description: Error code allows to programatically handle errors. message: type: string title: Template not found. example: Template not found. description: Human readable message. resolution: type: string title: Verify that the parameters are correct. example: Verify that the parameters are correct. description: Human readable message with an explanation of how to solve the error. '409': description: Conflict content: application/json: schema: example: errorCode: template_not_deletable message: Template is not deletable. resolution: Only templates that has not yet been submitted to KakaoTalk is eligible for deletion. title: TemplateNotDeletableErrorTitle properties: errorCode: type: string title: template_not_deletable example: template_not_deletable description: Error code allows to programatically handle errors. message: type: string title: Template is not deletable. example: Template is not deletable. description: Human readable message. resolution: type: string title: Only templates that has not yet been submitted to KakaoTalk is eligible for deletion. example: Only templates that has not yet been submitted to KakaoTalk is eligible for deletion. description: Human readable message with an explanation of how to solve the error. '500': description: InternalServerError content: application/json: schema: example: errorCode: internal_error message: Internal server error. resolution: Please wait and try again, if the error persist please contact support. title: InternalErrorErrorTitle properties: errorCode: type: string title: internal_error example: internal_error description: Error code allows to programatically handle errors. message: type: string title: Internal server error. example: Internal server error. description: Human readable message. resolution: type: string title: Please wait and try again, if the error persist please contact support. example: Please wait and try again, if the error persist please contact support. description: Human readable message with an explanation of how to solve the error. summary: Delete template draft for project tags: - KakaoTalk Templates x-tagAfterOperationSummary: color: white background: green label: GA /v1/projects/{projectId}/kakaotalk/senders/{plusFriendId}/templates/{templateCode}/comments: post: description: |2- Creates a comment for a template. operationId: KakaotalkTemplatesController_createComment_v1 parameters: - name: projectId required: true in: path description: The unique ID of the project. You can find this on the Sinch Dashboard. schema: type: string - name: plusFriendId required: true in: path description: The unique ID of the sender. schema: type: string - name: templateCode required: true in: path description: The unique name of the template. schema: type: string requestBody: required: true description: Comment data content: application/json: schema: $ref: '#/components/schemas/KakaotalkCommentInputDto' examples: input: summary: Body request description: |2- Example body request to create a comment. value: comment: Example comment. responses: '201': description: Created comment for a template content: application/json: schema: $ref: '#/components/schemas/KakaotalkCommentDto' examples: created: summary: Create response description: |2- Response when successfully creating a comment. value: type: CREATED comment: Example comment created: '2023-01-19T13:11:08.204Z' '400': description: BadRequest content: application/json: schema: oneOf: - title: InvalidInputErrorTitle properties: errorCode: type: string title: invalid_input example: invalid_input description: Error code allows to programatically handle errors. message: type: string title: Invalid input. example: Invalid input. description: Human readable message. resolution: type: string title: Correct the validation errors and submit again. example: Correct the validation errors and submit again. description: Human readable message with an explanation of how to solve the error. additionalInformation: type: object title: additionalInformation example: validationErrors: - details.buttons.0.name must be a string description: Additional information for error. - title: ProjectNotInitializedErrorTitle properties: errorCode: type: string title: project_not_initialized example: project_not_initialized description: Error code allows to programatically handle errors. message: type: string title: Project not initialized for KakaoTalk. example: Project not initialized for KakaoTalk. description: Human readable message. resolution: type: string title: Verify that the project ID is correct and that it has been onboarded for KakaoTalk. example: Verify that the project ID is correct and that it has been onboarded for KakaoTalk. description: Human readable message with an explanation of how to solve the error. - title: TemplateInvalidLanguageCodeErrorTitle properties: errorCode: type: string title: template_invalid_language_code example: template_invalid_language_code description: Error code allows to programatically handle errors. message: type: string title: Invalid language code. example: Invalid language code. description: Human readable message. resolution: type: string title: Verify that the language code used is supported by the Provisioning API and KakaoTalk. example: Verify that the language code used is supported by the Provisioning API and KakaoTalk. description: Human readable message with an explanation of how to solve the error. additionalInformation: type: object title: additionalInformation example: supportedCodes: AF, AR, AZ, BG, BN, CA, CS, DA, DE, EL, EN, EN_GB, EN_US, ES, ES_AR, ES_ES, ES_MX, ET, FA, FI, FIL, FR, GA, GU, HA, HE, HI, HR, HU, ID, IT, JA, KA, KK, KN, KO, KY_KG, LO, LT, LV, MK, ML, MR, MS, NB, NL, PA, PL, PT_BR, PT_PT, RO, RU, RW_RW, SK, SL, SQ, SR, SV, SW, TA, TE, TH, TR, UK, UR, UZ, VI, ZH_CN, ZH_HK, ZH_TW, ZU description: Additional information for error. - title: InvalidPayloadErrorTitle properties: errorCode: type: string title: invalid_payload example: invalid_payload description: Error code allows to programatically handle errors. message: type: string title: Invalid payload. example: Invalid payload. description: Human readable message. resolution: type: string title: Correct payload and submit again. example: Correct payload and submit again. description: Human readable message with an explanation of how to solve the error. '401': description: Unauthorized content: application/json: schema: example: errorCode: unauthorized_error message: Unauthorized error. resolution: Verify that projectId is correct. title: UnauthorizedErrorErrorTitle properties: errorCode: type: string title: unauthorized_error example: unauthorized_error description: Error code allows to programatically handle errors. message: type: string title: Unauthorized error. example: Unauthorized error. description: Human readable message. resolution: type: string title: Verify that projectId is correct. example: Verify that projectId is correct. description: Human readable message with an explanation of how to solve the error. '404': description: NotFound content: application/json: schema: example: errorCode: template_not_found message: Template not found. resolution: Verify that the parameters are correct. title: TemplateNotFoundErrorTitle properties: errorCode: type: string title: template_not_found example: template_not_found description: Error code allows to programatically handle errors. message: type: string title: Template not found. example: Template not found. description: Human readable message. resolution: type: string title: Verify that the parameters are correct. example: Verify that the parameters are correct. description: Human readable message with an explanation of how to solve the error. '500': description: InternalServerError content: application/json: schema: oneOf: - title: FailedToCreateCommentErrorTitle properties: errorCode: type: string title: failed_to_create_comment example: failed_to_create_comment description: Error code allows to programatically handle errors. message: type: string title: Failed to create a comment. example: Failed to create a comment. description: Human readable message. resolution: type: string title: Please try again later. example: Please try again later. description: Human readable message with an explanation of how to solve the error. - title: InternalErrorErrorTitle properties: errorCode: type: string title: internal_error example: internal_error description: Error code allows to programatically handle errors. message: type: string title: Internal server error. example: Internal server error. description: Human readable message. resolution: type: string title: Please wait and try again, if the error persist please contact support. example: Please wait and try again, if the error persist please contact support. description: Human readable message with an explanation of how to solve the error. summary: Creates a comment for a template tags: - KakaoTalk Templates x-tagAfterOperationSummary: color: white background: green label: GA /v1/projects/{projectId}/kakaotalk/senders/{plusFriendId}/verify: post: description: |2- Verifies sender with the OTP code received after triggering registration. operationId: SendersController_verifySender_v1 parameters: - name: projectId required: true in: path description: The unique ID of the project. You can find this on the Sinch Dashboard. schema: type: string - name: plusFriendId required: true in: path description: The unique ID of the sender. schema: type: string requestBody: required: true description: Verify sender data content: application/json: schema: $ref: '#/components/schemas/KakaotalkInputVerifySenderDto' examples: input: summary: Body request description: |2- Example body request to verify. value: code: 123456 responses: '200': description: Sender content: application/json: schema: $ref: '#/components/schemas/KakaotalkSenderDto' examples: response: summary: Verify response description: |2- Response when successfully verified a sender. value: id: cf11794a-6a5e-4a12-b103-da79bd378bf1 plusFriendId: 5WY5zKfY3pB56EmDVUPQ state: ACTIVE details: adminPhoneNo: '+48777777777' name: Test Name logoImage: https://example-logo-image.com topLevelCategoryCode: '019' midLevelCategoryCode: '0006' subLevelCategoryCode: '0001' created: '2023-02-23T11:28:51.194Z' modified: '2023-02-23T11:28:51.194Z' '400': description: BadRequest content: application/json: schema: example: errorCode: project_not_initialized message: Project not initialized for KakaoTalk. resolution: Verify that the project ID is correct and that it has been onboarded for KakaoTalk. title: ProjectNotInitializedErrorTitle properties: errorCode: type: string title: project_not_initialized example: project_not_initialized description: Error code allows to programatically handle errors. message: type: string title: Project not initialized for KakaoTalk. example: Project not initialized for KakaoTalk. description: Human readable message. resolution: type: string title: Verify that the project ID is correct and that it has been onboarded for KakaoTalk. example: Verify that the project ID is correct and that it has been onboarded for KakaoTalk. description: Human readable message with an explanation of how to solve the error. '401': description: Unauthorized content: application/json: schema: example: errorCode: unauthorized_error message: Unauthorized error. resolution: Verify that projectId is correct. title: UnauthorizedErrorErrorTitle properties: errorCode: type: string title: unauthorized_error example: unauthorized_error description: Error code allows to programatically handle errors. message: type: string title: Unauthorized error. example: Unauthorized error. description: Human readable message. resolution: type: string title: Verify that projectId is correct. example: Verify that projectId is correct. description: Human readable message with an explanation of how to solve the error. '404': description: NotFound content: application/json: schema: example: errorCode: sender_not_found message: Sender not found. resolution: Verify that the parameters are correct. title: SenderNotFoundErrorTitle properties: errorCode: type: string title: sender_not_found example: sender_not_found description: Error code allows to programatically handle errors. message: type: string title: Sender not found. example: Sender not found. description: Human readable message. resolution: type: string title: Verify that the parameters are correct. example: Verify that the parameters are correct. description: Human readable message with an explanation of how to solve the error. '409': description: Conflict content: application/json: schema: example: errorCode: not_allowed_verify message: Sender not allowed to be verified. resolution: Sender has to be in "VERIFYING" state to be verified. title: NotAllowedVerifyErrorTitle properties: errorCode: type: string title: not_allowed_verify example: not_allowed_verify description: Error code allows to programatically handle errors. message: type: string title: Sender not allowed to be verified. example: Sender not allowed to be verified. description: Human readable message. resolution: type: string title: Sender has to be in "VERIFYING" state to be verified. example: Sender has to be in "VERIFYING" state to be verified. description: Human readable message with an explanation of how to solve the error. '500': description: InternalServerError content: application/json: schema: example: errorCode: internal_error message: Internal server error. resolution: Please wait and try again, if the error persist please contact support. title: InternalErrorErrorTitle properties: errorCode: type: string title: internal_error example: internal_error description: Error code allows to programatically handle errors. message: type: string title: Internal server error. example: Internal server error. description: Human readable message. resolution: type: string title: Please wait and try again, if the error persist please contact support. example: Please wait and try again, if the error persist please contact support. description: Human readable message with an explanation of how to solve the error. summary: Verify sender for project tags: - KakaoTalk Senders x-tagAfterOperationSummary: color: white background: green label: GA /v1/projects/{projectId}/conversation/apps/{conversationAppId}/instagram: get: description: |2- Returns the information for an Instagram channel linked to a Conversation API App. operationId: InstagramController_get_v1 parameters: - name: projectId required: true in: path description: The unique ID of the project. You can find this on the Sinch Dashboard. schema: type: string - name: conversationAppId required: true in: path description: The unique ID of the app. You can find this on the Sinch Dashboard. schema: type: string responses: '200': description: Instagram information. content: application/json: schema: $ref: '#/components/schemas/ConversationInstagramInfoDto' examples: example: summary: Example sender information response description: |2- The information for the Instagram page connected to the Conversation API App. value: id: '1234567890' username: Sinch status: ACTIVE followersCount: 1 followsCount: 3 mediaCount: 0 '400': description: BadRequest content: application/json: schema: example: errorCode: conversation_app_id_invalid message: Conversation app id not valid. resolution: Verify the id is correct. title: ConversationAppIdInvalidErrorTitle properties: errorCode: type: string title: conversation_app_id_invalid example: conversation_app_id_invalid description: Error code allows to programatically handle errors. message: type: string title: Conversation app id not valid. example: Conversation app id not valid. description: Human readable message. resolution: type: string title: Verify the id is correct. example: Verify the id is correct. description: Human readable message with an explanation of how to solve the error. '401': description: Unauthorized content: application/json: schema: example: errorCode: unauthorized_error message: Unauthorized error. resolution: Verify that projectId is correct. title: UnauthorizedErrorErrorTitle properties: errorCode: type: string title: unauthorized_error example: unauthorized_error description: Error code allows to programatically handle errors. message: type: string title: Unauthorized error. example: Unauthorized error. description: Human readable message. resolution: type: string title: Verify that projectId is correct. example: Verify that projectId is correct. description: Human readable message with an explanation of how to solve the error. '404': description: NotFound content: application/json: schema: oneOf: - title: ConversationAppNotFoundErrorTitle properties: errorCode: type: string title: conversation_app_not_found example: conversation_app_not_found description: Error code allows to programatically handle errors. message: type: string title: Conversation app not found. example: Conversation app not found. description: Human readable message. resolution: type: string title: Verify that the parameters are correct. example: Verify that the parameters are correct. description: Human readable message with an explanation of how to solve the error. - title: ConversationAppNoInstagramChannelErrorTitle properties: errorCode: type: string title: conversation_app_no_instagram_channel example: conversation_app_no_instagram_channel description: Error code allows to programatically handle errors. message: type: string title: Conversation app has no initialized Instagram channel. example: Conversation app has no initialized Instagram channel. description: Human readable message. resolution: type: string title: Verify that the parameters are correct. example: Verify that the parameters are correct. description: Human readable message with an explanation of how to solve the error. '500': description: InternalServerError content: application/json: schema: oneOf: - title: FacebookApiErrorErrorTitle properties: errorCode: type: string title: facebook_api_error example: facebook_api_error description: Error code allows to programatically handle errors. message: type: string title: Facebook API returned error. example: Facebook API returned error. description: Human readable message. resolution: type: string title: Please try again later. example: Please try again later. description: Human readable message with an explanation of how to solve the error. - title: InternalErrorErrorTitle properties: errorCode: type: string title: internal_error example: internal_error description: Error code allows to programatically handle errors. message: type: string title: Internal server error. example: Internal server error. description: Human readable message. resolution: type: string title: Please wait and try again, if the error persist please contact support. example: Please wait and try again, if the error persist please contact support. description: Human readable message with an explanation of how to solve the error. summary: Get Instagram channel information tags: - Conversation x-tagAfterOperationSummary: color: white background: red label: Closed Beta /v1/projects/{projectId}/conversation/apps/{conversationAppId}/messenger: get: description: |2- Returns the information for a Facebook Messenger channel linked to a Conversation API App. operationId: MessengerController_get_v1 parameters: - name: projectId required: true in: path description: The unique ID of the project. You can find this on the Sinch Dashboard. schema: type: string - name: conversationAppId required: true in: path description: The unique ID of the app. You can find this on the Sinch Dashboard. schema: type: string responses: '200': description: Facebook Messenger information. content: application/json: schema: $ref: '#/components/schemas/ConversationMessengerInfoDto' '400': description: BadRequest content: application/json: schema: example: errorCode: conversation_app_id_invalid message: Conversation app id not valid. resolution: Verify the id is correct. title: ConversationAppIdInvalidErrorTitle properties: errorCode: type: string title: conversation_app_id_invalid example: conversation_app_id_invalid description: Error code allows to programatically handle errors. message: type: string title: Conversation app id not valid. example: Conversation app id not valid. description: Human readable message. resolution: type: string title: Verify the id is correct. example: Verify the id is correct. description: Human readable message with an explanation of how to solve the error. '401': description: Unauthorized content: application/json: schema: example: errorCode: unauthorized_error message: Unauthorized error. resolution: Verify that projectId is correct. title: UnauthorizedErrorErrorTitle properties: errorCode: type: string title: unauthorized_error example: unauthorized_error description: Error code allows to programatically handle errors. message: type: string title: Unauthorized error. example: Unauthorized error. description: Human readable message. resolution: type: string title: Verify that projectId is correct. example: Verify that projectId is correct. description: Human readable message with an explanation of how to solve the error. '404': description: NotFound content: application/json: schema: oneOf: - title: ConversationAppNotFoundErrorTitle properties: errorCode: type: string title: conversation_app_not_found example: conversation_app_not_found description: Error code allows to programatically handle errors. message: type: string title: Conversation app not found. example: Conversation app not found. description: Human readable message. resolution: type: string title: Verify that the parameters are correct. example: Verify that the parameters are correct. description: Human readable message with an explanation of how to solve the error. - title: ConversationAppNoMessengerChannelErrorTitle properties: errorCode: type: string title: conversation_app_no_messenger_channel example: conversation_app_no_messenger_channel description: Error code allows to programatically handle errors. message: type: string title: Conversation app has no initialized Messenger channel. example: Conversation app has no initialized Messenger channel. description: Human readable message. resolution: type: string title: Verify that the parameters are correct. example: Verify that the parameters are correct. description: Human readable message with an explanation of how to solve the error. '500': description: InternalServerError content: application/json: schema: oneOf: - title: FacebookApiErrorErrorTitle properties: errorCode: type: string title: facebook_api_error example: facebook_api_error description: Error code allows to programatically handle errors. message: type: string title: Facebook API returned error. example: Facebook API returned error. description: Human readable message. resolution: type: string title: Please try again later. example: Please try again later. description: Human readable message with an explanation of how to solve the error. - title: InternalErrorErrorTitle properties: errorCode: type: string title: internal_error example: internal_error description: Error code allows to programatically handle errors. message: type: string title: Internal server error. example: Internal server error. description: Human readable message. resolution: type: string title: Please wait and try again, if the error persist please contact support. example: Please wait and try again, if the error persist please contact support. description: Human readable message with an explanation of how to solve the error. summary: Get Facebook Messenger channel information tags: - Conversation x-tagAfterOperationSummary: color: white background: red label: Closed Beta /v1/projects/{projectId}/conversation/apps/{conversationAppId}/telegram: get: description: |2- Returns the information for a Telegram Bot channel linked to a Conversation API App. operationId: TelegramController_get_v1 parameters: - name: projectId required: true in: path description: The unique ID of the project. You can find this on the Sinch Dashboard. schema: type: string - name: conversationAppId required: true in: path description: The unique ID of the app. You can find this on the Sinch Dashboard. schema: type: string responses: '200': description: Telegram Bot information. content: application/json: schema: $ref: '#/components/schemas/ConversationTelegramBotInfoDto' examples: example: summary: Example sender information response description: |2- The information for the Telegram sender connected to the Conversation API App. value: status: ACTIVE name: Sinch username: sinch_bot canJoinGroups: true canReadAllGroupMessages: false supportsInlineQueries: false '400': description: BadRequest content: application/json: schema: example: errorCode: conversation_app_id_invalid message: Conversation app id not valid. resolution: Verify the id is correct. title: ConversationAppIdInvalidErrorTitle properties: errorCode: type: string title: conversation_app_id_invalid example: conversation_app_id_invalid description: Error code allows to programatically handle errors. message: type: string title: Conversation app id not valid. example: Conversation app id not valid. description: Human readable message. resolution: type: string title: Verify the id is correct. example: Verify the id is correct. description: Human readable message with an explanation of how to solve the error. '401': description: Unauthorized content: application/json: schema: example: errorCode: unauthorized_error message: Unauthorized error. resolution: Verify that projectId is correct. title: UnauthorizedErrorErrorTitle properties: errorCode: type: string title: unauthorized_error example: unauthorized_error description: Error code allows to programatically handle errors. message: type: string title: Unauthorized error. example: Unauthorized error. description: Human readable message. resolution: type: string title: Verify that projectId is correct. example: Verify that projectId is correct. description: Human readable message with an explanation of how to solve the error. '404': description: NotFound content: application/json: schema: oneOf: - title: ConversationAppNotFoundErrorTitle properties: errorCode: type: string title: conversation_app_not_found example: conversation_app_not_found description: Error code allows to programatically handle errors. message: type: string title: Conversation app not found. example: Conversation app not found. description: Human readable message. resolution: type: string title: Verify that the parameters are correct. example: Verify that the parameters are correct. description: Human readable message with an explanation of how to solve the error. - title: ConversationAppNoTelegramChannelErrorTitle properties: errorCode: type: string title: conversation_app_no_telegram_channel example: conversation_app_no_telegram_channel description: Error code allows to programatically handle errors. message: type: string title: Conversation app has no initialized Telegram channel. example: Conversation app has no initialized Telegram channel. description: Human readable message. resolution: type: string title: Verify that the parameters are correct. example: Verify that the parameters are correct. description: Human readable message with an explanation of how to solve the error. '500': description: InternalServerError content: application/json: schema: oneOf: - title: TelegramApiErrorErrorTitle properties: errorCode: type: string title: telegram_api_error example: telegram_api_error description: Error code allows to programatically handle errors. message: type: string title: 'Telegram API returned error: 400, description: Bad Request: PHOTO_CROP_SIZE_SMALL.' example: 'Telegram API returned error: 400, description: Bad Request: PHOTO_CROP_SIZE_SMALL.' description: Human readable message. resolution: type: string title: Please try again later. example: Please try again later. description: Human readable message with an explanation of how to solve the error. - title: InternalErrorErrorTitle properties: errorCode: type: string title: internal_error example: internal_error description: Error code allows to programatically handle errors. message: type: string title: Internal server error. example: Internal server error. description: Human readable message. resolution: type: string title: Please wait and try again, if the error persist please contact support. example: Please wait and try again, if the error persist please contact support. description: Human readable message with an explanation of how to solve the error. summary: Get Telegram Bot channel information tags: - Conversation x-tagAfterOperationSummary: color: white background: red label: Closed Beta /v1/projects/{projectId}/conversation/apps/{conversationAppId}/viber: get: description: |2- Returns the information for a Viber Bot channel linked to a Conversation API App. operationId: ViberController_get_v1 parameters: - name: projectId required: true in: path description: The unique ID of the project. You can find this on the Sinch Dashboard. schema: type: string - name: conversationAppId required: true in: path description: The unique ID of the app. You can find this on the Sinch Dashboard. schema: type: string responses: '200': description: Viber Bot information. content: application/json: schema: $ref: '#/components/schemas/ConversationViberBotInfoDto' '401': description: Unauthorized content: application/json: schema: example: errorCode: unauthorized_error message: Unauthorized error. resolution: Verify that projectId is correct. title: UnauthorizedErrorErrorTitle properties: errorCode: type: string title: unauthorized_error example: unauthorized_error description: Error code allows to programatically handle errors. message: type: string title: Unauthorized error. example: Unauthorized error. description: Human readable message. resolution: type: string title: Verify that projectId is correct. example: Verify that projectId is correct. description: Human readable message with an explanation of how to solve the error. '404': description: NotFound content: application/json: schema: oneOf: - title: ConversationAppNotFoundErrorTitle properties: errorCode: type: string title: conversation_app_not_found example: conversation_app_not_found description: Error code allows to programatically handle errors. message: type: string title: Conversation app not found. example: Conversation app not found. description: Human readable message. resolution: type: string title: Verify that the parameters are correct. example: Verify that the parameters are correct. description: Human readable message with an explanation of how to solve the error. - title: ConversationAppNoViberChannelErrorTitle properties: errorCode: type: string title: conversation_app_no_viber_channel example: conversation_app_no_viber_channel description: Error code allows to programatically handle errors. message: type: string title: Conversation app has no initialized Viber channel. example: Conversation app has no initialized Viber channel. description: Human readable message. resolution: type: string title: Verify that the parameters are correct. example: Verify that the parameters are correct. description: Human readable message with an explanation of how to solve the error. '500': description: InternalServerError content: application/json: schema: oneOf: - title: ViberApiErrorErrorTitle properties: errorCode: type: string title: viber_api_error example: viber_api_error description: Error code allows to programatically handle errors. message: type: string title: Viber API returned error. example: Viber API returned error. description: Human readable message. resolution: type: string title: Please try again later. example: Please try again later. description: Human readable message with an explanation of how to solve the error. - title: InternalErrorErrorTitle properties: errorCode: type: string title: internal_error example: internal_error description: Error code allows to programatically handle errors. message: type: string title: Internal server error. example: Internal server error. description: Human readable message. resolution: type: string title: Please wait and try again, if the error persist please contact support. example: Please wait and try again, if the error persist please contact support. description: Human readable message with an explanation of how to solve the error. summary: Get Viber Bot channel information tags: - Conversation x-tagAfterOperationSummary: color: white background: red label: Closed Beta /v1/projects/{projectId}/rcs/activities: get: description: |2- Paginated list of activities for account. Ordered from the most recent one to the oldest one. operationId: RcsAccountsController_listActivities_v1 parameters: - name: projectId required: true in: path description: The unique ID of the project. You can find this on the Sinch Dashboard. schema: type: string - name: pageToken required: false in: query schema: type: string description: The page token if retrieving the next page from a previous query. - name: pageSize required: false in: query schema: type: number minimum: 1 maximum: 100 description: The page size requested. responses: '200': description: Recent activities on account content: application/json: schema: $ref: '#/components/schemas/RcsAccountNotificationListDto' examples: response: summary: List account activities response description: |2- Response for all account activities. value: totalSize: 2 pageSize: 50 notifications: - type: CREATED created: '2023-02-10T11:41:14.202Z' author: Provisioning API user - type: COMMENT_ADDED created: '2023-02-10T11:41:14.202Z' comment: Example comment author: Provisioning API user '400': description: BadRequest content: application/json: schema: oneOf: - title: InvalidPageTokenErrorTitle properties: errorCode: type: string title: invalid_page_token example: invalid_page_token description: Error code allows to programatically handle errors. message: type: string title: Invalid page token. example: Invalid page token. description: Human readable message. resolution: type: string title: The page token to use is provided in the previous query response, for new queries simply leave this field undefined. example: The page token to use is provided in the previous query response, for new queries simply leave this field undefined. description: Human readable message with an explanation of how to solve the error. - title: InvalidPageSizeErrorTitle properties: errorCode: type: string title: invalid_page_size example: invalid_page_size description: Error code allows to programatically handle errors. message: type: string title: Page size must be numeric. example: Page size must be numeric. description: Human readable message. resolution: type: string title: Use a integer value for pageSize parameter. example: Use a integer value for pageSize parameter. description: Human readable message with an explanation of how to solve the error. '401': description: Unauthorized content: application/json: schema: example: errorCode: unauthorized_error message: Unauthorized error. resolution: Verify that projectId is correct. title: UnauthorizedErrorErrorTitle properties: errorCode: type: string title: unauthorized_error example: unauthorized_error description: Error code allows to programatically handle errors. message: type: string title: Unauthorized error. example: Unauthorized error. description: Human readable message. resolution: type: string title: Verify that projectId is correct. example: Verify that projectId is correct. description: Human readable message with an explanation of how to solve the error. '404': description: NotFound content: application/json: schema: example: errorCode: account_not_found message: Account not found. resolution: Verify that the parameters are correct. title: AccountNotFoundErrorTitle properties: errorCode: type: string title: account_not_found example: account_not_found description: Error code allows to programatically handle errors. message: type: string title: Account not found. example: Account not found. description: Human readable message. resolution: type: string title: Verify that the parameters are correct. example: Verify that the parameters are correct. description: Human readable message with an explanation of how to solve the error. '500': description: InternalServerError content: application/json: schema: example: errorCode: internal_error message: Internal server error. resolution: Please wait and try again, if the error persist please contact support. title: InternalErrorErrorTitle properties: errorCode: type: string title: internal_error example: internal_error description: Error code allows to programatically handle errors. message: type: string title: Internal server error. example: Internal server error. description: Human readable message. resolution: type: string title: Please wait and try again, if the error persist please contact support. example: Please wait and try again, if the error persist please contact support. description: Human readable message with an explanation of how to solve the error. summary: Lists activities on account tags: - RCS Accounts x-tagAfterOperationSummary: color: white background: green label: GA /v1/projects/{projectId}/rcs/comments: post: callbacks: Comment: '{$request.body#webhooks.target}': post: summary: Comment on account description: |2- Received when a comment has been added to the account. parameters: - in: header name: x-sinch-webhook-signature schema: type: string format: uuid example: - in: header name: x-sinch-webhook-signature-algorithm schema: type: string enum: - HmacSHA256 uniqueItems: false example: HmacSHA256 - in: header name: x-sinch-webhook-signature-nonce schema: type: string example: 01EAW2BNWCG9DC13RS582V0ZQ3 - in: header name: x-sinch-webhook-signature-timestamp schema: type: string format: timestamp example: '1592227387' requestBody: content: application/json: schema: type: object properties: type: description: Type of event, in this case `RCS_ACCOUNT_COMMENT_ADDED`. type: string comment: description: Comment for account. type: string required: - type - comment example: type: RCS_ACCOUNT_COMMENT_ADDED comment: Example comment responses: '200': description: Response to callback will be ignored. The call will retry if unsuccessful. description: |2- Creates a comment for an account. operationId: RcsAccountsController_createComment_v1 parameters: - name: projectId required: true in: path description: The unique ID of the project. You can find this on the Sinch Dashboard. schema: type: string requestBody: required: true description: Comment data content: application/json: schema: $ref: '#/components/schemas/RcsCommentInputDto' examples: input: summary: Body request description: |2- Example body request to create a comment. value: comment: Example comment. responses: '201': description: Created comment for an account. content: application/json: schema: $ref: '#/components/schemas/RcsCommentDto' examples: created: summary: Create response description: |2- Response when successfully creating a comment. value: type: CREATED comment: Example comment created: '2023-01-19T13:11:08.204Z' '400': description: BadRequest content: application/json: schema: oneOf: - title: InvalidInputErrorTitle properties: errorCode: type: string title: invalid_input example: invalid_input description: Error code allows to programatically handle errors. message: type: string title: Invalid input. example: Invalid input. description: Human readable message. resolution: type: string title: Correct the validation errors and submit again. example: Correct the validation errors and submit again. description: Human readable message with an explanation of how to solve the error. additionalInformation: type: object title: additionalInformation example: validationErrors: - comment must be longer than or equal to 1 characters description: Additional information for error. - title: InvalidPayloadErrorTitle properties: errorCode: type: string title: invalid_payload example: invalid_payload description: Error code allows to programatically handle errors. message: type: string title: Invalid payload. example: Invalid payload. description: Human readable message. resolution: type: string title: Correct payload and submit again. example: Correct payload and submit again. description: Human readable message with an explanation of how to solve the error. '401': description: Unauthorized content: application/json: schema: example: errorCode: unauthorized_error message: Unauthorized error. resolution: Verify that projectId is correct. title: UnauthorizedErrorErrorTitle properties: errorCode: type: string title: unauthorized_error example: unauthorized_error description: Error code allows to programatically handle errors. message: type: string title: Unauthorized error. example: Unauthorized error. description: Human readable message. resolution: type: string title: Verify that projectId is correct. example: Verify that projectId is correct. description: Human readable message with an explanation of how to solve the error. '404': description: NotFound content: application/json: schema: example: errorCode: account_not_found message: Account not found. resolution: Verify that the parameters are correct. title: AccountNotFoundErrorTitle properties: errorCode: type: string title: account_not_found example: account_not_found description: Error code allows to programatically handle errors. message: type: string title: Account not found. example: Account not found. description: Human readable message. resolution: type: string title: Verify that the parameters are correct. example: Verify that the parameters are correct. description: Human readable message with an explanation of how to solve the error. '500': description: InternalServerError content: application/json: schema: oneOf: - title: FailedToCreateCommentErrorTitle properties: errorCode: type: string title: failed_to_create_comment example: failed_to_create_comment description: Error code allows to programatically handle errors. message: type: string title: Failed to create a comment. example: Failed to create a comment. description: Human readable message. resolution: type: string title: Please try again later. example: Please try again later. description: Human readable message with an explanation of how to solve the error. - title: InternalErrorErrorTitle properties: errorCode: type: string title: internal_error example: internal_error description: Error code allows to programatically handle errors. message: type: string title: Internal server error. example: Internal server error. description: Human readable message. resolution: type: string title: Please wait and try again, if the error persist please contact support. example: Please wait and try again, if the error persist please contact support. description: Human readable message with an explanation of how to solve the error. summary: Creates a comment for an account tags: - RCS Accounts x-tagAfterOperationSummary: color: white background: green label: GA /v1/projects/{projectId}/rcs/questionnaire/{useCase}: get: description: |2- Returns questionnaire questions for a use case. The launch questionnaire is based on information required by different Suppliers and Operators. As such, especially the country specific, may be subject to change. operationId: QuestionnaireController_getQuestions_v1 parameters: - name: projectId required: true in: path description: The unique ID of the project. You can find this on the Sinch Dashboard. schema: type: string - name: useCase required: true in: path description: Use case. schema: $ref: '#/components/schemas/RcsInputSenderUseCasesEnum' - name: countries required: false in: query description: Optional query for sender countries. schema: type: array items: $ref: '#/components/schemas/RcsInputCountryCodesEnum' responses: '200': description: Questionnaire questions content: application/json: schema: $ref: '#/components/schemas/RcsSenderDetailsQuestionnaireBaseDto' examples: response: summary: Get response description: |2- Response with questionnaire questions. value: general: questions: optInDescription: question: How do users agree to receive messages from your business through the agent? suggestedAnswers: - By subscribing to our loyalty program - By making a purchase in-store or online - By subscribing to a newsletter - By creating an account on our website or app triggerDescription: question: When does your business send messages to users through the agent? suggestedAnswers: - User actions (e.g. after making a purchase) interactionsDescription: question: How will users interact with your business through the agent? suggestedAnswers: - Online Payment - Password reset - OTP/2FA for account login optOutDescription: question: What message does your business send when a user opts out? suggestedAnswers: - Thank you for opting out - Thank you for unsubscribing - We have registered your opt out request videoUris: question: '' suggestedAnswers: [] screenshotUris: question: '' suggestedAnswers: [] verification: questions: name: question: What is the name of your verification contact? suggestedAnswers: [] email: question: What is the email of your verification contact? suggestedAnswers: [] title: question: What is the title of your verification contact? suggestedAnswers: [] website: question: What is the website of your verification contact? suggestedAnswers: [] '400': description: BadRequest content: application/json: schema: oneOf: - title: QuestionnaireInvalidUseCaseErrorTitle properties: errorCode: type: string title: questionnaire_invalid_use_case example: questionnaire_invalid_use_case description: Error code allows to programatically handle errors. message: type: string title: Invalid use case value. example: Invalid use case value. description: Human readable message. resolution: type: string title: Verify that the use case value is supported by the Provisioning API. example: Verify that the use case value is supported by the Provisioning API. description: Human readable message with an explanation of how to solve the error. additionalInformation: type: object title: additionalInformation example: validUseCases: MULTIUSE, OTP, PROMOTIONAL, TRANSACTIONAL description: Additional information for error. - title: QuestionnaireInvalidCountryErrorTitle properties: errorCode: type: string title: questionnaire_invalid_country example: questionnaire_invalid_country description: Error code allows to programatically handle errors. message: type: string title: Invalid country. example: Invalid country. description: Human readable message. resolution: type: string title: Use the supported values for the countries parameter. example: Use the supported values for the countries parameter. description: Human readable message with an explanation of how to solve the error. additionalInformation: type: object title: additionalInformation example: supportedValues: AT, BE, BR, CA, CZ, DK, FI, FR, DE, IT, MX, NL, NO, PL, PT, SG, SK, ES, SE, US, GB description: Additional information for error. '401': description: Unauthorized content: application/json: schema: example: errorCode: unauthorized_error message: Unauthorized error. resolution: Verify that projectId is correct. title: UnauthorizedErrorErrorTitle properties: errorCode: type: string title: unauthorized_error example: unauthorized_error description: Error code allows to programatically handle errors. message: type: string title: Unauthorized error. example: Unauthorized error. description: Human readable message. resolution: type: string title: Verify that projectId is correct. example: Verify that projectId is correct. description: Human readable message with an explanation of how to solve the error. '500': description: InternalServerError content: application/json: schema: example: errorCode: internal_error message: Internal server error. resolution: Please wait and try again, if the error persist please contact support. title: InternalErrorErrorTitle properties: errorCode: type: string title: internal_error example: internal_error description: Error code allows to programatically handle errors. message: type: string title: Internal server error. example: Internal server error. description: Human readable message. resolution: type: string title: Please wait and try again, if the error persist please contact support. example: Please wait and try again, if the error persist please contact support. description: Human readable message with an explanation of how to solve the error. summary: Get questionnaire questions for project and use case tags: - RCS Questionnaire x-tagAfterOperationSummary: color: white background: green label: GA /v1/projects/{projectId}/rcs/senders: get: description: |2- Returns a paginated list of senders for the specified project. If no page token is supplied then the first `50` will be returned. operationId: RcsSendersController_listSenders_v1 parameters: - name: projectId required: true in: path description: The unique ID of the project. You can find this on the Sinch Dashboard. schema: type: string - name: pageToken required: false in: query schema: type: string description: The page token if retrieving the next page from a previous query. - name: pageSize required: false in: query schema: type: number minimum: 1 maximum: 100 description: The page size requested. - name: filterConversationApiAppId required: false in: query description: Optional query for sender by Conversation API app id. schema: type: string - name: filterSenderIds required: false in: query description: Optional query for sender by sender ids. schema: type: string - name: filterSenderName required: false in: query description: Optional query for sender by name. schema: type: string - name: filterStates required: false in: query description: Optionally query for sender by states. schema: type: array items: $ref: '#/components/schemas/RcsSenderStatesEnum' - name: sortColumn required: false in: query description: Optional query for sender sort column. schema: $ref: '#/components/schemas/RcsSenderSortColumnsEnum' - name: sortDirection required: false in: query description: Optional query for sender sort direction. schema: $ref: '#/components/schemas/RcsSortDirectionsEnum' responses: '200': description: List of senders content: application/json: schema: $ref: '#/components/schemas/RcsSenderListDto' examples: response: summary: List response description: |2- Response with senders. value: totalSize: 2 pageSize: 50 senders: - id: cf11794a-6a5e-4a12-b103-da79bd378bf1 state: IN_TEST testNumberStates: - number: '+46123123111' state: UNVERIFIED submitted: '2023-01-19t13:11:08.204Z' - number: '+46123123222' state: VERIFIED submitted: '2023-01-19t13:11:08.204Z' - number: '+46123123333' state: DECLINED submitted: '2023-01-19t13:11:08.204Z' countryStatus: - country: FR status: NOT_LAUNCHED operators: - name: Coriolis Telecom status: NOT_LAUNCHED modified: '2023-01-19t13:11:08.204Z' - name: Lycamobile status: NOT_LAUNCHED modified: '2023-01-19t13:11:08.204Z' - name: Bouygues status: NOT_LAUNCHED modified: '2023-01-19t13:11:08.204Z' - name: Free status: NOT_LAUNCHED modified: '2023-01-19t13:11:08.204Z' - name: NRJ Mobile status: NOT_LAUNCHED modified: '2023-01-19t13:11:08.204Z' - name: SFR status: NOT_LAUNCHED modified: '2023-01-19t13:11:08.204Z' - name: Orange status: NOT_LAUNCHED modified: '2023-01-19t13:11:08.204Z' - country: GB status: NOT_LAUNCHED operators: - name: EE status: NOT_LAUNCHED modified: '2023-01-19t13:11:08.204Z' - name: Three status: NOT_LAUNCHED modified: '2023-01-19t13:11:08.204Z' - name: Sky status: NOT_LAUNCHED modified: '2023-01-19t13:11:08.204Z' - name: O2 status: NOT_LAUNCHED modified: '2023-01-19t13:11:08.204Z' - name: Vodafone status: NOT_LAUNCHED modified: '2023-01-19t13:11:08.204Z' - country: SE status: NOT_LAUNCHED operators: - name: Tele2 status: NOT_LAUNCHED modified: '2023-01-19t13:11:08.204Z' - name: Telenor status: NOT_LAUNCHED modified: '2023-01-19t13:11:08.204Z' - name: Telia status: NOT_LAUNCHED modified: '2023-01-19t13:11:08.204Z' - name: Three status: NOT_LAUNCHED modified: '2023-01-19t13:11:08.204Z' details: brand: emails: - label: label address: test@test.com - label: label-1 address: test-1@test.com - label: label-2 address: test-2@test.com phones: - label: label number: +48 777-777-777 - label: label-1 number: '48888888888' - label: label-2 number: +48 999-999-999 websites: - label: label url: https://example.com - label: label-1 url: https://example-1.com - label: label-2 url: https://example-2.com color: '#000000' description: Test description bannerUrl: https://example-banner-url.com logoUrl: https://example-logo-url.com privacyPolicyUrl: https://example-private-policy-url.com termsOfServiceUrl: https://example-terms-of-service-url.com name: Test name testNumbers: - +48 777-777-777 countries: - FR - GB - SE questionnaire: general: questions: optInDescription: question: How do users agree to receive messages from your business through the agent? suggestedAnswers: - By subscribing to our loyalty program - By making a purchase in-store or online - By subscribing to a newsletter - By creating an account on our website or app triggerDescription: question: When does your business send messages to users through the agent? suggestedAnswers: - User actions (e.g. after making a purchase) interactionsDescription: question: How will users interact with your business through the agent? suggestedAnswers: - Online Payment - Password reset - OTP/2FA for account login optOutDescription: question: What message does your business send when a user opts out? suggestedAnswers: - Thank you for opting out - Thank you for unsubscribing - We have registered your opt out request videoUris: question: '' suggestedAnswers: [] screenshotUris: question: '' suggestedAnswers: [] answers: optInDescription: By subscribing to a newsletter triggerDescription: User actions (e.g. after making a purchase) interactionsDescription: Billing or payment reminders,aef Order updates,aef Upon package delivery interactionsDescriptionMetadata: ignore: ',aef' optOutDescription: We have registered your opt out request videoUris: - https://example-video-url.com screenshotUris: - https://example-screenshot-url.com verification: questions: name: question: What is the name of your verification contact? suggestedAnswers: [] email: question: What is the email of your verification contact? suggestedAnswers: [] title: question: What is the title of your verification contact? suggestedAnswers: [] website: question: What is the website of your verification contact? suggestedAnswers: [] answers: name: Exam Ple email: email@example.com title: Head Example website: https://example.com gb: questions: brandIndustry: question: What sector or industry does your business operate in? suggestedAnswers: - Automotive - Beauty, spa and salon - Clothing - Education - Entertainment - Event planning and service - Finance and banking - Food and groceries - Public service - Hotel and lodging - Medical and health - Charity - Professional services - Shopping and retail - Travel and transportation - Restaurant companyLegalName: question: What is the registered legal name of your company? suggestedAnswers: [] companyRegistrationNumber: question: What is the registration number of your company? suggestedAnswers: [] fullCompanyAddress: question: Full Company Address suggestedAnswers: [] messagesVolume: question: What is the total volume of messages expected to be sent by your agent? suggestedAnswers: - 0 - 10K messages - 10K - 100K messages - 100K - 1M messages - 1M+ messages messagesFrequency: question: How often do you expect to send messages? suggestedAnswers: - Once per day - Once per week - Once per month - Once per 3 months - Once per 6 months campaignLength: question: What will be the length of the RCS campaign? suggestedAnswers: - 1 day or less - 2 to 7 days - 8 to 21 days - 1 month - 3 months - 6 months - Continuous / ongoing answers: brandIndustry: Automotive companyLegalName: Example company legal name companyRegistrationNumber: 123-123456789 fullCompanyAddress: Skeppsbron 1 Malmö, 123 12, Sweden messagesVolume: 10K - 100K messages messagesFrequency: Once per month fr: questions: fullCompanyAddress: question: Full Company Address suggestedAnswers: [] usersAmount: question: How many users are your agent expected to reach? suggestedAnswers: - 0 - 1K users - 1K - 10K users - 10k - 100K users - 100K+ users startDate: question: When will your agent start sending messages to your users? suggestedAnswers: - Today - In a week - In a month - Within 3 months siren: question: What is your Company directory identification system number (SIREN)? suggestedAnswers: [] answers: fullCompanyAddress: Skeppsbron 1-split-211 20-split-Malmö fullCompanyAddressMetadata: ignore: '-split-' siren: '123456789' region: EU billingCategory: BASIC_MESSAGE useCase: OTP hostingRegion: EUROPE authName: yurwN6123asd authToken: ejiiqJtDyurwN6jLze8v conversationApiApp: 4CF9CE97504C4A468F4610919D17ECC1 conversationApiAppDetails: id: 4CF9CE97504C4A468F4610919D17ECC1 projectId: ea026751-3edf-40a9-ad93-1b382bd60a78 region: EU created: '2023-01-19t13:11:08.204Z' modified: '2023-01-19t13:11:08.204Z' launched: '2023-01-19t13:11:08.204Z' supplierDetails: google: agentId: agentId - id: cf11794a-6a5e-4a12-b103-da79bd378bf1 state: PREPARING_LAUNCH testNumberStates: - number: '+46123123111' state: UNVERIFIED submitted: '2023-01-19t13:11:08.204Z' - number: '+46123123222' state: VERIFIED submitted: '2023-01-19t13:11:08.204Z' - number: '+46123123333' state: DECLINED submitted: '2023-01-19t13:11:08.204Z' countryStatus: - country: FR status: PENDING operators: - name: Coriolis Telecom status: PENDING modified: '2023-01-19t13:11:08.204Z' - name: Lycamobile status: PENDING modified: '2023-01-19t13:11:08.204Z' - name: Bouygues status: PENDING modified: '2023-01-19t13:11:08.204Z' - name: Free status: PENDING modified: '2023-01-19t13:11:08.204Z' - name: NRJ Mobile status: REJECTED remark: Sender was rejected due to operator policy. modified: '2023-01-19t13:11:08.204Z' - name: SFR status: SUSPENDED modified: '2023-01-19t13:11:08.204Z' - name: Orange status: PENDING modified: '2023-01-19t13:11:08.204Z' - country: GB status: PENDING operators: - name: EE status: PENDING modified: '2023-01-19t13:11:08.204Z' - name: Three status: PENDING modified: '2023-01-19t13:11:08.204Z' - name: Sky status: PENDING modified: '2023-01-19t13:11:08.204Z' - name: O2 status: PENDING modified: '2023-01-19t13:11:08.204Z' - name: Vodafone status: SUSPENDED modified: '2023-01-19t13:11:08.204Z' - country: SE status: PENDING operators: - name: Tele2 status: PENDING modified: '2023-01-19t13:11:08.204Z' - name: Telenor status: PENDING modified: '2023-01-19t13:11:08.204Z' - name: Telia status: PENDING modified: '2023-01-19t13:11:08.204Z' - name: Three status: PENDING modified: '2023-01-19t13:11:08.204Z' details: brand: emails: - label: label address: test@test.com - label: label-1 address: test-1@test.com - label: label-2 address: test-2@test.com phones: - label: label number: +48 777-777-777 - label: label-1 number: '48888888888' - label: label-2 number: +48 999-999-999 websites: - label: label url: https://example.com - label: label-1 url: https://example-1.com - label: label-2 url: https://example-2.com color: '#000000' description: Test description bannerUrl: https://example-banner-url.com logoUrl: https://example-logo-url.com privacyPolicyUrl: https://example-private-policy-url.com termsOfServiceUrl: https://example-terms-of-service-url.com name: Test name testNumbers: - +48 777-777-777 countries: - FR - GB - SE questionnaire: general: questions: optInDescription: question: How do users agree to receive messages from your business through the agent? suggestedAnswers: - By subscribing to our loyalty program - By making a purchase in-store or online - By subscribing to a newsletter - By creating an account on our website or app triggerDescription: question: When does your business send messages to users through the agent? suggestedAnswers: - User actions (e.g. after making a purchase) interactionsDescription: question: How will users interact with your business through the agent? suggestedAnswers: - Online Payment - Password reset - OTP/2FA for account login optOutDescription: question: What message does your business send when a user opts out? suggestedAnswers: - Thank you for opting out - Thank you for unsubscribing - We have registered your opt out request videoUris: question: '' suggestedAnswers: [] screenshotUris: question: '' suggestedAnswers: [] answers: optInDescription: By subscribing to a newsletter triggerDescription: User actions (e.g. after making a purchase) interactionsDescription: Billing or payment reminders,aef Order updates,aef Upon package delivery interactionsDescriptionMetadata: ignore: ',aef' optOutDescription: We have registered your opt out request videoUris: - https://example-video-url.com screenshotUris: - https://example-screenshot-url.com verification: questions: name: question: What is the name of your verification contact? suggestedAnswers: [] email: question: What is the email of your verification contact? suggestedAnswers: [] title: question: What is the title of your verification contact? suggestedAnswers: [] website: question: What is the website of your verification contact? suggestedAnswers: [] answers: name: Exam Ple email: email@example.com title: Head Example website: https://example.com gb: questions: brandIndustry: question: What sector or industry does your business operate in? suggestedAnswers: - Automotive - Beauty, spa and salon - Clothing - Education - Entertainment - Event planning and service - Finance and banking - Food and groceries - Public service - Hotel and lodging - Medical and health - Charity - Professional services - Shopping and retail - Travel and transportation - Restaurant companyLegalName: question: What is the registered legal name of your company? suggestedAnswers: [] companyRegistrationNumber: question: What is the registration number of your company? suggestedAnswers: [] fullCompanyAddress: question: Full Company Address suggestedAnswers: [] messagesVolume: question: What is the total volume of messages expected to be sent by your agent? suggestedAnswers: - 0 - 10K messages - 10K - 100K messages - 100K - 1M messages - 1M+ messages messagesFrequency: question: How often do you expect to send messages? suggestedAnswers: - Once per day - Once per week - Once per month - Once per 3 months - Once per 6 months campaignLength: question: What will be the length of the RCS campaign? suggestedAnswers: - 1 day or less - 2 to 7 days - 8 to 21 days - 1 month - 3 months - 6 months - Continuous / ongoing answers: brandIndustry: Automotive companyLegalName: Example company legal name companyRegistrationNumber: 123-123456789 fullCompanyAddress: Skeppsbron 1 Malmö, 123 12, Sweden messagesVolume: 10K - 100K messages messagesFrequency: Once per month fr: questions: fullCompanyAddress: question: Full Company Address suggestedAnswers: [] usersAmount: question: How many users are your agent expected to reach? suggestedAnswers: - 0 - 1K users - 1K - 10K users - 10k - 100K users - 100K+ users startDate: question: When will your agent start sending messages to your users? suggestedAnswers: - Today - In a week - In a month - Within 3 months siren: question: What is your Company directory identification system number (SIREN)? suggestedAnswers: [] answers: fullCompanyAddress: Skeppsbron 1-split-211 20-split-Malmö fullCompanyAddressMetadata: ignore: '-split-' siren: '123456789' region: EU billingCategory: BASIC_MESSAGE useCase: OTP hostingRegion: EUROPE authName: yurwN6123asd authToken: ejiiqJtDyurwN6jLze8v conversationApiApp: 4CF9CE97504C4A468F4610919D17ECC1 conversationApiAppDetails: id: 4CF9CE97504C4A468F4610919D17ECC1 projectId: ea026751-3edf-40a9-ad93-1b382bd60a78 region: EU created: '2023-01-19t13:11:08.204Z' modified: '2023-01-19t13:11:08.204Z' launched: '2023-01-19t13:11:08.204Z' supplierDetails: google: agentId: agentId '400': description: BadRequest content: application/json: schema: oneOf: - title: InvalidPageTokenErrorTitle properties: errorCode: type: string title: invalid_page_token example: invalid_page_token description: Error code allows to programatically handle errors. message: type: string title: Invalid page token. example: Invalid page token. description: Human readable message. resolution: type: string title: The page token to use is provided in the previous query response, for new queries simply leave this field undefined. example: The page token to use is provided in the previous query response, for new queries simply leave this field undefined. description: Human readable message with an explanation of how to solve the error. - title: InvalidPageSizeErrorTitle properties: errorCode: type: string title: invalid_page_size example: invalid_page_size description: Error code allows to programatically handle errors. message: type: string title: Page size must be numeric. example: Page size must be numeric. description: Human readable message. resolution: type: string title: Use a integer value for pageSize parameter. example: Use a integer value for pageSize parameter. description: Human readable message with an explanation of how to solve the error. - title: InvalidFilterStatesErrorTitle properties: errorCode: type: string title: invalid_filter_states example: invalid_filter_states description: Error code allows to programatically handle errors. message: type: string title: Invalid filterStates. example: Invalid filterStates. description: Human readable message. resolution: type: string title: Verify that the filterStates used are supported by the Provisioning API. example: Verify that the filterStates used are supported by the Provisioning API. description: Human readable message with an explanation of how to solve the error. additionalInformation: type: object title: additionalInformation example: supportedCodes: DRAFT, IN_PROGRESS, IN_TEST, LAUNCHED, LAUNCHING, PREPARING_LAUNCH, UNLAUNCHED, UNKNOWN description: Additional information for error. '401': description: Unauthorized content: application/json: schema: example: errorCode: unauthorized_error message: Unauthorized error. resolution: Verify that projectId is correct. title: UnauthorizedErrorErrorTitle properties: errorCode: type: string title: unauthorized_error example: unauthorized_error description: Error code allows to programatically handle errors. message: type: string title: Unauthorized error. example: Unauthorized error. description: Human readable message. resolution: type: string title: Verify that projectId is correct. example: Verify that projectId is correct. description: Human readable message with an explanation of how to solve the error. '403': description: Forbidden content: application/json: schema: example: errorCode: rbm_has_not_been_used message: RBM has not been used. resolution: Please wait and try again or reach out to support at si-richmessaging@sinch.com title: RbmHasNotBeenUsedErrorTitle properties: errorCode: type: string title: rbm_has_not_been_used example: rbm_has_not_been_used description: Error code allows to programatically handle errors. message: type: string title: RBM has not been used. example: RBM has not been used. description: Human readable message. resolution: type: string title: Please wait and try again or reach out to support at si-richmessaging@sinch.com example: Please wait and try again or reach out to support at si-richmessaging@sinch.com description: Human readable message with an explanation of how to solve the error. '429': description: TooManyRequests content: application/json: schema: example: errorCode: rbm_too_many_requests message: RCS Business Messaging too many requests. resolution: Please wait and try again. title: RbmTooManyRequestsErrorTitle properties: errorCode: type: string title: rbm_too_many_requests example: rbm_too_many_requests description: Error code allows to programatically handle errors. message: type: string title: RCS Business Messaging too many requests. example: RCS Business Messaging too many requests. description: Human readable message. resolution: type: string title: Please wait and try again. example: Please wait and try again. description: Human readable message with an explanation of how to solve the error. '500': description: InternalServerError content: application/json: schema: example: errorCode: internal_error message: Internal server error. resolution: Please wait and try again, if the error persist please contact support. title: InternalErrorErrorTitle properties: errorCode: type: string title: internal_error example: internal_error description: Error code allows to programatically handle errors. message: type: string title: Internal server error. example: Internal server error. description: Human readable message. resolution: type: string title: Please wait and try again, if the error persist please contact support. example: Please wait and try again, if the error persist please contact support. description: Human readable message with an explanation of how to solve the error. summary: List all senders in project tags: - RCS Senders x-tagAfterOperationSummary: color: white background: green label: GA post: callbacks: StatusUpdate: '{$request.body#webhooks.target}': post: summary: Sender status updated description: |2- Received when a Sender status is updated. parameters: - in: header name: x-sinch-webhook-signature schema: type: string format: uuid example: - in: header name: x-sinch-webhook-signature-algorithm schema: type: string enum: - HmacSHA256 uniqueItems: false example: HmacSHA256 - in: header name: x-sinch-webhook-signature-nonce schema: type: string example: 01EAW2BNWCG9DC13RS582V0ZQ3 - in: header name: x-sinch-webhook-signature-timestamp schema: type: string format: timestamp example: '1592227387' requestBody: content: application/json: schema: type: object properties: type: description: Type of event, in this case `RCS_SENDER_STATUS_UPDATED`. type: string payload: description: Sender at time of callback. allOf: - $ref: '#/components/schemas/RcsSenderDto' previousState: description: The previous state of the sender. type: string enum: - DRAFT - IN_PROGRESS - IN_TEST - LAUNCHED - LAUNCHING - PREPARING_LAUNCH - UNLAUNCHED - UNKNOWN currentState: description: The current state of the sender. type: string enum: - DRAFT - IN_PROGRESS - IN_TEST - LAUNCHED - LAUNCHING - PREPARING_LAUNCH - UNLAUNCHED - UNKNOWN comment: description: Comment for sender. type: string required: - type - payload - previousState - currentState example: type: RCS_SENDER_STATUS_UPDATED payload: id: cf11794a-6a5e-4a12-b103-da79bd378bf1 state: IN_TEST testNumberStates: - number: '+46123123111' state: UNVERIFIED submitted: '2023-01-19t13:11:08.204Z' - number: '+46123123222' state: VERIFIED submitted: '2023-01-19t13:11:08.204Z' - number: '+46123123333' state: DECLINED submitted: '2023-01-19t13:11:08.204Z' countryStatus: - country: FR status: NOT_LAUNCHED operators: - name: Coriolis Telecom status: NOT_LAUNCHED modified: '2023-01-19t13:11:08.204Z' - name: Lycamobile status: NOT_LAUNCHED modified: '2023-01-19t13:11:08.204Z' - name: Bouygues status: NOT_LAUNCHED modified: '2023-01-19t13:11:08.204Z' - name: Free status: NOT_LAUNCHED modified: '2023-01-19t13:11:08.204Z' - name: NRJ Mobile status: NOT_LAUNCHED modified: '2023-01-19t13:11:08.204Z' - name: SFR status: NOT_LAUNCHED modified: '2023-01-19t13:11:08.204Z' - name: Orange status: NOT_LAUNCHED modified: '2023-01-19t13:11:08.204Z' - country: GB status: NOT_LAUNCHED operators: - name: EE status: NOT_LAUNCHED modified: '2023-01-19t13:11:08.204Z' - name: Three status: NOT_LAUNCHED modified: '2023-01-19t13:11:08.204Z' - name: Sky status: NOT_LAUNCHED modified: '2023-01-19t13:11:08.204Z' - name: O2 status: NOT_LAUNCHED modified: '2023-01-19t13:11:08.204Z' - name: Vodafone status: NOT_LAUNCHED modified: '2023-01-19t13:11:08.204Z' - country: SE status: NOT_LAUNCHED operators: - name: Tele2 status: NOT_LAUNCHED modified: '2023-01-19t13:11:08.204Z' - name: Telenor status: NOT_LAUNCHED modified: '2023-01-19t13:11:08.204Z' - name: Telia status: NOT_LAUNCHED modified: '2023-01-19t13:11:08.204Z' - name: Three status: NOT_LAUNCHED modified: '2023-01-19t13:11:08.204Z' details: brand: emails: - label: label address: test@test.com - label: label-1 address: test-1@test.com - label: label-2 address: test-2@test.com phones: - label: label number: +48 777-777-777 - label: label-1 number: '48888888888' - label: label-2 number: +48 999-999-999 websites: - label: label url: https://example.com - label: label-1 url: https://example-1.com - label: label-2 url: https://example-2.com color: '#000000' description: Test description bannerUrl: https://example-banner-url.com logoUrl: https://example-logo-url.com privacyPolicyUrl: https://example-private-policy-url.com termsOfServiceUrl: https://example-terms-of-service-url.com name: Test name testNumbers: - +48 777-777-777 countries: - FR - GB - SE questionnaire: general: questions: optInDescription: question: How do users agree to receive messages from your business through the agent? suggestedAnswers: - By subscribing to our loyalty program - By making a purchase in-store or online - By subscribing to a newsletter - By creating an account on our website or app triggerDescription: question: When does your business send messages to users through the agent? suggestedAnswers: - User actions (e.g. after making a purchase) interactionsDescription: question: How will users interact with your business through the agent? suggestedAnswers: - Online Payment - Password reset - OTP/2FA for account login optOutDescription: question: What message does your business send when a user opts out? suggestedAnswers: - Thank you for opting out - Thank you for unsubscribing - We have registered your opt out request videoUris: question: '' suggestedAnswers: [] screenshotUris: question: '' suggestedAnswers: [] answers: optInDescription: By subscribing to a newsletter triggerDescription: User actions (e.g. after making a purchase) interactionsDescription: Billing or payment reminders,aef Order updates,aef Upon package delivery interactionsDescriptionMetadata: ignore: ',aef' optOutDescription: We have registered your opt out request videoUris: - https://example-video-url.com screenshotUris: - https://example-screenshot-url.com verification: questions: name: question: What is the name of your verification contact? suggestedAnswers: [] email: question: What is the email of your verification contact? suggestedAnswers: [] title: question: What is the title of your verification contact? suggestedAnswers: [] website: question: What is the website of your verification contact? suggestedAnswers: [] answers: name: Exam Ple email: email@example.com title: Head Example website: https://example.com gb: questions: brandIndustry: question: What sector or industry does your business operate in? suggestedAnswers: - Automotive - Beauty, spa and salon - Clothing - Education - Entertainment - Event planning and service - Finance and banking - Food and groceries - Public service - Hotel and lodging - Medical and health - Charity - Professional services - Shopping and retail - Travel and transportation - Restaurant companyLegalName: question: What is the registered legal name of your company? suggestedAnswers: [] companyRegistrationNumber: question: What is the registration number of your company? suggestedAnswers: [] fullCompanyAddress: question: Full Company Address suggestedAnswers: [] messagesVolume: question: What is the total volume of messages expected to be sent by your agent? suggestedAnswers: - 0 - 10K messages - 10K - 100K messages - 100K - 1M messages - 1M+ messages messagesFrequency: question: How often do you expect to send messages? suggestedAnswers: - Once per day - Once per week - Once per month - Once per 3 months - Once per 6 months campaignLength: question: What will be the length of the RCS campaign? suggestedAnswers: - 1 day or less - 2 to 7 days - 8 to 21 days - 1 month - 3 months - 6 months - Continuous / ongoing answers: brandIndustry: Automotive companyLegalName: Example company legal name companyRegistrationNumber: 123-123456789 fullCompanyAddress: Skeppsbron 1 Malmö, 123 12, Sweden messagesVolume: 10K - 100K messages messagesFrequency: Once per month fr: questions: fullCompanyAddress: question: Full Company Address suggestedAnswers: [] usersAmount: question: How many users are your agent expected to reach? suggestedAnswers: - 0 - 1K users - 1K - 10K users - 10k - 100K users - 100K+ users startDate: question: When will your agent start sending messages to your users? suggestedAnswers: - Today - In a week - In a month - Within 3 months siren: question: What is your Company directory identification system number (SIREN)? suggestedAnswers: [] answers: fullCompanyAddress: Skeppsbron 1-split-211 20-split-Malmö fullCompanyAddressMetadata: ignore: '-split-' siren: '123456789' region: EU billingCategory: BASIC_MESSAGE useCase: OTP hostingRegion: EUROPE authName: yurwN6123asd authToken: ejiiqJtDyurwN6jLze8v conversationApiApp: 4CF9CE97504C4A468F4610919D17ECC1 conversationApiAppDetails: id: 4CF9CE97504C4A468F4610919D17ECC1 projectId: ea026751-3edf-40a9-ad93-1b382bd60a78 region: EU created: '2023-01-19t13:11:08.204Z' modified: '2023-01-19t13:11:08.204Z' launched: '2023-01-19t13:11:08.204Z' supplierDetails: google: agentId: agentId previousState: IN_PROGRESS currentState: IN_TEST responses: '200': description: Response to callback will be ignored. The call will retry if unsuccessful. OperatorStatusUpdate: '{$request.body#webhooks.target}': post: summary: Sender operator status updated description: |2- Received when sender operator status is updated. parameters: - in: header name: x-sinch-webhook-signature schema: type: string format: uuid example: - in: header name: x-sinch-webhook-signature-algorithm schema: type: string enum: - HmacSHA256 uniqueItems: false example: HmacSHA256 - in: header name: x-sinch-webhook-signature-nonce schema: type: string example: 01EAW2BNWCG9DC13RS582V0ZQ3 - in: header name: x-sinch-webhook-signature-timestamp schema: type: string format: timestamp example: '1592227387' requestBody: content: application/json: schema: type: object properties: type: description: Type of event, in this case `RCS_SENDER_OPERATOR_STATUS_UPDATED`. type: string payload: description: Sender at time of callback. allOf: - $ref: '#/components/schemas/RcsSenderDto' operator: description: Operator. type: string enum: - 1und1 - '3' - 9 Mobile - A1 - Africell - Airtel - Altan - AT&T - Bell - Bouygues - BSNL - C-Spire - Cell C - Claro - Coriolis Telecom - Cosmote - Deutsche Telekom - Dialog Axiata PLC - Digi - DISH Wireless - DNA - Eastlink - EE - Elisa - Entel - Ethio Telecom - Fizz - Free - Freedom - Glo - Google Fi - Hrvatski Telecom - Hutchison 3G - Iliad - Indosat Ooredoo Hutchison - JIO - KDDI - Kpn - Kyivstar - Lebara Mobile - lifecell - Lycamobile - M1 - Magenta - MEO - MobiFone - Movistar - MTN - NOS - NRJ Mobile - NTT DoCoMo - O2 - Odido - Ooredoo - Orange - Personal - Proximus - Reliance JIO - Robi Axiata - Rogers - Sasktel - SFR - Simba - Singtel - Sky - Smart - Softbank - Spectrum - Starhub - Swisscom - T-Mobile - Telcel - Tele2 - Telefonica - Telekom - Telenet - Telenor - Telia - Telkom - Telkomsel - Telus - Three - TIM - TracFone - US Cellular - Verizon - Videotron - Vivo - Vodacom - Vodafone - Vodafone Idea - WindTre - Xfinity - Yoigo - Unrecognized operatorCountry: description: Two-letter country code in ISO 3166 standard. type: string enum: - AD - AE - AF - AG - AI - AL - AM - AO - AQ - AR - AS - AT - AU - AW - AZ - BA - BB - BD - BE - BF - BG - BH - BI - BJ - BM - BN - BO - BQ - BR - BS - BT - BW - BY - BZ - CA - CD - CF - CG - CH - CI - CK - CL - CM - CN - CO - CR - CU - CV - CW - CY - CZ - DE - DJ - DK - DM - DO - DZ - EC - EE - EG - ER - ES - ET - FI - FJ - FK - FM - FO - FR - GA - GB - GD - GE - GF - GG - GH - GI - GL - GM - GN - GP - GQ - GR - GT - GU - GW - GY - HK - HN - HR - HT - HU - ID - IE - IL - IM - IN - IO - IQ - IR - IS - IT - JE - JM - JO - JP - KE - KG - KH - KI - KM - KN - KP - KR - KW - KY - KZ - LA - LB - LC - LI - LK - LR - LS - LT - LU - LV - LY - MA - MC - MD - ME - MG - MH - MK - ML - MM - MN - MO - MP - MQ - MR - MS - MT - MU - MV - MW - MX - MY - MZ - NA - NC - NE - NF - NG - NI - NL - 'NO' - NP - NR - NU - NZ - OM - PA - PE - PF - PG - PH - PK - PL - PM - PR - PS - PT - PW - PY - QA - RE - RO - RS - RU - RW - SA - SB - SC - SD - SE - SG - SH - SI - SK - SL - SM - SN - SO - SR - SS - ST - SV - SX - SY - SZ - TC - TD - TG - TH - TJ - TK - TL - TM - TN - TO - TR - TT - TV - TW - TZ - UA - UG - UM - US - UY - UZ - VC - VE - VG - VI - VN - VU - WF - WS - XK - YE - YT - ZA - ZM - ZW - UNRECOGNIZED operatorPreviousStatus: description: Previous country status. type: string enum: - LAUNCHED - NOT_LAUNCHED - PENDING - PENDING_UNLAUNCHED - REJECTED - SUSPENDED - UNLAUNCHED - INVALID_IN_GOOGLE_MY_BUSINESS - UNRECOGNIZED operatorCurrentStatus: type: string description: Country status. enum: - LAUNCHED - NOT_LAUNCHED - PENDING - PENDING_UNLAUNCHED - REJECTED - SUSPENDED - UNLAUNCHED - INVALID_IN_GOOGLE_MY_BUSINESS - UNRECOGNIZED comment: description: Comment for sender. type: string required: - type - payload - operator - operatorCountry - operatorPreviousStatus - operatorCurrentStatus example: type: RCS_SENDER_OPERATOR_STATUS_UPDATED operator: Free operatorCountry: FR operatorPreviousStatus: PENDING operatorCurrentStatus: LAUNCHED responses: '200': description: Response to callback will be ignored. The call will retry if unsuccessful. Comment: '{$request.body#webhooks.target}': post: summary: Comment on sender description: |2- Received when a comment has been added to the sender. parameters: - in: header name: x-sinch-webhook-signature schema: type: string format: uuid example: - in: header name: x-sinch-webhook-signature-algorithm schema: type: string enum: - HmacSHA256 uniqueItems: false example: HmacSHA256 - in: header name: x-sinch-webhook-signature-nonce schema: type: string example: 01EAW2BNWCG9DC13RS582V0ZQ3 - in: header name: x-sinch-webhook-signature-timestamp schema: type: string format: timestamp example: '1592227387' requestBody: content: application/json: schema: type: object properties: type: description: Type of event, in this case `RCS_SENDER_COMMENT_ADDED`. type: string payload: description: Sender at time of callback. allOf: - $ref: '#/components/schemas/RcsSenderDto' comment: description: Comment for sender. type: string required: - type - payload example: type: RCS_SENDER_COMMENT_ADDED payload: id: cf11794a-6a5e-4a12-b103-da79bd378bf1 state: IN_PROGRESS testNumberStates: - number: '+46123123111' state: UNVERIFIED submitted: '2023-01-19t13:11:08.204Z' - number: '+46123123222' state: VERIFIED submitted: '2023-01-19t13:11:08.204Z' - number: '+46123123333' state: DECLINED submitted: '2023-01-19t13:11:08.204Z' countryStatus: - country: FR status: NOT_LAUNCHED operators: - name: Coriolis Telecom status: NOT_LAUNCHED modified: '2023-01-19t13:11:08.204Z' - name: Lycamobile status: NOT_LAUNCHED modified: '2023-01-19t13:11:08.204Z' - name: Bouygues status: NOT_LAUNCHED modified: '2023-01-19t13:11:08.204Z' - name: Free status: NOT_LAUNCHED modified: '2023-01-19t13:11:08.204Z' - name: NRJ Mobile status: NOT_LAUNCHED modified: '2023-01-19t13:11:08.204Z' - name: SFR status: NOT_LAUNCHED modified: '2023-01-19t13:11:08.204Z' - name: Orange status: NOT_LAUNCHED modified: '2023-01-19t13:11:08.204Z' - country: GB status: NOT_LAUNCHED operators: - name: EE status: NOT_LAUNCHED modified: '2023-01-19t13:11:08.204Z' - name: Three status: NOT_LAUNCHED modified: '2023-01-19t13:11:08.204Z' - name: Sky status: NOT_LAUNCHED modified: '2023-01-19t13:11:08.204Z' - name: O2 status: NOT_LAUNCHED modified: '2023-01-19t13:11:08.204Z' - name: Vodafone status: NOT_LAUNCHED modified: '2023-01-19t13:11:08.204Z' - country: SE status: NOT_LAUNCHED operators: - name: Tele2 status: NOT_LAUNCHED modified: '2023-01-19t13:11:08.204Z' - name: Telenor status: NOT_LAUNCHED modified: '2023-01-19t13:11:08.204Z' - name: Telia status: NOT_LAUNCHED modified: '2023-01-19t13:11:08.204Z' - name: Three status: NOT_LAUNCHED modified: '2023-01-19t13:11:08.204Z' details: brand: emails: - label: label address: test@test.com - label: label-1 address: test-1@test.com - label: label-2 address: test-2@test.com phones: - label: label number: +48 777-777-777 - label: label-1 number: '48888888888' - label: label-2 number: +48 999-999-999 websites: - label: label url: https://example.com - label: label-1 url: https://example-1.com - label: label-2 url: https://example-2.com color: '#000000' description: Test description bannerUrl: https://example-banner-url.com logoUrl: https://example-logo-url.com privacyPolicyUrl: https://example-private-policy-url.com termsOfServiceUrl: https://example-terms-of-service-url.com name: Test name testNumbers: - +48 777-777-777 countries: - FR - GB - SE questionnaire: general: questions: optInDescription: question: How do users agree to receive messages from your business through the agent? suggestedAnswers: - By subscribing to our loyalty program - By making a purchase in-store or online - By subscribing to a newsletter - By creating an account on our website or app triggerDescription: question: When does your business send messages to users through the agent? suggestedAnswers: - User actions (e.g. after making a purchase) interactionsDescription: question: How will users interact with your business through the agent? suggestedAnswers: - Online Payment - Password reset - OTP/2FA for account login optOutDescription: question: What message does your business send when a user opts out? suggestedAnswers: - Thank you for opting out - Thank you for unsubscribing - We have registered your opt out request videoUris: question: '' suggestedAnswers: [] screenshotUris: question: '' suggestedAnswers: [] answers: optInDescription: By subscribing to a newsletter triggerDescription: User actions (e.g. after making a purchase) interactionsDescription: Billing or payment reminders,aef Order updates,aef Upon package delivery interactionsDescriptionMetadata: ignore: ',aef' optOutDescription: We have registered your opt out request videoUris: - https://example-video-url.com screenshotUris: - https://example-screenshot-url.com verification: questions: name: question: What is the name of your verification contact? suggestedAnswers: [] email: question: What is the email of your verification contact? suggestedAnswers: [] title: question: What is the title of your verification contact? suggestedAnswers: [] website: question: What is the website of your verification contact? suggestedAnswers: [] answers: name: Exam Ple email: email@example.com title: Head Example website: https://example.com gb: questions: brandIndustry: question: What sector or industry does your business operate in? suggestedAnswers: - Automotive - Beauty, spa and salon - Clothing - Education - Entertainment - Event planning and service - Finance and banking - Food and groceries - Public service - Hotel and lodging - Medical and health - Charity - Professional services - Shopping and retail - Travel and transportation - Restaurant companyLegalName: question: What is the registered legal name of your company? suggestedAnswers: [] companyRegistrationNumber: question: What is the registration number of your company? suggestedAnswers: [] fullCompanyAddress: question: Full Company Address suggestedAnswers: [] messagesVolume: question: What is the total volume of messages expected to be sent by your agent? suggestedAnswers: - 0 - 10K messages - 10K - 100K messages - 100K - 1M messages - 1M+ messages messagesFrequency: question: How often do you expect to send messages? suggestedAnswers: - Once per day - Once per week - Once per month - Once per 3 months - Once per 6 months campaignLength: question: What will be the length of the RCS campaign? suggestedAnswers: - 1 day or less - 2 to 7 days - 8 to 21 days - 1 month - 3 months - 6 months - Continuous / ongoing answers: brandIndustry: Automotive companyLegalName: Example company legal name companyRegistrationNumber: 123-123456789 fullCompanyAddress: Skeppsbron 1 Malmö, 123 12, Sweden messagesVolume: 10K - 100K messages messagesFrequency: Once per month fr: questions: fullCompanyAddress: question: Full Company Address suggestedAnswers: [] usersAmount: question: How many users are your agent expected to reach? suggestedAnswers: - 0 - 1K users - 1K - 10K users - 10k - 100K users - 100K+ users startDate: question: When will your agent start sending messages to your users? suggestedAnswers: - Today - In a week - In a month - Within 3 months siren: question: What is your Company directory identification system number (SIREN)? suggestedAnswers: [] answers: fullCompanyAddress: Skeppsbron 1-split-211 20-split-Malmö fullCompanyAddressMetadata: ignore: '-split-' siren: '123456789' region: EU billingCategory: BASIC_MESSAGE useCase: OTP hostingRegion: EUROPE authName: yurwN6123asd authToken: ejiiqJtDyurwN6jLze8v conversationApiApp: 4CF9CE97504C4A468F4610919D17ECC1 conversationApiAppDetails: id: 4CF9CE97504C4A468F4610919D17ECC1 projectId: ea026751-3edf-40a9-ad93-1b382bd60a78 region: EU created: '2023-01-19t13:11:08.204Z' modified: '2023-01-19t13:11:08.204Z' launched: '2023-01-19t13:11:08.204Z' supplierDetails: google: agentId: agentId comment: Example comment responses: '200': description: Response to callback will be ignored. The call will retry if unsuccessful. description: |2- Returns a sender for a project. operationId: RcsSendersController_createSender_v1 parameters: - name: projectId required: true in: path description: The unique ID of the project. You can find this on the Sinch Dashboard. schema: type: string requestBody: required: true description: Sender data content: application/json: schema: $ref: '#/components/schemas/RcsSenderInputDto' examples: input: summary: Body request for sender description: |2- Example body request to create a sender. value: region: EU billingCategory: BASIC_MESSAGE useCase: OTP details: brand: emails: - label: label address: test@test.com - label: label-1 address: test-1@test.com - label: label-2 address: test-2@test.com phones: - label: label number: +48 777-777-777 - label: label-1 number: '48888888888' - label: label-2 number: +48 999-999-999 websites: - label: label url: https://example.com - label: label-1 url: https://example-1.com - label: label-2 url: https://example-2.com color: '#000000' description: Test description bannerUrl: https://example-banner-url.com logoUrl: https://example-logo-url.com privacyPolicyUrl: https://example-private-policy-url.com termsOfServiceUrl: https://example-terms-of-service-url.com name: Test name testNumbers: - +48 777-777-777 countries: - GB - FR questionnaire: general: answers: optInDescription: By subscribing to a newsletter triggerDescription: User actions (e.g. after making a purchase) interactionsDescription: Billing or payment reminders,aef Order updates,aef Upon package delivery interactionsDescriptionMetadata: ignore: ',aef' optOutDescription: We have registered your opt out request videoUris: - https://example-video-url.com screenshotUris: - https://example-screenshot-url.com verification: answers: name: Exam Ple email: email@example.com title: Head Example website: https://example.com gb: answers: brandIndustry: Automotive companyLegalName: Example company legal name companyRegistrationNumber: 123-123456789 fullCompanyAddress: Skeppsbron 1 Malmö, 123 12, Sweden messagesVolume: 10K - 100K messages messagesFrequency: Once per month fr: answers: fullCompanyAddress: Skeppsbron 1-split-211 20-split-Malmö fullCompanyAddressMetadata: ignore: '-split-' siren: '123456789' responses: '201': description: Sender content: application/json: schema: $ref: '#/components/schemas/RcsSenderDto' examples: response: summary: Create response description: |2- Response when successfully creating a sender. value: id: cf11794a-6a5e-4a12-b103-da79bd378bf1 state: IN_TEST testNumberStates: - number: '+46123123111' state: UNVERIFIED submitted: '2023-01-19t13:11:08.204Z' - number: '+46123123222' state: VERIFIED submitted: '2023-01-19t13:11:08.204Z' - number: '+46123123333' state: DECLINED submitted: '2023-01-19t13:11:08.204Z' countryStatus: - country: FR status: NOT_LAUNCHED operators: - name: Coriolis Telecom status: NOT_LAUNCHED modified: '2023-01-19t13:11:08.204Z' - name: Lycamobile status: NOT_LAUNCHED modified: '2023-01-19t13:11:08.204Z' - name: Bouygues status: NOT_LAUNCHED modified: '2023-01-19t13:11:08.204Z' - name: Free status: NOT_LAUNCHED modified: '2023-01-19t13:11:08.204Z' - name: NRJ Mobile status: NOT_LAUNCHED modified: '2023-01-19t13:11:08.204Z' - name: SFR status: NOT_LAUNCHED modified: '2023-01-19t13:11:08.204Z' - name: Orange status: NOT_LAUNCHED modified: '2023-01-19t13:11:08.204Z' - country: GB status: NOT_LAUNCHED operators: - name: EE status: NOT_LAUNCHED modified: '2023-01-19t13:11:08.204Z' - name: Three status: NOT_LAUNCHED modified: '2023-01-19t13:11:08.204Z' - name: Sky status: NOT_LAUNCHED modified: '2023-01-19t13:11:08.204Z' - name: O2 status: NOT_LAUNCHED modified: '2023-01-19t13:11:08.204Z' - name: Vodafone status: NOT_LAUNCHED modified: '2023-01-19t13:11:08.204Z' - country: SE status: NOT_LAUNCHED operators: - name: Tele2 status: NOT_LAUNCHED modified: '2023-01-19t13:11:08.204Z' - name: Telenor status: NOT_LAUNCHED modified: '2023-01-19t13:11:08.204Z' - name: Telia status: NOT_LAUNCHED modified: '2023-01-19t13:11:08.204Z' - name: Three status: NOT_LAUNCHED modified: '2023-01-19t13:11:08.204Z' details: brand: emails: - label: label address: test@test.com - label: label-1 address: test-1@test.com - label: label-2 address: test-2@test.com phones: - label: label number: +48 777-777-777 - label: label-1 number: '48888888888' - label: label-2 number: +48 999-999-999 websites: - label: label url: https://example.com - label: label-1 url: https://example-1.com - label: label-2 url: https://example-2.com color: '#000000' description: Test description bannerUrl: https://example-banner-url.com logoUrl: https://example-logo-url.com privacyPolicyUrl: https://example-private-policy-url.com termsOfServiceUrl: https://example-terms-of-service-url.com name: Test name testNumbers: - +48 777-777-777 countries: - FR - GB - SE questionnaire: general: questions: optInDescription: question: How do users agree to receive messages from your business through the agent? suggestedAnswers: - By subscribing to our loyalty program - By making a purchase in-store or online - By subscribing to a newsletter - By creating an account on our website or app triggerDescription: question: When does your business send messages to users through the agent? suggestedAnswers: - User actions (e.g. after making a purchase) interactionsDescription: question: How will users interact with your business through the agent? suggestedAnswers: - Online Payment - Password reset - OTP/2FA for account login optOutDescription: question: What message does your business send when a user opts out? suggestedAnswers: - Thank you for opting out - Thank you for unsubscribing - We have registered your opt out request videoUris: question: '' suggestedAnswers: [] screenshotUris: question: '' suggestedAnswers: [] answers: optInDescription: By subscribing to a newsletter triggerDescription: User actions (e.g. after making a purchase) interactionsDescription: Billing or payment reminders,aef Order updates,aef Upon package delivery interactionsDescriptionMetadata: ignore: ',aef' optOutDescription: We have registered your opt out request videoUris: - https://example-video-url.com screenshotUris: - https://example-screenshot-url.com verification: questions: name: question: What is the name of your verification contact? suggestedAnswers: [] email: question: What is the email of your verification contact? suggestedAnswers: [] title: question: What is the title of your verification contact? suggestedAnswers: [] website: question: What is the website of your verification contact? suggestedAnswers: [] answers: name: Exam Ple email: email@example.com title: Head Example website: https://example.com gb: questions: brandIndustry: question: What sector or industry does your business operate in? suggestedAnswers: - Automotive - Beauty, spa and salon - Clothing - Education - Entertainment - Event planning and service - Finance and banking - Food and groceries - Public service - Hotel and lodging - Medical and health - Charity - Professional services - Shopping and retail - Travel and transportation - Restaurant companyLegalName: question: What is the registered legal name of your company? suggestedAnswers: [] companyRegistrationNumber: question: What is the registration number of your company? suggestedAnswers: [] fullCompanyAddress: question: Full Company Address suggestedAnswers: [] messagesVolume: question: What is the total volume of messages expected to be sent by your agent? suggestedAnswers: - 0 - 10K messages - 10K - 100K messages - 100K - 1M messages - 1M+ messages messagesFrequency: question: How often do you expect to send messages? suggestedAnswers: - Once per day - Once per week - Once per month - Once per 3 months - Once per 6 months campaignLength: question: What will be the length of the RCS campaign? suggestedAnswers: - 1 day or less - 2 to 7 days - 8 to 21 days - 1 month - 3 months - 6 months - Continuous / ongoing answers: brandIndustry: Automotive companyLegalName: Example company legal name companyRegistrationNumber: 123-123456789 fullCompanyAddress: Skeppsbron 1 Malmö, 123 12, Sweden messagesVolume: 10K - 100K messages messagesFrequency: Once per month fr: questions: fullCompanyAddress: question: Full Company Address suggestedAnswers: [] usersAmount: question: How many users are your agent expected to reach? suggestedAnswers: - 0 - 1K users - 1K - 10K users - 10k - 100K users - 100K+ users startDate: question: When will your agent start sending messages to your users? suggestedAnswers: - Today - In a week - In a month - Within 3 months siren: question: What is your Company directory identification system number (SIREN)? suggestedAnswers: [] answers: fullCompanyAddress: Skeppsbron 1-split-211 20-split-Malmö fullCompanyAddressMetadata: ignore: '-split-' siren: '123456789' region: EU billingCategory: BASIC_MESSAGE useCase: OTP hostingRegion: EUROPE authName: yurwN6123asd authToken: ejiiqJtDyurwN6jLze8v conversationApiApp: 4CF9CE97504C4A468F4610919D17ECC1 conversationApiAppDetails: id: 4CF9CE97504C4A468F4610919D17ECC1 projectId: ea026751-3edf-40a9-ad93-1b382bd60a78 region: EU created: '2023-01-19t13:11:08.204Z' modified: '2023-01-19t13:11:08.204Z' launched: '2023-01-19t13:11:08.204Z' supplierDetails: google: agentId: agentId '400': description: BadRequest content: application/json: schema: oneOf: - title: InvalidInputErrorTitle properties: errorCode: type: string title: invalid_input example: invalid_input description: Error code allows to programatically handle errors. message: type: string title: Invalid input. example: Invalid input. description: Human readable message. resolution: type: string title: Correct the validation errors and submit again. example: Correct the validation errors and submit again. description: Human readable message with an explanation of how to solve the error. additionalInformation: type: object title: additionalInformation example: validationErrors: - details.brand.email.address must be an email description: Additional information for error. - title: FileInvalidMimeTypeErrorTitle properties: errorCode: type: string title: file_invalid_mime_type example: file_invalid_mime_type description: Error code allows to programatically handle errors. message: type: string title: 'details.brand.bannerUrl: invalid file mime type.' example: 'details.brand.bannerUrl: invalid file mime type.' description: Human readable message. resolution: type: string title: 'Try again with supported mime types: image/jpeg, image/png.' example: 'Try again with supported mime types: image/jpeg, image/png.' description: Human readable message with an explanation of how to solve the error. - title: InvalidPayloadErrorTitle properties: errorCode: type: string title: invalid_payload example: invalid_payload description: Error code allows to programatically handle errors. message: type: string title: Invalid payload. example: Invalid payload. description: Human readable message. resolution: type: string title: Correct payload and submit again. example: Correct payload and submit again. description: Human readable message with an explanation of how to solve the error. - title: InvalidGoogleAgentErrorTitle properties: errorCode: type: string title: invalid_google_agent example: invalid_google_agent description: Error code allows to programatically handle errors. message: type: string title: message example: message description: Human readable message. resolution: type: string title: Verify the sender's fields. example: Verify the sender's fields. description: Human readable message with an explanation of how to solve the error. - title: AddTestNumberInvalidErrorTitle properties: errorCode: type: string title: add_test_number_invalid example: add_test_number_invalid description: Error code allows to programatically handle errors. message: type: string title: Invalid phone number. example: Invalid phone number. description: Human readable message. resolution: type: string title: Please verify that phone number is correct. example: Please verify that phone number is correct. description: Human readable message with an explanation of how to solve the error. '401': description: Unauthorized content: application/json: schema: example: errorCode: unauthorized_error message: Unauthorized error. resolution: Verify that projectId is correct. title: UnauthorizedErrorErrorTitle properties: errorCode: type: string title: unauthorized_error example: unauthorized_error description: Error code allows to programatically handle errors. message: type: string title: Unauthorized error. example: Unauthorized error. description: Human readable message. resolution: type: string title: Verify that projectId is correct. example: Verify that projectId is correct. description: Human readable message with an explanation of how to solve the error. '403': description: Forbidden content: application/json: schema: oneOf: - title: RbmHasNotBeenUsedErrorTitle properties: errorCode: type: string title: rbm_has_not_been_used example: rbm_has_not_been_used description: Error code allows to programatically handle errors. message: type: string title: RBM has not been used. example: RBM has not been used. description: Human readable message. resolution: type: string title: Please wait and try again or reach out to support at si-richmessaging@sinch.com example: Please wait and try again or reach out to support at si-richmessaging@sinch.com description: Human readable message with an explanation of how to solve the error. - title: RbmWebhookIncorrectSecretErrorTitle properties: errorCode: type: string title: rbm_webhook_incorrect_secret example: rbm_webhook_incorrect_secret description: Error code allows to programatically handle errors. message: type: string title: RBM webhook has incorrect secret example: RBM webhook has incorrect secret description: Human readable message. resolution: type: string title: Please wait and try again or reach out to support at si-richmessaging@sinch.com example: Please wait and try again or reach out to support at si-richmessaging@sinch.com description: Human readable message with an explanation of how to solve the error. '404': description: NotFound content: application/json: schema: oneOf: - title: ProjectNotFoundErrorTitle properties: errorCode: type: string title: project_not_found example: project_not_found description: Error code allows to programatically handle errors. message: type: string title: Project not found. example: Project not found. description: Human readable message. resolution: type: string title: Verify that the projectId is correct. example: Verify that the projectId is correct. description: Human readable message with an explanation of how to solve the error. - title: RbmResourcesNotFoundErrorTitle properties: errorCode: type: string title: rbm_resources_not_found example: rbm_resources_not_found description: Error code allows to programatically handle errors. message: type: string title: RBM resources not found. example: RBM resources not found. description: Human readable message. resolution: type: string title: Verify that the parameters are correct, and contact support if error persists. example: Verify that the parameters are correct, and contact support if error persists. description: Human readable message with an explanation of how to solve the error. - title: AddTestNumberNotAllowedBeforeLaunchErrorTitle properties: errorCode: type: string title: add_test_number_not_allowed_before_launch example: add_test_number_not_allowed_before_launch description: Error code allows to programatically handle errors. message: type: string title: Adding test number not allowed before launch. example: Adding test number not allowed before launch. description: Human readable message. resolution: type: string title: Carrier does not allow test number to be created prior to sender launch. example: Carrier does not allow test number to be created prior to sender launch. description: Human readable message with an explanation of how to solve the error. '409': description: Conflict content: application/json: schema: oneOf: - title: AccountDataIsCorruptErrorTitle properties: errorCode: type: string title: account_data_is_corrupt example: account_data_is_corrupt description: Error code allows to programatically handle errors. message: type: string title: Account data is corrupt. example: Account data is corrupt. description: Human readable message. resolution: type: string title: Please contact support. example: Please contact support. description: Human readable message with an explanation of how to solve the error. - title: FileNotFoundErrorTitle properties: errorCode: type: string title: file_not_found example: file_not_found description: Error code allows to programatically handle errors. message: type: string title: 'details.brand.logoUrl: file not found.' example: 'details.brand.logoUrl: file not found.' description: Human readable message. resolution: type: string title: Verify that the url is correct. example: Verify that the url is correct. description: Human readable message with an explanation of how to solve the error. - title: FileSizeTooLargeErrorTitle properties: errorCode: type: string title: file_size_too_large example: file_size_too_large description: Error code allows to programatically handle errors. message: type: string title: 'details.brand.bannerUrl: file size is too large.' example: 'details.brand.bannerUrl: file size is too large.' description: Human readable message. resolution: type: string title: Try again with a smaller file. Max size for `image/jpeg` is 200KB. example: Try again with a smaller file. Max size for `image/jpeg` is 200KB. description: Human readable message with an explanation of how to solve the error. - title: FileHasWrongDimensionsErrorTitle properties: errorCode: type: string title: file_has_wrong_dimensions example: file_has_wrong_dimensions description: Error code allows to programatically handle errors. message: type: string title: 'details.brand.logoUrl: image has wrong dimensions.' example: 'details.brand.logoUrl: image has wrong dimensions.' description: Human readable message. resolution: type: string title: 'Try again with image dimensions: exact 224 x 224 px.' example: 'Try again with image dimensions: exact 224 x 224 px.' description: Human readable message with an explanation of how to solve the error. - title: FileUnexpectedErrorErrorTitle properties: errorCode: type: string title: file_unexpected_error example: file_unexpected_error description: Error code allows to programatically handle errors. message: type: string title: 'details.brand.logoUrl: file unexpected error.' example: 'details.brand.logoUrl: file unexpected error.' description: Human readable message. resolution: type: string title: The file cannot be handled properly. Please try with another one. example: The file cannot be handled properly. Please try with another one. description: Human readable message with an explanation of how to solve the error. '429': description: TooManyRequests content: application/json: schema: example: errorCode: rbm_too_many_requests message: RCS Business Messaging too many requests. resolution: Please wait and try again. title: RbmTooManyRequestsErrorTitle properties: errorCode: type: string title: rbm_too_many_requests example: rbm_too_many_requests description: Error code allows to programatically handle errors. message: type: string title: RCS Business Messaging too many requests. example: RCS Business Messaging too many requests. description: Human readable message. resolution: type: string title: Please wait and try again. example: Please wait and try again. description: Human readable message with an explanation of how to solve the error. '500': description: InternalServerError content: application/json: schema: example: errorCode: internal_error message: Internal server error. resolution: Please wait and try again, if the error persist please contact support. title: InternalErrorErrorTitle properties: errorCode: type: string title: internal_error example: internal_error description: Error code allows to programatically handle errors. message: type: string title: Internal server error. example: Internal server error. description: Human readable message. resolution: type: string title: Please wait and try again, if the error persist please contact support. example: Please wait and try again, if the error persist please contact support. description: Human readable message with an explanation of how to solve the error. summary: Create sender for project tags: - RCS Senders x-tagAfterOperationSummary: color: white background: green label: GA /v1/projects/{projectId}/rcs/senders/{senderId}: get: description: |2- Returns a sender for a project. operationId: RcsSendersController_getSender_v1 parameters: - name: projectId required: true in: path description: The unique ID of the project. You can find this on the Sinch Dashboard. schema: type: string - name: senderId required: true in: path description: The unique ID of the sender. schema: type: string responses: '200': description: Sender content: application/json: schema: $ref: '#/components/schemas/RcsSenderDto' examples: inTest: summary: Get response inTest description: |2- Response with a sender inTest. value: id: cf11794a-6a5e-4a12-b103-da79bd378bf1 state: IN_TEST testNumberStates: - number: '+46123123111' state: UNVERIFIED submitted: '2023-01-19t13:11:08.204Z' - number: '+46123123222' state: VERIFIED submitted: '2023-01-19t13:11:08.204Z' - number: '+46123123333' state: DECLINED submitted: '2023-01-19t13:11:08.204Z' countryStatus: - country: FR status: NOT_LAUNCHED operators: - name: Coriolis Telecom status: NOT_LAUNCHED modified: '2023-01-19t13:11:08.204Z' - name: Lycamobile status: NOT_LAUNCHED modified: '2023-01-19t13:11:08.204Z' - name: Bouygues status: NOT_LAUNCHED modified: '2023-01-19t13:11:08.204Z' - name: Free status: NOT_LAUNCHED modified: '2023-01-19t13:11:08.204Z' - name: NRJ Mobile status: NOT_LAUNCHED modified: '2023-01-19t13:11:08.204Z' - name: SFR status: NOT_LAUNCHED modified: '2023-01-19t13:11:08.204Z' - name: Orange status: NOT_LAUNCHED modified: '2023-01-19t13:11:08.204Z' - country: GB status: NOT_LAUNCHED operators: - name: EE status: NOT_LAUNCHED modified: '2023-01-19t13:11:08.204Z' - name: Three status: NOT_LAUNCHED modified: '2023-01-19t13:11:08.204Z' - name: Sky status: NOT_LAUNCHED modified: '2023-01-19t13:11:08.204Z' - name: O2 status: NOT_LAUNCHED modified: '2023-01-19t13:11:08.204Z' - name: Vodafone status: NOT_LAUNCHED modified: '2023-01-19t13:11:08.204Z' - country: SE status: NOT_LAUNCHED operators: - name: Tele2 status: NOT_LAUNCHED modified: '2023-01-19t13:11:08.204Z' - name: Telenor status: NOT_LAUNCHED modified: '2023-01-19t13:11:08.204Z' - name: Telia status: NOT_LAUNCHED modified: '2023-01-19t13:11:08.204Z' - name: Three status: NOT_LAUNCHED modified: '2023-01-19t13:11:08.204Z' details: brand: emails: - label: label address: test@test.com - label: label-1 address: test-1@test.com - label: label-2 address: test-2@test.com phones: - label: label number: +48 777-777-777 - label: label-1 number: '48888888888' - label: label-2 number: +48 999-999-999 websites: - label: label url: https://example.com - label: label-1 url: https://example-1.com - label: label-2 url: https://example-2.com color: '#000000' description: Test description bannerUrl: https://example-banner-url.com logoUrl: https://example-logo-url.com privacyPolicyUrl: https://example-private-policy-url.com termsOfServiceUrl: https://example-terms-of-service-url.com name: Test name testNumbers: - +48 777-777-777 countries: - FR - GB - SE questionnaire: general: questions: optInDescription: question: How do users agree to receive messages from your business through the agent? suggestedAnswers: - By subscribing to our loyalty program - By making a purchase in-store or online - By subscribing to a newsletter - By creating an account on our website or app triggerDescription: question: When does your business send messages to users through the agent? suggestedAnswers: - User actions (e.g. after making a purchase) interactionsDescription: question: How will users interact with your business through the agent? suggestedAnswers: - Online Payment - Password reset - OTP/2FA for account login optOutDescription: question: What message does your business send when a user opts out? suggestedAnswers: - Thank you for opting out - Thank you for unsubscribing - We have registered your opt out request videoUris: question: '' suggestedAnswers: [] screenshotUris: question: '' suggestedAnswers: [] answers: optInDescription: By subscribing to a newsletter triggerDescription: User actions (e.g. after making a purchase) interactionsDescription: Billing or payment reminders,aef Order updates,aef Upon package delivery interactionsDescriptionMetadata: ignore: ',aef' optOutDescription: We have registered your opt out request videoUris: - https://example-video-url.com screenshotUris: - https://example-screenshot-url.com verification: questions: name: question: What is the name of your verification contact? suggestedAnswers: [] email: question: What is the email of your verification contact? suggestedAnswers: [] title: question: What is the title of your verification contact? suggestedAnswers: [] website: question: What is the website of your verification contact? suggestedAnswers: [] answers: name: Exam Ple email: email@example.com title: Head Example website: https://example.com gb: questions: brandIndustry: question: What sector or industry does your business operate in? suggestedAnswers: - Automotive - Beauty, spa and salon - Clothing - Education - Entertainment - Event planning and service - Finance and banking - Food and groceries - Public service - Hotel and lodging - Medical and health - Charity - Professional services - Shopping and retail - Travel and transportation - Restaurant companyLegalName: question: What is the registered legal name of your company? suggestedAnswers: [] companyRegistrationNumber: question: What is the registration number of your company? suggestedAnswers: [] fullCompanyAddress: question: Full Company Address suggestedAnswers: [] messagesVolume: question: What is the total volume of messages expected to be sent by your agent? suggestedAnswers: - 0 - 10K messages - 10K - 100K messages - 100K - 1M messages - 1M+ messages messagesFrequency: question: How often do you expect to send messages? suggestedAnswers: - Once per day - Once per week - Once per month - Once per 3 months - Once per 6 months campaignLength: question: What will be the length of the RCS campaign? suggestedAnswers: - 1 day or less - 2 to 7 days - 8 to 21 days - 1 month - 3 months - 6 months - Continuous / ongoing answers: brandIndustry: Automotive companyLegalName: Example company legal name companyRegistrationNumber: 123-123456789 fullCompanyAddress: Skeppsbron 1 Malmö, 123 12, Sweden messagesVolume: 10K - 100K messages messagesFrequency: Once per month fr: questions: fullCompanyAddress: question: Full Company Address suggestedAnswers: [] usersAmount: question: How many users are your agent expected to reach? suggestedAnswers: - 0 - 1K users - 1K - 10K users - 10k - 100K users - 100K+ users startDate: question: When will your agent start sending messages to your users? suggestedAnswers: - Today - In a week - In a month - Within 3 months siren: question: What is your Company directory identification system number (SIREN)? suggestedAnswers: [] answers: fullCompanyAddress: Skeppsbron 1-split-211 20-split-Malmö fullCompanyAddressMetadata: ignore: '-split-' siren: '123456789' region: EU billingCategory: BASIC_MESSAGE useCase: OTP hostingRegion: EUROPE authName: yurwN6123asd authToken: ejiiqJtDyurwN6jLze8v conversationApiApp: 4CF9CE97504C4A468F4610919D17ECC1 conversationApiAppDetails: id: 4CF9CE97504C4A468F4610919D17ECC1 projectId: ea026751-3edf-40a9-ad93-1b382bd60a78 region: EU created: '2023-01-19t13:11:08.204Z' modified: '2023-01-19t13:11:08.204Z' launched: '2023-01-19t13:11:08.204Z' supplierDetails: google: agentId: agentId preparingLaunch: summary: Get response preparingLaunch description: |2- Response with a sender preparingLaunch. value: id: cf11794a-6a5e-4a12-b103-da79bd378bf1 state: PREPARING_LAUNCH testNumberStates: - number: '+46123123111' state: UNVERIFIED submitted: '2023-01-19t13:11:08.204Z' - number: '+46123123222' state: VERIFIED submitted: '2023-01-19t13:11:08.204Z' - number: '+46123123333' state: DECLINED submitted: '2023-01-19t13:11:08.204Z' countryStatus: - country: FR status: PENDING operators: - name: Coriolis Telecom status: PENDING modified: '2023-01-19t13:11:08.204Z' - name: Lycamobile status: PENDING modified: '2023-01-19t13:11:08.204Z' - name: Bouygues status: PENDING modified: '2023-01-19t13:11:08.204Z' - name: Free status: PENDING modified: '2023-01-19t13:11:08.204Z' - name: NRJ Mobile status: REJECTED remark: Sender was rejected due to operator policy. modified: '2023-01-19t13:11:08.204Z' - name: SFR status: SUSPENDED modified: '2023-01-19t13:11:08.204Z' - name: Orange status: PENDING modified: '2023-01-19t13:11:08.204Z' - country: GB status: PENDING operators: - name: EE status: PENDING modified: '2023-01-19t13:11:08.204Z' - name: Three status: PENDING modified: '2023-01-19t13:11:08.204Z' - name: Sky status: PENDING modified: '2023-01-19t13:11:08.204Z' - name: O2 status: PENDING modified: '2023-01-19t13:11:08.204Z' - name: Vodafone status: SUSPENDED modified: '2023-01-19t13:11:08.204Z' - country: SE status: PENDING operators: - name: Tele2 status: PENDING modified: '2023-01-19t13:11:08.204Z' - name: Telenor status: PENDING modified: '2023-01-19t13:11:08.204Z' - name: Telia status: PENDING modified: '2023-01-19t13:11:08.204Z' - name: Three status: PENDING modified: '2023-01-19t13:11:08.204Z' details: brand: emails: - label: label address: test@test.com - label: label-1 address: test-1@test.com - label: label-2 address: test-2@test.com phones: - label: label number: +48 777-777-777 - label: label-1 number: '48888888888' - label: label-2 number: +48 999-999-999 websites: - label: label url: https://example.com - label: label-1 url: https://example-1.com - label: label-2 url: https://example-2.com color: '#000000' description: Test description bannerUrl: https://example-banner-url.com logoUrl: https://example-logo-url.com privacyPolicyUrl: https://example-private-policy-url.com termsOfServiceUrl: https://example-terms-of-service-url.com name: Test name testNumbers: - +48 777-777-777 countries: - FR - GB - SE questionnaire: general: questions: optInDescription: question: How do users agree to receive messages from your business through the agent? suggestedAnswers: - By subscribing to our loyalty program - By making a purchase in-store or online - By subscribing to a newsletter - By creating an account on our website or app triggerDescription: question: When does your business send messages to users through the agent? suggestedAnswers: - User actions (e.g. after making a purchase) interactionsDescription: question: How will users interact with your business through the agent? suggestedAnswers: - Online Payment - Password reset - OTP/2FA for account login optOutDescription: question: What message does your business send when a user opts out? suggestedAnswers: - Thank you for opting out - Thank you for unsubscribing - We have registered your opt out request videoUris: question: '' suggestedAnswers: [] screenshotUris: question: '' suggestedAnswers: [] answers: optInDescription: By subscribing to a newsletter triggerDescription: User actions (e.g. after making a purchase) interactionsDescription: Billing or payment reminders,aef Order updates,aef Upon package delivery interactionsDescriptionMetadata: ignore: ',aef' optOutDescription: We have registered your opt out request videoUris: - https://example-video-url.com screenshotUris: - https://example-screenshot-url.com verification: questions: name: question: What is the name of your verification contact? suggestedAnswers: [] email: question: What is the email of your verification contact? suggestedAnswers: [] title: question: What is the title of your verification contact? suggestedAnswers: [] website: question: What is the website of your verification contact? suggestedAnswers: [] answers: name: Exam Ple email: email@example.com title: Head Example website: https://example.com gb: questions: brandIndustry: question: What sector or industry does your business operate in? suggestedAnswers: - Automotive - Beauty, spa and salon - Clothing - Education - Entertainment - Event planning and service - Finance and banking - Food and groceries - Public service - Hotel and lodging - Medical and health - Charity - Professional services - Shopping and retail - Travel and transportation - Restaurant companyLegalName: question: What is the registered legal name of your company? suggestedAnswers: [] companyRegistrationNumber: question: What is the registration number of your company? suggestedAnswers: [] fullCompanyAddress: question: Full Company Address suggestedAnswers: [] messagesVolume: question: What is the total volume of messages expected to be sent by your agent? suggestedAnswers: - 0 - 10K messages - 10K - 100K messages - 100K - 1M messages - 1M+ messages messagesFrequency: question: How often do you expect to send messages? suggestedAnswers: - Once per day - Once per week - Once per month - Once per 3 months - Once per 6 months campaignLength: question: What will be the length of the RCS campaign? suggestedAnswers: - 1 day or less - 2 to 7 days - 8 to 21 days - 1 month - 3 months - 6 months - Continuous / ongoing answers: brandIndustry: Automotive companyLegalName: Example company legal name companyRegistrationNumber: 123-123456789 fullCompanyAddress: Skeppsbron 1 Malmö, 123 12, Sweden messagesVolume: 10K - 100K messages messagesFrequency: Once per month fr: questions: fullCompanyAddress: question: Full Company Address suggestedAnswers: [] usersAmount: question: How many users are your agent expected to reach? suggestedAnswers: - 0 - 1K users - 1K - 10K users - 10k - 100K users - 100K+ users startDate: question: When will your agent start sending messages to your users? suggestedAnswers: - Today - In a week - In a month - Within 3 months siren: question: What is your Company directory identification system number (SIREN)? suggestedAnswers: [] answers: fullCompanyAddress: Skeppsbron 1-split-211 20-split-Malmö fullCompanyAddressMetadata: ignore: '-split-' siren: '123456789' region: EU billingCategory: BASIC_MESSAGE useCase: OTP hostingRegion: EUROPE authName: yurwN6123asd authToken: ejiiqJtDyurwN6jLze8v conversationApiApp: 4CF9CE97504C4A468F4610919D17ECC1 conversationApiAppDetails: id: 4CF9CE97504C4A468F4610919D17ECC1 projectId: ea026751-3edf-40a9-ad93-1b382bd60a78 region: EU created: '2023-01-19t13:11:08.204Z' modified: '2023-01-19t13:11:08.204Z' launched: '2023-01-19t13:11:08.204Z' supplierDetails: google: agentId: agentId launching: summary: Get response launching description: |2- Response with a sender launching. value: id: cf11794a-6a5e-4a12-b103-da79bd378bf1 state: LAUNCHING testNumberStates: - number: '+46123123111' state: UNVERIFIED submitted: '2023-01-19t13:11:08.204Z' - number: '+46123123222' state: VERIFIED submitted: '2023-01-19t13:11:08.204Z' - number: '+46123123333' state: DECLINED submitted: '2023-01-19t13:11:08.204Z' countryStatus: - country: FR status: PENDING operators: - name: Coriolis Telecom status: PENDING modified: '2023-01-19t13:11:08.204Z' - name: Lycamobile status: PENDING modified: '2023-01-19t13:11:08.204Z' - name: Bouygues status: PENDING modified: '2023-01-19t13:11:08.204Z' - name: Free status: PENDING modified: '2023-01-19t13:11:08.204Z' - name: NRJ Mobile status: REJECTED remark: Sender was rejected due to operator policy. modified: '2023-01-19t13:11:08.204Z' - name: SFR status: SUSPENDED modified: '2023-01-19t13:11:08.204Z' - name: Orange status: PENDING modified: '2023-01-19t13:11:08.204Z' - country: GB status: PENDING operators: - name: EE status: PENDING modified: '2023-01-19t13:11:08.204Z' - name: Three status: PENDING modified: '2023-01-19t13:11:08.204Z' - name: Sky status: PENDING modified: '2023-01-19t13:11:08.204Z' - name: O2 status: PENDING modified: '2023-01-19t13:11:08.204Z' - name: Vodafone status: SUSPENDED modified: '2023-01-19t13:11:08.204Z' - country: SE status: PENDING operators: - name: Tele2 status: PENDING modified: '2023-01-19t13:11:08.204Z' - name: Telenor status: PENDING modified: '2023-01-19t13:11:08.204Z' - name: Telia status: PENDING modified: '2023-01-19t13:11:08.204Z' - name: Three status: PENDING modified: '2023-01-19t13:11:08.204Z' details: brand: emails: - label: label address: test@test.com - label: label-1 address: test-1@test.com - label: label-2 address: test-2@test.com phones: - label: label number: +48 777-777-777 - label: label-1 number: '48888888888' - label: label-2 number: +48 999-999-999 websites: - label: label url: https://example.com - label: label-1 url: https://example-1.com - label: label-2 url: https://example-2.com color: '#000000' description: Test description bannerUrl: https://example-banner-url.com logoUrl: https://example-logo-url.com privacyPolicyUrl: https://example-private-policy-url.com termsOfServiceUrl: https://example-terms-of-service-url.com name: Test name testNumbers: - +48 777-777-777 countries: - FR - GB - SE questionnaire: general: questions: optInDescription: question: How do users agree to receive messages from your business through the agent? suggestedAnswers: - By subscribing to our loyalty program - By making a purchase in-store or online - By subscribing to a newsletter - By creating an account on our website or app triggerDescription: question: When does your business send messages to users through the agent? suggestedAnswers: - User actions (e.g. after making a purchase) interactionsDescription: question: How will users interact with your business through the agent? suggestedAnswers: - Online Payment - Password reset - OTP/2FA for account login optOutDescription: question: What message does your business send when a user opts out? suggestedAnswers: - Thank you for opting out - Thank you for unsubscribing - We have registered your opt out request videoUris: question: '' suggestedAnswers: [] screenshotUris: question: '' suggestedAnswers: [] answers: optInDescription: By subscribing to a newsletter triggerDescription: User actions (e.g. after making a purchase) interactionsDescription: Billing or payment reminders,aef Order updates,aef Upon package delivery interactionsDescriptionMetadata: ignore: ',aef' optOutDescription: We have registered your opt out request videoUris: - https://example-video-url.com screenshotUris: - https://example-screenshot-url.com verification: questions: name: question: What is the name of your verification contact? suggestedAnswers: [] email: question: What is the email of your verification contact? suggestedAnswers: [] title: question: What is the title of your verification contact? suggestedAnswers: [] website: question: What is the website of your verification contact? suggestedAnswers: [] answers: name: Exam Ple email: email@example.com title: Head Example website: https://example.com gb: questions: brandIndustry: question: What sector or industry does your business operate in? suggestedAnswers: - Automotive - Beauty, spa and salon - Clothing - Education - Entertainment - Event planning and service - Finance and banking - Food and groceries - Public service - Hotel and lodging - Medical and health - Charity - Professional services - Shopping and retail - Travel and transportation - Restaurant companyLegalName: question: What is the registered legal name of your company? suggestedAnswers: [] companyRegistrationNumber: question: What is the registration number of your company? suggestedAnswers: [] fullCompanyAddress: question: Full Company Address suggestedAnswers: [] messagesVolume: question: What is the total volume of messages expected to be sent by your agent? suggestedAnswers: - 0 - 10K messages - 10K - 100K messages - 100K - 1M messages - 1M+ messages messagesFrequency: question: How often do you expect to send messages? suggestedAnswers: - Once per day - Once per week - Once per month - Once per 3 months - Once per 6 months campaignLength: question: What will be the length of the RCS campaign? suggestedAnswers: - 1 day or less - 2 to 7 days - 8 to 21 days - 1 month - 3 months - 6 months - Continuous / ongoing answers: brandIndustry: Automotive companyLegalName: Example company legal name companyRegistrationNumber: 123-123456789 fullCompanyAddress: Skeppsbron 1 Malmö, 123 12, Sweden messagesVolume: 10K - 100K messages messagesFrequency: Once per month fr: questions: fullCompanyAddress: question: Full Company Address suggestedAnswers: [] usersAmount: question: How many users are your agent expected to reach? suggestedAnswers: - 0 - 1K users - 1K - 10K users - 10k - 100K users - 100K+ users startDate: question: When will your agent start sending messages to your users? suggestedAnswers: - Today - In a week - In a month - Within 3 months siren: question: What is your Company directory identification system number (SIREN)? suggestedAnswers: [] answers: fullCompanyAddress: Skeppsbron 1-split-211 20-split-Malmö fullCompanyAddressMetadata: ignore: '-split-' siren: '123456789' region: EU billingCategory: BASIC_MESSAGE useCase: OTP hostingRegion: EUROPE authName: yurwN6123asd authToken: ejiiqJtDyurwN6jLze8v conversationApiApp: 4CF9CE97504C4A468F4610919D17ECC1 conversationApiAppDetails: id: 4CF9CE97504C4A468F4610919D17ECC1 projectId: ea026751-3edf-40a9-ad93-1b382bd60a78 region: EU created: '2023-01-19t13:11:08.204Z' modified: '2023-01-19t13:11:08.204Z' launched: '2023-01-19t13:11:08.204Z' supplierDetails: google: agentId: agentId '400': description: BadRequest content: application/json: schema: example: errorCode: invalid_id_format message: Id is not in the expected format. resolution: senderId param is in the wrong format. Confirm that you're sending the correct value. title: InvalidIdFormatErrorTitle properties: errorCode: type: string title: invalid_id_format example: invalid_id_format description: Error code allows to programatically handle errors. message: type: string title: Id is not in the expected format. example: Id is not in the expected format. description: Human readable message. resolution: type: string title: senderId param is in the wrong format. Confirm that you're sending the correct value. example: senderId param is in the wrong format. Confirm that you're sending the correct value. description: Human readable message with an explanation of how to solve the error. '401': description: Unauthorized content: application/json: schema: example: errorCode: unauthorized_error message: Unauthorized error. resolution: Verify that projectId is correct. title: UnauthorizedErrorErrorTitle properties: errorCode: type: string title: unauthorized_error example: unauthorized_error description: Error code allows to programatically handle errors. message: type: string title: Unauthorized error. example: Unauthorized error. description: Human readable message. resolution: type: string title: Verify that projectId is correct. example: Verify that projectId is correct. description: Human readable message with an explanation of how to solve the error. '403': description: Forbidden content: application/json: schema: example: errorCode: rbm_has_not_been_used message: RBM has not been used. resolution: Please wait and try again or reach out to support at si-richmessaging@sinch.com title: RbmHasNotBeenUsedErrorTitle properties: errorCode: type: string title: rbm_has_not_been_used example: rbm_has_not_been_used description: Error code allows to programatically handle errors. message: type: string title: RBM has not been used. example: RBM has not been used. description: Human readable message. resolution: type: string title: Please wait and try again or reach out to support at si-richmessaging@sinch.com example: Please wait and try again or reach out to support at si-richmessaging@sinch.com description: Human readable message with an explanation of how to solve the error. '404': description: NotFound content: application/json: schema: example: errorCode: sender_not_found message: Sender not found. resolution: Verify that the parameters are correct. title: SenderNotFoundErrorTitle properties: errorCode: type: string title: sender_not_found example: sender_not_found description: Error code allows to programatically handle errors. message: type: string title: Sender not found. example: Sender not found. description: Human readable message. resolution: type: string title: Verify that the parameters are correct. example: Verify that the parameters are correct. description: Human readable message with an explanation of how to solve the error. '429': description: TooManyRequests content: application/json: schema: example: errorCode: rbm_too_many_requests message: RCS Business Messaging too many requests. resolution: Please wait and try again. title: RbmTooManyRequestsErrorTitle properties: errorCode: type: string title: rbm_too_many_requests example: rbm_too_many_requests description: Error code allows to programatically handle errors. message: type: string title: RCS Business Messaging too many requests. example: RCS Business Messaging too many requests. description: Human readable message. resolution: type: string title: Please wait and try again. example: Please wait and try again. description: Human readable message with an explanation of how to solve the error. '500': description: InternalServerError content: application/json: schema: example: errorCode: internal_error message: Internal server error. resolution: Please wait and try again, if the error persist please contact support. title: InternalErrorErrorTitle properties: errorCode: type: string title: internal_error example: internal_error description: Error code allows to programatically handle errors. message: type: string title: Internal server error. example: Internal server error. description: Human readable message. resolution: type: string title: Please wait and try again, if the error persist please contact support. example: Please wait and try again, if the error persist please contact support. description: Human readable message with an explanation of how to solve the error. summary: Get sender for project tags: - RCS Senders x-tagAfterOperationSummary: color: white background: green label: GA patch: description: |2- Returns updated sender for a project. operationId: RcsSendersController_updateSender_v1 parameters: - name: projectId required: true in: path description: The unique ID of the project. You can find this on the Sinch Dashboard. schema: type: string - name: senderId required: true in: path schema: type: string requestBody: required: true description: Sender data update content: application/json: schema: $ref: '#/components/schemas/RcsUpdateSenderInputDto' examples: input: summary: Body request for sender description: |2- Example body request to update a sender. value: details: brand: emails: - label: label address: test@test.com - label: label-1 address: test-1@test.com - label: label-2 address: test-2@test.com phones: - label: label number: +48 777-777-777 - label: label-1 number: '48888888888' - label: label-2 number: +48 999-999-999 websites: - label: label url: https://example.com - label: label-1 url: https://example-1.com - label: label-2 url: https://example-2.com color: '#000000' description: Test description bannerUrl: https://example-banner-url.com logoUrl: https://example-logo-url.com privacyPolicyUrl: https://example-private-policy-url.com termsOfServiceUrl: https://example-terms-of-service-url.com name: Test name testNumbers: - +48 777-777-777 countries: - GB - FR questionnaire: general: answers: optInDescription: By subscribing to a newsletter triggerDescription: User actions (e.g. after making a purchase) interactionsDescription: Billing or payment reminders,aef Order updates,aef Upon package delivery interactionsDescriptionMetadata: ignore: ',aef' optOutDescription: We have registered your opt out request videoUris: - https://example-video-url.com screenshotUris: - https://example-screenshot-url.com verification: answers: name: Exam Ple email: email@example.com title: Head Example website: https://example.com gb: answers: brandIndustry: Automotive companyLegalName: Example company legal name companyRegistrationNumber: 123-123456789 fullCompanyAddress: Skeppsbron 1 Malmö, 123 12, Sweden messagesVolume: 10K - 100K messages messagesFrequency: Once per month fr: answers: fullCompanyAddress: Skeppsbron 1-split-211 20-split-Malmö fullCompanyAddressMetadata: ignore: '-split-' siren: '123456789' responses: '200': description: Sender content: application/json: schema: $ref: '#/components/schemas/RcsSenderDto' examples: response: summary: Update response description: |2- Response when successfully updated a sender. value: id: cf11794a-6a5e-4a12-b103-da79bd378bf1 state: IN_TEST testNumberStates: - number: '+46123123111' state: UNVERIFIED submitted: '2023-01-19t13:11:08.204Z' - number: '+46123123222' state: VERIFIED submitted: '2023-01-19t13:11:08.204Z' - number: '+46123123333' state: DECLINED submitted: '2023-01-19t13:11:08.204Z' countryStatus: - country: FR status: NOT_LAUNCHED operators: - name: Coriolis Telecom status: NOT_LAUNCHED modified: '2023-01-19t13:11:08.204Z' - name: Lycamobile status: NOT_LAUNCHED modified: '2023-01-19t13:11:08.204Z' - name: Bouygues status: NOT_LAUNCHED modified: '2023-01-19t13:11:08.204Z' - name: Free status: NOT_LAUNCHED modified: '2023-01-19t13:11:08.204Z' - name: NRJ Mobile status: NOT_LAUNCHED modified: '2023-01-19t13:11:08.204Z' - name: SFR status: NOT_LAUNCHED modified: '2023-01-19t13:11:08.204Z' - name: Orange status: NOT_LAUNCHED modified: '2023-01-19t13:11:08.204Z' - country: GB status: NOT_LAUNCHED operators: - name: EE status: NOT_LAUNCHED modified: '2023-01-19t13:11:08.204Z' - name: Three status: NOT_LAUNCHED modified: '2023-01-19t13:11:08.204Z' - name: Sky status: NOT_LAUNCHED modified: '2023-01-19t13:11:08.204Z' - name: O2 status: NOT_LAUNCHED modified: '2023-01-19t13:11:08.204Z' - name: Vodafone status: NOT_LAUNCHED modified: '2023-01-19t13:11:08.204Z' - country: SE status: NOT_LAUNCHED operators: - name: Tele2 status: NOT_LAUNCHED modified: '2023-01-19t13:11:08.204Z' - name: Telenor status: NOT_LAUNCHED modified: '2023-01-19t13:11:08.204Z' - name: Telia status: NOT_LAUNCHED modified: '2023-01-19t13:11:08.204Z' - name: Three status: NOT_LAUNCHED modified: '2023-01-19t13:11:08.204Z' details: brand: emails: - label: label address: test@test.com - label: label-1 address: test-1@test.com - label: label-2 address: test-2@test.com phones: - label: label number: +48 777-777-777 - label: label-1 number: '48888888888' - label: label-2 number: +48 999-999-999 websites: - label: label url: https://example.com - label: label-1 url: https://example-1.com - label: label-2 url: https://example-2.com color: '#000000' description: Test description bannerUrl: https://example-banner-url.com logoUrl: https://example-logo-url.com privacyPolicyUrl: https://example-private-policy-url.com termsOfServiceUrl: https://example-terms-of-service-url.com name: Test name testNumbers: - +48 777-777-777 countries: - FR - GB - SE questionnaire: general: questions: optInDescription: question: How do users agree to receive messages from your business through the agent? suggestedAnswers: - By subscribing to our loyalty program - By making a purchase in-store or online - By subscribing to a newsletter - By creating an account on our website or app triggerDescription: question: When does your business send messages to users through the agent? suggestedAnswers: - User actions (e.g. after making a purchase) interactionsDescription: question: How will users interact with your business through the agent? suggestedAnswers: - Online Payment - Password reset - OTP/2FA for account login optOutDescription: question: What message does your business send when a user opts out? suggestedAnswers: - Thank you for opting out - Thank you for unsubscribing - We have registered your opt out request videoUris: question: '' suggestedAnswers: [] screenshotUris: question: '' suggestedAnswers: [] answers: optInDescription: By subscribing to a newsletter triggerDescription: User actions (e.g. after making a purchase) interactionsDescription: Billing or payment reminders,aef Order updates,aef Upon package delivery interactionsDescriptionMetadata: ignore: ',aef' optOutDescription: We have registered your opt out request videoUris: - https://example-video-url.com screenshotUris: - https://example-screenshot-url.com verification: questions: name: question: What is the name of your verification contact? suggestedAnswers: [] email: question: What is the email of your verification contact? suggestedAnswers: [] title: question: What is the title of your verification contact? suggestedAnswers: [] website: question: What is the website of your verification contact? suggestedAnswers: [] answers: name: Exam Ple email: email@example.com title: Head Example website: https://example.com gb: questions: brandIndustry: question: What sector or industry does your business operate in? suggestedAnswers: - Automotive - Beauty, spa and salon - Clothing - Education - Entertainment - Event planning and service - Finance and banking - Food and groceries - Public service - Hotel and lodging - Medical and health - Charity - Professional services - Shopping and retail - Travel and transportation - Restaurant companyLegalName: question: What is the registered legal name of your company? suggestedAnswers: [] companyRegistrationNumber: question: What is the registration number of your company? suggestedAnswers: [] fullCompanyAddress: question: Full Company Address suggestedAnswers: [] messagesVolume: question: What is the total volume of messages expected to be sent by your agent? suggestedAnswers: - 0 - 10K messages - 10K - 100K messages - 100K - 1M messages - 1M+ messages messagesFrequency: question: How often do you expect to send messages? suggestedAnswers: - Once per day - Once per week - Once per month - Once per 3 months - Once per 6 months campaignLength: question: What will be the length of the RCS campaign? suggestedAnswers: - 1 day or less - 2 to 7 days - 8 to 21 days - 1 month - 3 months - 6 months - Continuous / ongoing answers: brandIndustry: Automotive companyLegalName: Example company legal name companyRegistrationNumber: 123-123456789 fullCompanyAddress: Skeppsbron 1 Malmö, 123 12, Sweden messagesVolume: 10K - 100K messages messagesFrequency: Once per month fr: questions: fullCompanyAddress: question: Full Company Address suggestedAnswers: [] usersAmount: question: How many users are your agent expected to reach? suggestedAnswers: - 0 - 1K users - 1K - 10K users - 10k - 100K users - 100K+ users startDate: question: When will your agent start sending messages to your users? suggestedAnswers: - Today - In a week - In a month - Within 3 months siren: question: What is your Company directory identification system number (SIREN)? suggestedAnswers: [] answers: fullCompanyAddress: Skeppsbron 1-split-211 20-split-Malmö fullCompanyAddressMetadata: ignore: '-split-' siren: '123456789' region: EU billingCategory: BASIC_MESSAGE useCase: OTP hostingRegion: EUROPE authName: yurwN6123asd authToken: ejiiqJtDyurwN6jLze8v conversationApiApp: 4CF9CE97504C4A468F4610919D17ECC1 conversationApiAppDetails: id: 4CF9CE97504C4A468F4610919D17ECC1 projectId: ea026751-3edf-40a9-ad93-1b382bd60a78 region: EU created: '2023-01-19t13:11:08.204Z' modified: '2023-01-19t13:11:08.204Z' launched: '2023-01-19t13:11:08.204Z' supplierDetails: google: agentId: agentId '400': description: BadRequest content: application/json: schema: oneOf: - title: InvalidInputErrorTitle properties: errorCode: type: string title: invalid_input example: invalid_input description: Error code allows to programatically handle errors. message: type: string title: Invalid input. example: Invalid input. description: Human readable message. resolution: type: string title: Correct the validation errors and submit again. example: Correct the validation errors and submit again. description: Human readable message with an explanation of how to solve the error. additionalInformation: type: object title: additionalInformation example: validationErrors: - details.brand.email.address must be an email description: Additional information for error. - title: NoFieldsToUpdateErrorTitle properties: errorCode: type: string title: no_fields_to_update example: no_fields_to_update description: Error code allows to programatically handle errors. message: type: string title: No fields to be updated. example: No fields to be updated. description: Human readable message. resolution: type: string title: Supply at least one field to be updated. example: Supply at least one field to be updated. description: Human readable message with an explanation of how to solve the error. - title: FieldsNotUpdatableErrorTitle properties: errorCode: type: string title: fields_not_updatable example: fields_not_updatable description: Error code allows to programatically handle errors. message: type: string title: Fields not updatable. example: Fields not updatable. description: Human readable message. resolution: type: string title: 'Only `details.countries` and `details.launch` can be updated when in state: LAUNCHING, LAUNCHED.' example: 'Only `details.countries` and `details.launch` can be updated when in state: LAUNCHING, LAUNCHED.' description: Human readable message with an explanation of how to solve the error. - title: InvalidPayloadErrorTitle properties: errorCode: type: string title: invalid_payload example: invalid_payload description: Error code allows to programatically handle errors. message: type: string title: Invalid payload. example: Invalid payload. description: Human readable message. resolution: type: string title: Correct payload and submit again. example: Correct payload and submit again. description: Human readable message with an explanation of how to solve the error. - title: InvalidGoogleAgentErrorTitle properties: errorCode: type: string title: invalid_google_agent example: invalid_google_agent description: Error code allows to programatically handle errors. message: type: string title: message example: message description: Human readable message. resolution: type: string title: Verify the sender's fields. example: Verify the sender's fields. description: Human readable message with an explanation of how to solve the error. - title: AddTestNumberInvalidErrorTitle properties: errorCode: type: string title: add_test_number_invalid example: add_test_number_invalid description: Error code allows to programatically handle errors. message: type: string title: Invalid phone number. example: Invalid phone number. description: Human readable message. resolution: type: string title: Please verify that phone number is correct. example: Please verify that phone number is correct. description: Human readable message with an explanation of how to solve the error. - title: InvalidIdFormatErrorTitle properties: errorCode: type: string title: invalid_id_format example: invalid_id_format description: Error code allows to programatically handle errors. message: type: string title: Id is not in the expected format. example: Id is not in the expected format. description: Human readable message. resolution: type: string title: senderId param is in the wrong format. Confirm that you're sending the correct value. example: senderId param is in the wrong format. Confirm that you're sending the correct value. description: Human readable message with an explanation of how to solve the error. '401': description: Unauthorized content: application/json: schema: example: errorCode: unauthorized_error message: Unauthorized error. resolution: Verify that projectId is correct. title: UnauthorizedErrorErrorTitle properties: errorCode: type: string title: unauthorized_error example: unauthorized_error description: Error code allows to programatically handle errors. message: type: string title: Unauthorized error. example: Unauthorized error. description: Human readable message. resolution: type: string title: Verify that projectId is correct. example: Verify that projectId is correct. description: Human readable message with an explanation of how to solve the error. '403': description: Forbidden content: application/json: schema: example: errorCode: rbm_has_not_been_used message: RBM has not been used. resolution: Please wait and try again or reach out to support at si-richmessaging@sinch.com title: RbmHasNotBeenUsedErrorTitle properties: errorCode: type: string title: rbm_has_not_been_used example: rbm_has_not_been_used description: Error code allows to programatically handle errors. message: type: string title: RBM has not been used. example: RBM has not been used. description: Human readable message. resolution: type: string title: Please wait and try again or reach out to support at si-richmessaging@sinch.com example: Please wait and try again or reach out to support at si-richmessaging@sinch.com description: Human readable message with an explanation of how to solve the error. '404': description: NotFound content: application/json: schema: oneOf: - title: ProjectNotFoundErrorTitle properties: errorCode: type: string title: project_not_found example: project_not_found description: Error code allows to programatically handle errors. message: type: string title: Project not found. example: Project not found. description: Human readable message. resolution: type: string title: Verify that the projectId is correct. example: Verify that the projectId is correct. description: Human readable message with an explanation of how to solve the error. - title: SenderNotFoundErrorTitle properties: errorCode: type: string title: sender_not_found example: sender_not_found description: Error code allows to programatically handle errors. message: type: string title: Sender not found. example: Sender not found. description: Human readable message. resolution: type: string title: Verify that the parameters are correct. example: Verify that the parameters are correct. description: Human readable message with an explanation of how to solve the error. - title: RbmResourcesNotFoundErrorTitle properties: errorCode: type: string title: rbm_resources_not_found example: rbm_resources_not_found description: Error code allows to programatically handle errors. message: type: string title: RBM resources not found. example: RBM resources not found. description: Human readable message. resolution: type: string title: Verify that the parameters are correct, and contact support if error persists. example: Verify that the parameters are correct, and contact support if error persists. description: Human readable message with an explanation of how to solve the error. - title: AddTestNumberNotAllowedBeforeLaunchErrorTitle properties: errorCode: type: string title: add_test_number_not_allowed_before_launch example: add_test_number_not_allowed_before_launch description: Error code allows to programatically handle errors. message: type: string title: Adding test number not allowed before launch. example: Adding test number not allowed before launch. description: Human readable message. resolution: type: string title: Carrier does not allow test number to be created prior to sender launch. example: Carrier does not allow test number to be created prior to sender launch. description: Human readable message with an explanation of how to solve the error. '429': description: TooManyRequests content: application/json: schema: example: errorCode: rbm_too_many_requests message: RCS Business Messaging too many requests. resolution: Please wait and try again. title: RbmTooManyRequestsErrorTitle properties: errorCode: type: string title: rbm_too_many_requests example: rbm_too_many_requests description: Error code allows to programatically handle errors. message: type: string title: RCS Business Messaging too many requests. example: RCS Business Messaging too many requests. description: Human readable message. resolution: type: string title: Please wait and try again. example: Please wait and try again. description: Human readable message with an explanation of how to solve the error. '500': description: InternalServerError content: application/json: schema: example: errorCode: internal_error message: Internal server error. resolution: Please wait and try again, if the error persist please contact support. title: InternalErrorErrorTitle properties: errorCode: type: string title: internal_error example: internal_error description: Error code allows to programatically handle errors. message: type: string title: Internal server error. example: Internal server error. description: Human readable message. resolution: type: string title: Please wait and try again, if the error persist please contact support. example: Please wait and try again, if the error persist please contact support. description: Human readable message with an explanation of how to solve the error. summary: Update sender for project tags: - RCS Senders x-tagAfterOperationSummary: color: white background: green label: GA /v1/projects/{projectId}/rcs/senders/{senderId}/activities: get: description: |2- Paginated list of activities for sender. Ordered from the most recent one to the oldest one. operationId: RcsSendersController_listActivities_v1 parameters: - name: projectId required: true in: path description: The unique ID of the project. You can find this on the Sinch Dashboard. schema: type: string - name: senderId required: true in: path description: The unique ID of the sender. schema: type: string - name: pageToken required: false in: query schema: type: string description: The page token if retrieving the next page from a previous query. - name: pageSize required: false in: query schema: type: number minimum: 1 maximum: 100 description: The page size requested. responses: '200': description: Recent activities on sender content: application/json: schema: $ref: '#/components/schemas/RcsSenderNotificationListDto' examples: response: summary: List sender activities response description: |2- Response for all sender activities. value: totalSize: 2 pageSize: 50 notifications: - type: CREATED created: '2023-02-10T11:41:14.202Z' author: Provisioning API user - type: COMMENT_ADDED created: '2023-02-10T11:41:14.202Z' comment: Example comment author: Provisioning API user '400': description: BadRequest content: application/json: schema: oneOf: - title: InvalidPageTokenErrorTitle properties: errorCode: type: string title: invalid_page_token example: invalid_page_token description: Error code allows to programatically handle errors. message: type: string title: Invalid page token. example: Invalid page token. description: Human readable message. resolution: type: string title: The page token to use is provided in the previous query response, for new queries simply leave this field undefined. example: The page token to use is provided in the previous query response, for new queries simply leave this field undefined. description: Human readable message with an explanation of how to solve the error. - title: InvalidPageSizeErrorTitle properties: errorCode: type: string title: invalid_page_size example: invalid_page_size description: Error code allows to programatically handle errors. message: type: string title: Page size must be numeric. example: Page size must be numeric. description: Human readable message. resolution: type: string title: Use a integer value for pageSize parameter. example: Use a integer value for pageSize parameter. description: Human readable message with an explanation of how to solve the error. - title: InvalidIdFormatErrorTitle properties: errorCode: type: string title: invalid_id_format example: invalid_id_format description: Error code allows to programatically handle errors. message: type: string title: Id is not in the expected format. example: Id is not in the expected format. description: Human readable message. resolution: type: string title: senderId param is in the wrong format. Confirm that you're sending the correct value. example: senderId param is in the wrong format. Confirm that you're sending the correct value. description: Human readable message with an explanation of how to solve the error. '401': description: Unauthorized content: application/json: schema: example: errorCode: unauthorized_error message: Unauthorized error. resolution: Verify that projectId is correct. title: UnauthorizedErrorErrorTitle properties: errorCode: type: string title: unauthorized_error example: unauthorized_error description: Error code allows to programatically handle errors. message: type: string title: Unauthorized error. example: Unauthorized error. description: Human readable message. resolution: type: string title: Verify that projectId is correct. example: Verify that projectId is correct. description: Human readable message with an explanation of how to solve the error. '404': description: NotFound content: application/json: schema: example: errorCode: sender_not_found message: Sender not found. resolution: Verify that the parameters are correct. title: SenderNotFoundErrorTitle properties: errorCode: type: string title: sender_not_found example: sender_not_found description: Error code allows to programatically handle errors. message: type: string title: Sender not found. example: Sender not found. description: Human readable message. resolution: type: string title: Verify that the parameters are correct. example: Verify that the parameters are correct. description: Human readable message with an explanation of how to solve the error. '500': description: InternalServerError content: application/json: schema: example: errorCode: internal_error message: Internal server error. resolution: Please wait and try again, if the error persist please contact support. title: InternalErrorErrorTitle properties: errorCode: type: string title: internal_error example: internal_error description: Error code allows to programatically handle errors. message: type: string title: Internal server error. example: Internal server error. description: Human readable message. resolution: type: string title: Please wait and try again, if the error persist please contact support. example: Please wait and try again, if the error persist please contact support. description: Human readable message with an explanation of how to solve the error. summary: Lists activities on sender tags: - RCS Senders x-tagAfterOperationSummary: color: white background: green label: GA /v1/projects/{projectId}/rcs/senders/{senderId}/comments: post: description: |2- Creates a comment for a sender in project. operationId: SendersController_createSenderComment_v1 parameters: - name: projectId required: true in: path description: The unique ID of the project. You can find this on the Sinch Dashboard. schema: type: string - name: senderId required: true in: path description: The unique ID of the sender. schema: type: string requestBody: required: true description: Comment data. content: application/json: schema: $ref: '#/components/schemas/RcsCommentInputDto' examples: input: summary: Body request description: |2- Example body request to create a comment. value: comment: Example comment. responses: '201': description: Created comment for a sender in project content: application/json: schema: $ref: '#/components/schemas/RcsCommentDto' examples: created: summary: Create response description: |2- Response when successfully creating a comment. value: type: CREATED comment: Example comment created: '2023-01-19T13:11:08.204Z' '400': description: BadRequest content: application/json: schema: oneOf: - title: InvalidInputErrorTitle properties: errorCode: type: string title: invalid_input example: invalid_input description: Error code allows to programatically handle errors. message: type: string title: Invalid input. example: Invalid input. description: Human readable message. resolution: type: string title: Correct the validation errors and submit again. example: Correct the validation errors and submit again. description: Human readable message with an explanation of how to solve the error. additionalInformation: type: object title: additionalInformation example: validationErrors: - comment must be longer than or equal to 1 characters description: Additional information for error. - title: InvalidPayloadErrorTitle properties: errorCode: type: string title: invalid_payload example: invalid_payload description: Error code allows to programatically handle errors. message: type: string title: Invalid payload. example: Invalid payload. description: Human readable message. resolution: type: string title: Correct payload and submit again. example: Correct payload and submit again. description: Human readable message with an explanation of how to solve the error. - title: InvalidIdFormatErrorTitle properties: errorCode: type: string title: invalid_id_format example: invalid_id_format description: Error code allows to programatically handle errors. message: type: string title: Id is not in the expected format. example: Id is not in the expected format. description: Human readable message. resolution: type: string title: senderId param is in the wrong format. Confirm that you're sending the correct value. example: senderId param is in the wrong format. Confirm that you're sending the correct value. description: Human readable message with an explanation of how to solve the error. '401': description: Unauthorized content: application/json: schema: example: errorCode: unauthorized_error message: Unauthorized error. resolution: Verify that projectId is correct. title: UnauthorizedErrorErrorTitle properties: errorCode: type: string title: unauthorized_error example: unauthorized_error description: Error code allows to programatically handle errors. message: type: string title: Unauthorized error. example: Unauthorized error. description: Human readable message. resolution: type: string title: Verify that projectId is correct. example: Verify that projectId is correct. description: Human readable message with an explanation of how to solve the error. '404': description: NotFound content: application/json: schema: example: errorCode: sender_not_found message: Sender not found. resolution: Verify that the parameters are correct. title: SenderNotFoundErrorTitle properties: errorCode: type: string title: sender_not_found example: sender_not_found description: Error code allows to programatically handle errors. message: type: string title: Sender not found. example: Sender not found. description: Human readable message. resolution: type: string title: Verify that the parameters are correct. example: Verify that the parameters are correct. description: Human readable message with an explanation of how to solve the error. '500': description: InternalServerError content: application/json: schema: oneOf: - title: FailedToCreateCommentErrorTitle properties: errorCode: type: string title: failed_to_create_comment example: failed_to_create_comment description: Error code allows to programatically handle errors. message: type: string title: Failed to create a comment. example: Failed to create a comment. description: Human readable message. resolution: type: string title: Please try again later. example: Please try again later. description: Human readable message with an explanation of how to solve the error. - title: InternalErrorErrorTitle properties: errorCode: type: string title: internal_error example: internal_error description: Error code allows to programatically handle errors. message: type: string title: Internal server error. example: Internal server error. description: Human readable message. resolution: type: string title: Please wait and try again, if the error persist please contact support. example: Please wait and try again, if the error persist please contact support. description: Human readable message with an explanation of how to solve the error. summary: Creates a comment for a sender in project tags: - RCS Senders x-tagAfterOperationSummary: color: white background: green label: GA /v1/projects/{projectId}/rcs/senders/{senderId}/launch: post: description: |2- Begins launch process for a sender in project. Requirements to begin launch process: - Questionnaire needs to be completed; - Countries (`details.countries`) must have at least one (1) value; - At least one contact phone number (`details.brand.phones`) or a contact email (`details.brand.emails`) is required, but both are recommended; - A brand banner url (`details.brand.bannerUrl`) must be defined; - A brand logo url (`details.brand.logoUrl`) must be defined; - A privacy policy url (`details.brand.privacyPolicyUrl`) must be defined; - A terms of service url (`details.brand.termsOfServiceUrl`) must be defined; If no video URI was provided in questionnaire, Sender will go into PENDING_LAUNCH while a video is added by Service Implementation. operationId: SendersController_launchSender_v1 parameters: - name: projectId required: true in: path description: The unique ID of the project. You can find this on the Sinch Dashboard. schema: type: string - name: senderId required: true in: path description: The unique ID of the sender. schema: type: string responses: '200': description: Launched sender in project content: application/json: schema: $ref: '#/components/schemas/RcsSenderDto' examples: launchingResponse: summary: Launching response description: |2- Response when successfully launching a sender with all required attributes. value: id: cf11794a-6a5e-4a12-b103-da79bd378bf1 state: LAUNCHING testNumberStates: - number: '+46123123111' state: UNVERIFIED submitted: '2023-01-19t13:11:08.204Z' - number: '+46123123222' state: VERIFIED submitted: '2023-01-19t13:11:08.204Z' - number: '+46123123333' state: DECLINED submitted: '2023-01-19t13:11:08.204Z' countryStatus: - country: FR status: PENDING operators: - name: Coriolis Telecom status: PENDING modified: '2023-01-19t13:11:08.204Z' - name: Lycamobile status: PENDING modified: '2023-01-19t13:11:08.204Z' - name: Bouygues status: PENDING modified: '2023-01-19t13:11:08.204Z' - name: Free status: PENDING modified: '2023-01-19t13:11:08.204Z' - name: NRJ Mobile status: REJECTED remark: Sender was rejected due to operator policy. modified: '2023-01-19t13:11:08.204Z' - name: SFR status: SUSPENDED modified: '2023-01-19t13:11:08.204Z' - name: Orange status: PENDING modified: '2023-01-19t13:11:08.204Z' - country: GB status: PENDING operators: - name: EE status: PENDING modified: '2023-01-19t13:11:08.204Z' - name: Three status: PENDING modified: '2023-01-19t13:11:08.204Z' - name: Sky status: PENDING modified: '2023-01-19t13:11:08.204Z' - name: O2 status: PENDING modified: '2023-01-19t13:11:08.204Z' - name: Vodafone status: SUSPENDED modified: '2023-01-19t13:11:08.204Z' - country: SE status: PENDING operators: - name: Tele2 status: PENDING modified: '2023-01-19t13:11:08.204Z' - name: Telenor status: PENDING modified: '2023-01-19t13:11:08.204Z' - name: Telia status: PENDING modified: '2023-01-19t13:11:08.204Z' - name: Three status: PENDING modified: '2023-01-19t13:11:08.204Z' details: brand: emails: - label: label address: test@test.com - label: label-1 address: test-1@test.com - label: label-2 address: test-2@test.com phones: - label: label number: +48 777-777-777 - label: label-1 number: '48888888888' - label: label-2 number: +48 999-999-999 websites: - label: label url: https://example.com - label: label-1 url: https://example-1.com - label: label-2 url: https://example-2.com color: '#000000' description: Test description bannerUrl: https://example-banner-url.com logoUrl: https://example-logo-url.com privacyPolicyUrl: https://example-private-policy-url.com termsOfServiceUrl: https://example-terms-of-service-url.com name: Test name testNumbers: - +48 777-777-777 countries: - FR - GB - SE questionnaire: general: questions: optInDescription: question: How do users agree to receive messages from your business through the agent? suggestedAnswers: - By subscribing to our loyalty program - By making a purchase in-store or online - By subscribing to a newsletter - By creating an account on our website or app triggerDescription: question: When does your business send messages to users through the agent? suggestedAnswers: - User actions (e.g. after making a purchase) interactionsDescription: question: How will users interact with your business through the agent? suggestedAnswers: - Online Payment - Password reset - OTP/2FA for account login optOutDescription: question: What message does your business send when a user opts out? suggestedAnswers: - Thank you for opting out - Thank you for unsubscribing - We have registered your opt out request videoUris: question: '' suggestedAnswers: [] screenshotUris: question: '' suggestedAnswers: [] answers: optInDescription: By subscribing to a newsletter triggerDescription: User actions (e.g. after making a purchase) interactionsDescription: Billing or payment reminders,aef Order updates,aef Upon package delivery interactionsDescriptionMetadata: ignore: ',aef' optOutDescription: We have registered your opt out request videoUris: - https://example-video-url.com screenshotUris: - https://example-screenshot-url.com verification: questions: name: question: What is the name of your verification contact? suggestedAnswers: [] email: question: What is the email of your verification contact? suggestedAnswers: [] title: question: What is the title of your verification contact? suggestedAnswers: [] website: question: What is the website of your verification contact? suggestedAnswers: [] answers: name: Exam Ple email: email@example.com title: Head Example website: https://example.com gb: questions: brandIndustry: question: What sector or industry does your business operate in? suggestedAnswers: - Automotive - Beauty, spa and salon - Clothing - Education - Entertainment - Event planning and service - Finance and banking - Food and groceries - Public service - Hotel and lodging - Medical and health - Charity - Professional services - Shopping and retail - Travel and transportation - Restaurant companyLegalName: question: What is the registered legal name of your company? suggestedAnswers: [] companyRegistrationNumber: question: What is the registration number of your company? suggestedAnswers: [] fullCompanyAddress: question: Full Company Address suggestedAnswers: [] messagesVolume: question: What is the total volume of messages expected to be sent by your agent? suggestedAnswers: - 0 - 10K messages - 10K - 100K messages - 100K - 1M messages - 1M+ messages messagesFrequency: question: How often do you expect to send messages? suggestedAnswers: - Once per day - Once per week - Once per month - Once per 3 months - Once per 6 months campaignLength: question: What will be the length of the RCS campaign? suggestedAnswers: - 1 day or less - 2 to 7 days - 8 to 21 days - 1 month - 3 months - 6 months - Continuous / ongoing answers: brandIndustry: Automotive companyLegalName: Example company legal name companyRegistrationNumber: 123-123456789 fullCompanyAddress: Skeppsbron 1 Malmö, 123 12, Sweden messagesVolume: 10K - 100K messages messagesFrequency: Once per month fr: questions: fullCompanyAddress: question: Full Company Address suggestedAnswers: [] usersAmount: question: How many users are your agent expected to reach? suggestedAnswers: - 0 - 1K users - 1K - 10K users - 10k - 100K users - 100K+ users startDate: question: When will your agent start sending messages to your users? suggestedAnswers: - Today - In a week - In a month - Within 3 months siren: question: What is your Company directory identification system number (SIREN)? suggestedAnswers: [] answers: fullCompanyAddress: Skeppsbron 1-split-211 20-split-Malmö fullCompanyAddressMetadata: ignore: '-split-' siren: '123456789' region: EU billingCategory: BASIC_MESSAGE useCase: OTP hostingRegion: EUROPE authName: yurwN6123asd authToken: ejiiqJtDyurwN6jLze8v conversationApiApp: 4CF9CE97504C4A468F4610919D17ECC1 conversationApiAppDetails: id: 4CF9CE97504C4A468F4610919D17ECC1 projectId: ea026751-3edf-40a9-ad93-1b382bd60a78 region: EU created: '2023-01-19t13:11:08.204Z' modified: '2023-01-19t13:11:08.204Z' launched: '2023-01-19t13:11:08.204Z' supplierDetails: google: agentId: agentId preparingLaunchResponse: summary: Preparing launch response description: |2- Response when successfully launching a sender. value: id: cf11794a-6a5e-4a12-b103-da79bd378bf1 state: PREPARING_LAUNCH testNumberStates: - number: '+46123123111' state: UNVERIFIED submitted: '2023-01-19t13:11:08.204Z' - number: '+46123123222' state: VERIFIED submitted: '2023-01-19t13:11:08.204Z' - number: '+46123123333' state: DECLINED submitted: '2023-01-19t13:11:08.204Z' countryStatus: - country: FR status: PENDING operators: - name: Coriolis Telecom status: PENDING modified: '2023-01-19t13:11:08.204Z' - name: Lycamobile status: PENDING modified: '2023-01-19t13:11:08.204Z' - name: Bouygues status: PENDING modified: '2023-01-19t13:11:08.204Z' - name: Free status: PENDING modified: '2023-01-19t13:11:08.204Z' - name: NRJ Mobile status: REJECTED remark: Sender was rejected due to operator policy. modified: '2023-01-19t13:11:08.204Z' - name: SFR status: SUSPENDED modified: '2023-01-19t13:11:08.204Z' - name: Orange status: PENDING modified: '2023-01-19t13:11:08.204Z' - country: GB status: PENDING operators: - name: EE status: PENDING modified: '2023-01-19t13:11:08.204Z' - name: Three status: PENDING modified: '2023-01-19t13:11:08.204Z' - name: Sky status: PENDING modified: '2023-01-19t13:11:08.204Z' - name: O2 status: PENDING modified: '2023-01-19t13:11:08.204Z' - name: Vodafone status: SUSPENDED modified: '2023-01-19t13:11:08.204Z' - country: SE status: PENDING operators: - name: Tele2 status: PENDING modified: '2023-01-19t13:11:08.204Z' - name: Telenor status: PENDING modified: '2023-01-19t13:11:08.204Z' - name: Telia status: PENDING modified: '2023-01-19t13:11:08.204Z' - name: Three status: PENDING modified: '2023-01-19t13:11:08.204Z' details: brand: emails: - label: label address: test@test.com - label: label-1 address: test-1@test.com - label: label-2 address: test-2@test.com phones: - label: label number: +48 777-777-777 - label: label-1 number: '48888888888' - label: label-2 number: +48 999-999-999 websites: - label: label url: https://example.com - label: label-1 url: https://example-1.com - label: label-2 url: https://example-2.com color: '#000000' description: Test description bannerUrl: https://example-banner-url.com logoUrl: https://example-logo-url.com privacyPolicyUrl: https://example-private-policy-url.com termsOfServiceUrl: https://example-terms-of-service-url.com name: Test name testNumbers: - +48 777-777-777 countries: - FR - GB - SE questionnaire: general: questions: optInDescription: question: How do users agree to receive messages from your business through the agent? suggestedAnswers: - By subscribing to our loyalty program - By making a purchase in-store or online - By subscribing to a newsletter - By creating an account on our website or app triggerDescription: question: When does your business send messages to users through the agent? suggestedAnswers: - User actions (e.g. after making a purchase) interactionsDescription: question: How will users interact with your business through the agent? suggestedAnswers: - Online Payment - Password reset - OTP/2FA for account login optOutDescription: question: What message does your business send when a user opts out? suggestedAnswers: - Thank you for opting out - Thank you for unsubscribing - We have registered your opt out request videoUris: question: '' suggestedAnswers: [] screenshotUris: question: '' suggestedAnswers: [] answers: optInDescription: By subscribing to a newsletter triggerDescription: User actions (e.g. after making a purchase) interactionsDescription: Billing or payment reminders,aef Order updates,aef Upon package delivery interactionsDescriptionMetadata: ignore: ',aef' optOutDescription: We have registered your opt out request videoUris: - https://example-video-url.com screenshotUris: - https://example-screenshot-url.com verification: questions: name: question: What is the name of your verification contact? suggestedAnswers: [] email: question: What is the email of your verification contact? suggestedAnswers: [] title: question: What is the title of your verification contact? suggestedAnswers: [] website: question: What is the website of your verification contact? suggestedAnswers: [] answers: name: Exam Ple email: email@example.com title: Head Example website: https://example.com gb: questions: brandIndustry: question: What sector or industry does your business operate in? suggestedAnswers: - Automotive - Beauty, spa and salon - Clothing - Education - Entertainment - Event planning and service - Finance and banking - Food and groceries - Public service - Hotel and lodging - Medical and health - Charity - Professional services - Shopping and retail - Travel and transportation - Restaurant companyLegalName: question: What is the registered legal name of your company? suggestedAnswers: [] companyRegistrationNumber: question: What is the registration number of your company? suggestedAnswers: [] fullCompanyAddress: question: Full Company Address suggestedAnswers: [] messagesVolume: question: What is the total volume of messages expected to be sent by your agent? suggestedAnswers: - 0 - 10K messages - 10K - 100K messages - 100K - 1M messages - 1M+ messages messagesFrequency: question: How often do you expect to send messages? suggestedAnswers: - Once per day - Once per week - Once per month - Once per 3 months - Once per 6 months campaignLength: question: What will be the length of the RCS campaign? suggestedAnswers: - 1 day or less - 2 to 7 days - 8 to 21 days - 1 month - 3 months - 6 months - Continuous / ongoing answers: brandIndustry: Automotive companyLegalName: Example company legal name companyRegistrationNumber: 123-123456789 fullCompanyAddress: Skeppsbron 1 Malmö, 123 12, Sweden messagesVolume: 10K - 100K messages messagesFrequency: Once per month fr: questions: fullCompanyAddress: question: Full Company Address suggestedAnswers: [] usersAmount: question: How many users are your agent expected to reach? suggestedAnswers: - 0 - 1K users - 1K - 10K users - 10k - 100K users - 100K+ users startDate: question: When will your agent start sending messages to your users? suggestedAnswers: - Today - In a week - In a month - Within 3 months siren: question: What is your Company directory identification system number (SIREN)? suggestedAnswers: [] answers: fullCompanyAddress: Skeppsbron 1-split-211 20-split-Malmö fullCompanyAddressMetadata: ignore: '-split-' siren: '123456789' region: EU billingCategory: BASIC_MESSAGE useCase: OTP hostingRegion: EUROPE authName: yurwN6123asd authToken: ejiiqJtDyurwN6jLze8v conversationApiApp: 4CF9CE97504C4A468F4610919D17ECC1 conversationApiAppDetails: id: 4CF9CE97504C4A468F4610919D17ECC1 projectId: ea026751-3edf-40a9-ad93-1b382bd60a78 region: EU created: '2023-01-19t13:11:08.204Z' modified: '2023-01-19t13:11:08.204Z' launched: '2023-01-19t13:11:08.204Z' supplierDetails: google: agentId: agentId '400': description: BadRequest content: application/json: schema: oneOf: - title: VerificationSuspendedInGmbErrorTitle properties: errorCode: type: string title: verification_suspended_in_gmb example: verification_suspended_in_gmb description: Error code allows to programatically handle errors. message: type: string title: Associated Google My Business is suspended example: Associated Google My Business is suspended description: Human readable message. resolution: type: string title: Reverify Google My Business. example: Reverify Google My Business. description: Human readable message with an explanation of how to solve the error. - title: InvalidIdFormatErrorTitle properties: errorCode: type: string title: invalid_id_format example: invalid_id_format description: Error code allows to programatically handle errors. message: type: string title: Id is not in the expected format. example: Id is not in the expected format. description: Human readable message. resolution: type: string title: senderId param is in the wrong format. Confirm that you're sending the correct value. example: senderId param is in the wrong format. Confirm that you're sending the correct value. description: Human readable message with an explanation of how to solve the error. '401': description: Unauthorized content: application/json: schema: example: errorCode: unauthorized_error message: Unauthorized error. resolution: Verify that projectId is correct. title: UnauthorizedErrorErrorTitle properties: errorCode: type: string title: unauthorized_error example: unauthorized_error description: Error code allows to programatically handle errors. message: type: string title: Unauthorized error. example: Unauthorized error. description: Human readable message. resolution: type: string title: Verify that projectId is correct. example: Verify that projectId is correct. description: Human readable message with an explanation of how to solve the error. '403': description: Forbidden content: application/json: schema: example: errorCode: rbm_has_not_been_used message: RBM has not been used. resolution: Please wait and try again or reach out to support at si-richmessaging@sinch.com title: RbmHasNotBeenUsedErrorTitle properties: errorCode: type: string title: rbm_has_not_been_used example: rbm_has_not_been_used description: Error code allows to programatically handle errors. message: type: string title: RBM has not been used. example: RBM has not been used. description: Human readable message. resolution: type: string title: Please wait and try again or reach out to support at si-richmessaging@sinch.com example: Please wait and try again or reach out to support at si-richmessaging@sinch.com description: Human readable message with an explanation of how to solve the error. '404': description: NotFound content: application/json: schema: oneOf: - title: SenderNotFoundErrorTitle properties: errorCode: type: string title: sender_not_found example: sender_not_found description: Error code allows to programatically handle errors. message: type: string title: Sender not found. example: Sender not found. description: Human readable message. resolution: type: string title: Verify that the parameters are correct. example: Verify that the parameters are correct. description: Human readable message with an explanation of how to solve the error. - title: RbmResourcesNotFoundErrorTitle properties: errorCode: type: string title: rbm_resources_not_found example: rbm_resources_not_found description: Error code allows to programatically handle errors. message: type: string title: RBM resources not found. example: RBM resources not found. description: Human readable message. resolution: type: string title: Verify that the parameters are correct, and contact support if error persists. example: Verify that the parameters are correct, and contact support if error persists. description: Human readable message with an explanation of how to solve the error. '409': description: Conflict content: application/json: schema: oneOf: - title: LaunchInvalidAgentStateErrorTitle properties: errorCode: type: string title: launch_invalid_agent_state example: launch_invalid_agent_state description: Error code allows to programatically handle errors. message: type: string title: Sender can't be launched. example: Sender can't be launched. description: Human readable message. resolution: type: string title: 'Launch are only supported by senders with state: IN_TEST, LAUNCHING, LAUNCHED, UNLAUNCHED.' example: 'Launch are only supported by senders with state: IN_TEST, LAUNCHING, LAUNCHED, UNLAUNCHED.' description: Human readable message with an explanation of how to solve the error. - title: LaunchInvalidVerificationStateErrorTitle properties: errorCode: type: string title: launch_invalid_verification_state example: launch_invalid_verification_state description: Error code allows to programatically handle errors. message: type: string title: Sender verification can't be updated. example: Sender verification can't be updated. description: Human readable message. resolution: type: string title: 'Sender verification update are only supported by verifications with state: VERIFICATION_STATE_PENDING.' example: 'Sender verification update are only supported by verifications with state: VERIFICATION_STATE_PENDING.' description: Human readable message with an explanation of how to solve the error. '412': description: PreconditionFailed content: application/json: schema: example: errorCode: launch_precondition_failed message: Launch precondition failed. resolution: Correct the precondition errors and launch again. additionalInformation: validationErrors: - validation.error title: LaunchPreconditionFailedErrorTitle properties: errorCode: type: string title: launch_precondition_failed example: launch_precondition_failed description: Error code allows to programatically handle errors. message: type: string title: Launch precondition failed. example: Launch precondition failed. description: Human readable message. resolution: type: string title: Correct the precondition errors and launch again. example: Correct the precondition errors and launch again. description: Human readable message with an explanation of how to solve the error. additionalInformation: type: object title: additionalInformation example: validationErrors: - validation.error description: Additional information for error. '429': description: TooManyRequests content: application/json: schema: example: errorCode: rbm_too_many_requests message: RCS Business Messaging too many requests. resolution: Please wait and try again. title: RbmTooManyRequestsErrorTitle properties: errorCode: type: string title: rbm_too_many_requests example: rbm_too_many_requests description: Error code allows to programatically handle errors. message: type: string title: RCS Business Messaging too many requests. example: RCS Business Messaging too many requests. description: Human readable message. resolution: type: string title: Please wait and try again. example: Please wait and try again. description: Human readable message with an explanation of how to solve the error. '500': description: InternalServerError content: application/json: schema: example: errorCode: internal_error message: Internal server error. resolution: Please wait and try again, if the error persist please contact support. title: InternalErrorErrorTitle properties: errorCode: type: string title: internal_error example: internal_error description: Error code allows to programatically handle errors. message: type: string title: Internal server error. example: Internal server error. description: Human readable message. resolution: type: string title: Please wait and try again, if the error persist please contact support. example: Please wait and try again, if the error persist please contact support. description: Human readable message with an explanation of how to solve the error. summary: Begin launch process for sender tags: - RCS Senders x-tagAfterOperationSummary: color: white background: green label: GA /v1/projects/{projectId}/rcs/senders/{senderId}/testNumbers: post: description: |2- Returns updated test number states of sender for a project. Please note that if you re-add verified number, state will be changed to unverified and an invite to become a tester will be sent again. operationId: SendersController_addTestNumbers_v1 parameters: - name: projectId required: true in: path description: The unique ID of the project. You can find this on the Sinch Dashboard. schema: type: string - name: senderId required: true in: path schema: type: string requestBody: required: true description: Test numbers to add content: application/json: schema: $ref: '#/components/schemas/RcsTestNumbersInputDto' examples: input: summary: Body request for add test numbers description: |2- Example body request to add test numbers. value: testNumbers: - +48 777-777-777 responses: '200': description: Test number states content: application/json: schema: $ref: '#/components/schemas/RcsTestNumbersDto' examples: response: summary: Test number states description: |2- Test number states. value: testNumbers: - number: '+46123123111' state: UNVERIFIED submitted: '2023-01-19t13:11:08.204Z' - number: '+46123123222' state: VERIFIED submitted: '2023-01-19t13:11:08.204Z' - number: '+46123123333' state: DECLINED submitted: '2023-01-19t13:11:08.204Z' '400': description: BadRequest content: application/json: schema: oneOf: - title: InvalidInputErrorTitle properties: errorCode: type: string title: invalid_input example: invalid_input description: Error code allows to programatically handle errors. message: type: string title: Invalid input. example: Invalid input. description: Human readable message. resolution: type: string title: Correct the validation errors and submit again. example: Correct the validation errors and submit again. description: Human readable message with an explanation of how to solve the error. additionalInformation: type: object title: additionalInformation example: validationErrors: - each value in testNumbers must be a string description: Additional information for error. - title: NoGoogleSupplierErrorTitle properties: errorCode: type: string title: no_google_supplier example: no_google_supplier description: Error code allows to programatically handle errors. message: type: string title: No google supplier in sender. example: No google supplier in sender. description: Human readable message. resolution: type: string title: Verify that the sender has google supplier. example: Verify that the sender has google supplier. description: Human readable message with an explanation of how to solve the error. - title: AddTestNumberInvalidErrorTitle properties: errorCode: type: string title: add_test_number_invalid example: add_test_number_invalid description: Error code allows to programatically handle errors. message: type: string title: Invalid phone number. example: Invalid phone number. description: Human readable message. resolution: type: string title: Please verify that phone number is correct. example: Please verify that phone number is correct. description: Human readable message with an explanation of how to solve the error. - title: InvalidIdFormatErrorTitle properties: errorCode: type: string title: invalid_id_format example: invalid_id_format description: Error code allows to programatically handle errors. message: type: string title: Id is not in the expected format. example: Id is not in the expected format. description: Human readable message. resolution: type: string title: senderId param is in the wrong format. Confirm that you're sending the correct value. example: senderId param is in the wrong format. Confirm that you're sending the correct value. description: Human readable message with an explanation of how to solve the error. '401': description: Unauthorized content: application/json: schema: example: errorCode: unauthorized_error message: Unauthorized error. resolution: Verify that projectId is correct. title: UnauthorizedErrorErrorTitle properties: errorCode: type: string title: unauthorized_error example: unauthorized_error description: Error code allows to programatically handle errors. message: type: string title: Unauthorized error. example: Unauthorized error. description: Human readable message. resolution: type: string title: Verify that projectId is correct. example: Verify that projectId is correct. description: Human readable message with an explanation of how to solve the error. '404': description: NotFound content: application/json: schema: oneOf: - title: ProjectNotFoundErrorTitle properties: errorCode: type: string title: project_not_found example: project_not_found description: Error code allows to programatically handle errors. message: type: string title: Project not found. example: Project not found. description: Human readable message. resolution: type: string title: Verify that the projectId is correct. example: Verify that the projectId is correct. description: Human readable message with an explanation of how to solve the error. - title: SenderNotFoundErrorTitle properties: errorCode: type: string title: sender_not_found example: sender_not_found description: Error code allows to programatically handle errors. message: type: string title: Sender not found. example: Sender not found. description: Human readable message. resolution: type: string title: Verify that the parameters are correct. example: Verify that the parameters are correct. description: Human readable message with an explanation of how to solve the error. - title: AddTestNumberNotAllowedBeforeLaunchErrorTitle properties: errorCode: type: string title: add_test_number_not_allowed_before_launch example: add_test_number_not_allowed_before_launch description: Error code allows to programatically handle errors. message: type: string title: Adding test number not allowed before launch. example: Adding test number not allowed before launch. description: Human readable message. resolution: type: string title: Carrier does not allow test number to be created prior to sender launch. example: Carrier does not allow test number to be created prior to sender launch. description: Human readable message with an explanation of how to solve the error. '429': description: TooManyRequests content: application/json: schema: example: errorCode: rbm_too_many_requests message: RCS Business Messaging too many requests. resolution: Please wait and try again. title: RbmTooManyRequestsErrorTitle properties: errorCode: type: string title: rbm_too_many_requests example: rbm_too_many_requests description: Error code allows to programatically handle errors. message: type: string title: RCS Business Messaging too many requests. example: RCS Business Messaging too many requests. description: Human readable message. resolution: type: string title: Please wait and try again. example: Please wait and try again. description: Human readable message with an explanation of how to solve the error. '500': description: InternalServerError content: application/json: schema: example: errorCode: internal_error message: Internal server error. resolution: Please wait and try again, if the error persist please contact support. title: InternalErrorErrorTitle properties: errorCode: type: string title: internal_error example: internal_error description: Error code allows to programatically handle errors. message: type: string title: Internal server error. example: Internal server error. description: Human readable message. resolution: type: string title: Please wait and try again, if the error persist please contact support. example: Please wait and try again, if the error persist please contact support. description: Human readable message with an explanation of how to solve the error. summary: Add test numbers to sender for project tags: - RCS Senders x-tagAfterOperationSummary: color: white background: green label: GA /v1/projects/{projectId}/rcs/senders/{senderId}/testNumbers/{testNumber}: delete: description: |2- Deletes test number for the sender. Please note that this method is only able to delete test number for the sender in Sinch database, in order to delete it from Google agent you need to use Google console. operationId: SendersController_deleteTestNumber_v1 parameters: - name: projectId required: true in: path description: The unique ID of the project. You can find this on the Sinch Dashboard. schema: type: string - name: senderId required: true in: path description: The unique ID of the sender. schema: type: string - name: testNumber required: true in: path description: the user's phone number in E.164 format. For example, for a user with the US phone number +1-222-333-4444, the resulting parameter is '+12223334444'. schema: type: string responses: '204': description: Test number deleted '400': description: BadRequest content: application/json: schema: oneOf: - title: NoGoogleSupplierErrorTitle properties: errorCode: type: string title: no_google_supplier example: no_google_supplier description: Error code allows to programatically handle errors. message: type: string title: No google supplier in sender. example: No google supplier in sender. description: Human readable message. resolution: type: string title: Verify that the sender has google supplier. example: Verify that the sender has google supplier. description: Human readable message with an explanation of how to solve the error. - title: InvalidIdFormatErrorTitle properties: errorCode: type: string title: invalid_id_format example: invalid_id_format description: Error code allows to programatically handle errors. message: type: string title: Id is not in the expected format. example: Id is not in the expected format. description: Human readable message. resolution: type: string title: senderId param is in the wrong format. Confirm that you're sending the correct value. example: senderId param is in the wrong format. Confirm that you're sending the correct value. description: Human readable message with an explanation of how to solve the error. '401': description: Unauthorized content: application/json: schema: example: errorCode: unauthorized_error message: Unauthorized error. resolution: Verify that projectId is correct. title: UnauthorizedErrorErrorTitle properties: errorCode: type: string title: unauthorized_error example: unauthorized_error description: Error code allows to programatically handle errors. message: type: string title: Unauthorized error. example: Unauthorized error. description: Human readable message. resolution: type: string title: Verify that projectId is correct. example: Verify that projectId is correct. description: Human readable message with an explanation of how to solve the error. '404': description: NotFound content: application/json: schema: oneOf: - title: SenderNotFoundErrorTitle properties: errorCode: type: string title: sender_not_found example: sender_not_found description: Error code allows to programatically handle errors. message: type: string title: Sender not found. example: Sender not found. description: Human readable message. resolution: type: string title: Verify that the parameters are correct. example: Verify that the parameters are correct. description: Human readable message with an explanation of how to solve the error. - title: UserIsNotTesterForAgentErrorTitle properties: errorCode: type: string title: user_is_not_tester_for_agent example: user_is_not_tester_for_agent description: Error code allows to programatically handle errors. message: type: string title: Test number not found. example: Test number not found. description: Human readable message. resolution: type: string title: Add test number to agent. example: Add test number to agent. description: Human readable message with an explanation of how to solve the error. '429': description: TooManyRequests content: application/json: schema: example: errorCode: rbm_too_many_requests message: RCS Business Messaging too many requests. resolution: Please wait and try again. title: RbmTooManyRequestsErrorTitle properties: errorCode: type: string title: rbm_too_many_requests example: rbm_too_many_requests description: Error code allows to programatically handle errors. message: type: string title: RCS Business Messaging too many requests. example: RCS Business Messaging too many requests. description: Human readable message. resolution: type: string title: Please wait and try again. example: Please wait and try again. description: Human readable message with an explanation of how to solve the error. '500': description: InternalServerError content: application/json: schema: example: errorCode: internal_error message: Internal server error. resolution: Please wait and try again, if the error persist please contact support. title: InternalErrorErrorTitle properties: errorCode: type: string title: internal_error example: internal_error description: Error code allows to programatically handle errors. message: type: string title: Internal server error. example: Internal server error. description: Human readable message. resolution: type: string title: Please wait and try again, if the error persist please contact support. example: Please wait and try again, if the error persist please contact support. description: Human readable message with an explanation of how to solve the error. summary: Deletes test number for the sender tags: - RCS Senders x-tagAfterOperationSummary: color: white background: green label: GA /v1/projects/{projectId}/rcs/senders/{senderId}/testNumbers/{testNumber}/capabilities: get: description: |2- Returns test number capabilities of sender for a project. operationId: SendersController_getTestNumberCapabilities_v1 parameters: - name: projectId required: true in: path description: The unique ID of the project. You can find this on the Sinch Dashboard. schema: type: string - name: senderId required: true in: path description: The unique ID of the sender. schema: type: string - name: testNumber required: true in: path description: the user's phone number in E.164 format. For example, for a user with the US phone number +1-222-333-4444, the resulting parameter is '+12223334444'. schema: type: string responses: '200': description: test number capabilities content: application/json: schema: $ref: '#/components/schemas/RcsTestNumberCapabilitiesDto' examples: response: summary: Get response description: |2- Response with test number capabilities. value: features: - REVOCATION - ACTION_DIAL '400': description: BadRequest content: application/json: schema: oneOf: - title: NoGoogleSupplierErrorTitle properties: errorCode: type: string title: no_google_supplier example: no_google_supplier description: Error code allows to programatically handle errors. message: type: string title: No google supplier in sender. example: No google supplier in sender. description: Human readable message. resolution: type: string title: Verify that the sender has google supplier. example: Verify that the sender has google supplier. description: Human readable message with an explanation of how to solve the error. - title: InvalidIdFormatErrorTitle properties: errorCode: type: string title: invalid_id_format example: invalid_id_format description: Error code allows to programatically handle errors. message: type: string title: Id is not in the expected format. example: Id is not in the expected format. description: Human readable message. resolution: type: string title: senderId param is in the wrong format. Confirm that you're sending the correct value. example: senderId param is in the wrong format. Confirm that you're sending the correct value. description: Human readable message with an explanation of how to solve the error. '401': description: Unauthorized content: application/json: schema: example: errorCode: unauthorized_error message: Unauthorized error. resolution: Verify that projectId is correct. title: UnauthorizedErrorErrorTitle properties: errorCode: type: string title: unauthorized_error example: unauthorized_error description: Error code allows to programatically handle errors. message: type: string title: Unauthorized error. example: Unauthorized error. description: Human readable message. resolution: type: string title: Verify that projectId is correct. example: Verify that projectId is correct. description: Human readable message with an explanation of how to solve the error. '403': description: Forbidden content: application/json: schema: example: errorCode: wrong_supplier_configuration message: Wrong supplier configuration is used, configuration needs to be setup via SI team resolution: Please reach out to support at si-richmessaging@sinch.com title: WrongSupplierConfigurationErrorTitle properties: errorCode: type: string title: wrong_supplier_configuration example: wrong_supplier_configuration description: Error code allows to programatically handle errors. message: type: string title: Wrong supplier configuration is used, configuration needs to be setup via SI team example: Wrong supplier configuration is used, configuration needs to be setup via SI team description: Human readable message. resolution: type: string title: Please reach out to support at si-richmessaging@sinch.com example: Please reach out to support at si-richmessaging@sinch.com description: Human readable message with an explanation of how to solve the error. '404': description: NotFound content: application/json: schema: oneOf: - title: SenderNotFoundErrorTitle properties: errorCode: type: string title: sender_not_found example: sender_not_found description: Error code allows to programatically handle errors. message: type: string title: Sender not found. example: Sender not found. description: Human readable message. resolution: type: string title: Verify that the parameters are correct. example: Verify that the parameters are correct. description: Human readable message with an explanation of how to solve the error. - title: UserIsNotTesterForAgentErrorTitle properties: errorCode: type: string title: user_is_not_tester_for_agent example: user_is_not_tester_for_agent description: Error code allows to programatically handle errors. message: type: string title: Test number not found. example: Test number not found. description: Human readable message. resolution: type: string title: Add test number to agent. example: Add test number to agent. description: Human readable message with an explanation of how to solve the error. - title: UserCannotBeReachedErrorTitle properties: errorCode: type: string title: user_cannot_be_reached example: user_cannot_be_reached description: Error code allows to programatically handle errors. message: type: string title: message example: message description: Human readable message. resolution: type: string title: Verify that the user has RCS feature available. example: Verify that the user has RCS feature available. description: Human readable message with an explanation of how to solve the error. - title: UserIsNotTesterForAgentErrorTitle properties: errorCode: type: string title: user_is_not_tester_for_agent example: user_is_not_tester_for_agent description: Error code allows to programatically handle errors. message: type: string title: message example: message description: Human readable message. resolution: type: string title: Add user as tester to agent. example: Add user as tester to agent. description: Human readable message with an explanation of how to solve the error. '429': description: TooManyRequests content: application/json: schema: example: errorCode: rbm_too_many_requests message: RCS Business Messaging too many requests. resolution: Please wait and try again. title: RbmTooManyRequestsErrorTitle properties: errorCode: type: string title: rbm_too_many_requests example: rbm_too_many_requests description: Error code allows to programatically handle errors. message: type: string title: RCS Business Messaging too many requests. example: RCS Business Messaging too many requests. description: Human readable message. resolution: type: string title: Please wait and try again. example: Please wait and try again. description: Human readable message with an explanation of how to solve the error. '500': description: InternalServerError content: application/json: schema: example: errorCode: internal_error message: Internal server error. resolution: Please wait and try again, if the error persist please contact support. title: InternalErrorErrorTitle properties: errorCode: type: string title: internal_error example: internal_error description: Error code allows to programatically handle errors. message: type: string title: Internal server error. example: Internal server error. description: Human readable message. resolution: type: string title: Please wait and try again, if the error persist please contact support. example: Please wait and try again, if the error persist please contact support. description: Human readable message with an explanation of how to solve the error. summary: Get test number capabilities of sender for project tags: - RCS Senders x-tagAfterOperationSummary: color: white background: green label: GA /v1/projects/{projectId}/rcs/senders/{senderId}/testNumbers/{testNumber}/retry: get: description: |2- Resend an invite and returns state for test number of sender for a project. operationId: SendersController_retryTestNumber_v1 parameters: - name: projectId required: true in: path description: The unique ID of the project. You can find this on the Sinch Dashboard. schema: type: string - name: senderId required: true in: path description: The unique ID of the sender. schema: type: string - name: testNumber required: true in: path description: the user's phone number in E.164 format. For example, for a user with the US phone number +1-222-333-4444, the resulting parameter is '+12223334444'. schema: type: string responses: '200': description: test number state content: application/json: schema: $ref: '#/components/schemas/RcsTestNumberStateDto' examples: response: summary: Get response description: |2- Response with test number state. Please note that if you send an invite to verified number, state will be changed to unverified. value: number: '+46123123111' state: UNVERIFIED submitted: '2023-01-19t13:11:08.204Z' '400': description: BadRequest content: application/json: schema: oneOf: - title: NoGoogleSupplierErrorTitle properties: errorCode: type: string title: no_google_supplier example: no_google_supplier description: Error code allows to programatically handle errors. message: type: string title: No google supplier in sender. example: No google supplier in sender. description: Human readable message. resolution: type: string title: Verify that the sender has google supplier. example: Verify that the sender has google supplier. description: Human readable message with an explanation of how to solve the error. - title: InvalidIdFormatErrorTitle properties: errorCode: type: string title: invalid_id_format example: invalid_id_format description: Error code allows to programatically handle errors. message: type: string title: Id is not in the expected format. example: Id is not in the expected format. description: Human readable message. resolution: type: string title: senderId param is in the wrong format. Confirm that you're sending the correct value. example: senderId param is in the wrong format. Confirm that you're sending the correct value. description: Human readable message with an explanation of how to solve the error. '401': description: Unauthorized content: application/json: schema: example: errorCode: unauthorized_error message: Unauthorized error. resolution: Verify that projectId is correct. title: UnauthorizedErrorErrorTitle properties: errorCode: type: string title: unauthorized_error example: unauthorized_error description: Error code allows to programatically handle errors. message: type: string title: Unauthorized error. example: Unauthorized error. description: Human readable message. resolution: type: string title: Verify that projectId is correct. example: Verify that projectId is correct. description: Human readable message with an explanation of how to solve the error. '404': description: NotFound content: application/json: schema: oneOf: - title: SenderNotFoundErrorTitle properties: errorCode: type: string title: sender_not_found example: sender_not_found description: Error code allows to programatically handle errors. message: type: string title: Sender not found. example: Sender not found. description: Human readable message. resolution: type: string title: Verify that the parameters are correct. example: Verify that the parameters are correct. description: Human readable message with an explanation of how to solve the error. - title: UserIsNotTesterForAgentErrorTitle properties: errorCode: type: string title: user_is_not_tester_for_agent example: user_is_not_tester_for_agent description: Error code allows to programatically handle errors. message: type: string title: Test number not found. example: Test number not found. description: Human readable message. resolution: type: string title: Add test number to agent. example: Add test number to agent. description: Human readable message with an explanation of how to solve the error. - title: AddTestNumberNotAllowedBeforeLaunchErrorTitle properties: errorCode: type: string title: add_test_number_not_allowed_before_launch example: add_test_number_not_allowed_before_launch description: Error code allows to programatically handle errors. message: type: string title: Adding test number not allowed before launch. example: Adding test number not allowed before launch. description: Human readable message. resolution: type: string title: Carrier does not allow test number to be created prior to sender launch. example: Carrier does not allow test number to be created prior to sender launch. description: Human readable message with an explanation of how to solve the error. '429': description: TooManyRequests content: application/json: schema: example: errorCode: rbm_too_many_requests message: RCS Business Messaging too many requests. resolution: Please wait and try again. title: RbmTooManyRequestsErrorTitle properties: errorCode: type: string title: rbm_too_many_requests example: rbm_too_many_requests description: Error code allows to programatically handle errors. message: type: string title: RCS Business Messaging too many requests. example: RCS Business Messaging too many requests. description: Human readable message. resolution: type: string title: Please wait and try again. example: Please wait and try again. description: Human readable message with an explanation of how to solve the error. '500': description: InternalServerError content: application/json: schema: example: errorCode: internal_error message: Internal server error. resolution: Please wait and try again, if the error persist please contact support. title: InternalErrorErrorTitle properties: errorCode: type: string title: internal_error example: internal_error description: Error code allows to programatically handle errors. message: type: string title: Internal server error. example: Internal server error. description: Human readable message. resolution: type: string title: Please wait and try again, if the error persist please contact support. example: Please wait and try again, if the error persist please contact support. description: Human readable message with an explanation of how to solve the error. summary: Resend an invite to test number of sender for project tags: - RCS Senders x-tagAfterOperationSummary: color: white background: green label: GA /v1/projects/{projectId}/rcs/upscales: get: description: |2- Returns a paginated list of all upscales. If no page token is supplied then the first `100` will be returned. operationId: UpscalesController_listUpscales_v1 parameters: - name: projectId required: true in: path description: The unique ID of the project. You can find this on the Sinch Dashboard. schema: type: string - name: pageToken required: false in: query schema: type: string description: The page token if retrieving the next page from a previous query. - name: pageSize required: false in: query schema: type: number minimum: 1 maximum: 9007199254740991 description: The page size requested. - name: filterRcsSenderIds required: false in: query description: Optional query for upscale by rcs sender ids. schema: type: string - name: filterSmsAppIds required: false in: query description: Optional query for upscale by sms app ids. schema: type: string - name: filterSmsCodes required: false in: query description: Optional query for upscale by alphanumerics. schema: type: string - name: filterSmsNumberIds required: false in: query description: Optional query for upscale by sms number ids. schema: type: string - name: filterStates required: false in: query description: Optional query for upscale by states. schema: type: array items: $ref: '#/components/schemas/RcsPublicUpscaleStatesEnum' responses: '200': description: List of upscales content: application/json: schema: $ref: '#/components/schemas/RcsRcsUpscaleListDto' examples: response: summary: List response description: |2- Response with upscales. value: totalSize: 2 pageSize: 100 upscales: - id: 680b477a26719c7071035135 details: rcs: senderId: 8304cda1-c293-4353-a4c3-b7d615ef49d9 sms: type: NUMERIC numberId: c8a79e31acc647e69b861f1cd4c4fd33 smsAppId: 68f2d4f6df0c40c3a605ae531ee83904 details: number: '+48777777777' countryCode: PL numberType: LONG_NUMBER convApp: appId: 02JSEZCZTCKGBFFJWATQCQKCY5 countryCode: PL state: UPSCALING created: '2025-07-21T07:57:04.091Z' updated: '2025-07-21T07:57:04.091Z' - id: 680b477a26719c7071035135 details: rcs: senderId: 8304cda1-c293-4353-a4c3-b7d615ef49d9 sms: numberId: c8a79e31acc647e69b861f1cd4c4fd33 smsAppId: 68f2d4f6df0c40c3a605ae531ee83904 details: number: '+48777777777' countryCode: PL numberType: LONG_NUMBER convApp: appId: 02JSEZCZTCKGBFFJWATQCQKCY5 countryCode: PL state: UPSCALING created: '2025-07-21T07:57:04.091Z' updated: '2025-07-21T07:57:04.091Z' '400': description: BadRequest content: application/json: schema: oneOf: - title: UpscaleInvalidStateErrorTitle properties: errorCode: type: string title: upscale_invalid_state example: upscale_invalid_state description: Error code allows to programatically handle errors. message: type: string title: Invalid state. example: Invalid state. description: Human readable message. resolution: type: string title: Use the supported values for the states parameter. example: Use the supported values for the states parameter. description: Human readable message with an explanation of how to solve the error. additionalInformation: type: object title: additionalInformation example: supportedValues: DOWNSCALING, DOWNSCALING_FAILED, UPSCALED, UPSCALING, UPSCALING_FAILED description: Additional information for error. - title: InvalidPageTokenErrorTitle properties: errorCode: type: string title: invalid_page_token example: invalid_page_token description: Error code allows to programatically handle errors. message: type: string title: Invalid page token. example: Invalid page token. description: Human readable message. resolution: type: string title: The page token to use is provided in the previous query response, for new queries simply leave this field undefined. example: The page token to use is provided in the previous query response, for new queries simply leave this field undefined. description: Human readable message with an explanation of how to solve the error. - title: InvalidPageSizeErrorTitle properties: errorCode: type: string title: invalid_page_size example: invalid_page_size description: Error code allows to programatically handle errors. message: type: string title: Page size must be numeric. example: Page size must be numeric. description: Human readable message. resolution: type: string title: Use a integer value for pageSize parameter. example: Use a integer value for pageSize parameter. description: Human readable message with an explanation of how to solve the error. '401': description: Unauthorized content: application/json: schema: example: errorCode: unauthorized_error message: Unauthorized error. resolution: Verify that projectId is correct. title: UnauthorizedErrorErrorTitle properties: errorCode: type: string title: unauthorized_error example: unauthorized_error description: Error code allows to programatically handle errors. message: type: string title: Unauthorized error. example: Unauthorized error. description: Human readable message. resolution: type: string title: Verify that projectId is correct. example: Verify that projectId is correct. description: Human readable message with an explanation of how to solve the error. '500': description: InternalServerError content: application/json: schema: example: errorCode: internal_error message: Internal server error. resolution: Please wait and try again, if the error persist please contact support. title: InternalErrorErrorTitle properties: errorCode: type: string title: internal_error example: internal_error description: Error code allows to programatically handle errors. message: type: string title: Internal server error. example: Internal server error. description: Human readable message. resolution: type: string title: Please wait and try again, if the error persist please contact support. example: Please wait and try again, if the error persist please contact support. description: Human readable message with an explanation of how to solve the error. summary: List all upscales tags: - RCS Upscales x-tagAfterOperationSummary: color: white background: orange label: Open Beta post: description: |2- Returns a upscale. operationId: UpscalesController_createUpscale_v1 parameters: - name: projectId required: true in: path description: The unique ID of the project. You can find this on the Sinch Dashboard. schema: type: string requestBody: required: true description: Upscale data content: application/json: schema: $ref: '#/components/schemas/RcsInputRcsUpscaleDto' examples: numeric: summary: Numeric body request for upscale description: |2- Example numeric body request to create a upscale. value: details: rcs: senderId: 8304cda1-c293-4353-a4c3-b7d615ef49d9 sms: type: NUMERIC numberId: c8a79e31acc647e69b861f1cd4c4fd33 countryCode: PL deprecated: summary: Deprecated body request for upscale description: |2- Example deprecated body request to create a upscale. value: details: rcs: senderId: 8304cda1-c293-4353-a4c3-b7d615ef49d9 sms: numberId: c8a79e31acc647e69b861f1cd4c4fd33 countryCode: PL responses: '201': description: Upscale content: application/json: schema: $ref: '#/components/schemas/RcsRcsUpscaleDto' examples: numeric: summary: Create response for sms numeric description: |2- Response when successfully creating a sms numeric upscale. value: id: 680b477a26719c7071035135 details: rcs: senderId: 8304cda1-c293-4353-a4c3-b7d615ef49d9 sms: type: NUMERIC numberId: c8a79e31acc647e69b861f1cd4c4fd33 smsAppId: 68f2d4f6df0c40c3a605ae531ee83904 details: number: '+48777777777' countryCode: PL numberType: LONG_NUMBER convApp: appId: 02JSEZCZTCKGBFFJWATQCQKCY5 countryCode: PL state: UPSCALING created: '2025-07-21T07:57:04.091Z' updated: '2025-07-21T07:57:04.091Z' deprecated: summary: Create response for sms deprecated description: |2- Response when successfully creating a sms deprecated upscale. value: id: 680b477a26719c7071035135 details: rcs: senderId: 8304cda1-c293-4353-a4c3-b7d615ef49d9 sms: numberId: c8a79e31acc647e69b861f1cd4c4fd33 smsAppId: 68f2d4f6df0c40c3a605ae531ee83904 details: number: '+48777777777' countryCode: PL numberType: LONG_NUMBER convApp: appId: 02JSEZCZTCKGBFFJWATQCQKCY5 countryCode: PL state: UPSCALING created: '2025-07-21T07:57:04.091Z' updated: '2025-07-21T07:57:04.091Z' '400': description: BadRequest content: application/json: schema: example: errorCode: invalid_input message: Invalid input. resolution: Correct the validation errors and submit again. additionalInformation: validationErrors: - details.rcs.sender must be uuid title: InvalidInputErrorTitle properties: errorCode: type: string title: invalid_input example: invalid_input description: Error code allows to programatically handle errors. message: type: string title: Invalid input. example: Invalid input. description: Human readable message. resolution: type: string title: Correct the validation errors and submit again. example: Correct the validation errors and submit again. description: Human readable message with an explanation of how to solve the error. additionalInformation: type: object title: additionalInformation example: validationErrors: - details.rcs.sender must be uuid description: Additional information for error. '401': description: Unauthorized content: application/json: schema: example: errorCode: unauthorized_error message: Unauthorized error. resolution: Verify that projectId is correct. title: UnauthorizedErrorErrorTitle properties: errorCode: type: string title: unauthorized_error example: unauthorized_error description: Error code allows to programatically handle errors. message: type: string title: Unauthorized error. example: Unauthorized error. description: Human readable message. resolution: type: string title: Verify that projectId is correct. example: Verify that projectId is correct. description: Human readable message with an explanation of how to solve the error. '403': description: Forbidden content: application/json: schema: oneOf: - title: IncorrectRcsSenderStateErrorTitle properties: errorCode: type: string title: incorrect_rcs_sender_state example: incorrect_rcs_sender_state description: Error code allows to programatically handle errors. message: type: string title: Incorrect RCS sender state. example: Incorrect RCS sender state. description: Human readable message. resolution: type: string title: 'RCS sender must be in state: `IN_TEST`, `LAUNCHED`, `LAUNCHING` or `PREPARING_LAUNCH`.' example: 'RCS sender must be in state: `IN_TEST`, `LAUNCHED`, `LAUNCHING` or `PREPARING_LAUNCH`.' description: Human readable message with an explanation of how to solve the error. - title: IncorrectNumberStatusErrorTitle properties: errorCode: type: string title: incorrect-number-status example: incorrect-number-status description: Error code allows to programatically handle errors. message: type: string title: Incorrect number status. example: Incorrect number status. description: Human readable message. resolution: type: string title: 'Number must be in status: `ACTIVE`.' example: 'Number must be in status: `ACTIVE`.' description: Human readable message with an explanation of how to solve the error. - title: IncorrectSmsAppStatusErrorTitle properties: errorCode: type: string title: incorrect-sms-app-status example: incorrect-sms-app-status description: Error code allows to programatically handle errors. message: type: string title: Incorrect smsApp status. example: Incorrect smsApp status. description: Human readable message. resolution: type: string title: 'SmsApp must be in status: `ACTIVE`.' example: 'SmsApp must be in status: `ACTIVE`.' description: Human readable message with an explanation of how to solve the error. - title: SmsNumberIsAlreadyUpscaledErrorTitle properties: errorCode: type: string title: sms_number_is_already_upscaled example: sms_number_is_already_upscaled description: Error code allows to programatically handle errors. message: type: string title: Sms number is already upscaled. example: Sms number is already upscaled. description: Human readable message. resolution: type: string title: Please check if sms numberId is correct. example: Please check if sms numberId is correct. description: Human readable message with an explanation of how to solve the error. - title: SmsCodeIsAlreadyUpscaledErrorTitle properties: errorCode: type: string title: sms_code_is_already_upscaled example: sms_code_is_already_upscaled description: Error code allows to programatically handle errors. message: type: string title: Sms code is already upscaled. example: Sms code is already upscaled. description: Human readable message. resolution: type: string title: Please check if sms code is correct. example: Please check if sms code is correct. description: Human readable message with an explanation of how to solve the error. - title: RcsSenderIsAlreadyUpscaledErrorTitle properties: errorCode: type: string title: rcs_sender_is_already_upscaled example: rcs_sender_is_already_upscaled description: Error code allows to programatically handle errors. message: type: string title: RCS sender is already upscaled. example: RCS sender is already upscaled. description: Human readable message. resolution: type: string title: Please check if rcs senderId is correct. example: Please check if rcs senderId is correct. description: Human readable message with an explanation of how to solve the error. - title: NotSupportedCountryCodeErrorTitle properties: errorCode: type: string title: not_supported_country_code example: not_supported_country_code description: Error code allows to programatically handle errors. message: type: string title: Not supported country code. example: Not supported country code. description: Human readable message. resolution: type: string title: CountryCode must be one of `AT`, `BE`, `BR`, `CA`, `CZ`, `DE`, `DK`, `ES`, `FR`, `GB`, `IT`, `MX`, `NL`, `NO`, `PL`, `PT`, `SE`, `SG`, `SK`, `US` or `UNRECOGNIZED`. example: CountryCode must be one of `AT`, `BE`, `BR`, `CA`, `CZ`, `DE`, `DK`, `ES`, `FR`, `GB`, `IT`, `MX`, `NL`, `NO`, `PL`, `PT`, `SE`, `SG`, `SK`, `US` or `UNRECOGNIZED`. description: Human readable message with an explanation of how to solve the error. - title: NotSupportedSmsAppRegionErrorTitle properties: errorCode: type: string title: not_supported_sms_app_region example: not_supported_sms_app_region description: Error code allows to programatically handle errors. message: type: string title: Not supported smsApp region. example: Not supported smsApp region. description: Human readable message. resolution: type: string title: SmsApp region must contain one of `AU`, `BR`, `CA`, `EU`, `US` or `UNRECOGNIZED`. example: SmsApp region must contain one of `AU`, `BR`, `CA`, `EU`, `US` or `UNRECOGNIZED`. description: Human readable message with an explanation of how to solve the error. - title: NotAllowedSharedShortCodeNumberErrorTitle properties: errorCode: type: string title: not_allowed_shared_short_code_number example: not_allowed_shared_short_code_number description: Error code allows to programatically handle errors. message: type: string title: Not allowed shared short code number. example: Not allowed shared short code number. description: Human readable message. resolution: type: string title: Short code must be dedicated. example: Short code must be dedicated. description: Human readable message with an explanation of how to solve the error. '404': description: NotFound content: application/json: schema: oneOf: - title: NumberNotFoundErrorTitle properties: errorCode: type: string title: number_not_found example: number_not_found description: Error code allows to programatically handle errors. message: type: string title: Number not found. example: Number not found. description: Human readable message. resolution: type: string title: Verify that the numberId is correct. example: Verify that the numberId is correct. description: Human readable message with an explanation of how to solve the error. - title: SmsAppNotFoundErrorTitle properties: errorCode: type: string title: sms_app_not_found example: sms_app_not_found description: Error code allows to programatically handle errors. message: type: string title: SmsApp not found. example: SmsApp not found. description: Human readable message. resolution: type: string title: Verify that the appId is correct. example: Verify that the appId is correct. description: Human readable message with an explanation of how to solve the error. - title: SenderNotFoundErrorTitle properties: errorCode: type: string title: sender_not_found example: sender_not_found description: Error code allows to programatically handle errors. message: type: string title: Sender not found. example: Sender not found. description: Human readable message. resolution: type: string title: Verify that the parameters are correct. example: Verify that the parameters are correct. description: Human readable message with an explanation of how to solve the error. - title: ProjectNotFoundErrorTitle properties: errorCode: type: string title: project_not_found example: project_not_found description: Error code allows to programatically handle errors. message: type: string title: Project not found. example: Project not found. description: Human readable message. resolution: type: string title: Verify that the projectId is correct. example: Verify that the projectId is correct. description: Human readable message with an explanation of how to solve the error. '409': description: Conflict content: application/json: schema: oneOf: - title: ConvAppNotConfiguredForRcsSenderErrorTitle properties: errorCode: type: string title: conv_app_not_configured_for_rcs_sender example: conv_app_not_configured_for_rcs_sender description: Error code allows to programatically handle errors. message: type: string title: ConvApp not configured for RCS sender. example: ConvApp not configured for RCS sender. description: Human readable message. resolution: type: string title: Please configure convApp for rcsSender. example: Please configure convApp for rcsSender. description: Human readable message with an explanation of how to solve the error. - title: SmsAppConvAppRegionsMismatchErrorTitle properties: errorCode: type: string title: sms-app-conv-app-regions-mismatch example: sms-app-conv-app-regions-mismatch description: Error code allows to programatically handle errors. message: type: string title: SmsApp region need to be supported for upscaling supported by convApp region. example: SmsApp region need to be supported for upscaling supported by convApp region. description: Human readable message. resolution: type: string title: Select a ConvApp with a region that supports upscaling your selected SmsApp. example: Select a ConvApp with a region that supports upscaling your selected SmsApp. description: Human readable message with an explanation of how to solve the error. - title: IncorrectNumberCountryCodeErrorTitle properties: errorCode: type: string title: incorrect_number_country_code example: incorrect_number_country_code description: Error code allows to programatically handle errors. message: type: string title: Incorrect number country code. example: Incorrect number country code. description: Human readable message. resolution: type: string title: CountryCode must be the same as number country code. example: CountryCode must be the same as number country code. description: Human readable message with an explanation of how to solve the error. - title: IncorrectRcsSenderCountryCodeErrorTitle properties: errorCode: type: string title: incorrect_rcs_sender_country_code example: incorrect_rcs_sender_country_code description: Error code allows to programatically handle errors. message: type: string title: Incorrect RCS sender country code. example: Incorrect RCS sender country code. description: Human readable message. resolution: type: string title: RCS sender must contains provided countryCode. example: RCS sender must contains provided countryCode. description: Human readable message with an explanation of how to solve the error. '500': description: InternalServerError content: application/json: schema: example: errorCode: internal_error message: Internal server error. resolution: Please wait and try again, if the error persist please contact support. title: InternalErrorErrorTitle properties: errorCode: type: string title: internal_error example: internal_error description: Error code allows to programatically handle errors. message: type: string title: Internal server error. example: Internal server error. description: Human readable message. resolution: type: string title: Please wait and try again, if the error persist please contact support. example: Please wait and try again, if the error persist please contact support. description: Human readable message with an explanation of how to solve the error. summary: Create upscale tags: - RCS Upscales x-tagAfterOperationSummary: color: white background: orange label: Open Beta /v1/projects/{projectId}/rcs/upscales/{upscaleId}: get: description: |2- Returns a upscale. operationId: UpscalesController_getUpscale_v1 parameters: - name: projectId required: true in: path description: The unique ID of the project. You can find this on the Sinch Dashboard. schema: type: string - name: upscaleId required: true in: path description: The unique ID of the upscale schema: type: string responses: '200': description: Upscale content: application/json: schema: $ref: '#/components/schemas/RcsRcsUpscaleDto' examples: numeric: summary: Get response for sms numeric description: |2- Response with a sms numeric upscale. value: id: 680b477a26719c7071035135 details: rcs: senderId: 8304cda1-c293-4353-a4c3-b7d615ef49d9 sms: type: NUMERIC numberId: c8a79e31acc647e69b861f1cd4c4fd33 smsAppId: 68f2d4f6df0c40c3a605ae531ee83904 details: number: '+48777777777' countryCode: PL numberType: LONG_NUMBER convApp: appId: 02JSEZCZTCKGBFFJWATQCQKCY5 countryCode: PL state: UPSCALING created: '2025-07-21T07:57:04.091Z' updated: '2025-07-21T07:57:04.091Z' deprecated: summary: Get response for sms deprecated description: |2- Response with a sms deprecated upscale. value: id: 680b477a26719c7071035135 details: rcs: senderId: 8304cda1-c293-4353-a4c3-b7d615ef49d9 sms: numberId: c8a79e31acc647e69b861f1cd4c4fd33 smsAppId: 68f2d4f6df0c40c3a605ae531ee83904 details: number: '+48777777777' countryCode: PL numberType: LONG_NUMBER convApp: appId: 02JSEZCZTCKGBFFJWATQCQKCY5 countryCode: PL state: UPSCALING created: '2025-07-21T07:57:04.091Z' updated: '2025-07-21T07:57:04.091Z' '400': description: BadRequest content: application/json: schema: example: errorCode: invalid_id_format message: Id is not in the expected format. resolution: upscaleId param is in the wrong format. Confirm that you're sending the correct value. title: InvalidIdFormatErrorTitle properties: errorCode: type: string title: invalid_id_format example: invalid_id_format description: Error code allows to programatically handle errors. message: type: string title: Id is not in the expected format. example: Id is not in the expected format. description: Human readable message. resolution: type: string title: upscaleId param is in the wrong format. Confirm that you're sending the correct value. example: upscaleId param is in the wrong format. Confirm that you're sending the correct value. description: Human readable message with an explanation of how to solve the error. '401': description: Unauthorized content: application/json: schema: example: errorCode: unauthorized_error message: Unauthorized error. resolution: Verify that projectId is correct. title: UnauthorizedErrorErrorTitle properties: errorCode: type: string title: unauthorized_error example: unauthorized_error description: Error code allows to programatically handle errors. message: type: string title: Unauthorized error. example: Unauthorized error. description: Human readable message. resolution: type: string title: Verify that projectId is correct. example: Verify that projectId is correct. description: Human readable message with an explanation of how to solve the error. '404': description: NotFound content: application/json: schema: example: errorCode: upscale_not_found message: Upscale not found. resolution: Verify that the parameters are correct. title: UpscaleNotFoundErrorTitle properties: errorCode: type: string title: upscale_not_found example: upscale_not_found description: Error code allows to programatically handle errors. message: type: string title: Upscale not found. example: Upscale not found. description: Human readable message. resolution: type: string title: Verify that the parameters are correct. example: Verify that the parameters are correct. description: Human readable message with an explanation of how to solve the error. '500': description: InternalServerError content: application/json: schema: example: errorCode: internal_error message: Internal server error. resolution: Please wait and try again, if the error persist please contact support. title: InternalErrorErrorTitle properties: errorCode: type: string title: internal_error example: internal_error description: Error code allows to programatically handle errors. message: type: string title: Internal server error. example: Internal server error. description: Human readable message. resolution: type: string title: Please wait and try again, if the error persist please contact support. example: Please wait and try again, if the error persist please contact support. description: Human readable message with an explanation of how to solve the error. summary: Get upscale tags: - RCS Upscales x-tagAfterOperationSummary: color: white background: orange label: Open Beta delete: description: |2- Delete upscale. operationId: UpscalesController_deleteUpscale_v1 parameters: - name: projectId required: true in: path description: The unique ID of the project. You can find this on the Sinch Dashboard. schema: type: string - name: upscaleId required: true in: path description: The unique ID of the upscale schema: type: string responses: '204': description: Upscale deleted '400': description: BadRequest content: application/json: schema: example: errorCode: invalid_id_format message: Id is not in the expected format. resolution: upscaleId param is in the wrong format. Confirm that you're sending the correct value. title: InvalidIdFormatErrorTitle properties: errorCode: type: string title: invalid_id_format example: invalid_id_format description: Error code allows to programatically handle errors. message: type: string title: Id is not in the expected format. example: Id is not in the expected format. description: Human readable message. resolution: type: string title: upscaleId param is in the wrong format. Confirm that you're sending the correct value. example: upscaleId param is in the wrong format. Confirm that you're sending the correct value. description: Human readable message with an explanation of how to solve the error. '401': description: Unauthorized content: application/json: schema: example: errorCode: unauthorized_error message: Unauthorized error. resolution: Verify that projectId is correct. title: UnauthorizedErrorErrorTitle properties: errorCode: type: string title: unauthorized_error example: unauthorized_error description: Error code allows to programatically handle errors. message: type: string title: Unauthorized error. example: Unauthorized error. description: Human readable message. resolution: type: string title: Verify that projectId is correct. example: Verify that projectId is correct. description: Human readable message with an explanation of how to solve the error. '404': description: NotFound content: application/json: schema: example: errorCode: upscale_not_found message: Upscale not found. resolution: Verify that the parameters are correct. title: UpscaleNotFoundErrorTitle properties: errorCode: type: string title: upscale_not_found example: upscale_not_found description: Error code allows to programatically handle errors. message: type: string title: Upscale not found. example: Upscale not found. description: Human readable message. resolution: type: string title: Verify that the parameters are correct. example: Verify that the parameters are correct. description: Human readable message with an explanation of how to solve the error. '409': description: Conflict content: application/json: schema: example: errorCode: upscale_not_deletable message: Upscale is not deletable. resolution: Only `UPSCALED`, `UPSCALING` or `UPSCALING_FAILED` upscales can be deleted. title: UpscaleNotDeletableErrorTitle properties: errorCode: type: string title: upscale_not_deletable example: upscale_not_deletable description: Error code allows to programatically handle errors. message: type: string title: Upscale is not deletable. example: Upscale is not deletable. description: Human readable message. resolution: type: string title: Only `UPSCALED`, `UPSCALING` or `UPSCALING_FAILED` upscales can be deleted. example: Only `UPSCALED`, `UPSCALING` or `UPSCALING_FAILED` upscales can be deleted. description: Human readable message with an explanation of how to solve the error. '500': description: InternalServerError content: application/json: schema: example: errorCode: internal_error message: Internal server error. resolution: Please wait and try again, if the error persist please contact support. title: InternalErrorErrorTitle properties: errorCode: type: string title: internal_error example: internal_error description: Error code allows to programatically handle errors. message: type: string title: Internal server error. example: Internal server error. description: Human readable message. resolution: type: string title: Please wait and try again, if the error persist please contact support. example: Please wait and try again, if the error persist please contact support. description: Human readable message with an explanation of how to solve the error. summary: Delete upscale tags: - RCS Upscales x-tagAfterOperationSummary: color: white background: orange label: Open Beta /v1/projects/{projectId}/rcs/upscales/{upscaleId}/retry: post: description: |2- Retry upscale. operationId: UpscalesController_retryUpscale_v1 parameters: - name: projectId required: true in: path description: The unique ID of the project. You can find this on the Sinch Dashboard. schema: type: string - name: upscaleId required: true in: path description: The unique ID of the upscale schema: type: string responses: '204': description: Upscale retried '400': description: BadRequest content: application/json: schema: example: errorCode: invalid_id_format message: Id is not in the expected format. resolution: upscaleId param is in the wrong format. Confirm that you're sending the correct value. title: InvalidIdFormatErrorTitle properties: errorCode: type: string title: invalid_id_format example: invalid_id_format description: Error code allows to programatically handle errors. message: type: string title: Id is not in the expected format. example: Id is not in the expected format. description: Human readable message. resolution: type: string title: upscaleId param is in the wrong format. Confirm that you're sending the correct value. example: upscaleId param is in the wrong format. Confirm that you're sending the correct value. description: Human readable message with an explanation of how to solve the error. '401': description: Unauthorized content: application/json: schema: example: errorCode: unauthorized_error message: Unauthorized error. resolution: Verify that projectId is correct. title: UnauthorizedErrorErrorTitle properties: errorCode: type: string title: unauthorized_error example: unauthorized_error description: Error code allows to programatically handle errors. message: type: string title: Unauthorized error. example: Unauthorized error. description: Human readable message. resolution: type: string title: Verify that projectId is correct. example: Verify that projectId is correct. description: Human readable message with an explanation of how to solve the error. '404': description: NotFound content: application/json: schema: example: errorCode: upscale_not_found message: Upscale not found. resolution: Verify that the parameters are correct. title: UpscaleNotFoundErrorTitle properties: errorCode: type: string title: upscale_not_found example: upscale_not_found description: Error code allows to programatically handle errors. message: type: string title: Upscale not found. example: Upscale not found. description: Human readable message. resolution: type: string title: Verify that the parameters are correct. example: Verify that the parameters are correct. description: Human readable message with an explanation of how to solve the error. '409': description: Conflict content: application/json: schema: example: errorCode: upscale_not_retryable message: Upscale is not retryable. resolution: Only `DOWNSCALING_FAILED` or `UPSCALING_FAILED` upscales can be retried. title: UpscaleNotRetryableErrorTitle properties: errorCode: type: string title: upscale_not_retryable example: upscale_not_retryable description: Error code allows to programatically handle errors. message: type: string title: Upscale is not retryable. example: Upscale is not retryable. description: Human readable message. resolution: type: string title: Only `DOWNSCALING_FAILED` or `UPSCALING_FAILED` upscales can be retried. example: Only `DOWNSCALING_FAILED` or `UPSCALING_FAILED` upscales can be retried. description: Human readable message with an explanation of how to solve the error. '500': description: InternalServerError content: application/json: schema: example: errorCode: internal_error message: Internal server error. resolution: Please wait and try again, if the error persist please contact support. title: InternalErrorErrorTitle properties: errorCode: type: string title: internal_error example: internal_error description: Error code allows to programatically handle errors. message: type: string title: Internal server error. example: Internal server error. description: Human readable message. resolution: type: string title: Please wait and try again, if the error persist please contact support. example: Please wait and try again, if the error persist please contact support. description: Human readable message with an explanation of how to solve the error. summary: Retry upscale tags: - RCS Upscales x-tagAfterOperationSummary: color: white background: orange label: Open Beta /v1/projects/{projectId}/rcs/upscaleSenders: get: description: |2- Returns a paginated list of senders for the specified project. If no page token is supplied then the first `50` will be returned. operationId: UpscaleSendersController_listUpscaleSenders_v1 parameters: - name: projectId required: true in: path description: The unique ID of the project. You can find this on the Sinch Dashboard. schema: type: string - name: pageToken required: false in: query schema: type: string description: The page token if retrieving the next page from a previous query. - name: pageSize required: false in: query schema: type: number minimum: 1 maximum: 100 description: The page size requested. - name: filterConversationApiAppId required: false in: query description: Optional query for sender by Conversation API app id. schema: type: string - name: filterSenderIds required: false in: query description: Optional query for sender by sender ids. schema: type: string - name: filterSenderName required: false in: query description: Optional query for sender by name. schema: type: string - name: filterStates required: false in: query description: Optionally query for sender by states. schema: type: array items: $ref: '#/components/schemas/RcsSenderStatesEnum' - name: sortColumn required: false in: query description: Optional query for sender sort column. schema: $ref: '#/components/schemas/RcsSenderSortColumnsEnum' - name: sortDirection required: false in: query description: Optional query for sender sort direction. schema: $ref: '#/components/schemas/RcsSortDirectionsEnum' responses: '200': description: List of senders with upscale information content: application/json: schema: $ref: '#/components/schemas/RcsUpscaleSenderListDto' examples: response: summary: List response description: |2- Response with senders. value: totalSize: 2 pageSize: 50 senders: - id: cf11794a-6a5e-4a12-b103-da79bd378bf1 state: PREPARING_LAUNCH testNumberStates: - number: '+46123123111' state: UNVERIFIED submitted: '2023-01-19t13:11:08.204Z' - number: '+46123123222' state: VERIFIED submitted: '2023-01-19t13:11:08.204Z' - number: '+46123123333' state: DECLINED submitted: '2023-01-19t13:11:08.204Z' countryStatus: - country: FR status: NOT_LAUNCHED operators: - name: Coriolis Telecom status: NOT_LAUNCHED modified: '2023-01-19t13:11:08.204Z' - name: Lycamobile status: NOT_LAUNCHED modified: '2023-01-19t13:11:08.204Z' - name: Bouygues status: NOT_LAUNCHED modified: '2023-01-19t13:11:08.204Z' - name: Free status: NOT_LAUNCHED modified: '2023-01-19t13:11:08.204Z' - name: NRJ Mobile status: NOT_LAUNCHED modified: '2023-01-19t13:11:08.204Z' - name: SFR status: NOT_LAUNCHED modified: '2023-01-19t13:11:08.204Z' - name: Orange status: NOT_LAUNCHED modified: '2023-01-19t13:11:08.204Z' - country: GB status: NOT_LAUNCHED operators: - name: EE status: NOT_LAUNCHED modified: '2023-01-19t13:11:08.204Z' - name: Three status: NOT_LAUNCHED modified: '2023-01-19t13:11:08.204Z' - name: Sky status: NOT_LAUNCHED modified: '2023-01-19t13:11:08.204Z' - name: O2 status: NOT_LAUNCHED modified: '2023-01-19t13:11:08.204Z' - name: Vodafone status: NOT_LAUNCHED modified: '2023-01-19t13:11:08.204Z' - country: SE status: NOT_LAUNCHED operators: - name: Tele2 status: NOT_LAUNCHED modified: '2023-01-19t13:11:08.204Z' - name: Telenor status: NOT_LAUNCHED modified: '2023-01-19t13:11:08.204Z' - name: Telia status: NOT_LAUNCHED modified: '2023-01-19t13:11:08.204Z' - name: Three status: NOT_LAUNCHED modified: '2023-01-19t13:11:08.204Z' details: brand: emails: - label: label address: test@test.com - label: label-1 address: test-1@test.com - label: label-2 address: test-2@test.com phones: - label: label number: +48 777-777-777 - label: label-1 number: '48888888888' - label: label-2 number: +48 999-999-999 websites: - label: label url: https://example.com - label: label-1 url: https://example-1.com - label: label-2 url: https://example-2.com color: '#000000' description: Test description bannerUrl: https://example-banner-url.com logoUrl: https://example-logo-url.com privacyPolicyUrl: https://example-private-policy-url.com termsOfServiceUrl: https://example-terms-of-service-url.com name: Test name testNumbers: - +48 777-777-777 countries: - FR - GB - SE questionnaire: general: questions: optInDescription: question: How do users agree to receive messages from your business through the agent? suggestedAnswers: - By subscribing to our loyalty program - By making a purchase in-store or online - By subscribing to a newsletter - By creating an account on our website or app triggerDescription: question: When does your business send messages to users through the agent? suggestedAnswers: - User actions (e.g. after making a purchase) interactionsDescription: question: How will users interact with your business through the agent? suggestedAnswers: - Online Payment - Password reset - OTP/2FA for account login optOutDescription: question: What message does your business send when a user opts out? suggestedAnswers: - Thank you for opting out - Thank you for unsubscribing - We have registered your opt out request videoUris: question: '' suggestedAnswers: [] screenshotUris: question: '' suggestedAnswers: [] answers: optInDescription: By subscribing to a newsletter triggerDescription: User actions (e.g. after making a purchase) interactionsDescription: Billing or payment reminders,aef Order updates,aef Upon package delivery interactionsDescriptionMetadata: ignore: ',aef' optOutDescription: We have registered your opt out request videoUris: - https://example-video-url.com screenshotUris: - https://example-screenshot-url.com verification: questions: name: question: What is the name of your verification contact? suggestedAnswers: [] email: question: What is the email of your verification contact? suggestedAnswers: [] title: question: What is the title of your verification contact? suggestedAnswers: [] website: question: What is the website of your verification contact? suggestedAnswers: [] answers: name: Exam Ple email: email@example.com title: Head Example website: https://example.com gb: questions: brandIndustry: question: What sector or industry does your business operate in? suggestedAnswers: - Automotive - Beauty, spa and salon - Clothing - Education - Entertainment - Event planning and service - Finance and banking - Food and groceries - Public service - Hotel and lodging - Medical and health - Charity - Professional services - Shopping and retail - Travel and transportation - Restaurant companyLegalName: question: What is the registered legal name of your company? suggestedAnswers: [] companyRegistrationNumber: question: What is the registration number of your company? suggestedAnswers: [] fullCompanyAddress: question: Full Company Address suggestedAnswers: [] messagesVolume: question: What is the total volume of messages expected to be sent by your agent? suggestedAnswers: - 0 - 10K messages - 10K - 100K messages - 100K - 1M messages - 1M+ messages messagesFrequency: question: How often do you expect to send messages? suggestedAnswers: - Once per day - Once per week - Once per month - Once per 3 months - Once per 6 months campaignLength: question: What will be the length of the RCS campaign? suggestedAnswers: - 1 day or less - 2 to 7 days - 8 to 21 days - 1 month - 3 months - 6 months - Continuous / ongoing answers: brandIndustry: Automotive companyLegalName: Example company legal name companyRegistrationNumber: 123-123456789 fullCompanyAddress: Skeppsbron 1 Malmö, 123 12, Sweden messagesVolume: 10K - 100K messages messagesFrequency: Once per month fr: questions: fullCompanyAddress: question: Full Company Address suggestedAnswers: [] usersAmount: question: How many users are your agent expected to reach? suggestedAnswers: - 0 - 1K users - 1K - 10K users - 10k - 100K users - 100K+ users startDate: question: When will your agent start sending messages to your users? suggestedAnswers: - Today - In a week - In a month - Within 3 months siren: question: What is your Company directory identification system number (SIREN)? suggestedAnswers: [] answers: fullCompanyAddress: Skeppsbron 1-split-211 20-split-Malmö fullCompanyAddressMetadata: ignore: '-split-' siren: '123456789' region: EU billingCategory: BASIC_MESSAGE useCase: OTP hostingRegion: EUROPE authName: yurwN6123asd authToken: ejiiqJtDyurwN6jLze8v conversationApiApp: 4CF9CE97504C4A468F4610919D17ECC1 conversationApiAppDetails: id: 4CF9CE97504C4A468F4610919D17ECC1 projectId: ea026751-3edf-40a9-ad93-1b382bd60a78 region: EU created: '2023-01-19t13:11:08.204Z' modified: '2023-01-19t13:11:08.204Z' launched: '2023-01-19t13:11:08.204Z' supplierDetails: google: agentId: agentId isUpscaled: false - id: cf11794a-6a5e-4a12-b103-da79bd378bf1 state: LAUNCHING testNumberStates: - number: '+46123123111' state: UNVERIFIED submitted: '2023-01-19t13:11:08.204Z' - number: '+46123123222' state: VERIFIED submitted: '2023-01-19t13:11:08.204Z' - number: '+46123123333' state: DECLINED submitted: '2023-01-19t13:11:08.204Z' countryStatus: - country: FR status: NOT_LAUNCHED operators: - name: Coriolis Telecom status: NOT_LAUNCHED modified: '2023-01-19t13:11:08.204Z' - name: Lycamobile status: NOT_LAUNCHED modified: '2023-01-19t13:11:08.204Z' - name: Bouygues status: NOT_LAUNCHED modified: '2023-01-19t13:11:08.204Z' - name: Free status: NOT_LAUNCHED modified: '2023-01-19t13:11:08.204Z' - name: NRJ Mobile status: NOT_LAUNCHED modified: '2023-01-19t13:11:08.204Z' - name: SFR status: NOT_LAUNCHED modified: '2023-01-19t13:11:08.204Z' - name: Orange status: NOT_LAUNCHED modified: '2023-01-19t13:11:08.204Z' - country: GB status: NOT_LAUNCHED operators: - name: EE status: NOT_LAUNCHED modified: '2023-01-19t13:11:08.204Z' - name: Three status: NOT_LAUNCHED modified: '2023-01-19t13:11:08.204Z' - name: Sky status: NOT_LAUNCHED modified: '2023-01-19t13:11:08.204Z' - name: O2 status: NOT_LAUNCHED modified: '2023-01-19t13:11:08.204Z' - name: Vodafone status: NOT_LAUNCHED modified: '2023-01-19t13:11:08.204Z' - country: SE status: NOT_LAUNCHED operators: - name: Tele2 status: NOT_LAUNCHED modified: '2023-01-19t13:11:08.204Z' - name: Telenor status: NOT_LAUNCHED modified: '2023-01-19t13:11:08.204Z' - name: Telia status: NOT_LAUNCHED modified: '2023-01-19t13:11:08.204Z' - name: Three status: NOT_LAUNCHED modified: '2023-01-19t13:11:08.204Z' details: brand: emails: - label: label address: test@test.com - label: label-1 address: test-1@test.com - label: label-2 address: test-2@test.com phones: - label: label number: +48 777-777-777 - label: label-1 number: '48888888888' - label: label-2 number: +48 999-999-999 websites: - label: label url: https://example.com - label: label-1 url: https://example-1.com - label: label-2 url: https://example-2.com color: '#000000' description: Test description bannerUrl: https://example-banner-url.com logoUrl: https://example-logo-url.com privacyPolicyUrl: https://example-private-policy-url.com termsOfServiceUrl: https://example-terms-of-service-url.com name: Test name testNumbers: - +48 777-777-777 countries: - FR - GB - SE questionnaire: general: questions: optInDescription: question: How do users agree to receive messages from your business through the agent? suggestedAnswers: - By subscribing to our loyalty program - By making a purchase in-store or online - By subscribing to a newsletter - By creating an account on our website or app triggerDescription: question: When does your business send messages to users through the agent? suggestedAnswers: - User actions (e.g. after making a purchase) interactionsDescription: question: How will users interact with your business through the agent? suggestedAnswers: - Online Payment - Password reset - OTP/2FA for account login optOutDescription: question: What message does your business send when a user opts out? suggestedAnswers: - Thank you for opting out - Thank you for unsubscribing - We have registered your opt out request videoUris: question: '' suggestedAnswers: [] screenshotUris: question: '' suggestedAnswers: [] answers: optInDescription: By subscribing to a newsletter triggerDescription: User actions (e.g. after making a purchase) interactionsDescription: Billing or payment reminders,aef Order updates,aef Upon package delivery interactionsDescriptionMetadata: ignore: ',aef' optOutDescription: We have registered your opt out request videoUris: - https://example-video-url.com screenshotUris: - https://example-screenshot-url.com verification: questions: name: question: What is the name of your verification contact? suggestedAnswers: [] email: question: What is the email of your verification contact? suggestedAnswers: [] title: question: What is the title of your verification contact? suggestedAnswers: [] website: question: What is the website of your verification contact? suggestedAnswers: [] answers: name: Exam Ple email: email@example.com title: Head Example website: https://example.com gb: questions: brandIndustry: question: What sector or industry does your business operate in? suggestedAnswers: - Automotive - Beauty, spa and salon - Clothing - Education - Entertainment - Event planning and service - Finance and banking - Food and groceries - Public service - Hotel and lodging - Medical and health - Charity - Professional services - Shopping and retail - Travel and transportation - Restaurant companyLegalName: question: What is the registered legal name of your company? suggestedAnswers: [] companyRegistrationNumber: question: What is the registration number of your company? suggestedAnswers: [] fullCompanyAddress: question: Full Company Address suggestedAnswers: [] messagesVolume: question: What is the total volume of messages expected to be sent by your agent? suggestedAnswers: - 0 - 10K messages - 10K - 100K messages - 100K - 1M messages - 1M+ messages messagesFrequency: question: How often do you expect to send messages? suggestedAnswers: - Once per day - Once per week - Once per month - Once per 3 months - Once per 6 months campaignLength: question: What will be the length of the RCS campaign? suggestedAnswers: - 1 day or less - 2 to 7 days - 8 to 21 days - 1 month - 3 months - 6 months - Continuous / ongoing answers: brandIndustry: Automotive companyLegalName: Example company legal name companyRegistrationNumber: 123-123456789 fullCompanyAddress: Skeppsbron 1 Malmö, 123 12, Sweden messagesVolume: 10K - 100K messages messagesFrequency: Once per month fr: questions: fullCompanyAddress: question: Full Company Address suggestedAnswers: [] usersAmount: question: How many users are your agent expected to reach? suggestedAnswers: - 0 - 1K users - 1K - 10K users - 10k - 100K users - 100K+ users startDate: question: When will your agent start sending messages to your users? suggestedAnswers: - Today - In a week - In a month - Within 3 months siren: question: What is your Company directory identification system number (SIREN)? suggestedAnswers: [] answers: fullCompanyAddress: Skeppsbron 1-split-211 20-split-Malmö fullCompanyAddressMetadata: ignore: '-split-' siren: '123456789' region: EU billingCategory: BASIC_MESSAGE useCase: OTP hostingRegion: EUROPE authName: yurwN6123asd authToken: ejiiqJtDyurwN6jLze8v conversationApiApp: 4CF9CE97504C4A468F4610919D17ECC1 conversationApiAppDetails: id: 4CF9CE97504C4A468F4610919D17ECC1 projectId: ea026751-3edf-40a9-ad93-1b382bd60a78 region: EU created: '2023-01-19t13:11:08.204Z' modified: '2023-01-19t13:11:08.204Z' launched: '2023-01-19t13:11:08.204Z' supplierDetails: google: agentId: agentId isUpscaled: false '400': description: BadRequest content: application/json: schema: oneOf: - title: InvalidPageTokenErrorTitle properties: errorCode: type: string title: invalid_page_token example: invalid_page_token description: Error code allows to programatically handle errors. message: type: string title: Invalid page token. example: Invalid page token. description: Human readable message. resolution: type: string title: The page token to use is provided in the previous query response, for new queries simply leave this field undefined. example: The page token to use is provided in the previous query response, for new queries simply leave this field undefined. description: Human readable message with an explanation of how to solve the error. - title: InvalidPageSizeErrorTitle properties: errorCode: type: string title: invalid_page_size example: invalid_page_size description: Error code allows to programatically handle errors. message: type: string title: Page size must be numeric. example: Page size must be numeric. description: Human readable message. resolution: type: string title: Use a integer value for pageSize parameter. example: Use a integer value for pageSize parameter. description: Human readable message with an explanation of how to solve the error. - title: InvalidFilterStatesErrorTitle properties: errorCode: type: string title: invalid_filter_states example: invalid_filter_states description: Error code allows to programatically handle errors. message: type: string title: Invalid filterStates. example: Invalid filterStates. description: Human readable message. resolution: type: string title: Verify that the filterStates used are supported by the Provisioning API. example: Verify that the filterStates used are supported by the Provisioning API. description: Human readable message with an explanation of how to solve the error. additionalInformation: type: object title: additionalInformation example: supportedCodes: DRAFT, IN_PROGRESS, IN_TEST, LAUNCHED, LAUNCHING, PREPARING_LAUNCH, UNLAUNCHED, UNKNOWN description: Additional information for error. '401': description: Unauthorized content: application/json: schema: oneOf: - title: UnauthorizedErrorErrorTitle properties: errorCode: type: string title: unauthorized_error example: unauthorized_error description: Error code allows to programatically handle errors. message: type: string title: Unauthorized error. example: Unauthorized error. description: Human readable message. resolution: type: string title: Verify that projectId is correct. example: Verify that projectId is correct. description: Human readable message with an explanation of how to solve the error. - title: UnauthorizedErrorErrorTitle properties: errorCode: type: string title: unauthorized_error example: unauthorized_error description: Error code allows to programatically handle errors. message: type: string title: Unauthorized error. example: Unauthorized error. description: Human readable message. resolution: type: string title: Verify that projectId is correct. example: Verify that projectId is correct. description: Human readable message with an explanation of how to solve the error. '403': description: Forbidden content: application/json: schema: example: errorCode: rbm_has_not_been_used message: RBM has not been used. resolution: Please wait and try again or reach out to support at si-richmessaging@sinch.com title: RbmHasNotBeenUsedErrorTitle properties: errorCode: type: string title: rbm_has_not_been_used example: rbm_has_not_been_used description: Error code allows to programatically handle errors. message: type: string title: RBM has not been used. example: RBM has not been used. description: Human readable message. resolution: type: string title: Please wait and try again or reach out to support at si-richmessaging@sinch.com example: Please wait and try again or reach out to support at si-richmessaging@sinch.com description: Human readable message with an explanation of how to solve the error. '429': description: TooManyRequests content: application/json: schema: example: errorCode: rbm_too_many_requests message: RCS Business Messaging too many requests. resolution: Please wait and try again. title: RbmTooManyRequestsErrorTitle properties: errorCode: type: string title: rbm_too_many_requests example: rbm_too_many_requests description: Error code allows to programatically handle errors. message: type: string title: RCS Business Messaging too many requests. example: RCS Business Messaging too many requests. description: Human readable message. resolution: type: string title: Please wait and try again. example: Please wait and try again. description: Human readable message with an explanation of how to solve the error. '500': description: InternalServerError content: application/json: schema: oneOf: - title: InternalErrorErrorTitle properties: errorCode: type: string title: internal_error example: internal_error description: Error code allows to programatically handle errors. message: type: string title: Internal server error. example: Internal server error. description: Human readable message. resolution: type: string title: Please wait and try again, if the error persist please contact support. example: Please wait and try again, if the error persist please contact support. description: Human readable message with an explanation of how to solve the error. - title: InternalErrorErrorTitle properties: errorCode: type: string title: internal_error example: internal_error description: Error code allows to programatically handle errors. message: type: string title: Internal server error. example: Internal server error. description: Human readable message. resolution: type: string title: Please wait and try again, if the error persist please contact support. example: Please wait and try again, if the error persist please contact support. description: Human readable message with an explanation of how to solve the error. summary: List all senders in project with upscale information tags: - RCS Upscale Senders x-tagAfterOperationSummary: color: white background: green label: GA /v1/projects/{projectId}/rcs/upscaleSenders/{senderId}: get: description: |2- Returns a sender for a project. operationId: UpscaleSendersController_getUpscaleSender_v1 parameters: - name: projectId required: true in: path description: The unique ID of the project. You can find this on the Sinch Dashboard. schema: type: string - name: senderId required: true in: path description: The unique ID of the sender. schema: type: string responses: '200': description: Sender with upscale information content: application/json: schema: $ref: '#/components/schemas/RcsUpscaleSenderDto' examples: response: summary: Get response description: |2- Response with a sender. value: id: cf11794a-6a5e-4a12-b103-da79bd378bf1 state: IN_TEST testNumberStates: - number: '+46123123111' state: UNVERIFIED submitted: '2023-01-19t13:11:08.204Z' - number: '+46123123222' state: VERIFIED submitted: '2023-01-19t13:11:08.204Z' - number: '+46123123333' state: DECLINED submitted: '2023-01-19t13:11:08.204Z' countryStatus: - country: FR status: NOT_LAUNCHED operators: - name: Coriolis Telecom status: NOT_LAUNCHED modified: '2023-01-19t13:11:08.204Z' - name: Lycamobile status: NOT_LAUNCHED modified: '2023-01-19t13:11:08.204Z' - name: Bouygues status: NOT_LAUNCHED modified: '2023-01-19t13:11:08.204Z' - name: Free status: NOT_LAUNCHED modified: '2023-01-19t13:11:08.204Z' - name: NRJ Mobile status: NOT_LAUNCHED modified: '2023-01-19t13:11:08.204Z' - name: SFR status: NOT_LAUNCHED modified: '2023-01-19t13:11:08.204Z' - name: Orange status: NOT_LAUNCHED modified: '2023-01-19t13:11:08.204Z' - country: GB status: NOT_LAUNCHED operators: - name: EE status: NOT_LAUNCHED modified: '2023-01-19t13:11:08.204Z' - name: Three status: NOT_LAUNCHED modified: '2023-01-19t13:11:08.204Z' - name: Sky status: NOT_LAUNCHED modified: '2023-01-19t13:11:08.204Z' - name: O2 status: NOT_LAUNCHED modified: '2023-01-19t13:11:08.204Z' - name: Vodafone status: NOT_LAUNCHED modified: '2023-01-19t13:11:08.204Z' - country: SE status: NOT_LAUNCHED operators: - name: Tele2 status: NOT_LAUNCHED modified: '2023-01-19t13:11:08.204Z' - name: Telenor status: NOT_LAUNCHED modified: '2023-01-19t13:11:08.204Z' - name: Telia status: NOT_LAUNCHED modified: '2023-01-19t13:11:08.204Z' - name: Three status: NOT_LAUNCHED modified: '2023-01-19t13:11:08.204Z' details: brand: emails: - label: label address: test@test.com - label: label-1 address: test-1@test.com - label: label-2 address: test-2@test.com phones: - label: label number: +48 777-777-777 - label: label-1 number: '48888888888' - label: label-2 number: +48 999-999-999 websites: - label: label url: https://example.com - label: label-1 url: https://example-1.com - label: label-2 url: https://example-2.com color: '#000000' description: Test description bannerUrl: https://example-banner-url.com logoUrl: https://example-logo-url.com privacyPolicyUrl: https://example-private-policy-url.com termsOfServiceUrl: https://example-terms-of-service-url.com name: Test name testNumbers: - +48 777-777-777 countries: - FR - GB - SE questionnaire: general: questions: optInDescription: question: How do users agree to receive messages from your business through the agent? suggestedAnswers: - By subscribing to our loyalty program - By making a purchase in-store or online - By subscribing to a newsletter - By creating an account on our website or app triggerDescription: question: When does your business send messages to users through the agent? suggestedAnswers: - User actions (e.g. after making a purchase) interactionsDescription: question: How will users interact with your business through the agent? suggestedAnswers: - Online Payment - Password reset - OTP/2FA for account login optOutDescription: question: What message does your business send when a user opts out? suggestedAnswers: - Thank you for opting out - Thank you for unsubscribing - We have registered your opt out request videoUris: question: '' suggestedAnswers: [] screenshotUris: question: '' suggestedAnswers: [] answers: optInDescription: By subscribing to a newsletter triggerDescription: User actions (e.g. after making a purchase) interactionsDescription: Billing or payment reminders,aef Order updates,aef Upon package delivery interactionsDescriptionMetadata: ignore: ',aef' optOutDescription: We have registered your opt out request videoUris: - https://example-video-url.com screenshotUris: - https://example-screenshot-url.com verification: questions: name: question: What is the name of your verification contact? suggestedAnswers: [] email: question: What is the email of your verification contact? suggestedAnswers: [] title: question: What is the title of your verification contact? suggestedAnswers: [] website: question: What is the website of your verification contact? suggestedAnswers: [] answers: name: Exam Ple email: email@example.com title: Head Example website: https://example.com gb: questions: brandIndustry: question: What sector or industry does your business operate in? suggestedAnswers: - Automotive - Beauty, spa and salon - Clothing - Education - Entertainment - Event planning and service - Finance and banking - Food and groceries - Public service - Hotel and lodging - Medical and health - Charity - Professional services - Shopping and retail - Travel and transportation - Restaurant companyLegalName: question: What is the registered legal name of your company? suggestedAnswers: [] companyRegistrationNumber: question: What is the registration number of your company? suggestedAnswers: [] fullCompanyAddress: question: Full Company Address suggestedAnswers: [] messagesVolume: question: What is the total volume of messages expected to be sent by your agent? suggestedAnswers: - 0 - 10K messages - 10K - 100K messages - 100K - 1M messages - 1M+ messages messagesFrequency: question: How often do you expect to send messages? suggestedAnswers: - Once per day - Once per week - Once per month - Once per 3 months - Once per 6 months campaignLength: question: What will be the length of the RCS campaign? suggestedAnswers: - 1 day or less - 2 to 7 days - 8 to 21 days - 1 month - 3 months - 6 months - Continuous / ongoing answers: brandIndustry: Automotive companyLegalName: Example company legal name companyRegistrationNumber: 123-123456789 fullCompanyAddress: Skeppsbron 1 Malmö, 123 12, Sweden messagesVolume: 10K - 100K messages messagesFrequency: Once per month fr: questions: fullCompanyAddress: question: Full Company Address suggestedAnswers: [] usersAmount: question: How many users are your agent expected to reach? suggestedAnswers: - 0 - 1K users - 1K - 10K users - 10k - 100K users - 100K+ users startDate: question: When will your agent start sending messages to your users? suggestedAnswers: - Today - In a week - In a month - Within 3 months siren: question: What is your Company directory identification system number (SIREN)? suggestedAnswers: [] answers: fullCompanyAddress: Skeppsbron 1-split-211 20-split-Malmö fullCompanyAddressMetadata: ignore: '-split-' siren: '123456789' region: EU billingCategory: BASIC_MESSAGE useCase: OTP hostingRegion: EUROPE authName: yurwN6123asd authToken: ejiiqJtDyurwN6jLze8v conversationApiApp: 4CF9CE97504C4A468F4610919D17ECC1 conversationApiAppDetails: id: 4CF9CE97504C4A468F4610919D17ECC1 projectId: ea026751-3edf-40a9-ad93-1b382bd60a78 region: EU created: '2023-01-19t13:11:08.204Z' modified: '2023-01-19t13:11:08.204Z' launched: '2023-01-19t13:11:08.204Z' supplierDetails: google: agentId: agentId isUpscaled: false '400': description: BadRequest content: application/json: schema: example: errorCode: invalid_id_format message: Id is not in the expected format. resolution: senderId param is in the wrong format. Confirm that you're sending the correct value. title: InvalidIdFormatErrorTitle properties: errorCode: type: string title: invalid_id_format example: invalid_id_format description: Error code allows to programatically handle errors. message: type: string title: Id is not in the expected format. example: Id is not in the expected format. description: Human readable message. resolution: type: string title: senderId param is in the wrong format. Confirm that you're sending the correct value. example: senderId param is in the wrong format. Confirm that you're sending the correct value. description: Human readable message with an explanation of how to solve the error. '401': description: Unauthorized content: application/json: schema: oneOf: - title: UnauthorizedErrorErrorTitle properties: errorCode: type: string title: unauthorized_error example: unauthorized_error description: Error code allows to programatically handle errors. message: type: string title: Unauthorized error. example: Unauthorized error. description: Human readable message. resolution: type: string title: Verify that projectId is correct. example: Verify that projectId is correct. description: Human readable message with an explanation of how to solve the error. - title: UnauthorizedErrorErrorTitle properties: errorCode: type: string title: unauthorized_error example: unauthorized_error description: Error code allows to programatically handle errors. message: type: string title: Unauthorized error. example: Unauthorized error. description: Human readable message. resolution: type: string title: Verify that projectId is correct. example: Verify that projectId is correct. description: Human readable message with an explanation of how to solve the error. '403': description: Forbidden content: application/json: schema: example: errorCode: rbm_has_not_been_used message: RBM has not been used. resolution: Please wait and try again or reach out to support at si-richmessaging@sinch.com title: RbmHasNotBeenUsedErrorTitle properties: errorCode: type: string title: rbm_has_not_been_used example: rbm_has_not_been_used description: Error code allows to programatically handle errors. message: type: string title: RBM has not been used. example: RBM has not been used. description: Human readable message. resolution: type: string title: Please wait and try again or reach out to support at si-richmessaging@sinch.com example: Please wait and try again or reach out to support at si-richmessaging@sinch.com description: Human readable message with an explanation of how to solve the error. '404': description: NotFound content: application/json: schema: example: errorCode: sender_not_found message: Sender not found. resolution: Verify that the parameters are correct. title: SenderNotFoundErrorTitle properties: errorCode: type: string title: sender_not_found example: sender_not_found description: Error code allows to programatically handle errors. message: type: string title: Sender not found. example: Sender not found. description: Human readable message. resolution: type: string title: Verify that the parameters are correct. example: Verify that the parameters are correct. description: Human readable message with an explanation of how to solve the error. '429': description: TooManyRequests content: application/json: schema: example: errorCode: rbm_too_many_requests message: RCS Business Messaging too many requests. resolution: Please wait and try again. title: RbmTooManyRequestsErrorTitle properties: errorCode: type: string title: rbm_too_many_requests example: rbm_too_many_requests description: Error code allows to programatically handle errors. message: type: string title: RCS Business Messaging too many requests. example: RCS Business Messaging too many requests. description: Human readable message. resolution: type: string title: Please wait and try again. example: Please wait and try again. description: Human readable message with an explanation of how to solve the error. '500': description: InternalServerError content: application/json: schema: oneOf: - title: InternalErrorErrorTitle properties: errorCode: type: string title: internal_error example: internal_error description: Error code allows to programatically handle errors. message: type: string title: Internal server error. example: Internal server error. description: Human readable message. resolution: type: string title: Please wait and try again, if the error persist please contact support. example: Please wait and try again, if the error persist please contact support. description: Human readable message with an explanation of how to solve the error. - title: InternalErrorErrorTitle properties: errorCode: type: string title: internal_error example: internal_error description: Error code allows to programatically handle errors. message: type: string title: Internal server error. example: Internal server error. description: Human readable message. resolution: type: string title: Please wait and try again, if the error persist please contact support. example: Please wait and try again, if the error persist please contact support. description: Human readable message with an explanation of how to solve the error. summary: Get sender for project with upscale information tags: - RCS Upscale Senders x-tagAfterOperationSummary: color: white background: green label: GA components: securitySchemes: BasicAuth: type: http scheme: basic BearerAuth: type: http scheme: bearer bearerFormat: JWT schemas: WebhookWebhookTriggers: type: string enum: - ALL - BUNDLE_DONE - KAKAOTALK_SENDER_ACTIVE - KAKAOTALK_SENDER_COMMENT_ADDED - KAKAOTALK_SENDER_INACTIVE - KAKAOTALK_SENDER_REJECTED - KAKAOTALK_TEMPLATE_APPROVED - KAKAOTALK_TEMPLATE_COMMENT_ADDED - KAKAOTALK_TEMPLATE_REJECTED - RCS_SENDER_COMMENT_ADDED - RCS_SENDER_OPERATOR_STATUS_UPDATED - RCS_SENDER_STATUS_UPDATED - RCS_ACCOUNT_COMMENT_ADDED - WHATSAPP_ACCOUNT_COMMENT_ADDED - WHATSAPP_ACCOUNT_ONBOARDED - WHATSAPP_ACCOUNT_PENDING_VERIFICATION - WHATSAPP_ACCOUNT_REJECTED - WHATSAPP_WABA_ACCOUNT_CHANGED - WHATSAPP_SENDER_ACTIVE - WHATSAPP_SENDER_COMMENT_ADDED - WHATSAPP_SENDER_DAILY_LIMIT_CHANGED - WHATSAPP_SENDER_ERROR - WHATSAPP_SENDER_INACTIVE - WHATSAPP_SENDER_PENDING_VERIFICATION - WHATSAPP_SENDER_QUALITY_RATING_CHANGED - WHATSAPP_SENDER_REJECTED - WHATSAPP_TEMPLATE_APPROVED - WHATSAPP_TEMPLATE_CATEGORY_FUTURE_UPDATE - WHATSAPP_TEMPLATE_CATEGORY_UPDATED - WHATSAPP_TEMPLATE_COMMENT_ADDED - WHATSAPP_TEMPLATE_DELETED - WHATSAPP_TEMPLATE_QUALITY_SCORE_UPDATED - WHATSAPP_TEMPLATE_REJECTED - WHATSAPP_TEMPLATE_STATUS_UPDATED description: List of triggers this webhook is triggered by. WebhookWebhookDto: type: object properties: id: type: string description: The ID of the webhook. uniqueItems: false target: type: string description: The target url where events will be sent to. uniqueItems: false projectId: type: string description: The project that this webhook belongs to. uniqueItems: false triggers: type: array uniqueItems: true description: List of triggers this webhook is triggered by. items: $ref: '#/components/schemas/WebhookWebhookTriggers' required: - id - target - projectId - triggers WebhookWebhookInputDto: type: object properties: target: type: string description: A valid target url where events should be sent to. maxLength: 742 minLength: 1 format: url uniqueItems: false secret: type: string description: Secret to be used to sign contents of webhooks sent by the provisioning API. You can then use the secret to verify the signature. Please not that secret should have a high entropy to be considered secure. maxLength: 128 minLength: 1 uniqueItems: false triggers: type: array uniqueItems: true minItems: 1 description: |- List of triggers you want to be notified about on your webhook. To be able to listen to all type of events use `ALL`. - Common: `ALL` - Bundles: `BUNDLE_DONE` - WhatsApp Sender: `WHATSAPP_SENDER_ACTIVE`, `WHATSAPP_SENDER_COMMENT_ADDED`, `WHATSAPP_SENDER_DAILY_LIMIT_CHANGED`, `WHATSAPP_SENDER_ERROR`, `WHATSAPP_SENDER_INACTIVE`, `WHATSAPP_SENDER_PENDING_VERIFICATION`, `WHATSAPP_SENDER_QUALITY_RATING_CHANGED` or `WHATSAPP_SENDER_REJECTED` - WhatsApp Template: `WHATSAPP_TEMPLATE_APPROVED`, `WHATSAPP_TEMPLATE_CATEGORY_FUTURE_UPDATE`, `WHATSAPP_TEMPLATE_CATEGORY_UPDATED`, `WHATSAPP_TEMPLATE_COMMENT_ADDED`, `WHATSAPP_TEMPLATE_DELETED`, `WHATSAPP_TEMPLATE_QUALITY_SCORE_UPDATED`, `WHATSAPP_TEMPLATE_REJECTED` or `WHATSAPP_TEMPLATE_STATUS_UPDATED` - WhatsApp Account: `WHATSAPP_ACCOUNT_COMMENT_ADDED`, `WHATSAPP_ACCOUNT_ONBOARDED`, `WHATSAPP_ACCOUNT_PENDING_VERIFICATION`, `WHATSAPP_ACCOUNT_REJECTED` or `WHATSAPP_WABA_ACCOUNT_CHANGED` - RCS Sender: `RCS_SENDER_COMMENT_ADDED`, `RCS_SENDER_OPERATOR_STATUS_UPDATED` or `RCS_SENDER_STATUS_UPDATED` - KakaoTalk Sender: `KAKAOTALK_SENDER_ACTIVE`, `KAKAOTALK_SENDER_COMMENT_ADDED`, `KAKAOTALK_SENDER_INACTIVE` or `KAKAOTALK_SENDER_REJECTED` - KakaoTalk Template: `KAKAOTALK_TEMPLATE_APPROVED`, `KAKAOTALK_TEMPLATE_COMMENT_ADDED` or `KAKAOTALK_TEMPLATE_REJECTED` items: $ref: '#/components/schemas/WebhookWebhookTriggers' required: - target - secret - triggers WebhookUpdateWebhookInputDto: type: object properties: target: type: object description: A valid target url where events should be sent to. maxLength: 742 minLength: 1 format: url uniqueItems: false secret: type: object description: Secret to be used to sign contents of webhooks sent by the provisioning API. You can then use the secret to verify the signature. Please not that secret should have a high entropy to be considered secure. maxLength: 128 minLength: 1 uniqueItems: false triggers: type: array uniqueItems: true minItems: 1 description: |- List of triggers you want to be notified about on your webhook. To be able to listen to all type of events use `ALL`. - Common: `ALL` - Bundles: `BUNDLE_DONE` - WhatsApp Sender: `WHATSAPP_SENDER_ACTIVE`, `WHATSAPP_SENDER_COMMENT_ADDED`, `WHATSAPP_SENDER_DAILY_LIMIT_CHANGED`, `WHATSAPP_SENDER_ERROR`, `WHATSAPP_SENDER_INACTIVE`, `WHATSAPP_SENDER_PENDING_VERIFICATION`, `WHATSAPP_SENDER_QUALITY_RATING_CHANGED` or `WHATSAPP_SENDER_REJECTED` - WhatsApp Template: `WHATSAPP_TEMPLATE_APPROVED`, `WHATSAPP_TEMPLATE_CATEGORY_FUTURE_UPDATE`, `WHATSAPP_TEMPLATE_CATEGORY_UPDATED`, `WHATSAPP_TEMPLATE_COMMENT_ADDED`, `WHATSAPP_TEMPLATE_DELETED`, `WHATSAPP_TEMPLATE_QUALITY_SCORE_UPDATED`, `WHATSAPP_TEMPLATE_REJECTED` or `WHATSAPP_TEMPLATE_STATUS_UPDATED` - WhatsApp Account: `WHATSAPP_ACCOUNT_COMMENT_ADDED`, `WHATSAPP_ACCOUNT_ONBOARDED`, `WHATSAPP_ACCOUNT_PENDING_VERIFICATION`, `WHATSAPP_ACCOUNT_REJECTED` or `WHATSAPP_WABA_ACCOUNT_CHANGED` - RCS Sender: `RCS_SENDER_COMMENT_ADDED`, `RCS_SENDER_OPERATOR_STATUS_UPDATED` or `RCS_SENDER_STATUS_UPDATED` - KakaoTalk Sender: `KAKAOTALK_SENDER_ACTIVE`, `KAKAOTALK_SENDER_COMMENT_ADDED`, `KAKAOTALK_SENDER_INACTIVE` or `KAKAOTALK_SENDER_REJECTED` - KakaoTalk Template: `KAKAOTALK_TEMPLATE_APPROVED`, `KAKAOTALK_TEMPLATE_COMMENT_ADDED` or `KAKAOTALK_TEMPLATE_REJECTED` items: $ref: '#/components/schemas/WebhookWebhookTriggers' WebhookWebhookListDto: type: object properties: totalSize: type: number description: Total size of the entries matching the search query. uniqueItems: false pageSize: type: number description: Requested size of the page. uniqueItems: false previousPageToken: type: string description: Encoded token to use in list request to fetch previous batch of entries. uniqueItems: false nextPageToken: type: string description: Encoded token to use in list request to fetch next batch of entries. uniqueItems: false webhooks: uniqueItems: false type: array items: $ref: '#/components/schemas/WebhookWebhookDto' required: - totalSize - pageSize - webhooks WhatsappComponentTypeHeader: type: string enum: - HEADER WhatsappLocationHeaderComponentFormat: type: string enum: - LOCATION WhatsappLocationHeaderComponentDto: type: object properties: type: uniqueItems: false allOf: - $ref: '#/components/schemas/WhatsappComponentTypeHeader' format: uniqueItems: false allOf: - $ref: '#/components/schemas/WhatsappLocationHeaderComponentFormat' required: - type - format WhatsappTextHeaderComponentFormat: type: string enum: - TEXT WhatsappTextHeaderComponentDto: type: object properties: type: uniqueItems: false allOf: - $ref: '#/components/schemas/WhatsappComponentTypeHeader' format: uniqueItems: false allOf: - $ref: '#/components/schemas/WhatsappTextHeaderComponentFormat' text: type: string description: Text to show in the header uniqueItems: false example: type: string description: Example for the header variable. uniqueItems: false required: - type - format WhatsappMediaHeaderComponentFormat: type: string enum: - DOCUMENT - IMAGE - VIDEO WhatsappMediaHeaderExampleDto: type: object properties: url: type: string format: url uniqueItems: false WhatsappMediaHeaderComponentDto: type: object properties: type: uniqueItems: false allOf: - $ref: '#/components/schemas/WhatsappComponentTypeHeader' format: uniqueItems: false allOf: - $ref: '#/components/schemas/WhatsappMediaHeaderComponentFormat' example: uniqueItems: false allOf: - $ref: '#/components/schemas/WhatsappMediaHeaderExampleDto' required: - type - format WhatsappComponentTypeBody: type: string enum: - BODY WhatsappBodyComponentDto: type: object properties: type: uniqueItems: false allOf: - $ref: '#/components/schemas/WhatsappComponentTypeBody' text: type: string uniqueItems: false examples: description: Examples for the body variables. uniqueItems: false type: array items: type: string addSecurityRecommendation: type: boolean uniqueItems: false required: - type WhatsappComponentTypeFooter: type: string enum: - FOOTER WhatsappFooterComponentDto: type: object properties: type: uniqueItems: false allOf: - $ref: '#/components/schemas/WhatsappComponentTypeFooter' text: type: string uniqueItems: false codeExpirationMinutes: type: number uniqueItems: false required: - type WhatsappButtonTypePhoneNumber: type: string enum: - PHONE_NUMBER WhatsappPhoneNumberButtonDto: type: object properties: type: uniqueItems: false allOf: - $ref: '#/components/schemas/WhatsappButtonTypePhoneNumber' text: type: string uniqueItems: false phoneNumber: type: string format: phone number uniqueItems: false required: - type WhatsappButtonTypeUrl: type: string enum: - URL WhatsappUrlButtonDto: type: object properties: type: uniqueItems: false allOf: - $ref: '#/components/schemas/WhatsappButtonTypeUrl' text: type: string uniqueItems: false url: type: string format: url uniqueItems: false example: type: string format: url uniqueItems: false required: - type WhatsappButtonTypeQuickReply: type: string enum: - QUICK_REPLY WhatsappQuickReplyButtonDto: type: object properties: type: uniqueItems: false allOf: - $ref: '#/components/schemas/WhatsappButtonTypeQuickReply' text: type: string uniqueItems: false required: - type WhatsappButtonTypeOtp: type: string enum: - OTP WhatsappOtpType: type: string enum: - COPY_CODE - ONE_TAP - ZERO_TAP - UNRECOGNIZED WhatsappSupportedAppDto: type: object properties: packageName: type: string uniqueItems: false signatureHash: type: string uniqueItems: false required: - packageName - signatureHash WhatsappOtpButtonDto: type: object properties: type: uniqueItems: false allOf: - $ref: '#/components/schemas/WhatsappButtonTypeOtp' otpType: uniqueItems: false allOf: - $ref: '#/components/schemas/WhatsappOtpType' text: type: string uniqueItems: false autofillText: type: string uniqueItems: false packageName: type: string deprecated: true uniqueItems: false signatureHash: type: string deprecated: true uniqueItems: false supportedApps: uniqueItems: false type: array items: $ref: '#/components/schemas/WhatsappSupportedAppDto' zeroTapTermsAccepted: type: boolean uniqueItems: false required: - type - otpType WhatsappButtonTypeFlow: type: string enum: - FLOW WhatsappFlowAction: type: string enum: - DATA_EXCHANGE - NAVIGATE - UNKNOWN - UNRECOGNIZED description: Flow action WhatsappFlowButtonDto: type: object properties: type: uniqueItems: false allOf: - $ref: '#/components/schemas/WhatsappButtonTypeFlow' text: type: string description: Text to display on the Flow button uniqueItems: false flowId: type: string description: Flow ID to launch when button is pressed uniqueItems: false flowAction: description: Flow action uniqueItems: false allOf: - $ref: '#/components/schemas/WhatsappFlowAction' navigateScreen: type: string description: The unique ID of the first screen. Required for Navigate action. uniqueItems: false required: - type - flowId WhatsappComponentTypeButtons: type: string enum: - BUTTONS WhatsappButtonsComponentDto: type: object properties: type: uniqueItems: false allOf: - $ref: '#/components/schemas/WhatsappComponentTypeButtons' buttons: type: array items: anyOf: - $ref: '#/components/schemas/WhatsappPhoneNumberButtonDto' - $ref: '#/components/schemas/WhatsappUrlButtonDto' - $ref: '#/components/schemas/WhatsappQuickReplyButtonDto' - $ref: '#/components/schemas/WhatsappOtpButtonDto' - $ref: '#/components/schemas/WhatsappFlowButtonDto' uniqueItems: false required: - type - buttons WhatsappComponentTypeCarousel: type: string enum: - CAROUSEL WhatsappCardHeaderComponentFormats: type: string enum: - IMAGE - VIDEO description: Card header format. Whatsappcard_header_component_dto_CardHeaderComponentDto: type: object properties: type: uniqueItems: false allOf: - $ref: '#/components/schemas/WhatsappComponentTypeHeader' format: description: Card header format. uniqueItems: false allOf: - $ref: '#/components/schemas/WhatsappCardHeaderComponentFormats' example: description: Uploaded media asset handle. uniqueItems: false allOf: - $ref: '#/components/schemas/WhatsappMediaHeaderExampleDto' required: - type - format Whatsappcard_body_component_dto_CardBodyComponentDto: type: object properties: type: uniqueItems: false allOf: - $ref: '#/components/schemas/WhatsappComponentTypeBody' examples: description: Examples for the body variables. uniqueItems: false type: array items: type: string text: type: string description: Card body text. uniqueItems: false required: - type Whatsappcard_buttons_component_dto_CardButtonsComponentDto: type: object properties: type: uniqueItems: false allOf: - $ref: '#/components/schemas/WhatsappComponentTypeButtons' buttons: type: array items: anyOf: - $ref: '#/components/schemas/WhatsappUrlButtonDto' - $ref: '#/components/schemas/WhatsappQuickReplyButtonDto' - $ref: '#/components/schemas/WhatsappPhoneNumberButtonDto' description: Card buttons. uniqueItems: false required: - type - buttons Whatsappcard_dto_CardDto: type: object properties: components: type: array items: anyOf: - $ref: '#/components/schemas/Whatsappcard_header_component_dto_CardHeaderComponentDto' - $ref: '#/components/schemas/Whatsappcard_body_component_dto_CardBodyComponentDto' - $ref: '#/components/schemas/Whatsappcard_buttons_component_dto_CardButtonsComponentDto' description: List of components in the cards. uniqueItems: false required: - components Whatsappcarousel_component_dto_CarouselComponentDto: type: object properties: type: uniqueItems: false allOf: - $ref: '#/components/schemas/WhatsappComponentTypeCarousel' cards: description: Media cards. uniqueItems: false type: array items: $ref: '#/components/schemas/Whatsappcard_dto_CardDto' required: - type - cards WhatsappTemplateDetailsDto: type: object properties: components: type: array items: anyOf: - $ref: '#/components/schemas/WhatsappTextHeaderComponentDto' - $ref: '#/components/schemas/WhatsappMediaHeaderComponentDto' - $ref: '#/components/schemas/WhatsappBodyComponentDto' - $ref: '#/components/schemas/WhatsappFooterComponentDto' - $ref: '#/components/schemas/WhatsappButtonsComponentDto' - $ref: '#/components/schemas/WhatsappLocationHeaderComponentDto' - $ref: '#/components/schemas/Whatsappcarousel_component_dto_CarouselComponentDto' description: List of components in the template. Must contain a BODY component and can only have one entry of each type. uniqueItems: false messageSendTtlSeconds: type: number description: |2- Template message delivery retry time-to-live (TTL) override value. If unable to deliver the template message, it will be periodically retry for this period of time. If it is unable to deliver the message for this period of time, the message will be dropped. | | AUTHENTICATION | MARKETING | UTILITY | | -- | -- | -- | -- | | Default | 10 minutes | 30 days | 30 days | | Customizable range | 10 seconds to 15 minutes | 12 hours to 30 days | 30 seconds to 12 hours | | Valid values | 10 to 900 seconds | 43200 to 2592000 seconds | 30 to 43200 seconds | Please note that authentication templates created before October 23, 2024, have a default TTL of 30 days. uniqueItems: false required: - components WhatsappTemplateChangesDetailsDto: type: object properties: components: type: array items: anyOf: - $ref: '#/components/schemas/WhatsappTextHeaderComponentDto' - $ref: '#/components/schemas/WhatsappMediaHeaderComponentDto' - $ref: '#/components/schemas/WhatsappLocationHeaderComponentDto' - $ref: '#/components/schemas/WhatsappBodyComponentDto' - $ref: '#/components/schemas/WhatsappFooterComponentDto' - $ref: '#/components/schemas/WhatsappButtonsComponentDto' - $ref: '#/components/schemas/Whatsappcarousel_component_dto_CarouselComponentDto' description: |2 The current status of the changes. `DRAFT`: The changes has not been submitted. `IN_PROGRESS`: The changes has been submitted. uniqueItems: false messageSendTtlSeconds: type: number description: |2- Template message delivery retry time-to-live (TTL) override value. If unable to deliver the template message, it will be periodically retry for this period of time. If it is unable to deliver the message for this period of time, the message will be dropped. | | AUTHENTICATION | MARKETING | UTILITY | | -- | -- | -- | -- | | Default | 10 minutes | 30 days | 30 days | | Customizable range | 10 seconds to 15 minutes | 12 hours to 30 days | 30 seconds to 12 hours | | Valid values | 10 to 900 seconds | 43200 to 2592000 seconds | 30 to 43200 seconds | Please note that authentication templates created before October 23, 2024, have a default TTL of 30 days. uniqueItems: false WhatsappTemplateStatuses: type: string enum: - DRAFT - IN_PROGRESS - REJECTED description: |2 The current status of the changes. `DRAFT`: The changes has not been submitted. `IN_PROGRESS`: The changes has been submitted. WhatsappTemplateChangesDto: type: object properties: status: description: |2 The current status of the changes. `DRAFT`: The changes has not been submitted. `IN_PROGRESS`: The changes has been submitted. uniqueItems: false allOf: - $ref: '#/components/schemas/WhatsappTemplateStatuses' allowCategoryChange: type: boolean description: True if Meta should be allowed to change the category if they determine the category is wrong. If false, Meta might reject the template if they determine the category is wrong based on the template contents. Defaults to false. uniqueItems: false details: oneOf: - $ref: '#/components/schemas/WhatsappTemplateDetailsDto' description: For newly created template - $ref: '#/components/schemas/WhatsappTemplateChangesDetailsDto' description: For update template description: Template details and information. uniqueItems: false required: - status WhatsappTemplateAnalyticsButtonTypes: type: string enum: - QUICK_REPLY - UNIQUE_URL - URL - UNRECOGNIZED description: Type of button. WhatsappTemplateAnalyticsButtonsDto: type: object properties: type: description: Type of button. uniqueItems: false allOf: - $ref: '#/components/schemas/WhatsappTemplateAnalyticsButtonTypes' content: type: string description: Content of the button. uniqueItems: false clicks: type: number description: Number of times the button has been clicked. uniqueItems: false required: - type - content - clicks WhatsappTemplateAnalyticsDto: type: object properties: sent: type: number description: Number of times template has been sent. uniqueItems: false delivered: type: number description: Number of times template has been delivered. uniqueItems: false read: type: number description: Number of times template has been read. uniqueItems: false start: type: string description: The UTC Date Time in ISO 8601 for start of date range. uniqueItems: false end: type: string description: The UTC Date Time in ISO 8601 for end of date range. uniqueItems: false buttons: type: array items: $ref: '#/components/schemas/WhatsappTemplateAnalyticsButtonsDto' description: Number of times buttons in the template has been clicked. uniqueItems: false required: - sent - delivered - read - start - end - buttons WhatsappTemplateStates: type: string enum: - APPROVED - DISABLED - PAUSED - REJECTED WhatsappTemplateLanguages: type: string enum: - AF - AR - AZ - BG - BN - CA - CS - DA - DE - EL - EN - EN_GB - EN_US - ES - ES_AR - ES_ES - ES_MX - ET - FA - FI - FIL - FR - GA - GU - HA - HE - HI - HR - HU - ID - IT - JA - KA - KK - KN - KO - KY_KG - LO - LT - LV - MK - ML - MR - MS - NB - NL - PA - PL - PT_BR - PT_PT - RO - RU - RW_RW - SK - SL - SQ - SR - SV - SW - TA - TE - TH - TR - UK - UR - UZ - VI - ZH_CN - ZH_HK - ZH_TW - ZU - UNRECOGNIZED WhatsappTemplateCategory: type: string enum: - AUTHENTICATION - MARKETING - UTILITY - UNRECOGNIZED WhatsappTemplateRejectionCode: type: string enum: - ABUSIVE_CONTENT - INCORRECT_CATEGORY - INVALID_FORMAT - NONE - SCAM - UNRECOGNIZED description: Rejection code if template is in status 'REJECTED' WhatsappTemplateQualityScore: type: string enum: - QUALITY_SCORE_GREEN - QUALITY_SCORE_RED - QUALITY_SCORE_YELLOW - QUALITY_SCORE_UNKNOWN - UNRECOGNIZED description: Quality score of the HSM. WhatsappTemplateDto: type: object properties: whatsappId: type: string uniqueItems: false state: uniqueItems: false allOf: - $ref: '#/components/schemas/WhatsappTemplateStates' name: type: string uniqueItems: false language: uniqueItems: false allOf: - $ref: '#/components/schemas/WhatsappTemplateLanguages' category: uniqueItems: false allOf: - $ref: '#/components/schemas/WhatsappTemplateCategory' rejectionCode: description: Rejection code if template is in status 'REJECTED' uniqueItems: false allOf: - $ref: '#/components/schemas/WhatsappTemplateRejectionCode' qualityScore: description: Quality score of the HSM. uniqueItems: false allOf: - $ref: '#/components/schemas/WhatsappTemplateQualityScore' changes: description: Object containing changes on the template. If empty the changes has been approved and applied to the template. uniqueItems: false allOf: - $ref: '#/components/schemas/WhatsappTemplateChangesDto' details: description: Template details and information. uniqueItems: false allOf: - $ref: '#/components/schemas/WhatsappTemplateDetailsDto' analytics: type: array items: $ref: '#/components/schemas/WhatsappTemplateAnalyticsDto' description: Template analytics. uniqueItems: false required: - name - language - category - analytics WhatsappPartialTextHeaderComponentDto: type: object properties: type: uniqueItems: false allOf: - $ref: '#/components/schemas/WhatsappComponentTypeHeader' format: uniqueItems: false allOf: - $ref: '#/components/schemas/WhatsappTextHeaderComponentFormat' text: type: string description: Text to show in the header uniqueItems: false example: type: string description: Example for the header variable. uniqueItems: false WhatsappPartialMediaHeaderExampleDto: type: object properties: url: type: string format: url uniqueItems: false WhatsappPartialMediaHeaderComponentDto: type: object properties: type: uniqueItems: false allOf: - $ref: '#/components/schemas/WhatsappComponentTypeHeader' format: uniqueItems: false allOf: - $ref: '#/components/schemas/WhatsappMediaHeaderComponentFormat' example: uniqueItems: false allOf: - $ref: '#/components/schemas/WhatsappPartialMediaHeaderExampleDto' WhatsappPartialBodyComponentDto: type: object properties: type: uniqueItems: false allOf: - $ref: '#/components/schemas/WhatsappComponentTypeBody' text: type: string uniqueItems: false examples: description: Examples for the body variables. uniqueItems: false type: array items: type: string addSecurityRecommendation: type: boolean uniqueItems: false WhatsappPartialFooterComponentDto: type: object properties: type: uniqueItems: false allOf: - $ref: '#/components/schemas/WhatsappComponentTypeFooter' text: type: string uniqueItems: false codeExpirationMinutes: type: number uniqueItems: false WhatsappPartialLocationHeaderComponentDto: type: object properties: type: uniqueItems: false allOf: - $ref: '#/components/schemas/WhatsappComponentTypeHeader' format: uniqueItems: false allOf: - $ref: '#/components/schemas/WhatsappLocationHeaderComponentFormat' WhatsappPartialCardHeaderComponentDto: type: object properties: type: uniqueItems: false allOf: - $ref: '#/components/schemas/WhatsappComponentTypeHeader' format: description: Card header format. uniqueItems: false allOf: - $ref: '#/components/schemas/WhatsappCardHeaderComponentFormats' example: description: Uploaded media asset handle. uniqueItems: false allOf: - $ref: '#/components/schemas/WhatsappPartialMediaHeaderExampleDto' WhatsappPartialCardBodyComponentDto: type: object properties: type: uniqueItems: false allOf: - $ref: '#/components/schemas/WhatsappComponentTypeBody' examples: description: Examples for the body variables. uniqueItems: false type: array items: type: string text: type: string description: Card body text. uniqueItems: false WhatsappPartialUrlButtonDto: type: object properties: type: uniqueItems: false allOf: - $ref: '#/components/schemas/WhatsappButtonTypeUrl' text: type: string uniqueItems: false url: type: string format: url uniqueItems: false example: type: string format: url uniqueItems: false WhatsappPartialQuickReplyButtonDto: type: object properties: type: uniqueItems: false allOf: - $ref: '#/components/schemas/WhatsappButtonTypeQuickReply' text: type: string uniqueItems: false WhatsappPartialPhoneNumberButtonDto: type: object properties: type: uniqueItems: false allOf: - $ref: '#/components/schemas/WhatsappButtonTypePhoneNumber' text: type: string uniqueItems: false phoneNumber: type: string format: phone number uniqueItems: false WhatsappPartialCardButtonsComponentDto: type: object properties: type: uniqueItems: false allOf: - $ref: '#/components/schemas/WhatsappComponentTypeButtons' buttons: type: array items: anyOf: - $ref: '#/components/schemas/WhatsappPartialUrlButtonDto' - $ref: '#/components/schemas/WhatsappPartialQuickReplyButtonDto' - $ref: '#/components/schemas/WhatsappPartialPhoneNumberButtonDto' description: Card buttons. uniqueItems: false WhatsappPartialCardDto: type: object properties: components: type: array items: anyOf: - $ref: '#/components/schemas/WhatsappPartialCardHeaderComponentDto' - $ref: '#/components/schemas/WhatsappPartialCardBodyComponentDto' - $ref: '#/components/schemas/WhatsappPartialCardButtonsComponentDto' description: List of components in the cards. uniqueItems: false WhatsappPartialCarouselComponentDto: type: object properties: type: uniqueItems: false allOf: - $ref: '#/components/schemas/WhatsappComponentTypeCarousel' cards: description: Media cards. uniqueItems: false type: array items: $ref: '#/components/schemas/WhatsappPartialCardDto' WhatsappPartialTemplateDetailsDto: type: object properties: messageSendTtlSeconds: type: number description: |2- Template message delivery retry time-to-live (TTL) override value. If unable to deliver the template message, it will be periodically retry for this period of time. If it is unable to deliver the message for this period of time, the message will be dropped. | | AUTHENTICATION | MARKETING | UTILITY | | -- | -- | -- | -- | | Default | 10 minutes | 30 days | 30 days | | Customizable range | 10 seconds to 15 minutes | 12 hours to 30 days | 30 seconds to 12 hours | | Valid values | 10 to 900 seconds | 43200 to 2592000 seconds | 30 to 43200 seconds | Please note that authentication templates created before October 23, 2024, have a default TTL of 30 days. uniqueItems: false components: type: array items: anyOf: - $ref: '#/components/schemas/WhatsappPartialTextHeaderComponentDto' - $ref: '#/components/schemas/WhatsappPartialMediaHeaderComponentDto' - $ref: '#/components/schemas/WhatsappPartialBodyComponentDto' - $ref: '#/components/schemas/WhatsappPartialFooterComponentDto' - $ref: '#/components/schemas/WhatsappPartialButtonsComponentDto' - $ref: '#/components/schemas/WhatsappPartialLocationHeaderComponentDto' - $ref: '#/components/schemas/WhatsappPartialCarouselComponentDto' description: List of components in the template. Must contain a BODY component and can only have one entry of each type. uniqueItems: false WhatsappPartialOtpButtonDto: type: object properties: type: uniqueItems: false allOf: - $ref: '#/components/schemas/WhatsappButtonTypeOtp' otpType: uniqueItems: false allOf: - $ref: '#/components/schemas/WhatsappOtpType' text: type: string uniqueItems: false autofillText: type: string uniqueItems: false packageName: type: string deprecated: true uniqueItems: false signatureHash: type: string deprecated: true uniqueItems: false supportedApps: uniqueItems: false type: array items: $ref: '#/components/schemas/WhatsappSupportedAppDto' zeroTapTermsAccepted: type: boolean uniqueItems: false WhatsappPartialFlowButtonDto: type: object properties: type: uniqueItems: false allOf: - $ref: '#/components/schemas/WhatsappButtonTypeFlow' text: type: string description: Text to display on the Flow button uniqueItems: false flowId: type: string description: Flow ID to launch when button is pressed uniqueItems: false flowAction: description: Flow action uniqueItems: false allOf: - $ref: '#/components/schemas/WhatsappFlowAction' navigateScreen: type: string description: The unique ID of the first screen. Required for Navigate action. uniqueItems: false WhatsappPartialButtonsComponentDto: type: object properties: type: uniqueItems: false allOf: - $ref: '#/components/schemas/WhatsappComponentTypeButtons' buttons: type: array items: anyOf: - $ref: '#/components/schemas/WhatsappPartialPhoneNumberButtonDto' - $ref: '#/components/schemas/WhatsappPartialUrlButtonDto' - $ref: '#/components/schemas/WhatsappPartialQuickReplyButtonDto' - $ref: '#/components/schemas/WhatsappPartialOtpButtonDto' - $ref: '#/components/schemas/WhatsappPartialFlowButtonDto' uniqueItems: false WhatsappPartialTemplateChangesDto: type: object properties: status: description: |2 The current status of the changes. `DRAFT`: The changes has not been submitted. `IN_PROGRESS`: The changes has been submitted. uniqueItems: false allOf: - $ref: '#/components/schemas/WhatsappTemplateStatuses' allowCategoryChange: type: boolean description: True if Meta should be allowed to change the category if they determine the category is wrong. If false, Meta might reject the template if they determine the category is wrong based on the template contents. Defaults to false. uniqueItems: false details: oneOf: - $ref: '#/components/schemas/WhatsappPartialTemplateDetailsDto' description: For newly created template - $ref: '#/components/schemas/WhatsappTemplateChangesDetailsDto' description: For update template description: Template details and information. uniqueItems: false WhatsappPartialTemplateAnalyticsButtonsDto: type: object properties: type: description: Type of button. uniqueItems: false allOf: - $ref: '#/components/schemas/WhatsappTemplateAnalyticsButtonTypes' content: type: string description: Content of the button. uniqueItems: false clicks: type: number description: Number of times the button has been clicked. uniqueItems: false WhatsappPartialTemplateAnalyticsDto: type: object properties: sent: type: number description: Number of times template has been sent. uniqueItems: false delivered: type: number description: Number of times template has been delivered. uniqueItems: false read: type: number description: Number of times template has been read. uniqueItems: false start: type: string description: The UTC Date Time in ISO 8601 for start of date range. uniqueItems: false end: type: string description: The UTC Date Time in ISO 8601 for end of date range. uniqueItems: false buttons: type: array items: $ref: '#/components/schemas/WhatsappPartialTemplateAnalyticsButtonsDto' description: Number of times buttons in the template has been clicked. uniqueItems: false WhatsappPartialTemplateDto: type: object properties: whatsappId: type: string uniqueItems: false state: uniqueItems: false allOf: - $ref: '#/components/schemas/WhatsappTemplateStates' name: type: string uniqueItems: false language: uniqueItems: false allOf: - $ref: '#/components/schemas/WhatsappTemplateLanguages' category: uniqueItems: false allOf: - $ref: '#/components/schemas/WhatsappTemplateCategory' rejectionCode: description: Rejection code if template is in status 'REJECTED' uniqueItems: false allOf: - $ref: '#/components/schemas/WhatsappTemplateRejectionCode' qualityScore: description: Quality score of the HSM. uniqueItems: false allOf: - $ref: '#/components/schemas/WhatsappTemplateQualityScore' changes: description: Object containing changes on the template. If empty the changes has been approved and applied to the template. uniqueItems: false allOf: - $ref: '#/components/schemas/WhatsappPartialTemplateChangesDto' details: description: Template details and information. uniqueItems: false allOf: - $ref: '#/components/schemas/WhatsappPartialTemplateDetailsDto' analytics: type: array items: $ref: '#/components/schemas/WhatsappPartialTemplateAnalyticsDto' description: Template analytics. uniqueItems: false WhatsappTemplateLanguagesEnum: type: string enum: - AF - AR - AZ - BG - BN - CA - CS - DA - DE - EL - EN - EN_GB - EN_US - ES - ES_AR - ES_ES - ES_MX - ET - FA - FI - FIL - FR - GA - GU - HA - HE - HI - HR - HU - ID - IT - JA - KA - KK - KN - KO - KY_KG - LO - LT - LV - MK - ML - MR - MS - NB - NL - PA - PL - PT_BR - PT_PT - RO - RU - RW_RW - SK - SL - SQ - SR - SV - SW - TA - TE - TH - TR - UK - UR - UZ - VI - ZH_CN - ZH_HK - ZH_TW - ZU - UNRECOGNIZED WhatsappTemplateDtoFieldMaskPathsEnum: type: string enum: - whatsappId - state - name - language - category - rejectionCode - qualityScore - changes - changes.status - changes.allowCategoryChange - changes.details - changes.details.components - changes.details.components.0.type - changes.details.components.0.format - changes.details.components.0.text - changes.details.components.0.example - changes.details.components.0.example.url - changes.details.components.0.examples - changes.details.components.0.addSecurityRecommendation - changes.details.components.0.codeExpirationMinutes - changes.details.components.0.buttons - changes.details.components.0.buttons.0.type - changes.details.components.0.buttons.0.text - changes.details.components.0.buttons.0.phoneNumber - changes.details.components.0.buttons.0.url - changes.details.components.0.buttons.0.example - changes.details.components.0.buttons.0.otpType - changes.details.components.0.buttons.0.autofillText - changes.details.components.0.buttons.0.packageName - changes.details.components.0.buttons.0.signatureHash - changes.details.components.0.buttons.0.supportedApps - changes.details.components.0.buttons.0.supportedApps.0.packageName - changes.details.components.0.buttons.0.supportedApps.0.signatureHash - changes.details.components.0.buttons.0.zeroTapTermsAccepted - changes.details.components.0.buttons.0.flowId - changes.details.components.0.buttons.0.flowAction - changes.details.components.0.buttons.0.navigateScreen - changes.details.messageSendTtlSeconds - details - details.components - details.components.0.type - details.components.0.format - details.components.0.text - details.components.0.example - details.components.0.example.url - details.components.0.examples - details.components.0.addSecurityRecommendation - details.components.0.codeExpirationMinutes - details.components.0.buttons - details.components.0.buttons.0.type - details.components.0.buttons.0.text - details.components.0.buttons.0.phoneNumber - details.components.0.buttons.0.url - details.components.0.buttons.0.example - details.components.0.buttons.0.otpType - details.components.0.buttons.0.autofillText - details.components.0.buttons.0.packageName - details.components.0.buttons.0.signatureHash - details.components.0.buttons.0.supportedApps - details.components.0.buttons.0.supportedApps.0.packageName - details.components.0.buttons.0.supportedApps.0.signatureHash - details.components.0.buttons.0.zeroTapTermsAccepted - details.components.0.buttons.0.flowId - details.components.0.buttons.0.flowAction - details.components.0.buttons.0.navigateScreen - details.messageSendTtlSeconds - analytics - analytics.0.sent - analytics.0.delivered - analytics.0.read - analytics.0.start - analytics.0.end - analytics.0.buttons - analytics.0.buttons.0.type - analytics.0.buttons.0.content - analytics.0.buttons.0.clicks WhatsappTemplateAnalyticsDateRangesEnum: type: string enum: - DAY - MONTH - QUARTER - WEEK WhatsappTemplateListDto: type: object properties: totalSize: type: number description: Total size of the entries matching the search query. uniqueItems: false pageSize: type: number description: Requested size of the page. uniqueItems: false previousPageToken: type: string description: Encoded token to use in list request to fetch previous batch of entries. uniqueItems: false nextPageToken: type: string description: Encoded token to use in list request to fetch next batch of entries. uniqueItems: false templates: uniqueItems: false type: array items: $ref: '#/components/schemas/WhatsappTemplateDto' required: - totalSize - pageSize - templates WhatsappPartialTemplateListDto: type: object properties: totalSize: type: number description: Total size of the entries matching the search query. uniqueItems: false pageSize: type: number description: Requested size of the page. uniqueItems: false previousPageToken: type: string description: Encoded token to use in list request to fetch previous batch of entries. uniqueItems: false nextPageToken: type: string description: Encoded token to use in list request to fetch next batch of entries. uniqueItems: false templates: uniqueItems: false type: array items: $ref: '#/components/schemas/WhatsappPartialTemplateDto' required: - totalSize - pageSize - templates WhatsappTemplateStatesEnum: type: string enum: - APPROVED - DISABLED - PAUSED - REJECTED WhatsappTemplateStatusesEnum: type: string enum: - DRAFT - IN_PROGRESS - REJECTED WhatsappLocationHeaderComponentInputDto: type: object properties: type: uniqueItems: false allOf: - $ref: '#/components/schemas/WhatsappComponentTypeHeader' format: uniqueItems: false allOf: - $ref: '#/components/schemas/WhatsappLocationHeaderComponentFormat' required: - type - format WhatsappTextHeaderComponentInputDto: type: object properties: type: uniqueItems: false allOf: - $ref: '#/components/schemas/WhatsappComponentTypeHeader' format: uniqueItems: false allOf: - $ref: '#/components/schemas/WhatsappTextHeaderComponentFormat' text: type: string maxLength: 60 minLength: 1 description: Text to show in the header. Can contain one header variable. Not required for draft. uniqueItems: false example: type: string minLength: 1 description: Example for the header variable. Required if there is a variable in the text header. uniqueItems: false required: - type - format - text WhatsappInputMediaHeaderExampleSupportedMimeTypes: type: string enum: - IMAGE/JPEG - IMAGE/PNG - APPLICATION/PDF - VIDEO/3GP - VIDEO/MP4 description: Optional mime type of file if it can not be determined by the file contents. WhatsappMediaHeaderExampleInputDto: type: object properties: url: type: string format: url description: |- File Requirements 1) Image - Images must be 8-bit, RGB or RGBA - supported mime types: `image/jpeg` or `image/png` - max file size: `5MB` 2) Video - Only H.264 video codec and AAC audio codec is supported. - We support videos with a single audio stream or no audio stream. - supported mime types: `video/3gp` or `video/mp4` - max file size: `16MB` 3) Document - supported mime types: `application/pdf` - max file size: `100MB` Not required for draft. uniqueItems: false mimeType: description: Optional mime type of file if it can not be determined by the file contents. uniqueItems: false allOf: - $ref: '#/components/schemas/WhatsappInputMediaHeaderExampleSupportedMimeTypes' required: - url WhatsappMediaHeaderComponentInputDto: type: object properties: type: uniqueItems: false allOf: - $ref: '#/components/schemas/WhatsappComponentTypeHeader' format: uniqueItems: false allOf: - $ref: '#/components/schemas/WhatsappMediaHeaderComponentFormat' example: description: Not required for draft. uniqueItems: false allOf: - $ref: '#/components/schemas/WhatsappMediaHeaderExampleInputDto' required: - type - format - example WhatsappBodyComponentInputDto: type: object properties: type: uniqueItems: false allOf: - $ref: '#/components/schemas/WhatsappComponentTypeBody' text: type: string minLength: 1 maxLength: 1024 uniqueItems: false examples: description: Examples for the body variables. Requires one example for each variable in the body text. If no variables are used, the examples are optional. uniqueItems: false type: array items: type: string minLength: 1 addSecurityRecommendation: type: boolean default: false description: Only valid if template category is AUTHENTICATION. If true, adds a security recommendation to the body. Defaults to false. uniqueItems: false required: - type WhatsappFooterComponentInputDto: type: object properties: type: uniqueItems: false allOf: - $ref: '#/components/schemas/WhatsappComponentTypeFooter' text: type: string maxLength: 60 uniqueItems: false codeExpirationMinutes: type: number description: Only valid if template category is AUTHENTICATION. If set will add a text detailing the expiration time. uniqueItems: false required: - type WhatsappPhoneNumberButtonInputDto: type: object properties: type: uniqueItems: false allOf: - $ref: '#/components/schemas/WhatsappButtonTypePhoneNumber' text: type: string minLength: 1 maxLength: 25 description: Not required for draft. uniqueItems: false phoneNumber: type: string format: phone number description: Not required for draft. uniqueItems: false required: - type - text - phoneNumber WhatsappUrlButtonInputDto: type: object properties: type: uniqueItems: false allOf: - $ref: '#/components/schemas/WhatsappButtonTypeUrl' text: type: string minLength: 1 maxLength: 25 description: Not required for draft. uniqueItems: false url: type: string format: url description: |2- The url address. To make it dynamic you can add '{{1}}' to the end of the url eg, https://www.my-website.com?name={{1}}, and not https://www.my-{{1}}.com. Restricted domains: `facebook.com`, `fbcdn.net`, `instagram.com`, `tfbnw.net`, `wa.me` or `whatsapp.com` Not required for draft. uniqueItems: false example: type: string format: url description: |2- Example of the full url together with the dynamic value. Required if there is a {{1}} in the URL field, eg If the 'url' field is 'https://www.my-website.com?name={{1}}', then example can have the following value 'example' = 'https://www.my-website.com?name=john' Not required for draft. uniqueItems: false required: - type - text - url WhatsappQuickReplyButtonInputDto: type: object properties: type: uniqueItems: false allOf: - $ref: '#/components/schemas/WhatsappButtonTypeQuickReply' text: type: string minLength: 1 maxLength: 25 description: Not required for draft. uniqueItems: false required: - type - text WhatsappInputOtpType: type: string enum: - COPY_CODE - ONE_TAP - ZERO_TAP WhatsappSupportedAppInputDto: type: object properties: packageName: type: string description: Your Android app's package name. uniqueItems: false signatureHash: type: string description: Your app signing key hash. uniqueItems: false required: - packageName - signatureHash WhatsappOtpButtonInputDto: type: object properties: type: uniqueItems: false allOf: - $ref: '#/components/schemas/WhatsappButtonTypeOtp' otpType: uniqueItems: false allOf: - $ref: '#/components/schemas/WhatsappInputOtpType' text: type: string minLength: 1 maxLength: 25 description: Not required for draft. uniqueItems: false autofillText: type: string maxLength: 25 description: One-tap autofill button label text. uniqueItems: false packageName: type: string deprecated: true description: Your Android app's package name. uniqueItems: false signatureHash: type: string deprecated: true description: Your app signing key hash. uniqueItems: false supportedApps: description: List of supported apps for the OTP button. uniqueItems: false type: array items: $ref: '#/components/schemas/WhatsappSupportedAppInputDto' zeroTapTermsAccepted: type: boolean description: Set to true to indicate that you understand that your use of zero-tap authentication is subject to the WhatsApp Business Terms of Service, and that it's your responsibility to ensure your customers expect that the code will be automatically filled in on their behalf when they choose to receive the zero-tap code through WhatsApp. uniqueItems: false required: - type - otpType - text WhatsappInputFlowAction: type: string enum: - DATA_EXCHANGE - NAVIGATE description: Flow action WhatsappFlowButtonInputDto: type: object properties: type: uniqueItems: false allOf: - $ref: '#/components/schemas/WhatsappButtonTypeFlow' text: type: string minLength: 1 maxLength: 25 description: Text to display on the Flow button uniqueItems: false flowId: type: string minLength: 1 maxLength: 30 description: Flow ID to launch when button is pressed format: digits uniqueItems: false flowAction: description: Flow action uniqueItems: false allOf: - $ref: '#/components/schemas/WhatsappInputFlowAction' navigateScreen: type: string minLength: 1 maxLength: 432 description: The unique ID of the first screen. Required for Navigate action. uniqueItems: false required: - type - text - flowId - flowAction WhatsappButtonsComponentInputDto: type: object properties: type: uniqueItems: false allOf: - $ref: '#/components/schemas/WhatsappComponentTypeButtons' buttons: type: array items: anyOf: - $ref: '#/components/schemas/WhatsappFlowButtonInputDto' - $ref: '#/components/schemas/WhatsappOtpButtonInputDto' - $ref: '#/components/schemas/WhatsappPhoneNumberButtonInputDto' - $ref: '#/components/schemas/WhatsappQuickReplyButtonInputDto' - $ref: '#/components/schemas/WhatsappUrlButtonInputDto' minItems: 1 description: Not required for draft. Each field in (value, text) must have unique values across items. uniqueItems: true required: - type - buttons WhatsappInputCardMediaHeaderExampleDto: type: object properties: url: type: string format: url description: |- File Requirements 1) Image - Images must be 8-bit, RGB or RGBA - supported mime types: `image/jpeg` or `image/png` - max file size: `5MB` 2) Video - Only H.264 video codec and AAC audio codec is supported. - We support videos with a single audio stream or no audio stream. - supported mime types: `video/3gp` or `video/mp4` - max file size: `16MB` Not required for draft. uniqueItems: false mimeType: description: Optional mime type of file if it can not be determined by the file contents. uniqueItems: false allOf: - $ref: '#/components/schemas/WhatsappInputMediaHeaderExampleSupportedMimeTypes' required: - url WhatsappInputCardHeaderComponentDto: type: object properties: type: uniqueItems: false allOf: - $ref: '#/components/schemas/WhatsappComponentTypeHeader' format: description: Card header format. uniqueItems: false allOf: - $ref: '#/components/schemas/WhatsappCardHeaderComponentFormats' example: description: | Uploaded media asset handle. Media assets are automatically cropped to a wide ratio based on the WhatsApp user's device. Not required for draft. uniqueItems: false allOf: - $ref: '#/components/schemas/WhatsappInputCardMediaHeaderExampleDto' required: - type - format - example WhatsappInputCardBodyComponentDto: type: object properties: type: uniqueItems: false allOf: - $ref: '#/components/schemas/WhatsappComponentTypeBody' examples: description: Examples for the body variables. Requires one example for each variable in the body text. If no variables are used, the examples are optional. uniqueItems: false type: array items: type: string minLength: 1 text: type: string minLength: 1 maxLength: 160 description: Card body text. Supports variables. Not required for draft. uniqueItems: false required: - type - text WhatsappInputCardButtonsComponentDto: type: object properties: type: uniqueItems: false allOf: - $ref: '#/components/schemas/WhatsappComponentTypeButtons' buttons: type: array items: anyOf: - $ref: '#/components/schemas/WhatsappUrlButtonInputDto' - $ref: '#/components/schemas/WhatsappQuickReplyButtonInputDto' - $ref: '#/components/schemas/WhatsappPhoneNumberButtonInputDto' minItems: 1 maxItems: 2 description: |- Card buttons. Button combinations can be a mix of quick reply buttons, phone number buttons, and URL buttons. Not required for draft. Fields (type, text) must not all share the same value across items. uniqueItems: true required: - type - buttons WhatsappInputCardDto: type: object properties: components: type: array items: anyOf: - $ref: '#/components/schemas/WhatsappInputCardHeaderComponentDto' - $ref: '#/components/schemas/WhatsappInputCardBodyComponentDto' - $ref: '#/components/schemas/WhatsappInputCardButtonsComponentDto' description: |- List of components in the cards. Each card in the template has an image or video header asset, card body text, and up to two buttons. All cards defined on a template must have the same components. Not required for draft. Field 'type' must have unique values across items. uniqueItems: true required: - components WhatsappInputCarouselComponentDto: type: object properties: type: uniqueItems: false allOf: - $ref: '#/components/schemas/WhatsappComponentTypeCarousel' cards: type: array items: $ref: '#/components/schemas/WhatsappInputCardDto' minItems: 1 maxItems: 10 description: | Media cards. All cards defined on a template must have the same components. It is only necessary to define two product cards upon template creation. An approved template with two product cards can be used to send up to 10 cards in a template message. Not required for draft. uniqueItems: false required: - type - cards WhatsappTemplateDetailsInputDto: type: object properties: components: type: array items: anyOf: - $ref: '#/components/schemas/WhatsappLocationHeaderComponentInputDto' - $ref: '#/components/schemas/WhatsappTextHeaderComponentInputDto' - $ref: '#/components/schemas/WhatsappMediaHeaderComponentInputDto' - $ref: '#/components/schemas/WhatsappBodyComponentInputDto' - $ref: '#/components/schemas/WhatsappFooterComponentInputDto' - $ref: '#/components/schemas/WhatsappButtonsComponentInputDto' - $ref: '#/components/schemas/WhatsappInputCarouselComponentDto' description: List of components in the template. Must contain a BODY component and can only have one entry of each type. Not required for draft. Field 'type' must have unique values across items. uniqueItems: true messageSendTtlSeconds: type: number description: |2- Template message delivery retry time-to-live (TTL) override value. If unable to deliver the template message, it will be periodically retry for this period of time. If it is unable to deliver the message for this period of time, the message will be dropped. | | AUTHENTICATION | MARKETING | UTILITY | | -- | -- | -- | -- | | Default | 10 minutes | 30 days | 30 days | | Customizable range | 10 seconds to 15 minutes | 12 hours to 30 days | 30 seconds to 12 hours | | Valid values | 10 to 900 seconds | 43200 to 2592000 seconds | 30 to 43200 seconds | Please note that authentication templates created before October 23, 2024, have a default TTL of 30 days. uniqueItems: false required: - components WhatsappActions: type: string enum: - DRAFT - SUBMIT description: Create as draft or submit. Defaults to submit. WhatsappInputTemplateLanguages: type: string enum: - AF - AR - AZ - BG - BN - CA - CS - DA - DE - EL - EN - EN_GB - EN_US - ES - ES_AR - ES_ES - ES_MX - ET - FA - FI - FIL - FR - GA - GU - HA - HE - HI - HR - HU - ID - IT - JA - KA - KK - KN - KO - KY_KG - LO - LT - LV - MK - ML - MR - MS - NB - NL - PA - PL - PT_BR - PT_PT - RO - RU - RW_RW - SK - SL - SQ - SR - SV - SW - TA - TE - TH - TR - UK - UR - UZ - VI - ZH_CN - ZH_HK - ZH_TW - ZU WhatsappTemplateInputCategory: type: string enum: - AUTHENTICATION - MARKETING - UTILITY WhatsappTemplateInputDto: type: object properties: status: description: Create as draft or submit. Defaults to submit. default: SUBMIT uniqueItems: false allOf: - $ref: '#/components/schemas/WhatsappActions' name: type: string pattern: ^[a-z0-9][a-z0-9_]*[a-z0-9]$ maxLength: 512 uniqueItems: false language: uniqueItems: false allOf: - $ref: '#/components/schemas/WhatsappInputTemplateLanguages' category: uniqueItems: false allOf: - $ref: '#/components/schemas/WhatsappTemplateInputCategory' saveDraftOnFailure: type: boolean default: false description: Flag to save template as draft if submission fails. Defaults to false. uniqueItems: false allowCategoryChange: type: boolean default: false description: True if Meta should be allowed to change the category if they determine the category is wrong. If false, Meta might reject the template if they determine the category is wrong based on the template contents. Defaults to false. uniqueItems: false details: description: '''Template input details and information.'' Not required for draft.' uniqueItems: false allOf: - $ref: '#/components/schemas/WhatsappTemplateDetailsInputDto' required: - name - language - category - details WhatsappUpdateTemplateDetailsInputDto: type: object properties: components: type: array items: anyOf: - $ref: '#/components/schemas/WhatsappLocationHeaderComponentInputDto' - $ref: '#/components/schemas/WhatsappTextHeaderComponentInputDto' - $ref: '#/components/schemas/WhatsappMediaHeaderComponentInputDto' - $ref: '#/components/schemas/WhatsappBodyComponentInputDto' - $ref: '#/components/schemas/WhatsappFooterComponentInputDto' - $ref: '#/components/schemas/WhatsappButtonsComponentInputDto' - $ref: '#/components/schemas/WhatsappInputCarouselComponentDto' description: List of components in the template. Must contain a BODY component and can only have one entry of each type. Not required for draft. Field 'type' must have unique values across items. uniqueItems: true messageSendTtlSeconds: type: number description: |2- Template message delivery retry time-to-live (TTL) override value. If unable to deliver the template message, it will be periodically retry for this period of time. If it is unable to deliver the message for this period of time, the message will be dropped. | | AUTHENTICATION | MARKETING | UTILITY | | -- | -- | -- | -- | | Default | 10 minutes | 30 days | 30 days | | Customizable range | 10 seconds to 15 minutes | 12 hours to 30 days | 30 seconds to 12 hours | | Valid values | 10 to 900 seconds | 43200 to 2592000 seconds | 30 to 43200 seconds | Please note that authentication templates created before October 23, 2024, have a default TTL of 30 days. uniqueItems: false WhatsappUpdateTemplateInputDto: type: object properties: status: default: DRAFT description: Create as draft or submit. Defaults to draft. uniqueItems: false allOf: - $ref: '#/components/schemas/WhatsappActions' category: description: Works if status template is DRAFT or it was rejected with INCORRECT_CATEGORY. uniqueItems: false allOf: - $ref: '#/components/schemas/WhatsappTemplateInputCategory' allowCategoryChange: type: boolean default: false description: Works if status template is DRAFT or it was rejected with INCORRECT_CATEGORY True if Meta should be allowed to change the category if they determine the category is wrong. If false, Meta might reject the template if they determine the category is wrong based on the template contents. Defaults to false. uniqueItems: false details: description: '''Template input details and information.'' Not required for draft.' uniqueItems: false allOf: - $ref: '#/components/schemas/WhatsappUpdateTemplateDetailsInputDto' WhatsappCommentType: type: string enum: - CREATED WhatsappCommentDto: type: object properties: type: uniqueItems: false allOf: - $ref: '#/components/schemas/WhatsappCommentType' comment: type: string uniqueItems: false created: type: string uniqueItems: false required: - type - comment WhatsappCommentInputDto: type: object properties: comment: type: string minLength: 1 maxLength: 65535 uniqueItems: false required: - comment WhatsappTemplateNotificationType: type: string enum: - COMMENT_ADDED - CREATED - DRAFT - EDITED - IN_PROGRESS - REJECTED WhatsappTemplateNotificationDto: type: object properties: type: uniqueItems: false allOf: - $ref: '#/components/schemas/WhatsappTemplateNotificationType' created: type: string uniqueItems: false author: type: string uniqueItems: false comment: type: string uniqueItems: false required: - type WhatsappTemplateNotificationListDto: type: object properties: totalSize: type: number description: Total size of the entries matching the search query. uniqueItems: false pageSize: type: number description: Requested size of the page. uniqueItems: false previousPageToken: type: string description: Encoded token to use in list request to fetch previous batch of entries. uniqueItems: false nextPageToken: type: string description: Encoded token to use in list request to fetch next batch of entries. uniqueItems: false notifications: type: array items: $ref: '#/components/schemas/WhatsappTemplateNotificationDto' uniqueItems: false required: - totalSize - pageSize - notifications WhatsappTemplateCompareBlockReasons: type: string enum: - NO_LONGER_NEEDED - NO_REASON - NO_REASON_GIVEN - NO_SIGN_UP - OFFENSIVE_MESSAGES - OTHER - OTP_DID_NOT_REQUEST - SPAM - UNKNOWN_BLOCK_REASON - UNRECOGNIZED description: Block reason WhatsappTemplateCompareIdentifierDto: type: object properties: name: type: string description: Template name uniqueItems: false language: description: Template language uniqueItems: false allOf: - $ref: '#/components/schemas/WhatsappTemplateLanguages' blockOrder: type: number description: Order of block rate uniqueItems: false messageSends: type: number description: Message send number uniqueItems: false topBlockReason: description: Block reason uniqueItems: false allOf: - $ref: '#/components/schemas/WhatsappTemplateCompareBlockReasons' required: - name - language - blockOrder - messageSends - topBlockReason WhatsappTemplateCompareDto: type: object properties: templates: type: array items: $ref: '#/components/schemas/WhatsappTemplateCompareIdentifierDto' description: List of templates uniqueItems: false required: - templates WhatsappInputTemplateCompareIdentifierDto: type: object properties: templateName: type: string pattern: ^[a-z0-9][a-z0-9_]*[a-z0-9]$ description: Template name uniqueItems: false templateLanguage: description: Template language uniqueItems: false allOf: - $ref: '#/components/schemas/WhatsappTemplateLanguages' required: - templateName - templateLanguage WhatsappInputTemplateCompareTimeframes: type: string enum: - '30' - '60' - '7' - '90' description: Timeframes are limited to 7, 30, 60 and 90 day lookbacks from the time of the request WhatsappInputTemplateCompareDto: type: object properties: templates: type: array items: $ref: '#/components/schemas/WhatsappInputTemplateCompareIdentifierDto' minItems: 1 maxItems: 1 description: List of templates uniqueItems: false timeframe: default: '7' description: Timeframes are limited to 7, 30, 60 and 90 day lookbacks from the time of the request uniqueItems: false allOf: - $ref: '#/components/schemas/WhatsappInputTemplateCompareTimeframes' endTimestamp: type: number format: timestamp default: 1759761503479 description: End of timeframe uniqueItems: false required: - templates WhatsappSenderStates: type: string enum: - ACTIVE - IN_PROGRESS - INACTIVE - PENDING_VERIFICATION - SUSPENDED - ERROR description: The current state of the sender. WhatsappSenderWhatsAppVertical: type: string enum: - ALCOHOL - AUTOMOTIVE - BEAUTY_SPA_SALON - CLOTHING_AND_APPAREL - EDUCATION - ENTERTAINMENT - EVENT_PLANNING_AND_SERVICE - FINANCE_AND_BANKING - FOOD_AND_GROCERY - HOTEL_AND_LODGING - MEDICAL_AND_HEALTH - NON_PROFIT - ONLINE_GAMBLING - OTC_DRUGS - OTHER - PHYSICAL_GAMBLING - PROFESSIONAL_SERVICES - PUBLIC_SERVICE - RESTAURANT - SHOPPING_AND_RETAIL - TRAVEL_AND_TRANSPORTATION - UNRECOGNIZED description: Category of the sender displayed in the Business Info within WhatsApp. WhatsappSenderDetailsDto: type: object properties: displayName: type: string description: Sender display name within WhatsApp. uniqueItems: false description: type: string description: Description of the sender displayed in the Business Info within WhatsApp. uniqueItems: false vertical: description: Category of the sender displayed in the Business Info within WhatsApp. uniqueItems: false allOf: - $ref: '#/components/schemas/WhatsappSenderWhatsAppVertical' email: type: string description: Contact email displayed in the Business Info within WhatsApp. uniqueItems: false address: type: string description: Business address displayed in the Business Info within WhatsApp. uniqueItems: false websiteOne: type: string description: Business website displayed in the Business Info within WhatsApp. uniqueItems: false websiteTwo: type: string description: Second business website displayed in the Business Info within WhatsApp. uniqueItems: false about: type: string description: |- About text displayed in the Business Info within WhatsApp. - Hyperlinks can be included but will not render as clickable links. - Markdown is not supported. uniqueItems: false photoUrl: type: string description: |- URL to the sender image displayed in WhatsApp. - Supported mime types: `image/jpeg`, `image/png` or `image/webp`. - Maximum file size: 5MB. - Minimum image dimensions: 192 x 192 px. - Maximum image dimensions: 640 x 640 px. - Image will be cropped to maximum image dimensions. - If you submit a PNG image with a transparent background, the background will be rendered as black. uniqueItems: false required: - displayName - vertical WhatsappSenderChangesDetailsDto: type: object properties: displayName: type: string description: Sender display name within WhatsApp. uniqueItems: false description: type: string description: Description of the sender displayed in the Business Info within WhatsApp. uniqueItems: false vertical: description: Category of the sender displayed in the Business Info within WhatsApp. uniqueItems: false allOf: - $ref: '#/components/schemas/WhatsappSenderWhatsAppVertical' email: type: string description: Contact email displayed in the Business Info within WhatsApp. uniqueItems: false address: type: string description: Business address displayed in the Business Info within WhatsApp. uniqueItems: false websiteOne: type: string description: Business website displayed in the Business Info within WhatsApp. uniqueItems: false websiteTwo: type: string description: Second business website displayed in the Business Info within WhatsApp. uniqueItems: false about: type: string description: |- About text displayed in the Business Info within WhatsApp. - Hyperlinks can be included but will not render as clickable links. - Markdown is not supported. uniqueItems: false photoUrl: type: string description: |- URL to the sender image displayed in WhatsApp. - Supported mime types: `image/jpeg`, `image/png` or `image/webp`. - Maximum file size: 5MB. - Minimum image dimensions: 192 x 192 px. - Maximum image dimensions: 640 x 640 px. - Image will be cropped to maximum image dimensions. - If you submit a PNG image with a transparent background, the background will be rendered as black. uniqueItems: false WhatsappSenderStatuses: type: string enum: - DRAFT - ERROR - IN_PROGRESS - REJECTED description: Current status of the pending changes. WhatsappSenderErrorCode: type: string enum: - CANNOT_ASSIGN_CREDIT_LINE - CANNOT_ASSIGN_SYSTEM_USER - CANNOT_CREATE_NEW_WHATSAPP_SENDER - CANNOT_CREATE_WABA_FOR_BUSINESS - CANNOT_GET_DETAILS_FOR_CLOUD_API - CANNOT_GET_WABA_DETAILS - CANNOT_REGISTER_NEW_WHATSAPP_SENDER - CANNOT_REGISTER_TO_CLOUD_API - CANNOT_SUBSCRIBE_TO_CLOUD_API - CANNOT_SUBSCRIBE_TO_WEBHOOK - DUPLICATES_ON_SENDER_PHONE_NUMBER - FAILED_TO_FETCH_APPROVED_MESSAGE_TEMPLATES - MULTIPLE_WABA_FOR_PROJECT_ID - NO_CERTIFICATE_AVAILABLE - NO_NOVA_ACCOUNT_ID - NO_PRICING_PLAN - NO_PROJECT_ID - NO_VERIFIED_PHONE_NUMBER - NOT_VERIFIED_REQUESTED_PHONE_NUMBER - NOT_VERIFY_BUSINESS_VIA_WHATSAPP - NOVA_ACCOUNT_ID_CONFLICT - PROJECT_ID_CONFLICT - SENDER_HAS_BEEN_DELETED - WABA_CONNECTED_TO_ANOTHER_PROJECT - UNKNOWN_ERROR - UNRECOGNIZED description: Error code if sender is in state `ERROR`. WhatsappSenderChangesDto: type: object properties: status: description: Current status of the pending changes. uniqueItems: false allOf: - $ref: '#/components/schemas/WhatsappSenderStatuses' details: oneOf: - $ref: '#/components/schemas/WhatsappSenderDetailsDto' description: For newly created sender - $ref: '#/components/schemas/WhatsappSenderChangesDetailsDto' description: For update sender description: The pending changes to sender details and information uniqueItems: false errorReason: type: string description: Error reason if sender is in state `ERROR`. uniqueItems: false errorCode: description: Error code if sender is in state `ERROR`. uniqueItems: false allOf: - $ref: '#/components/schemas/WhatsappSenderErrorCode' required: - status WhatsappSenderBotRegion: type: string enum: - BR - EU - US - UNRECOGNIZED description: Region sender is provisioned in. WhatsappSenderMetaLocalStorages: type: string enum: - AE - AU - BH - BR - CA - CH - DE - GB - ID - IN - JP - KR - SG - US - ZA - UNRECOGNIZED - UNSPECIFIED description: Region sender store the data in Meta. WhatsappConversationApiAppRegionsEnum: type: string enum: - BR - EU - US - UNRECOGNIZED description: App region. WhatsappConversationApiAppDto: type: object properties: id: type: string description: ID of the app uniqueItems: false projectId: type: string description: ID of the app project uniqueItems: false region: description: App region. uniqueItems: false allOf: - $ref: '#/components/schemas/WhatsappConversationApiAppRegionsEnum' required: - id - projectId - region WhatsappQualityRating: type: string enum: - GREEN - RED - YELLOW - UNKNOWN - UNRECOGNIZED description: Current quality rating of the sender. WhatsappDailyLimit: type: string enum: - NOT_SET - TIER_100K - TIER_10K - TIER_1K - TIER_250 - TIER_50 - TIER_UNLIMITED - UNRECOGNIZED description: Current daily message limit of the sender. WhatsappSenderNumberProviderType: type: string enum: - CUSTOMER - SINCH - UNRECOGNIZED description: Provider for phone number. WhatsappBusinessManagers: type: string enum: - SINCH_AMERICA - SINCH_BR - SINCH_MX - SINCH_SEP - SINCH_UK - UNRECOGNIZED description: Business manager. WhatsappWabaBanStates: type: string enum: - DISABLE - REINSTATE - SCHEDULE_FOR_DISABLE - UNRECOGNIZED description: Please use get account endpoint for this information. WhatsappRegions: type: string enum: - br - eu - us description: Conversation API app regions the sender can be used for. WhatsappSenderDto: type: object properties: id: type: string description: The unique ID of the sender. uniqueItems: false state: description: The current state of the sender. uniqueItems: false allOf: - $ref: '#/components/schemas/WhatsappSenderStates' changes: description: Any pending changes to the sender. uniqueItems: false allOf: - $ref: '#/components/schemas/WhatsappSenderChangesDto' details: description: Sender details and information. uniqueItems: false allOf: - $ref: '#/components/schemas/WhatsappSenderDetailsDto' region: description: Region sender is provisioned in. uniqueItems: false allOf: - $ref: '#/components/schemas/WhatsappSenderBotRegion' metaLocalStorage: description: Region sender store the data in Meta. uniqueItems: false allOf: - $ref: '#/components/schemas/WhatsappSenderMetaLocalStorages' conversationApiApp: type: string description: If set, the Conversation API App ID the sender is connected to. deprecated: true uniqueItems: false conversationApiAppDetails: description: If set, the details of the Conversation API App the sender is connected to. uniqueItems: false allOf: - $ref: '#/components/schemas/WhatsappConversationApiAppDto' maxTps: type: number description: Maximum sender TPS. uniqueItems: false qualityRating: description: Current quality rating of the sender. uniqueItems: false allOf: - $ref: '#/components/schemas/WhatsappQualityRating' dailyLimit: description: Current daily message limit of the sender. uniqueItems: false allOf: - $ref: '#/components/schemas/WhatsappDailyLimit' bearerToken: type: string description: Bearer token of the sender. The bearer token is needed to connect the sender to a Conversation API App. uniqueItems: false cloudApi: type: boolean description: True if the sender is hosted in WhatsApp Cloud API. deprecated: true uniqueItems: false created: type: string description: The UTC Date Time in ISO 8601 for when the sender was created. uniqueItems: false modified: type: string description: The UTC Date Time in ISO 8601 for when the sender was last modified. uniqueItems: false countryCode: type: string description: Country code of sender phone number. uniqueItems: false phoneNumber: type: string description: Sender phone number without country code. uniqueItems: false numberProvider: description: Provider for phone number. uniqueItems: false allOf: - $ref: '#/components/schemas/WhatsappSenderNumberProviderType' businessManager: description: Business manager. uniqueItems: false allOf: - $ref: '#/components/schemas/WhatsappBusinessManagers' wabaBanState: description: Please use get account endpoint for this information. deprecated: true uniqueItems: false allOf: - $ref: '#/components/schemas/WhatsappWabaBanStates' wabaBanDate: type: string description: Please use get account endpoint for this information. deprecated: true uniqueItems: false compatibleRegions: type: array uniqueItems: true description: Conversation API app regions the sender can be used for. items: $ref: '#/components/schemas/WhatsappRegions' required: - id - region - metaLocalStorage - cloudApi - businessManager - compatibleRegions WhatsappSenderListDto: type: object properties: totalSize: type: number description: Total size of the entries matching the search query. uniqueItems: false pageSize: type: number description: Requested size of the page. uniqueItems: false previousPageToken: type: string description: Encoded token to use in list request to fetch previous batch of entries. uniqueItems: false nextPageToken: type: string description: Encoded token to use in list request to fetch next batch of entries. uniqueItems: false senders: uniqueItems: false type: array items: $ref: '#/components/schemas/WhatsappSenderDto' required: - totalSize - pageSize - senders WhatsappSenderStatesEnum: type: string enum: - ACTIVE - IN_PROGRESS - INACTIVE - PENDING_VERIFICATION - SUSPENDED - ERROR WhatsappSenderStatusesEnum: type: string enum: - DRAFT - ERROR - IN_PROGRESS - REJECTED WhatsappSenderInputRegion: type: string enum: - BR - EU - US description: Region sender is provisioned in. WhatsappSenderInputMetaLocalStorages: type: string enum: - AE - AU - BH - BR - CA - CH - DE - GB - ID - IN - JP - KR - SG - US - ZA description: Region sender store the data in Meta. WhatsappInputBusinessManagersPublicDocumentation: type: string enum: - SINCH_BR - SINCH_MX - SINCH_UK description: Business manager. WhatsappSenderInputEsDto: type: object properties: region: description: Region sender is provisioned in. uniqueItems: false allOf: - $ref: '#/components/schemas/WhatsappSenderInputRegion' metaLocalStorage: description: Region sender store the data in Meta. uniqueItems: false allOf: - $ref: '#/components/schemas/WhatsappSenderInputMetaLocalStorages' wabaId: type: string description: WhatsApp Business Account that will be connected to the created sender. If left empty, we will try to find the WhatsApp Business Account using your projectId. uniqueItems: false phoneNumberId: type: string description: Phone number ID linked to the WhatsApp Business Account. uniqueItems: false businessManager: description: Business manager. uniqueItems: false allOf: - $ref: '#/components/schemas/WhatsappInputBusinessManagersPublicDocumentation' authenticationCode: type: string minLength: 1 description: Single-use access code. uniqueItems: false required: - wabaId - phoneNumberId WhatsappSenderInputBotRegion: type: string enum: - BR - EU - US description: Region sender is provisioned in. WhatsappSenderInputNumberProviderType: type: string enum: - CUSTOMER - SINCH description: If the phone number is provided by Sinch or the customer. WhatsappSenderInputWhatsAppVertical: type: string enum: - ALCOHOL - AUTOMOTIVE - BEAUTY_SPA_SALON - CLOTHING_AND_APPAREL - EDUCATION - ENTERTAINMENT - EVENT_PLANNING_AND_SERVICE - FINANCE_AND_BANKING - FOOD_AND_GROCERY - HOTEL_AND_LODGING - MEDICAL_AND_HEALTH - NON_PROFIT - ONLINE_GAMBLING - OTC_DRUGS - OTHER - PHYSICAL_GAMBLING - PROFESSIONAL_SERVICES - PUBLIC_SERVICE - RESTAURANT - SHOPPING_AND_RETAIL - TRAVEL_AND_TRANSPORTATION description: Category of the sender displayed in the Business Info within WhatsApp. WhatsappSenderInputOboDetailsDto: type: object properties: displayName: type: string minLength: 1 maxLength: 128 description: Sender display name within WhatsApp. uniqueItems: false description: type: string minLength: 1 maxLength: 512 description: Description of the sender displayed in the Business Info within WhatsApp. uniqueItems: false vertical: description: Category of the sender displayed in the Business Info within WhatsApp. uniqueItems: false allOf: - $ref: '#/components/schemas/WhatsappSenderInputWhatsAppVertical' email: type: string format: email maxLength: 128 description: Contact email displayed in the Business Info within WhatsApp. uniqueItems: false address: type: string minLength: 1 maxLength: 256 description: Business address displayed in the Business Info within WhatsApp. uniqueItems: false websiteOne: type: string format: url maxLength: 256 description: Business website displayed in the Business Info within WhatsApp. uniqueItems: false websiteTwo: type: string format: url maxLength: 256 description: Second business website displayed in the Business Info within WhatsApp. uniqueItems: false about: type: string minLength: 1 maxLength: 139 description: |- About text displayed in the Business Info within WhatsApp. - Hyperlinks can be included but will not render as clickable links. - Markdown is not supported. uniqueItems: false photoUrl: type: string format: url maxLength: 256 description: |- URL to the sender image displayed in WhatsApp. - Supported mime types: `image/jpeg`, `image/png` or `image/webp`. - Maximum file size: 5MB. - Minimum image dimensions: 192 x 192 px. - Maximum image dimensions: 640 x 640 px. - Image will be cropped to maximum image dimensions. - If you submit a PNG image with a transparent background, the background will be rendered as black. uniqueItems: false countryCode: type: string format: country code description: Numeric country codes (eg. 48 for PL, 44 for UK). uniqueItems: false phoneNumber: type: string format: numeric phone number maxLength: 32 description: |- Numeric phone number without numeric country code eg. 444555666. Cannot exist already such a sender with that phone number. If provided by Sinch. uniqueItems: false required: - displayName - vertical - countryCode WhatsappSenderInputOboDtoDeprecated: type: object properties: status: description: Create as draft or submit. Defaults to submit. default: SUBMIT uniqueItems: false allOf: - $ref: '#/components/schemas/WhatsappActions' region: description: Region sender is provisioned in. uniqueItems: false allOf: - $ref: '#/components/schemas/WhatsappSenderInputBotRegion' metaLocalStorage: description: Region sender store the data in Meta. uniqueItems: false allOf: - $ref: '#/components/schemas/WhatsappSenderInputMetaLocalStorages' phoneNumberProvider: description: If the phone number is provided by Sinch or the customer. uniqueItems: false allOf: - $ref: '#/components/schemas/WhatsappSenderInputNumberProviderType' saveDraftOnFailure: type: boolean default: false description: Flag to save sender as draft if submission fails. Defaults to false. uniqueItems: false details: description: Sender input details and information. uniqueItems: false allOf: - $ref: '#/components/schemas/WhatsappSenderInputOboDetailsDto' description: SenderInputOboDto is deprecated as Meta officially has declared End-Of-Life (EOL) on September 30, 2025. required: - phoneNumberProvider - details WhatsappSenderInputDetailsDto: type: object properties: displayName: type: string minLength: 1 maxLength: 128 description: Sender display name within WhatsApp. uniqueItems: false description: type: string minLength: 1 maxLength: 512 description: Description of the sender displayed in the Business Info within WhatsApp. uniqueItems: false vertical: description: Category of the sender displayed in the Business Info within WhatsApp. uniqueItems: false allOf: - $ref: '#/components/schemas/WhatsappSenderInputWhatsAppVertical' email: type: string format: email maxLength: 128 description: Contact email displayed in the Business Info within WhatsApp. uniqueItems: false address: type: string minLength: 1 maxLength: 256 description: Business address displayed in the Business Info within WhatsApp. uniqueItems: false websiteOne: type: string format: url maxLength: 256 description: Business website displayed in the Business Info within WhatsApp. uniqueItems: false websiteTwo: type: string format: url maxLength: 256 description: Second business website displayed in the Business Info within WhatsApp. uniqueItems: false about: type: string minLength: 1 maxLength: 139 description: |- About text displayed in the Business Info within WhatsApp. - Hyperlinks can be included but will not render as clickable links. - Markdown is not supported. uniqueItems: false photoUrl: type: string format: url maxLength: 256 description: |- URL to the sender image displayed in WhatsApp. - Supported mime types: `image/jpeg`, `image/png` or `image/webp`. - Maximum file size: 5MB. - Minimum image dimensions: 192 x 192 px. - Maximum image dimensions: 640 x 640 px. - Image will be cropped to maximum image dimensions. - If you submit a PNG image with a transparent background, the background will be rendered as black. uniqueItems: false required: - displayName - vertical WhatsappSenderInputDtoDeprecated: type: object properties: region: description: Region sender is provisioned in. uniqueItems: false allOf: - $ref: '#/components/schemas/WhatsappSenderInputRegion' metaLocalStorage: description: Region sender store the data in Meta. uniqueItems: false allOf: - $ref: '#/components/schemas/WhatsappSenderInputMetaLocalStorages' businessManager: description: Business manager. uniqueItems: false allOf: - $ref: '#/components/schemas/WhatsappInputBusinessManagersPublicDocumentation' wabaId: type: string description: WhatsApp Business Account that will be connected to the created sender. If left empty, we will try to find the WhatsApp Business Account using your projectId. uniqueItems: false phoneNumberId: type: string description: Phone number ID linked to the WhatsApp Business Account. uniqueItems: false facebookAccessToken: type: string format: uri minLength: 1 description: Long-Lived User access token. Mandatory if `facebookCode` is not provided. uniqueItems: false facebookCode: type: string format: uri minLength: 1 description: Single-use access code. Mandatory if `facebookAccessToken` is not provided. uniqueItems: false name: type: string minLength: 1 maxLength: 128 description: Sender name. uniqueItems: false details: description: Sender input details and information. uniqueItems: false allOf: - $ref: '#/components/schemas/WhatsappSenderInputDetailsDto' description: SenderInputDto is deprecated. Please use SenderInputEsDto. required: - name - details WhatsappSenderRegistrationMethod: type: string enum: - SMS - VOICE - UNRECOGNIZED description: Registration Method of the sender. WhatsappSenderRegisterDto: type: object properties: id: type: string description: The unique ID of the sender. uniqueItems: false method: description: Registration Method of the sender. uniqueItems: false allOf: - $ref: '#/components/schemas/WhatsappSenderRegistrationMethod' accepted: type: string description: The UTC Date Time in ISO 8601 for when the sender was accepted. uniqueItems: false required: - id - method - accepted WhatsappSenderInputRegistrationMethod: type: string enum: - SMS - VOICE description: Registration Method of the sender. WhatsappSenderInputRegisterDto: type: object properties: method: description: Registration Method of the sender. uniqueItems: false allOf: - $ref: '#/components/schemas/WhatsappSenderInputRegistrationMethod' required: - method WhatsappSenderInputVerifyDto: type: object properties: code: type: string format: otp example: '123456' description: OTP code to verify the sender. Must be exact 6 characters without spaces. uniqueItems: false required: - code WhatsappSenderNotificationType: type: string enum: - ACTIVE - COMMENT_ADDED - CREATED - DRAFT - EDITED - ERROR - IN_PROGRESS - INACTIVE - REGISTERED - REJECTED - VERIFIED WhatsappSenderNotificationDto: type: object properties: type: uniqueItems: false allOf: - $ref: '#/components/schemas/WhatsappSenderNotificationType' created: type: string uniqueItems: false author: type: string uniqueItems: false comment: type: string uniqueItems: false required: - type WhatsappSenderNotificationListDto: type: object properties: totalSize: type: number description: Total size of the entries matching the search query. uniqueItems: false pageSize: type: number description: Requested size of the page. uniqueItems: false previousPageToken: type: string description: Encoded token to use in list request to fetch previous batch of entries. uniqueItems: false nextPageToken: type: string description: Encoded token to use in list request to fetch next batch of entries. uniqueItems: false notifications: type: array items: $ref: '#/components/schemas/WhatsappSenderNotificationDto' uniqueItems: false required: - totalSize - pageSize - notifications WhatsappUpdateSenderInputDetailsDto: type: object properties: displayName: type: string minLength: 1 maxLength: 128 description: Sender display name within WhatsApp. uniqueItems: false description: type: string minLength: 1 maxLength: 512 description: Description of the sender displayed in the Business Info within WhatsApp. If null the value will be deleted. nullable: true uniqueItems: false vertical: description: Category of the sender displayed in the Business Info within WhatsApp. uniqueItems: false allOf: - $ref: '#/components/schemas/WhatsappSenderInputWhatsAppVertical' email: type: string format: email maxLength: 128 nullable: true description: Contact email displayed in the Business Info within WhatsApp. If null the value will be deleted. uniqueItems: false address: type: string minLength: 1 maxLength: 256 nullable: true description: Business address displayed in the Business Info within WhatsApp. If null the value will be deleted. uniqueItems: false websiteOne: type: string format: url maxLength: 256 nullable: true description: Business website displayed in the Business Info within WhatsApp. If null the value will be deleted. uniqueItems: false websiteTwo: type: string format: url maxLength: 256 nullable: true description: Second business website displayed in the Business Info within WhatsApp. If null the value will be deleted. uniqueItems: false about: type: string minLength: 1 maxLength: 139 nullable: true description: |- About text displayed in the Business Info within WhatsApp. - Hyperlinks can be included but will not render as clickable links. - Markdown is not supported. If null the value will be deleted. uniqueItems: false photoUrl: type: string format: url maxLength: 256 nullable: true description: |- URL to the sender image displayed in WhatsApp. - Supported mime types: `image/jpeg`, `image/png` or `image/webp`. - Maximum file size: 5MB. - Minimum image dimensions: 192 x 192 px. - Maximum image dimensions: 640 x 640 px. - Image will be cropped to maximum image dimensions. - If you submit a PNG image with a transparent background, the background will be rendered as black. If null the value will be deleted. uniqueItems: false WhatsappUpdateSenderInputDto: type: object properties: status: default: DRAFT description: Create as draft or submit. Defaults to draft. uniqueItems: false allOf: - $ref: '#/components/schemas/WhatsappActions' details: uniqueItems: false allOf: - $ref: '#/components/schemas/WhatsappUpdateSenderInputDetailsDto' WhatsappSolutionDetailsDto: type: object properties: name: type: string description: The name of the solution. uniqueItems: false required: - name WhatsappSolutionMetaAppDto: type: object properties: id: type: number readOnly: true description: The unique ID of the Meta App. uniqueItems: false name: type: string readOnly: true description: The name of the Meta App. uniqueItems: false required: - id - name WhatsappSolutionDto: type: object properties: id: type: string readOnly: true description: The unique ID of the solution uniqueItems: false details: description: Solution details and information. uniqueItems: false allOf: - $ref: '#/components/schemas/WhatsappSolutionDetailsDto' partnerApp: readOnly: true description: The Meta App of the Tech Provider. uniqueItems: false allOf: - $ref: '#/components/schemas/WhatsappSolutionMetaAppDto' ownerApp: readOnly: true description: The Meta App of the Solution Partner (e.g. Sinch). uniqueItems: false allOf: - $ref: '#/components/schemas/WhatsappSolutionMetaAppDto' assigned: type: boolean readOnly: true description: If project has been assigned to this solution. uniqueItems: false required: - id - details - assigned WhatsappSolutionListDto: type: object properties: solutions: type: array items: $ref: '#/components/schemas/WhatsappSolutionDto' description: List of solutions. uniqueItems: false required: - solutions WhatsappSolutionDetailsInputDto: type: object properties: name: type: string description: The name of the solution. uniqueItems: false required: - name WhatsappSolutionInputDto: type: object properties: details: description: Solution details and information. uniqueItems: false allOf: - $ref: '#/components/schemas/WhatsappSolutionDetailsInputDto' accessToken: type: string description: The accessToken received from the authResponse, returned when completing the embedded solution flow. uniqueItems: false businessManager: description: Business manager. uniqueItems: false allOf: - $ref: '#/components/schemas/WhatsappInputBusinessManagersPublicDocumentation' required: - details - accessToken - businessManager WhatsappWabaNumbersDto: type: object properties: id: type: string description: Unique id of the number. uniqueItems: false displayPhoneNumber: type: string description: The number displayed in E.164 format. uniqueItems: false provisioned: type: boolean description: True if the number is available for usage, false otherwise. uniqueItems: false required: - id - displayPhoneNumber - provisioned WhatsappWabaDetailsDto: type: object properties: id: type: string description: The id of the WhatsApp Business Account. uniqueItems: false name: type: string description: The name of the WhatsApp Business Account. uniqueItems: false numbers: description: The numbers that are shared to the WhatsApp Business Account. uniqueItems: false type: array items: $ref: '#/components/schemas/WhatsappWabaNumbersDto' required: - id - name - numbers WhatsappWabaDetailsListDto: type: object properties: wabas: uniqueItems: false type: array items: $ref: '#/components/schemas/WhatsappWabaDetailsDto' required: - wabas WhatsappInputBusinessManagers: type: string enum: - SINCH_AMERICA - SINCH_BR - SINCH_MX - SINCH_SEP - SINCH_UK description: Business manager. WhatsappWabaDetailsListInputDto: type: object properties: facebookToken: type: string description: Long-Lived User access token. uniqueItems: false businessManager: description: Business manager. uniqueItems: false allOf: - $ref: '#/components/schemas/WhatsappInputBusinessManagers' required: - facebookToken WhatsappLongLivedAccessTokenDto: type: object properties: longLivedAccessToken: type: string uniqueItems: false required: - longLivedAccessToken WhatsappLongLivedAccessTokenInputDto: type: object properties: facebookToken: type: string format: uri minLength: 1 description: Long-Lived User access token. Mandatory if `facebookCode` is not provided. uniqueItems: false facebookCode: type: string format: uri minLength: 1 description: Single-use access code. Mandatory if `facebookToken` is not provided. uniqueItems: false businessManager: description: Business manager. uniqueItems: false allOf: - $ref: '#/components/schemas/WhatsappInputBusinessManagers' WhatsappAccountState: type: string enum: - ONBOARDED - PENDING_FACEBOOK_VERIFICATION - REJECTED description: The current state of your account. WhatsappAccountDetailsDto: type: object properties: clientBusinessManagerId: type: string description: The Business Manager ID for the client. uniqueItems: false companyLegalName: type: string description: The registered name of the brand who will be engaging with their users. uniqueItems: false required: - clientBusinessManagerId - companyLegalName WhatsappAccountChangesDetailsDto: type: object properties: clientBusinessManagerId: type: string description: The Business Manager ID for the client. uniqueItems: false companyLegalName: type: string description: The registered name of the brand who will be engaging with their users. uniqueItems: false WhatsappAccountChangeState: type: string enum: - DRAFT - IN_PROGRESS - PENDING_FACEBOOK_VERIFICATION - REJECTED description: Current status of the pending changes. WhatsappAccountChangesDto: type: object properties: status: description: Current status of the pending changes. uniqueItems: false allOf: - $ref: '#/components/schemas/WhatsappAccountChangeState' details: oneOf: - $ref: '#/components/schemas/WhatsappAccountDetailsDto' description: For newly created account - $ref: '#/components/schemas/WhatsappAccountChangesDetailsDto' description: For update account description: The pending changes to account details and information uniqueItems: false required: - status WhatsappCountryCodes: type: string enum: - AD - AE - AF - AG - AI - AL - AM - AO - AQ - AR - AS - AT - AU - AW - AZ - BA - BB - BD - BE - BF - BG - BH - BI - BJ - BM - BN - BO - BQ - BR - BS - BT - BW - BY - BZ - CA - CD - CF - CG - CH - CI - CK - CL - CM - CN - CO - CR - CU - CV - CW - CY - CZ - DE - DJ - DK - DM - DO - DZ - EC - EE - EG - ER - ES - ET - FI - FJ - FK - FM - FO - FR - GA - GB - GD - GE - GF - GG - GH - GI - GL - GM - GN - GP - GQ - GR - GT - GU - GW - GY - HK - HN - HR - HT - HU - ID - IE - IL - IM - IN - IO - IQ - IR - IS - IT - JE - JM - JO - JP - KE - KG - KH - KI - KM - KN - KP - KR - KW - KY - KZ - LA - LB - LC - LI - LK - LR - LS - LT - LU - LV - LY - MA - MC - MD - ME - MG - MH - MK - ML - MM - MN - MO - MP - MQ - MR - MS - MT - MU - MV - MW - MX - MY - MZ - NA - NC - NE - NF - NG - NI - NL - 'NO' - NP - NR - NU - NZ - OM - PA - PE - PF - PG - PH - PK - PL - PM - PR - PS - PT - PW - PY - QA - RE - RO - RS - RU - RW - SA - SB - SC - SD - SE - SG - SH - SI - SK - SL - SM - SN - SO - SR - SS - ST - SV - SX - SY - SZ - TC - TD - TG - TH - TJ - TK - TL - TM - TN - TO - TR - TT - TV - TW - TZ - UA - UG - UM - US - UY - UZ - VC - VE - VG - VI - VN - VU - WF - WS - XK - YE - YT - ZA - ZM - ZW - UNRECOGNIZED description: Two-letter country code in ISO 3166 standard, specifying the country where business is based WhatsappAccountDto: type: object properties: state: description: The current state of your account. uniqueItems: false allOf: - $ref: '#/components/schemas/WhatsappAccountState' isEmbeddedSignup: type: boolean description: '`true` if the Account was created through Embedded Signup. `false` otherwise.' uniqueItems: false businessManager: description: Business manager. uniqueItems: false allOf: - $ref: '#/components/schemas/WhatsappBusinessManagers' wabaId: type: string description: WhatsApp Business Manager ID. uniqueItems: false changes: description: Any pending changes to the account. uniqueItems: false allOf: - $ref: '#/components/schemas/WhatsappAccountChangesDto' details: description: Account details and information. uniqueItems: false allOf: - $ref: '#/components/schemas/WhatsappAccountDetailsDto' wabaBanState: description: Ban state when account has been banned. uniqueItems: false allOf: - $ref: '#/components/schemas/WhatsappWabaBanStates' wabaBanDate: type: string description: The UTC Date Time in ISO 8601 for when account has been banned. uniqueItems: false wabaEnabledForInsights: type: boolean description: Template analytics status for account. uniqueItems: false compatibleRegions: type: array uniqueItems: true description: Conversation API app regions the sender can be used for. items: $ref: '#/components/schemas/WhatsappRegions' primaryBusinessLocation: description: Two-letter country code in ISO 3166 standard, specifying the country where business is based uniqueItems: false allOf: - $ref: '#/components/schemas/WhatsappCountryCodes' required: - isEmbeddedSignup - businessManager - compatibleRegions WhatsappAccountInputDto: type: object properties: companyLegalName: type: string minLength: 1 maxLength: 255 description: 'The registered name of the brand who will be engaging with their users needs to be specified. This name must match the name associated with the Facebook Business Manager ID below. You can verify the registered name by visiting: https://business.facebook.com/select/?business_id= Ensure that the name shown exactly matches the one you enter here.' uniqueItems: false clientBusinessManagerId: type: string minLength: 1 maxLength: 255 description: The Business Manager ID for the client to create the account. This can be found in the Meta Business Manager in Business Settings > Business Info below the Business Manager Account Name. uniqueItems: false businessManager: description: Business manager. uniqueItems: false allOf: - $ref: '#/components/schemas/WhatsappInputBusinessManagers' required: - companyLegalName - clientBusinessManagerId WhatsappUpdateAccountInputDto: type: object properties: companyLegalName: type: string minLength: 1 maxLength: 255 description: 'The registered name of the brand who will be engaging with their users needs to be specified. This name must match the name associated with the Facebook Business Manager ID below. You can verify the registered name by visiting: https://business.facebook.com/select/?business_id= Ensure that the name shown exactly matches the one you enter here.' uniqueItems: false clientBusinessManagerId: type: string minLength: 1 maxLength: 255 description: The Business Manager ID for the client to create the account. This can be found in the Meta Business Manager in Business Settings > Business Info below the Business Manager Account Name. uniqueItems: false WhatsappAccountNotificationType: type: string enum: - COMMENT_ADDED - CREATED - DRAFT - EDITED - IN_PROGRESS - PENDING_FACEBOOK_VERIFICATION - REJECTED WhatsappAccountNotificationDto: type: object properties: type: uniqueItems: false allOf: - $ref: '#/components/schemas/WhatsappAccountNotificationType' created: type: string uniqueItems: false author: type: string uniqueItems: false comment: type: string uniqueItems: false required: - type WhatsappAccountNotificationListDto: type: object properties: totalSize: type: number description: Total size of the entries matching the search query. uniqueItems: false pageSize: type: number description: Requested size of the page. uniqueItems: false previousPageToken: type: string description: Encoded token to use in list request to fetch previous batch of entries. uniqueItems: false nextPageToken: type: string description: Encoded token to use in list request to fetch next batch of entries. uniqueItems: false notifications: type: array items: $ref: '#/components/schemas/WhatsappAccountNotificationDto' uniqueItems: false required: - totalSize - pageSize - notifications WhatsappWhatsAppFlowStatuses: type: string enum: - FLOW_STATUS_DEPRECATED - FLOW_STATUS_DRAFT - FLOW_STATUS_PUBLISHED - UNRECOGNIZED description: Flow status. WhatsappFlowDto: type: object properties: id: type: string description: Unique identifier for the flow. uniqueItems: false name: type: string description: Name of the flow. uniqueItems: false status: description: Flow status. uniqueItems: false allOf: - $ref: '#/components/schemas/WhatsappWhatsAppFlowStatuses' required: - id - name - status WhatsappFlowListDto: type: object properties: totalSize: type: number description: Total size of the entries matching the search query. uniqueItems: false pageSize: type: number description: Requested size of the page. uniqueItems: false previousPageToken: type: string description: Encoded token to use in list request to fetch previous batch of entries. uniqueItems: false nextPageToken: type: string description: Encoded token to use in list request to fetch next batch of entries. uniqueItems: false flows: description: List of flows in the WABA linked to the project. uniqueItems: false type: array items: $ref: '#/components/schemas/WhatsappFlowDto' required: - totalSize - pageSize - flows WhatsappFlowScreenDto: type: object properties: id: type: string description: Unique identifier of the screen which works as a page url. uniqueItems: false required: - id WhatsappFlowScreenListDto: type: object properties: screens: description: List of screens for flow. uniqueItems: false type: array items: $ref: '#/components/schemas/WhatsappFlowScreenDto' required: - screens BundlesBundleServicesState: type: string enum: - DONE - FAILED - IN_PROGRESS description: Current state. BundlesHttpStatusCode: type: number enum: - 100 - 101 - 102 - 103 - 200 - 201 - 202 - 203 - 204 - 205 - 206 - 207 - 208 - 226 - 300 - 301 - 302 - 303 - 304 - 305 - 306 - 307 - 308 - 400 - 401 - 402 - 403 - 404 - 405 - 406 - 407 - 408 - 409 - 410 - 411 - 412 - 413 - 414 - 415 - 416 - 417 - 418 - 421 - 422 - 423 - 424 - 425 - 426 - 428 - 429 - 431 - 451 - 500 - 501 - 502 - 503 - 504 - 505 - 506 - 507 - 508 - 510 - 511 BundlesWebhookDeliveryStatusDto: type: object properties: webhookId: type: string uniqueItems: false httpStatusCode: uniqueItems: false allOf: - $ref: '#/components/schemas/BundlesHttpStatusCode' errorMessage: type: string uniqueItems: false date: type: string uniqueItems: false required: - webhookId - httpStatusCode - date BundlesBundlesRegion: type: string enum: - BR - EU - US description: Region resources were create in. BundlesSubprojectStatus: type: string enum: - PENDING - READY description: Status of subproject. BundlesSubprojectDto: type: object properties: id: type: string description: Subproject id. uniqueItems: false name: type: string description: Name of Subproject. maxLength: 255 uniqueItems: false labels: type: object additionalProperties: type: string description: Project labels, if provided. uniqueItems: false parentProjectId: type: string description: Parent project id which the subproject is associated with. uniqueItems: false status: description: Status of subproject. uniqueItems: false allOf: - $ref: '#/components/schemas/BundlesSubprojectStatus' required: - id - name - parentProjectId - status BundlesProvisioningStates: type: string enum: - ACTIVE - BLOCKED - DELETED - DEPROVISIONING - DEPROVISIONING_FAILED - FAILED_ADD - FAILED_BLOCK - FAILED_DELETE - FAILED_UNBLOCK - FAILED_UPDATE - IN_PROGRESS_ADD - IN_PROGRESS_BLOCK - IN_PROGRESS_DELETE - IN_PROGRESS_UNBLOCK - IN_PROGRESS_UPDATE - PENDING_ADD - PENDING_BLOCK - PENDING_DELETE - PENDING_UNBLOCK - PENDING_UPDATE - PROVISIONING - PROVISIONING_ADD - PROVISIONING_ADD_FAILED - PROVISIONING_BLOCK - PROVISIONING_BLOCK_FAILED - PROVISIONING_FAILED - PROVISIONING_UNBLOCK - PROVISIONING_UNBLOCK_FAILED - PROVISIONING_UPDATE - PROVISIONING_UPDATE_FAILED - STATUS_UNSPECIFIED - UNRECOGNIZED description: Status of SMS App. BundlesSmsAppDto: type: object properties: id: type: string description: SMS App id. uniqueItems: false smsServiceId: type: string description: Id of the SMS Service which the SMS App belongs to. uniqueItems: false name: type: string description: Name of SMS App. maxLength: 255 uniqueItems: false status: description: Status of SMS App. uniqueItems: false allOf: - $ref: '#/components/schemas/BundlesProvisioningStates' accessTokens: description: SMS App access tokens. uniqueItems: false type: array items: type: string required: - id - smsServiceId - name - status BundlesWebhooksWebhookTrigger: type: string enum: - BATCH_STATUS_UPDATE - BILLING_CREDIT_LIMIT_BREACHED - CAPABILITY - CHANNEL_EVENT - CONSENT_BATCH_COMPLETE - CONTACT_CREATE - CONTACT_DELETE - CONTACT_IDENTITIES_DUPLICATION - CONTACT_MERGE - CONTACT_UPDATE - CONVERSATION_DELETE - CONVERSATION_START - CONVERSATION_STOP - EVENT_DELIVERY - EVENT_INBOUND - MESSAGE_DELIVERY - MESSAGE_INBOUND - MESSAGE_INBOUND_SMART_CONVERSATION_REDACTION - MESSAGE_SUBMIT - OPT_IN - OPT_OUT - RECORD_NOTIFICATION - SMART_CONVERSATION - UNRECOGNIZED - UNSPECIFIED_TRIGGER - UNSUPPORTED description: An array of triggers that should trigger the webhook and result in an event being sent to the target url. BundlesConversationAppWebhooksDto: type: object properties: id: type: string description: The ID of the webhook. uniqueItems: false target: type: string maxLength: 742 description: The target url where events should be sent to. uniqueItems: false triggers: type: array maxItems: 20 uniqueItems: true description: An array of triggers that should trigger the webhook and result in an event being sent to the target url. items: $ref: '#/components/schemas/BundlesWebhooksWebhookTrigger' secret: type: string description: Optional secret used to sign contents of webhooks sent by the Conversation API. You can then use the secret to verify the signature. uniqueItems: false required: - id - target - triggers BundlesConversationAppProcessingModes: type: string enum: - CONVERSATION - DISPATCH - UNRECOGNIZED - UNSPECIFIED description: Conversation API processing mode. BundlesConversationAppRetentionPolicyTypes: type: string enum: - CONVERSATION_EXPIRE_POLICY - MESSAGE_EXPIRE_POLICY - PERSIST_RETENTION_POLICY - UNRECOGNIZED description: |- Conversation API retention policy type. BundlesConversationAppRetentionPolicyDto: type: object properties: retentionPolicyType: description: |- Conversation API retention policy type. uniqueItems: false allOf: - $ref: '#/components/schemas/BundlesConversationAppRetentionPolicyTypes' ttl: type: number description: |- Conversation API retention time in days. uniqueItems: false required: - retentionPolicyType BundlesConversationAppDto: type: object properties: id: type: string description: Conversation App id. uniqueItems: false name: type: string description: Name of Conversation App. maxLength: 255 uniqueItems: false webhooks: type: array items: $ref: '#/components/schemas/BundlesConversationAppWebhooksDto' maxItems: 5 description: List all webhooks for a given app. uniqueItems: false processingMode: description: Conversation API processing mode. uniqueItems: false allOf: - $ref: '#/components/schemas/BundlesConversationAppProcessingModes' retentionPolicy: description: Conversation API retention policy for messages and conversations. uniqueItems: false allOf: - $ref: '#/components/schemas/BundlesConversationAppRetentionPolicyDto' required: - id - name - processingMode BundlesWebhookTriggers: type: string enum: - ALL - BUNDLE_DONE - KAKAOTALK_SENDER_ACTIVE - KAKAOTALK_SENDER_COMMENT_ADDED - KAKAOTALK_SENDER_INACTIVE - KAKAOTALK_SENDER_REJECTED - KAKAOTALK_TEMPLATE_APPROVED - KAKAOTALK_TEMPLATE_COMMENT_ADDED - KAKAOTALK_TEMPLATE_REJECTED - RCS_SENDER_COMMENT_ADDED - RCS_SENDER_OPERATOR_STATUS_UPDATED - RCS_SENDER_STATUS_UPDATED - RCS_ACCOUNT_COMMENT_ADDED - WHATSAPP_ACCOUNT_COMMENT_ADDED - WHATSAPP_ACCOUNT_ONBOARDED - WHATSAPP_ACCOUNT_PENDING_VERIFICATION - WHATSAPP_ACCOUNT_REJECTED - WHATSAPP_WABA_ACCOUNT_CHANGED - WHATSAPP_SENDER_ACTIVE - WHATSAPP_SENDER_COMMENT_ADDED - WHATSAPP_SENDER_DAILY_LIMIT_CHANGED - WHATSAPP_SENDER_ERROR - WHATSAPP_SENDER_INACTIVE - WHATSAPP_SENDER_PENDING_VERIFICATION - WHATSAPP_SENDER_QUALITY_RATING_CHANGED - WHATSAPP_SENDER_REJECTED - WHATSAPP_TEMPLATE_APPROVED - WHATSAPP_TEMPLATE_CATEGORY_FUTURE_UPDATE - WHATSAPP_TEMPLATE_CATEGORY_UPDATED - WHATSAPP_TEMPLATE_COMMENT_ADDED - WHATSAPP_TEMPLATE_DELETED - WHATSAPP_TEMPLATE_QUALITY_SCORE_UPDATED - WHATSAPP_TEMPLATE_REJECTED - WHATSAPP_TEMPLATE_STATUS_UPDATED description: List of triggers this webhook is triggered by. BundlesWebhookDto: type: object properties: id: type: string description: The ID of the webhook. uniqueItems: false target: type: string description: The target url where events will be sent to. uniqueItems: false projectId: type: string description: The project that this webhook belongs to. uniqueItems: false triggers: type: array uniqueItems: true description: List of triggers this webhook is triggered by. items: $ref: '#/components/schemas/BundlesWebhookTriggers' required: - id - target - projectId - triggers BundlesBundlesDto: type: object properties: id: type: string description: Id of bundle created. uniqueItems: false projectId: type: string description: The project or subproject id where resources have been created. uniqueItems: false name: type: string description: Name of bundle created. If a name was not specified in the resource blocks then they were created with this name. maxLength: 255 uniqueItems: false state: description: Current state. uniqueItems: false allOf: - $ref: '#/components/schemas/BundlesBundleServicesState' webhookDeliveryStatuses: description: List delivery statuses for all BUNDLE_DONE webhooks. uniqueItems: false type: array items: $ref: '#/components/schemas/BundlesWebhookDeliveryStatusDto' region: description: Region resources were create in. uniqueItems: false allOf: - $ref: '#/components/schemas/BundlesBundlesRegion' subproject: description: Subproject created, if requested. uniqueItems: false allOf: - $ref: '#/components/schemas/BundlesSubprojectDto' smsApp: description: SMS App created, if requested. uniqueItems: false allOf: - $ref: '#/components/schemas/BundlesSmsAppDto' convApp: description: Conversation App created, if requested. uniqueItems: false allOf: - $ref: '#/components/schemas/BundlesConversationAppDto' webhooks: description: Webhooks registered, if requested. uniqueItems: false type: array items: $ref: '#/components/schemas/BundlesWebhookDto' required: - id - projectId - state - region BundlesSubprojectInputDto: type: object properties: name: type: string description: |- Name of subproject to create. If not set, will use `name` from root object. If neither this value or the `name` in the root is set, then the request will fail. maxLength: 255 uniqueItems: false labels: type: object additionalProperties: type: string description: | Optional labels to attach to the subproject. If provided must be an object with string keys and string values. uniqueItems: false BundlesSmsAppInputDto: type: object properties: name: type: string description: | Name of SMS App to create. If not set, will use `name` from root object. If neither this value or the `name` in the root is set, then the request will fail. maxLength: 255 uniqueItems: false BundlesWebhooksInputWebhookTrigger: type: string enum: - BATCH_STATUS_UPDATE - BILLING_CREDIT_LIMIT_BREACHED - CAPABILITY - CHANNEL_EVENT - CONSENT_BATCH_COMPLETE - CONTACT_CREATE - CONTACT_DELETE - CONTACT_IDENTITIES_DUPLICATION - CONTACT_MERGE - CONTACT_UPDATE - CONVERSATION_DELETE - CONVERSATION_START - CONVERSATION_STOP - EVENT_DELIVERY - EVENT_INBOUND - MESSAGE_DELIVERY - MESSAGE_INBOUND - MESSAGE_INBOUND_SMART_CONVERSATION_REDACTION - MESSAGE_SUBMIT - OPT_IN - OPT_OUT - RECORD_NOTIFICATION - SMART_CONVERSATION - UNSUPPORTED description: An array of triggers that should trigger the webhook and result in an event being sent to the target url. BundlesConversationAppWebhooksInputDto: type: object properties: target: type: string maxLength: 742 description: The target url where events should be sent to. The conversation-api.*.sinch.com subdomains are forbidden. uniqueItems: false triggers: type: array uniqueItems: true maxLength: 20 description: An array of triggers that should trigger the webhook and result in an event being sent to the target url. items: $ref: '#/components/schemas/BundlesWebhooksInputWebhookTrigger' secret: type: string description: Optional secret used to sign contents of webhooks sent by the Conversation API. You can then use the secret to verify the signature. uniqueItems: false required: - target - triggers BundlesInputConversationAppConversationRetentionPolicyTypes: type: string enum: - CONVERSATION_EXPIRE_POLICY - MESSAGE_EXPIRE_POLICY - PERSIST_RETENTION_POLICY description: |- Conversation API conversation retention policy type. BundlesConversationAppConversationRetentionPolicyInputDto: type: object properties: retentionPolicyType: description: |- Conversation API conversation retention policy type. default: MESSAGE_EXPIRE_POLICY uniqueItems: false allOf: - $ref: '#/components/schemas/BundlesInputConversationAppConversationRetentionPolicyTypes' ttl: type: number minimum: 1 maximum: 3650 description: |- Conversation API conversation retention time in days. default: 180 uniqueItems: false BundlesInputConversationAppDispatchRetentionPolicyTypes: type: string enum: - MESSAGE_EXPIRE_POLICY description: |- Conversation API dispatch retention policy type. BundlesConversationAppDispatchRetentionPolicyInputDto: type: object properties: retentionPolicyType: description: |- Conversation API dispatch retention policy type. default: MESSAGE_EXPIRE_POLICY uniqueItems: false allOf: - $ref: '#/components/schemas/BundlesInputConversationAppDispatchRetentionPolicyTypes' ttl: type: number minimum: 0 maximum: 7 description: |- Conversation API dispatch retention time in days. default: 7 uniqueItems: false BundlesInputConversationAppProcessingModes: type: string enum: - CONVERSATION - DISPATCH description: |- Conversation API processing mode. May be changed later by using Conversation App API. BundlesConversationAppInputDto: type: object properties: name: type: string description: |- Name of Conversation API App to create. If not set, will use `name` from root object. If neither this value or the `name` in the root is set, then the request will fail. maxLength: 255 uniqueItems: false webhooks: type: array items: $ref: '#/components/schemas/BundlesConversationAppWebhooksInputDto' maxItems: 5 description: | Conversation API webhooks to create for the new App. See Conversation API documentation for all options. uniqueItems: false processingMode: description: |- Conversation API processing mode. May be changed later by using Conversation App API. default: DISPATCH uniqueItems: false allOf: - $ref: '#/components/schemas/BundlesInputConversationAppProcessingModes' retentionPolicy: oneOf: - $ref: '#/components/schemas/BundlesConversationAppConversationRetentionPolicyInputDto' description: |- Retention policy in CONVERSATION mode. - $ref: '#/components/schemas/BundlesConversationAppDispatchRetentionPolicyInputDto' description: |- Retention policy in DISPATCH mode. description: |- Conversation API retention policy for messages and conversations. May be changed later by using Conversation App API. uniqueItems: false BundlesWebhookInputDto: type: object properties: target: type: string description: A valid target url where events should be sent to. maxLength: 742 minLength: 1 format: url uniqueItems: false secret: type: string description: Secret to be used to sign contents of webhooks sent by the provisioning API. You can then use the secret to verify the signature. Please not that secret should have a high entropy to be considered secure. maxLength: 128 minLength: 1 uniqueItems: false triggers: type: array uniqueItems: true minItems: 1 description: |- List of triggers you want to be notified about on your webhook. To be able to listen to all type of events use `ALL`. - Common: `ALL` - Bundles: `BUNDLE_DONE` - WhatsApp Sender: `WHATSAPP_SENDER_ACTIVE`, `WHATSAPP_SENDER_COMMENT_ADDED`, `WHATSAPP_SENDER_DAILY_LIMIT_CHANGED`, `WHATSAPP_SENDER_ERROR`, `WHATSAPP_SENDER_INACTIVE`, `WHATSAPP_SENDER_PENDING_VERIFICATION`, `WHATSAPP_SENDER_QUALITY_RATING_CHANGED` or `WHATSAPP_SENDER_REJECTED` - WhatsApp Template: `WHATSAPP_TEMPLATE_APPROVED`, `WHATSAPP_TEMPLATE_CATEGORY_FUTURE_UPDATE`, `WHATSAPP_TEMPLATE_CATEGORY_UPDATED`, `WHATSAPP_TEMPLATE_COMMENT_ADDED`, `WHATSAPP_TEMPLATE_DELETED`, `WHATSAPP_TEMPLATE_QUALITY_SCORE_UPDATED`, `WHATSAPP_TEMPLATE_REJECTED` or `WHATSAPP_TEMPLATE_STATUS_UPDATED` - WhatsApp Account: `WHATSAPP_ACCOUNT_COMMENT_ADDED`, `WHATSAPP_ACCOUNT_ONBOARDED`, `WHATSAPP_ACCOUNT_PENDING_VERIFICATION`, `WHATSAPP_ACCOUNT_REJECTED` or `WHATSAPP_WABA_ACCOUNT_CHANGED` - RCS Sender: `RCS_SENDER_COMMENT_ADDED`, `RCS_SENDER_OPERATOR_STATUS_UPDATED` or `RCS_SENDER_STATUS_UPDATED` - KakaoTalk Sender: `KAKAOTALK_SENDER_ACTIVE`, `KAKAOTALK_SENDER_COMMENT_ADDED`, `KAKAOTALK_SENDER_INACTIVE` or `KAKAOTALK_SENDER_REJECTED` - KakaoTalk Template: `KAKAOTALK_TEMPLATE_APPROVED`, `KAKAOTALK_TEMPLATE_COMMENT_ADDED` or `KAKAOTALK_TEMPLATE_REJECTED` items: $ref: '#/components/schemas/BundlesWebhookTriggers' required: - target - secret - triggers BundlesBundlesInputRegion: type: string enum: - BR - EU - US description: |- Region to create resources in. (Allowed values for staging environment: `EU` or `US`). BundlesBundlesInputDto: type: object properties: name: type: string example: Sample bundle description: |- Name of bundle to create. If a name is not specified in the resource blocks then they will be created with this name. maxLength: 255 uniqueItems: false region: example: US description: |- Region to create resources in. (Allowed values for staging environment: `EU` or `US`). uniqueItems: false allOf: - $ref: '#/components/schemas/BundlesBundlesInputRegion' subproject: oneOf: - $ref: '#/components/schemas/BundlesSubprojectInputDto' - type: boolean description: Set to `true` to use default values. Set to `false` or omit to not create a subproject. example: true description: |- Subproject resource block. If set to true, a subproject will be created under the provided projectId with default name from the root object. Optionally a different name can be specified as well as labels on the project. If not provided or set to false, a subproject will not be created and instead all resources will be created under the projectId provided in the request. uniqueItems: false smsApp: oneOf: - $ref: '#/components/schemas/BundlesSmsAppInputDto' - type: boolean description: Set to `true` to use default values. Set to `false` or omit to not create an SMS app. example: true description: | SMS Application resource block. If set to true, an SMS Application will be created under the project or subproject specified. Optionally a different name can specified. If not provided or set to false, an SMS Application will not be created. uniqueItems: false convApp: oneOf: - $ref: '#/components/schemas/BundlesConversationAppInputDto' - type: boolean description: Set to `true` to use default values. Set to `false` or omit to not create a Conversation API app. description: | Conversation API Application resource block. If set to true, a Conversation API Application will be created under the project or subproject specified. All other resources created will be associated with the Conversation Application. Optionally a different name can specified as well as Conversation API webhooks. If not provided or set to `false`, a Conversation API Application will not be created. uniqueItems: false webhooks: type: array items: $ref: '#/components/schemas/BundlesWebhookInputDto' uniqueItems: true minItems: 1 maxItems: 15 description: | Provisioning API . Optionally provide webhook targets for the Provisioning API. Field 'target' must have unique values across items. required: - region KakaotalkSenderCategoryDto: type: object properties: parentCode: type: string minLength: 0 maxLength: 4 description: The code of the parent category. uniqueItems: false depth: type: number maximum: 3 minimum: 1 description: The depth in category tree. uniqueItems: false code: type: string minLength: 3 maxLength: 4 description: The code of the category. uniqueItems: false name: type: string description: The name of the category. uniqueItems: false subcategories: type: array items: $ref: '#/components/schemas/KakaotalkSenderCategoryDto' description: List of subcategories. uniqueItems: false required: - parentCode - depth - code - name - subcategories KakaotalkSenderCategoryListDto: type: object properties: categories: type: array items: $ref: '#/components/schemas/KakaotalkSenderCategoryDto' description: List of sender categories. uniqueItems: false required: - categories KakaotalkTemplateSubcategoryNames: type: string enum: - 인증/비밀번호/로그인 - 회원가입 - 회원정보/회원혜택 - 구매예약/입고알림 - 구매완료 - 구매취소 - 상품가입 - 진행상태 - 예약상태 - 예약알림/리마인드 - 예약완료/예약내역 - 예약취소 - 구매감사/이용확인 - 리마인드 - 방문서비스 - 신청접수 - 이용도구 - 이용안내/공지 - 처리완료 - 피드백 요청 - 거래알림 - 계약/견적 - 뉴스레터 - 안전/피해예방 - 요금청구 - 피드백 - 배송상태 - 배송실패 - 배송예정 - 배송완료 - 개인정보 - 수신동의 - 약관변경 - 휴면 관련 - 내부 업무 알림 - 주문/예약 - 쿠폰/포인트안내 - 쿠폰발급 - 쿠폰사용 - 포인트사용 - 포인트적립 - 기타 - UNRECOGNIZED description: 하위 카테고리 이름. KakaotalkTemplateSubcategoryEnglishNames: type: string enum: - Authentication/Password/Login - Join membership - Membership information/Member ship benefits - Pre-order/Stock alerts - Product subscription - Purchase cancellation - Purchase completed - Purchase status - Completed reservations/Reservation history - Notification/Reminder - Reservation cancellation - Reservation status - Application reception - Feedback request - Greeting message/Order confirmation - Information/Notification - Notification for treated demands - Reminder message - Tools for use - Visiting service - Billing - Contract/Quote - Feedback - Newsletter - Safety/Damage prevention - Transaction notification - Failed shipment - Shipping completed - Shipping estimation - Shipping status - Change of terms and conditions - Consent of reception - Dormant account related - Privacy - Internal business notification - Order/Reservation - Coupon issuance - Earn points - Information coupon/Points - Notification for coupon use - Use of points - Others - UNRECOGNIZED description: English subcategory name. KakaotalkTemplateSubcategoryDto: type: object properties: code: type: string description: Subcategory code (Used when registering/modifying templates). uniqueItems: false name: description: 하위 카테고리 이름. uniqueItems: false allOf: - $ref: '#/components/schemas/KakaotalkTemplateSubcategoryNames' nameEnglish: description: English subcategory name. uniqueItems: false allOf: - $ref: '#/components/schemas/KakaotalkTemplateSubcategoryEnglishNames' groupName: type: string description: Subcategory group name. uniqueItems: false inclusion: type: string description: Description of templates to which the subcategory applies. uniqueItems: false exclusion: type: string description: Description of templates to which the subcategory does not apply. uniqueItems: false required: - code - name - nameEnglish - groupName - inclusion - exclusion KakaotalkTemplateCategoryNames: type: string enum: - 구매 - 기타 - 리포팅 - 배송 - 법적고지 - 서비스이용 - 업무알림 - 예약 - 쿠폰/포인트 - 회원 - UNRECOGNIZED description: 카테고리 이름. KakaotalkTemplateCategoryEnglishNames: type: string enum: - Business notification - Coupon/Points - Customer service - Legal notification - Membership - Others - Purchase - Reports - Reservation - Shipping - UNRECOGNIZED description: English category name. KakaotalkTemplateCategoryDto: type: object properties: name: description: 카테고리 이름. uniqueItems: false allOf: - $ref: '#/components/schemas/KakaotalkTemplateCategoryNames' nameEnglish: description: English category name. uniqueItems: false allOf: - $ref: '#/components/schemas/KakaotalkTemplateCategoryEnglishNames' subcategories: type: array items: $ref: '#/components/schemas/KakaotalkTemplateSubcategoryDto' description: List of subcategories. uniqueItems: false required: - name - nameEnglish - subcategories KakaotalkTemplateCategoryListDto: type: object properties: totalSize: type: number description: Total size of the entries matching the search query. uniqueItems: false pageSize: type: number description: Requested size of the page. uniqueItems: false previousPageToken: type: string description: Encoded token to use in list request to fetch previous batch of entries. uniqueItems: false nextPageToken: type: string description: Encoded token to use in list request to fetch next batch of entries. uniqueItems: false categories: type: array items: $ref: '#/components/schemas/KakaotalkTemplateCategoryDto' description: List of template categories. uniqueItems: false required: - totalSize - pageSize - categories KakaotalkTemplateStates: type: string enum: - APPROVED - REJECTED description: The current state of the template. KakaotalkKakaoTalkButtonType: type: string enum: - APP_LINK - BOT_FOR_CONSULTATION - BOT_KEYWORD - BOT_TRANSFER - BUSINESS_FORM - BUTTON_TYPE_UNSPECIFIED - CHANNEL_ID_ADDED - DELIVERY_SEARCH - IMAGE_SECURE_TRANSMISSION_PLUGIN_ID - MESSAGE_DELIVERY - ONE_CLICK_PAYMENT_PLUGIN - PERSONAL_INFORMATION_USE_PLUGIN_ID - WEB_LINK - UNRECOGNIZED description: Button type KakaotalkButtonDto: type: object properties: ordering: type: number description: Button sequence uniqueItems: false type: description: Button type uniqueItems: false allOf: - $ref: '#/components/schemas/KakaotalkKakaoTalkButtonType' name: type: string description: Button name uniqueItems: false linkMo: type: string format: url description: Mobile web link uniqueItems: false linkPc: type: string format: url description: PC web link uniqueItems: false schemeIos: type: string description: iOS app link uniqueItems: false schemeAndroid: type: string description: Android app link uniqueItems: false KakaotalkTemplateLanguages: type: string enum: - AF - AR - AZ - BG - BN - CA - CS - DA - DE - EL - EN - EN_GB - EN_US - ES - ES_AR - ES_ES - ES_MX - ET - FA - FI - FIL - FR - GA - GU - HA - HE - HI - HR - HU - ID - IT - JA - KA - KK - KN - KO - KY_KG - LO - LT - LV - MK - ML - MR - MS - NB - NL - PA - PL - PT_BR - PT_PT - RO - RU - RW_RW - SK - SL - SQ - SR - SV - SW - TA - TE - TH - TR - UK - UR - UZ - VI - ZH_CN - ZH_HK - ZH_TW - ZU - UNRECOGNIZED description: Template language KakaotalkKakaoTalkTemplateMessageType: type: string enum: - AD_INCLUDED - BASIC - EXTRA_INFORMATION - MIXED - TEMPLATE_MESSAGE_TYPE_UNSPECIFIED - UNRECOGNIZED description: Types of template message KakaotalkKakaoTalkTemplateEmphasizeType: type: string enum: - EMPHASIZE_TYPE_IMAGE - EMPHASIZE_TYPE_NONE - EMPHASIZE_TYPE_TEXT - EMPHASIZE_TYPE_UNSPECIFIED - UNRECOGNIZED description: Types of emphasized template KakaotalkTemplateDetailsDto: type: object properties: language: description: Template language uniqueItems: false allOf: - $ref: '#/components/schemas/KakaotalkTemplateLanguages' messageType: description: Types of template message uniqueItems: false allOf: - $ref: '#/components/schemas/KakaotalkKakaoTalkTemplateMessageType' emphasizeType: description: Types of emphasized template uniqueItems: false allOf: - $ref: '#/components/schemas/KakaotalkKakaoTalkTemplateEmphasizeType' categoryCode: type: string description: Template category code uniqueItems: false securityFlag: type: boolean description: Security template uniqueItems: false name: type: string description: Button name uniqueItems: false content: type: string description: Template body uniqueItems: false extra: type: string description: Additional template information uniqueItems: false ad: type: string description: Request for consent of receiving within template or simple ad phrases uniqueItems: false title: type: string description: Template title uniqueItems: false subtitle: type: string description: Auxiliary template phrase uniqueItems: false imageName: type: string description: Image name (name of uploaded file) uniqueItems: false imageUrl: type: string format: url description: Image URL uniqueItems: false buttons: type: array items: $ref: '#/components/schemas/KakaotalkButtonDto' description: List of buttons uniqueItems: false required: - language - messageType - emphasizeType - categoryCode - securityFlag - name - buttons KakaotalkTemplateChangesDetailsDto: type: object properties: language: description: Template language uniqueItems: false allOf: - $ref: '#/components/schemas/KakaotalkTemplateLanguages' messageType: description: Types of template message uniqueItems: false allOf: - $ref: '#/components/schemas/KakaotalkKakaoTalkTemplateMessageType' emphasizeType: description: Types of emphasized template uniqueItems: false allOf: - $ref: '#/components/schemas/KakaotalkKakaoTalkTemplateEmphasizeType' categoryCode: type: string description: Template category code uniqueItems: false securityFlag: type: boolean description: Security template uniqueItems: false name: type: string description: Button name uniqueItems: false content: type: string description: Template body uniqueItems: false extra: type: string description: Additional template information uniqueItems: false ad: type: string description: Request for consent of receiving within template or simple ad phrases uniqueItems: false title: type: string description: Template title uniqueItems: false subtitle: type: string description: Auxiliary template phrase uniqueItems: false imageName: type: string description: Image name (name of uploaded file) uniqueItems: false imageUrl: type: string format: url description: Image URL uniqueItems: false buttons: type: array items: $ref: '#/components/schemas/KakaotalkButtonDto' description: List of buttons uniqueItems: false KakaotalkTemplateStatuses: type: string enum: - DRAFT - IN_PROGRESS - REJECTED description: Current status of the pending changes KakaotalkTemplateChangesDto: type: object properties: status: description: Current status of the pending changes uniqueItems: false allOf: - $ref: '#/components/schemas/KakaotalkTemplateStatuses' details: oneOf: - $ref: '#/components/schemas/KakaotalkTemplateDetailsDto' description: For newly created template - $ref: '#/components/schemas/KakaotalkTemplateChangesDetailsDto' description: For update template description: Template details and information. uniqueItems: false required: - status - details KakaotalkTemplateDto: type: object properties: id: type: string description: The unique ID of the template. uniqueItems: false code: type: string description: Registered delivery template code uniqueItems: false state: description: The current state of the template. uniqueItems: false allOf: - $ref: '#/components/schemas/KakaotalkTemplateStates' changes: description: Any pending changes to the template. uniqueItems: false allOf: - $ref: '#/components/schemas/KakaotalkTemplateChangesDto' details: description: Template details and information. uniqueItems: false allOf: - $ref: '#/components/schemas/KakaotalkTemplateDetailsDto' created: type: string description: The UTC Date Time in ISO 8601 for when the template was created. uniqueItems: false modified: type: string description: The UTC Date Time in ISO 8601 for when the template was last modified. uniqueItems: false required: - code KakaotalkTemplateListDto: type: object properties: totalSize: type: number description: Total size of the entries matching the search query. uniqueItems: false pageSize: type: number description: Requested size of the page. uniqueItems: false previousPageToken: type: string description: Encoded token to use in list request to fetch previous batch of entries. uniqueItems: false nextPageToken: type: string description: Encoded token to use in list request to fetch next batch of entries. uniqueItems: false templates: type: array items: $ref: '#/components/schemas/KakaotalkTemplateDto' description: List of templates uniqueItems: false required: - totalSize - pageSize - templates KakaotalkTemplateStatesEnum: type: string enum: - APPROVED - REJECTED KakaotalkTemplateStatusesEnum: type: string enum: - DRAFT - IN_PROGRESS - REJECTED KakaotalkActions: type: string enum: - DRAFT - SUBMIT description: Create as draft or submit. Defaults to submit. KakaotalkInputKakaoTalkButtonType: type: string enum: - APP_LINK - BOT_FOR_CONSULTATION - BOT_KEYWORD - BOT_TRANSFER - BUSINESS_FORM - CHANNEL_ID_ADDED - DELIVERY_SEARCH - IMAGE_SECURE_TRANSMISSION_PLUGIN_ID - MESSAGE_DELIVERY - ONE_CLICK_PAYMENT_PLUGIN - PERSONAL_INFORMATION_USE_PLUGIN_ID - WEB_LINK description: Button type KakaotalkInputButtonDto: type: object properties: ordering: type: number minimum: 1 maximum: 5 description: Button sequence uniqueItems: false type: description: Button type uniqueItems: false allOf: - $ref: '#/components/schemas/KakaotalkInputKakaoTalkButtonType' name: type: string minLength: 1 maxLength: 14 description: Button name Not required for draft. uniqueItems: false linkMo: type: string format: url minLength: 1 maxLength: 500 description: Mobile web link uniqueItems: false linkPc: type: string format: url minLength: 1 maxLength: 500 description: PC web link uniqueItems: false schemeIos: type: string format: url minLength: 1 maxLength: 500 description: iOS app link uniqueItems: false schemeAndroid: type: string format: url minLength: 1 maxLength: 500 description: Android app link uniqueItems: false required: - ordering - type - name KakaotalkInputTemplateLanguages: type: string enum: - AF - AR - AZ - BG - BN - CA - CS - DA - DE - EL - EN - EN_GB - EN_US - ES - ES_AR - ES_ES - ES_MX - ET - FA - FI - FIL - FR - GA - GU - HA - HE - HI - HR - HU - ID - IT - JA - KA - KK - KN - KO - KY_KG - LO - LT - LV - MK - ML - MR - MS - NB - NL - PA - PL - PT_BR - PT_PT - RO - RU - RW_RW - SK - SL - SQ - SR - SV - SW - TA - TE - TH - TR - UK - UR - UZ - VI - ZH_CN - ZH_HK - ZH_TW - ZU description: Template language KakaotalkInputKakaoTalkTemplateMessageType: type: string enum: - AD_INCLUDED - BASIC - EXTRA_INFORMATION - MIXED description: Types of template message KakaotalkInputKakaoTalkTemplateEmphasizeType: type: string enum: - EMPHASIZE_TYPE_IMAGE - EMPHASIZE_TYPE_NONE - EMPHASIZE_TYPE_TEXT description: Types of emphasized template KakaotalkInputTemplateDetailsDto: type: object properties: name: type: string minLength: 1 maxLength: 150 description: Button name uniqueItems: false language: description: Template language uniqueItems: false allOf: - $ref: '#/components/schemas/KakaotalkInputTemplateLanguages' content: type: string minLength: 1 maxLength: 1000 description: Template body Not required for draft. uniqueItems: false messageType: default: BASIC description: Types of template message uniqueItems: false allOf: - $ref: '#/components/schemas/KakaotalkInputKakaoTalkTemplateMessageType' emphasizeType: default: EMPHASIZE_TYPE_NONE description: Types of emphasized template uniqueItems: false allOf: - $ref: '#/components/schemas/KakaotalkInputKakaoTalkTemplateEmphasizeType' categoryCode: type: string minLength: 1 maxLength: 6 default: '999999' description: Template category code uniqueItems: false securityFlag: type: boolean default: false description: |- Security template Set for security messages such as OTP If set, message text is unexposed to all devices except for the main device at the time of sending uniqueItems: false extra: type: string minLength: 1 maxLength: 500 description: Additional template information uniqueItems: false title: type: string minLength: 1 maxLength: 50 description: |- Template Title (No more than 50 characters, Android: To be abbreviated if it exceeds 2 lines with more than 23 characters, iOS: To be abbreviated if it exceeds 2 lines with more than 27 characters) uniqueItems: false subtitle: type: string minLength: 1 maxLength: 50 description: |- Auxiliary Template Phrase (No more than 50 characters, Android: To be abbreviated if it exceeds 18 characters, iOS: To be abbreviated if it exceeds 21 characters) uniqueItems: false imageName: type: string minLength: 1 maxLength: 250 description: Image name (name of uploaded file) uniqueItems: false imageUrl: type: string format: url description: |- Image URL - Supported mime types: `image/jpeg` or `image/png`. - Maximum file size: 500KB. - Minimum image dimensions: 500 x 250 px. - Aspect ratio: 2 x 1. uniqueItems: false buttons: uniqueItems: true minItems: 0 maxItems: 5 description: List of buttons Field 'type' must have unique values across items. type: array items: $ref: '#/components/schemas/KakaotalkInputButtonDto' required: - name - language - content KakaotalkInputTemplateDto: type: object properties: status: default: SUBMIT description: Create as draft or submit. Defaults to submit. uniqueItems: false allOf: - $ref: '#/components/schemas/KakaotalkActions' details: description: Template details and information. uniqueItems: false allOf: - $ref: '#/components/schemas/KakaotalkInputTemplateDetailsDto' saveDraftOnFailure: type: boolean default: false description: Flag to save template as draft if submission fails. Defaults to false. uniqueItems: false required: - details KakaotalkInputUpdateTemplateDetailsDto: type: object properties: name: type: string minLength: 1 maxLength: 150 description: Button name uniqueItems: false content: type: string minLength: 1 maxLength: 1000 description: Template body uniqueItems: false messageType: description: Types of template message uniqueItems: false allOf: - $ref: '#/components/schemas/KakaotalkInputKakaoTalkTemplateMessageType' emphasizeType: description: Types of emphasized template uniqueItems: false allOf: - $ref: '#/components/schemas/KakaotalkInputKakaoTalkTemplateEmphasizeType' categoryCode: type: string minLength: 1 maxLength: 6 description: Template category code uniqueItems: false securityFlag: type: boolean description: |- Security template Set for security messages such as OTP If set, message text is unexposed to all devices except for the main device at the time of sending uniqueItems: false extra: type: string minLength: 1 maxLength: 500 nullable: true description: Additional template information uniqueItems: false title: type: string minLength: 1 maxLength: 50 nullable: true description: |- Template Title (No more than 50 characters, Android: To be abbreviated if it exceeds 2 lines with more than 23 characters, iOS: To be abbreviated if it exceeds 2 lines with more than 27 characters) uniqueItems: false subtitle: type: string minLength: 1 maxLength: 50 nullable: true description: |- Auxiliary Template Phrase (No more than 50 characters, Android: To be abbreviated if it exceeds 18 characters, iOS: To be abbreviated if it exceeds 21 characters) uniqueItems: false imageName: type: string minLength: 1 maxLength: 250 nullable: true description: Image name (name of uploaded file) uniqueItems: false imageUrl: type: string format: url nullable: true description: |- Image URL - Supported mime types: `image/jpeg` or `image/png`. - Maximum file size: 500KB. - Minimum image dimensions: 500 x 250 px. - Aspect ratio: 2 x 1. uniqueItems: false buttons: uniqueItems: true minItems: 0 maxItems: 5 nullable: true description: List of buttons Field 'type' must have unique values across items. type: array items: $ref: '#/components/schemas/KakaotalkInputButtonDto' KakaotalkInputUpdateTemplateDto: type: object properties: status: default: DRAFT description: Create as draft or submit. Defaults to draft. uniqueItems: false allOf: - $ref: '#/components/schemas/KakaotalkActions' details: description: Template details and information. uniqueItems: false allOf: - $ref: '#/components/schemas/KakaotalkInputUpdateTemplateDetailsDto' KakaotalkCommentType: type: string enum: - CREATED KakaotalkCommentDto: type: object properties: type: uniqueItems: false allOf: - $ref: '#/components/schemas/KakaotalkCommentType' comment: type: string uniqueItems: false created: type: string uniqueItems: false required: - type - comment KakaotalkCommentInputDto: type: object properties: comment: type: string minLength: 1 maxLength: 65535 uniqueItems: false required: - comment KakaotalkTemplateNotificationType: type: string enum: - COMMENT_ADDED - CREATED - DRAFT - EDITED - IN_PROGRESS - REJECTED KakaotalkTemplateNotificationDto: type: object properties: type: uniqueItems: false allOf: - $ref: '#/components/schemas/KakaotalkTemplateNotificationType' created: type: string uniqueItems: false author: type: string uniqueItems: false comment: type: string uniqueItems: false required: - type KakaotalkTemplateNotificationListDto: type: object properties: totalSize: type: number description: Total size of the entries matching the search query. uniqueItems: false pageSize: type: number description: Requested size of the page. uniqueItems: false previousPageToken: type: string description: Encoded token to use in list request to fetch previous batch of entries. uniqueItems: false nextPageToken: type: string description: Encoded token to use in list request to fetch next batch of entries. uniqueItems: false notifications: type: array items: $ref: '#/components/schemas/KakaotalkTemplateNotificationDto' uniqueItems: false required: - totalSize - pageSize - notifications KakaotalkSenderStates: type: string enum: - ACTIVE - BLOCKED - INACTIVE - SUSPENDED - VERIFYING description: The current state of the sender. KakaotalkSenderDetailsDto: type: object properties: adminPhoneNo: type: string description: Admin phone uniqueItems: false name: type: string description: Sender name uniqueItems: false logoImage: type: string description: Sender logo uniqueItems: false topLevelCategoryCode: type: string description: Top level category code, must consist of 3 digits (e.g. 001). uniqueItems: false midLevelCategoryCode: type: string description: Mid level category code, must consist of 4 digits (e.g. 0001). uniqueItems: false subLevelCategoryCode: type: string description: Sub level category code, must consist of 4 digits (e.g. 0001). uniqueItems: false required: - adminPhoneNo - name - topLevelCategoryCode - midLevelCategoryCode - subLevelCategoryCode KakaotalkSenderChangesDetailsDto: type: object properties: adminPhoneNo: type: string description: Admin phone uniqueItems: false name: type: string description: Sender name uniqueItems: false logoImage: type: string description: Sender logo uniqueItems: false topLevelCategoryCode: type: string description: Top level category code, must consist of 3 digits (e.g. 001). uniqueItems: false midLevelCategoryCode: type: string description: Mid level category code, must consist of 4 digits (e.g. 0001). uniqueItems: false subLevelCategoryCode: type: string description: Sub level category code, must consist of 4 digits (e.g. 0001). uniqueItems: false KakaotalkSenderStatuses: type: string enum: - DRAFT - IN_PROGRESS - REJECTED description: Current status of the pending changes. KakaotalkSenderChangesDto: type: object properties: status: description: Current status of the pending changes. uniqueItems: false allOf: - $ref: '#/components/schemas/KakaotalkSenderStatuses' details: oneOf: - $ref: '#/components/schemas/KakaotalkSenderDetailsDto' description: For newly created sender - $ref: '#/components/schemas/KakaotalkSenderChangesDetailsDto' description: For update sender description: Sender details and information. uniqueItems: false required: - status - details KakaotalkSenderDto: type: object properties: id: type: string description: The unique ID of the sender. uniqueItems: false plusFriendId: type: string description: PlusFriend ID uniqueItems: false state: description: The current state of the sender. uniqueItems: false allOf: - $ref: '#/components/schemas/KakaotalkSenderStates' changes: description: Any pending changes to the sender. uniqueItems: false allOf: - $ref: '#/components/schemas/KakaotalkSenderChangesDto' details: description: Sender details and information. uniqueItems: false allOf: - $ref: '#/components/schemas/KakaotalkSenderDetailsDto' created: type: string description: The UTC Date Time in ISO 8601 for when the sender was created. uniqueItems: false modified: type: string description: The UTC Date Time in ISO 8601 for when the sender was last modified. uniqueItems: false required: - plusFriendId KakaotalkInputSenderDetailsDto: type: object properties: adminPhoneNo: type: string minLength: 1 maxLength: 15 description: Admin phone Not required for draft. format: phone number uniqueItems: false name: type: string minLength: 1 maxLength: 512 description: Sender name Not required for draft. uniqueItems: false logoImage: type: string description: |- Sender logo - Supported mime types: `image/jpeg` or `image/png`. - Maximum file size: 5MB. format: url uniqueItems: false topLevelCategoryCode: type: string description: Top level category code, must consist of 3 digits (e.g. 001). Not required for draft. uniqueItems: false midLevelCategoryCode: type: string description: Mid level category code, must consist of 4 digits (e.g. 0001). Not required for draft. uniqueItems: false subLevelCategoryCode: type: string description: Sub level category code, must consist of 4 digits (e.g. 0001). Not required for draft. uniqueItems: false required: - adminPhoneNo - name - topLevelCategoryCode - midLevelCategoryCode - subLevelCategoryCode KakaotalkInputSenderDto: type: object properties: status: description: Create as draft or submit. Defaults to submit. default: SUBMIT uniqueItems: false allOf: - $ref: '#/components/schemas/KakaotalkActions' saveDraftOnFailure: type: boolean default: false description: Flag to save template as draft if submission fails. Defaults to false. uniqueItems: false plusFriendId: type: string description: PlusFriend ID minLength: 1 maxLength: 30 uniqueItems: false details: description: Sender details and information. Not required for draft. uniqueItems: false allOf: - $ref: '#/components/schemas/KakaotalkInputSenderDetailsDto' required: - plusFriendId - details KakaotalkInputVerifySenderDto: type: object properties: code: type: number example: 123456 description: Numeric code to verify the sender. uniqueItems: false required: - code KakaotalkSenderListDto: type: object properties: totalSize: type: number description: Total size of the entries matching the search query. uniqueItems: false pageSize: type: number description: Requested size of the page. uniqueItems: false previousPageToken: type: string description: Encoded token to use in list request to fetch previous batch of entries. uniqueItems: false nextPageToken: type: string description: Encoded token to use in list request to fetch next batch of entries. uniqueItems: false senders: type: array items: $ref: '#/components/schemas/KakaotalkSenderDto' description: List of senders. uniqueItems: false required: - totalSize - pageSize - senders KakaotalkSenderStatesEnum: type: string enum: - ACTIVE - BLOCKED - INACTIVE - SUSPENDED - VERIFYING KakaotalkSenderStatusesEnum: type: string enum: - DRAFT - IN_PROGRESS - REJECTED KakaotalkSenderNotificationType: type: string enum: - ACTIVE - COMMENT_ADDED - CREATED - DRAFT - EDITED - IN_PROGRESS - INACTIVE - REJECTED KakaotalkSenderNotificationDto: type: object properties: type: uniqueItems: false allOf: - $ref: '#/components/schemas/KakaotalkSenderNotificationType' created: type: string uniqueItems: false author: type: string uniqueItems: false comment: type: string uniqueItems: false required: - type KakaotalkSenderNotificationListDto: type: object properties: totalSize: type: number description: Total size of the entries matching the search query. uniqueItems: false pageSize: type: number description: Requested size of the page. uniqueItems: false previousPageToken: type: string description: Encoded token to use in list request to fetch previous batch of entries. uniqueItems: false nextPageToken: type: string description: Encoded token to use in list request to fetch next batch of entries. uniqueItems: false notifications: type: array items: $ref: '#/components/schemas/KakaotalkSenderNotificationDto' uniqueItems: false required: - totalSize - pageSize - notifications KakaotalkInputUpdateSenderDetailsDto: type: object properties: adminPhoneNo: type: string minLength: 1 maxLength: 15 description: Admin phone format: phone number uniqueItems: false name: type: string minLength: 1 maxLength: 512 description: Sender name uniqueItems: false logoImage: type: string description: Sender logo format: url nullable: true uniqueItems: false topLevelCategoryCode: type: string description: Top level category code, must consist of 3 digits (e.g. 001). uniqueItems: false midLevelCategoryCode: type: string description: Mid level category code, must consist of 4 digits (e.g. 0001). uniqueItems: false subLevelCategoryCode: type: string description: Sub level category code, must consist of 4 digits (e.g. 0001). uniqueItems: false KakaotalkInputUpdateSenderDto: type: object properties: status: default: DRAFT description: Create as draft or submit. Defaults to draft. uniqueItems: false allOf: - $ref: '#/components/schemas/KakaotalkActions' details: description: Sender details and information. uniqueItems: false allOf: - $ref: '#/components/schemas/KakaotalkInputUpdateSenderDetailsDto' ConversationChannelStatus: type: string enum: - ACTIVE - ERROR - FAILING - PENDING - UNRECOGNIZED description: Channel integration status. ConversationTelegramBotInfoDto: type: object properties: status: description: Channel integration status. uniqueItems: false allOf: - $ref: '#/components/schemas/ConversationChannelStatus' statusDescription: type: string description: Channel integration description if status is ERROR or FAILED. uniqueItems: false name: type: string description: Name of the bot. uniqueItems: false username: type: string description: Username of the bot. uniqueItems: false canJoinGroups: type: boolean description: If the bot can be invited to groups. uniqueItems: false canReadAllGroupMessages: type: boolean description: If privacy mode is disabled for the bot. uniqueItems: false supportsInlineQueries: type: boolean description: If the bot supports inline queries. uniqueItems: false required: - status ConversationAccountLocationDto: type: object properties: lon: type: number description: Location longitude uniqueItems: false lat: type: number description: Location latitude uniqueItems: false required: - lon - lat ConversationViberBotInfoDto: type: object properties: status: description: Channel integration status. uniqueItems: false allOf: - $ref: '#/components/schemas/ConversationChannelStatus' statusDescription: type: string description: Channel integration description if status is ERROR or FAILED. uniqueItems: false id: type: string description: Account ID uniqueItems: false name: type: string description: Account name uniqueItems: false uri: type: string description: Account URI uniqueItems: false icon: type: string description: Account icon URI uniqueItems: false category: type: string description: Account category uniqueItems: false subcategory: type: string description: Account subcategory uniqueItems: false location: description: Account location uniqueItems: false allOf: - $ref: '#/components/schemas/ConversationAccountLocationDto' country: type: string description: Account country name (long) uniqueItems: false subscribersCount: type: number description: Account subscribers count uniqueItems: false required: - status ConversationInstagramInfoDto: type: object properties: status: description: Channel integration status. uniqueItems: false allOf: - $ref: '#/components/schemas/ConversationChannelStatus' statusDescription: type: string description: Channel integration description if status is ERROR or FAILED. uniqueItems: false id: type: string description: Instagram ID. uniqueItems: false name: type: string description: Public profile name if set. uniqueItems: false username: type: string description: Profile username. uniqueItems: false biography: type: string description: Public profile biography if set. uniqueItems: false followersCount: type: number description: Total number of Instagram users following the sender. uniqueItems: false followsCount: type: number description: Total number of Instagram users the sender follows. uniqueItems: false mediaCount: type: number description: Total number of Instagram Media published on the sender. uniqueItems: false profilePictureUrl: type: string description: Public profile picture URL if set. uniqueItems: false website: type: string description: Public profile website URL if set. uniqueItems: false required: - status ConversationMessengerInfoDto: type: object properties: status: description: Channel integration status. uniqueItems: false allOf: - $ref: '#/components/schemas/ConversationChannelStatus' statusDescription: type: string description: Channel integration description if status is ERROR or FAILED. uniqueItems: false id: type: string description: The ID of the page. uniqueItems: false name: type: string description: The name of the page. uniqueItems: false globalBrandPageName: type: string description: The name of the Page with country codes appended for Global Pages. Only visible to the Page admin. uniqueItems: false required: - status RcsAccountNotificationType: type: string enum: - COMMENT_ADDED - CREATED RcsAccountNotificationDto: type: object properties: type: uniqueItems: false allOf: - $ref: '#/components/schemas/RcsAccountNotificationType' created: type: string uniqueItems: false author: type: string uniqueItems: false comment: type: string uniqueItems: false required: - type RcsAccountNotificationListDto: type: object properties: totalSize: type: number description: Total size of the entries matching the search query. uniqueItems: false pageSize: type: number description: Requested size of the page. uniqueItems: false previousPageToken: type: string description: Encoded token to use in list request to fetch previous batch of entries. uniqueItems: false nextPageToken: type: string description: Encoded token to use in list request to fetch next batch of entries. uniqueItems: false notifications: type: array items: $ref: '#/components/schemas/RcsAccountNotificationDto' uniqueItems: false required: - totalSize - pageSize - notifications RcsCommentType: type: string enum: - CREATED RcsCommentDto: type: object properties: type: uniqueItems: false allOf: - $ref: '#/components/schemas/RcsCommentType' comment: type: string uniqueItems: false created: type: string uniqueItems: false required: - type - comment RcsCommentInputDto: type: object properties: comment: type: string minLength: 1 maxLength: 65535 uniqueItems: false required: - comment RcsOperatorStatus: type: string enum: - LAUNCHED - NOT_LAUNCHED - PENDING - PENDING_UNLAUNCHED - REJECTED - SUSPENDED - UNLAUNCHED - INVALID_IN_GOOGLE_MY_BUSINESS - UNRECOGNIZED description: Operator status. RcsOperatorDto: type: object properties: name: type: string description: Operator name. uniqueItems: false status: description: Operator status. uniqueItems: false allOf: - $ref: '#/components/schemas/RcsOperatorStatus' remark: type: string description: Any comments or notes to the current state. uniqueItems: false modified: type: string description: Last date the operator changed state. uniqueItems: false required: - name - status RcsCountryCodes: type: string enum: - AD - AE - AF - AG - AI - AL - AM - AO - AQ - AR - AS - AT - AU - AW - AZ - BA - BB - BD - BE - BF - BG - BH - BI - BJ - BM - BN - BO - BQ - BR - BS - BT - BW - BY - BZ - CA - CD - CF - CG - CH - CI - CK - CL - CM - CN - CO - CR - CU - CV - CW - CY - CZ - DE - DJ - DK - DM - DO - DZ - EC - EE - EG - ER - ES - ET - FI - FJ - FK - FM - FO - FR - GA - GB - GD - GE - GF - GG - GH - GI - GL - GM - GN - GP - GQ - GR - GT - GU - GW - GY - HK - HN - HR - HT - HU - ID - IE - IL - IM - IN - IO - IQ - IR - IS - IT - JE - JM - JO - JP - KE - KG - KH - KI - KM - KN - KP - KR - KW - KY - KZ - LA - LB - LC - LI - LK - LR - LS - LT - LU - LV - LY - MA - MC - MD - ME - MG - MH - MK - ML - MM - MN - MO - MP - MQ - MR - MS - MT - MU - MV - MW - MX - MY - MZ - NA - NC - NE - NF - NG - NI - NL - 'NO' - NP - NR - NU - NZ - OM - PA - PE - PF - PG - PH - PK - PL - PM - PR - PS - PT - PW - PY - QA - RE - RO - RS - RU - RW - SA - SB - SC - SD - SE - SG - SH - SI - SK - SL - SM - SN - SO - SR - SS - ST - SV - SX - SY - SZ - TC - TD - TG - TH - TJ - TK - TL - TM - TN - TO - TR - TT - TV - TW - TZ - UA - UG - UM - US - UY - UZ - VC - VE - VG - VI - VN - VU - WF - WS - XK - YE - YT - ZA - ZM - ZW - UNRECOGNIZED description: Two-letter country code in ISO 3166 standard. RcsCountryStatusDto: type: object properties: country: description: Two-letter country code in ISO 3166 standard. uniqueItems: false allOf: - $ref: '#/components/schemas/RcsCountryCodes' status: description: Country status. uniqueItems: false allOf: - $ref: '#/components/schemas/RcsOperatorStatus' operators: type: array items: $ref: '#/components/schemas/RcsOperatorDto' description: Mobile network operators. uniqueItems: false required: - country - status - operators RcsTestNumberStates: type: string enum: - DECLINED - INVALID - PENDING - UNVERIFIED - VERIFIED - UNRECOGNIZED description: Test phone state. RcsTestNumberStateDto: type: object properties: number: type: string format: e.164 phone number description: Test phone number. uniqueItems: false state: description: Test phone state. uniqueItems: false allOf: - $ref: '#/components/schemas/RcsTestNumberStates' submitted: type: string description: Date of submitting phone number. uniqueItems: false required: - number - state - submitted RcsConversationApiAppRegionsEnum: type: string enum: - BR - EU - US - UNRECOGNIZED description: App region. RcsConversationApiAppDto: type: object properties: id: type: string description: ID of the app uniqueItems: false projectId: type: string description: ID of the app project uniqueItems: false region: description: App region. uniqueItems: false allOf: - $ref: '#/components/schemas/RcsConversationApiAppRegionsEnum' required: - id - projectId - region RcsSenderStates: type: string enum: - DRAFT - IN_PROGRESS - IN_TEST - LAUNCHED - LAUNCHING - PREPARING_LAUNCH - UNLAUNCHED - UNKNOWN description: The current state of the sender. RcsEmailDto: type: object properties: label: type: string description: Contact email label. uniqueItems: false address: type: string format: email description: Contact email address. uniqueItems: false required: - label - address RcsPhoneDto: type: object properties: label: type: string description: Contact phone label. uniqueItems: false number: oneOf: - type: string format: e.164 phone number - type: string format: numeric phone number description: Contact phone number. uniqueItems: false required: - label - number RcsWebsiteDto: type: object properties: label: type: string description: Contact website label. uniqueItems: false url: type: string format: url description: Contact website address. uniqueItems: false required: - label - url RcsSenderDetailsBrandDto: type: object properties: name: type: string description: Brand name. uniqueItems: false emails: type: array items: $ref: '#/components/schemas/RcsEmailDto' description: Contact emails. uniqueItems: false phones: type: array items: $ref: '#/components/schemas/RcsPhoneDto' description: Contact phone numbers. uniqueItems: false websites: type: array items: $ref: '#/components/schemas/RcsWebsiteDto' description: Contact websites. uniqueItems: false color: type: string format: hex description: Brand color (HEX code). uniqueItems: false description: type: string description: Brand description. uniqueItems: false bannerUrl: type: string format: url description: Brand banner url. uniqueItems: false logoUrl: type: string format: url description: Brand logo url. uniqueItems: false privacyPolicyUrl: type: string format: url description: Privacy Policy URL. uniqueItems: false termsOfServiceUrl: type: string format: url description: Terms & Conditions URL. uniqueItems: false RcsSenderDetailsQuestionnaireQuestionObjectDto: type: object properties: question: type: string readOnly: true description: Human readable question. uniqueItems: false suggestedAnswers: readOnly: true description: Suggested answers to the question. uniqueItems: false type: array items: type: string required: - question - suggestedAnswers RcsSenderDetailsQuestionnaireGeneralQuestionsDto: type: object properties: optInDescription: readOnly: true description: How you obtain opt-in to message users. uniqueItems: false allOf: - $ref: '#/components/schemas/RcsSenderDetailsQuestionnaireQuestionObjectDto' triggerDescription: readOnly: true description: Actions that triggers messages to users. uniqueItems: false allOf: - $ref: '#/components/schemas/RcsSenderDetailsQuestionnaireQuestionObjectDto' interactionsDescription: readOnly: true description: Interactions with users. uniqueItems: false allOf: - $ref: '#/components/schemas/RcsSenderDetailsQuestionnaireQuestionObjectDto' optOutDescription: readOnly: true description: The message the sender sends when a user opts out. uniqueItems: false allOf: - $ref: '#/components/schemas/RcsSenderDetailsQuestionnaireQuestionObjectDto' videoUris: readOnly: true description: Publicly available URIs for videos of the sender, for review purposes only. uniqueItems: false allOf: - $ref: '#/components/schemas/RcsSenderDetailsQuestionnaireQuestionObjectDto' screenshotUris: readOnly: true description: Publicly available URIs for screenshots of the sender, for review purposes only. uniqueItems: false allOf: - $ref: '#/components/schemas/RcsSenderDetailsQuestionnaireQuestionObjectDto' required: - optInDescription - triggerDescription - interactionsDescription - optOutDescription - videoUris - screenshotUris RcsSenderDetailsQuestionnaireAnswerMetadataDto: type: object properties: ignore: type: string description: Ignore given string on launch, e.g. custom delimiter. uniqueItems: false RcsSenderDetailsQuestionnaireGeneralAnswersDto: type: object properties: optInDescription: type: string description: How you obtain opt-in to message users. uniqueItems: false optInDescriptionMetadata: description: Metadata for specified answer. uniqueItems: false allOf: - $ref: '#/components/schemas/RcsSenderDetailsQuestionnaireAnswerMetadataDto' triggerDescription: type: string description: Actions that triggers messages to users. uniqueItems: false triggerDescriptionMetadata: description: Metadata for specified answer. uniqueItems: false allOf: - $ref: '#/components/schemas/RcsSenderDetailsQuestionnaireAnswerMetadataDto' interactionsDescription: type: string description: Interactions with users. uniqueItems: false interactionsDescriptionMetadata: description: Metadata for specified answer. uniqueItems: false allOf: - $ref: '#/components/schemas/RcsSenderDetailsQuestionnaireAnswerMetadataDto' optOutDescription: type: string description: The message the sender sends when a user opts out. uniqueItems: false optOutDescriptionMetadata: description: Metadata for specified answer. uniqueItems: false allOf: - $ref: '#/components/schemas/RcsSenderDetailsQuestionnaireAnswerMetadataDto' videoUris: minItems: 1 description: Publicly available URIs for videos of the sender, for review purposes only. uniqueItems: false type: array items: type: string format: url screenshotUris: minItems: 1 description: Publicly available URIs for screenshots of the sender, for review purposes only. uniqueItems: false type: array items: type: string format: url RcsSenderDetailsQuestionnaireGeneralDto: type: object properties: questions: readOnly: true description: Launch questions uniqueItems: false allOf: - $ref: '#/components/schemas/RcsSenderDetailsQuestionnaireGeneralQuestionsDto' answers: description: Launch answers uniqueItems: false allOf: - $ref: '#/components/schemas/RcsSenderDetailsQuestionnaireGeneralAnswersDto' required: - questions - answers RcsSenderDetailsQuestionnaireVerificationQuestionsDto: type: object properties: name: readOnly: true description: Name of verification contact. uniqueItems: false allOf: - $ref: '#/components/schemas/RcsSenderDetailsQuestionnaireQuestionObjectDto' email: readOnly: true description: Email of verification contact. uniqueItems: false allOf: - $ref: '#/components/schemas/RcsSenderDetailsQuestionnaireQuestionObjectDto' title: readOnly: true description: Title of verification contact. uniqueItems: false allOf: - $ref: '#/components/schemas/RcsSenderDetailsQuestionnaireQuestionObjectDto' website: readOnly: true description: Website of verification contact. uniqueItems: false allOf: - $ref: '#/components/schemas/RcsSenderDetailsQuestionnaireQuestionObjectDto' required: - name - email - title - website RcsSenderDetailsQuestionnaireVerificationAnswersDto: type: object properties: name: type: string description: Name of verification contact. uniqueItems: false email: type: string format: email description: Email of verification contact. uniqueItems: false title: type: string description: Title of verification contact. uniqueItems: false website: type: string format: url description: Website of verification contact. uniqueItems: false RcsSenderDetailsQuestionnaireVerificationDto: type: object properties: questions: readOnly: true description: Verification questions. uniqueItems: false allOf: - $ref: '#/components/schemas/RcsSenderDetailsQuestionnaireVerificationQuestionsDto' answers: description: Verification answers. uniqueItems: false allOf: - $ref: '#/components/schemas/RcsSenderDetailsQuestionnaireVerificationAnswersDto' required: - questions - answers RcsSenderDetailsQuestionnaireGBQuestionsDto: type: object properties: brandIndustry: readOnly: true description: Sector or industry of business. uniqueItems: false allOf: - $ref: '#/components/schemas/RcsSenderDetailsQuestionnaireQuestionObjectDto' companyLegalName: readOnly: true description: The registered legal name of the company. uniqueItems: false allOf: - $ref: '#/components/schemas/RcsSenderDetailsQuestionnaireQuestionObjectDto' companyRegistrationNumber: readOnly: true description: The company registration number. uniqueItems: false allOf: - $ref: '#/components/schemas/RcsSenderDetailsQuestionnaireQuestionObjectDto' fullCompanyAddress: readOnly: true description: Full company address. uniqueItems: false allOf: - $ref: '#/components/schemas/RcsSenderDetailsQuestionnaireQuestionObjectDto' messagesVolume: readOnly: true description: Messages volume. uniqueItems: false allOf: - $ref: '#/components/schemas/RcsSenderDetailsQuestionnaireQuestionObjectDto' messagesFrequency: readOnly: true description: Messages frequency. uniqueItems: false allOf: - $ref: '#/components/schemas/RcsSenderDetailsQuestionnaireQuestionObjectDto' campaignLength: readOnly: true description: Length of campaign. deprecated: true uniqueItems: false allOf: - $ref: '#/components/schemas/RcsSenderDetailsQuestionnaireQuestionObjectDto' required: - brandIndustry - companyLegalName - companyRegistrationNumber - fullCompanyAddress - messagesVolume - messagesFrequency - campaignLength RcsSenderDetailsQuestionnaireGBAnswersDto: type: object properties: brandIndustry: type: string description: Sector or industry of business. uniqueItems: false companyLegalName: type: string description: The registered legal name of the company. uniqueItems: false companyRegistrationNumber: type: string description: The company registration number. uniqueItems: false fullCompanyAddress: type: string description: Full company address. uniqueItems: false fullCompanyAddressMetadata: description: Metadata for specified answer. uniqueItems: false allOf: - $ref: '#/components/schemas/RcsSenderDetailsQuestionnaireAnswerMetadataDto' messagesVolume: type: string description: Messages volume. uniqueItems: false messagesFrequency: type: string description: Messages frequency. uniqueItems: false campaignLength: type: string description: Length of campaign. deprecated: true uniqueItems: false RcsSenderDetailsQuestionnaireGBDto: type: object properties: questions: readOnly: true description: Launch questions specific for UK. uniqueItems: false allOf: - $ref: '#/components/schemas/RcsSenderDetailsQuestionnaireGBQuestionsDto' answers: description: Launch answers specific for UK. uniqueItems: false allOf: - $ref: '#/components/schemas/RcsSenderDetailsQuestionnaireGBAnswersDto' required: - questions - answers RcsSenderDetailsQuestionnaireFRQuestionsDto: type: object properties: fullCompanyAddress: readOnly: true description: Full company address. uniqueItems: false allOf: - $ref: '#/components/schemas/RcsSenderDetailsQuestionnaireQuestionObjectDto' usersAmount: readOnly: true deprecated: true description: No longer required - Will be removed end of August 2025. uniqueItems: false allOf: - $ref: '#/components/schemas/RcsSenderDetailsQuestionnaireQuestionObjectDto' startDate: readOnly: true deprecated: true description: No longer required - Will be removed end of August 2025. uniqueItems: false allOf: - $ref: '#/components/schemas/RcsSenderDetailsQuestionnaireQuestionObjectDto' siren: readOnly: true description: Company directory identification system number. uniqueItems: false allOf: - $ref: '#/components/schemas/RcsSenderDetailsQuestionnaireQuestionObjectDto' required: - fullCompanyAddress - siren RcsSenderDetailsQuestionnaireFRAnswersDto: type: object properties: fullCompanyAddress: type: string description: Full company address. uniqueItems: false fullCompanyAddressMetadata: description: Metadata for specified answer. uniqueItems: false allOf: - $ref: '#/components/schemas/RcsSenderDetailsQuestionnaireAnswerMetadataDto' usersAmount: type: string deprecated: true description: No longer required - Will be removed end of August 2025. uniqueItems: false startDate: type: string deprecated: true description: No longer required - Will be removed end of August 2025. uniqueItems: false siren: type: string pattern: ^\d+$ minLength: 9 maxLength: 9 description: Company directory identification system number. uniqueItems: false RcsSenderDetailsQuestionnaireFRDto: type: object properties: questions: readOnly: true description: Launch questions specific for France. uniqueItems: false allOf: - $ref: '#/components/schemas/RcsSenderDetailsQuestionnaireFRQuestionsDto' answers: description: Launch answers specific for France. uniqueItems: false allOf: - $ref: '#/components/schemas/RcsSenderDetailsQuestionnaireFRAnswersDto' required: - questions - answers RcsSenderDetailsQuestionnaireESQuestionsDto: type: object properties: firstMessage: readOnly: true description: The first message sent from the sender to the user. uniqueItems: false allOf: - $ref: '#/components/schemas/RcsSenderDetailsQuestionnaireQuestionObjectDto' required: - firstMessage RcsSenderDetailsQuestionnaireESAnswersDto: type: object properties: firstMessage: type: string description: The first message sent from the sender to the user. uniqueItems: false RcsSenderDetailsQuestionnaireESDto: type: object properties: questions: readOnly: true description: Launch questions specific for Spain. uniqueItems: false allOf: - $ref: '#/components/schemas/RcsSenderDetailsQuestionnaireESQuestionsDto' answers: description: Launch answers specific for Spain. uniqueItems: false allOf: - $ref: '#/components/schemas/RcsSenderDetailsQuestionnaireESAnswersDto' required: - questions - answers RcsSenderDetailsQuestionnaireUSQuestionsDto: type: object properties: companyLegalName: readOnly: true description: The registered legal name of the company. uniqueItems: false allOf: - $ref: '#/components/schemas/RcsSenderDetailsQuestionnaireQuestionObjectDto' ein: readOnly: true description: 'Employer Identification Number (EIN) nine-digit number assigned by IRS, following format: XX-XXXXXXX.' uniqueItems: false allOf: - $ref: '#/components/schemas/RcsSenderDetailsQuestionnaireQuestionObjectDto' brandIndustry: readOnly: true description: Sector or industry of business. uniqueItems: false allOf: - $ref: '#/components/schemas/RcsSenderDetailsQuestionnaireQuestionObjectDto' fullCompanyAddress: readOnly: true description: Full company address. uniqueItems: false allOf: - $ref: '#/components/schemas/RcsSenderDetailsQuestionnaireQuestionObjectDto' smsCampaign: readOnly: true description: US SMS campaign used as fallback. uniqueItems: false allOf: - $ref: '#/components/schemas/RcsSenderDetailsQuestionnaireQuestionObjectDto' messagesVolume: readOnly: true description: Messages volume. uniqueItems: false allOf: - $ref: '#/components/schemas/RcsSenderDetailsQuestionnaireQuestionObjectDto' required: - companyLegalName - ein - brandIndustry - fullCompanyAddress - smsCampaign - messagesVolume RcsSenderDetailsQuestionnaireUSAnswersDto: type: object properties: companyLegalName: type: string description: The registered legal name of the company. uniqueItems: false ein: type: string description: 'Employer Identification Number (EIN) nine-digit number assigned by IRS, following format: XX-XXXXXXX.' uniqueItems: false brandIndustry: type: string description: Sector or industry of business. uniqueItems: false fullCompanyAddress: type: string description: Full company address. uniqueItems: false fullCompanyAddressMetadata: description: Metadata for specified answer. uniqueItems: false allOf: - $ref: '#/components/schemas/RcsSenderDetailsQuestionnaireAnswerMetadataDto' smsCampaign: type: string description: US SMS campaign used as fallback. uniqueItems: false messagesVolume: type: string description: Messages volume. uniqueItems: false RcsSenderDetailsQuestionnaireUSDto: type: object properties: questions: readOnly: true description: Launch questions specific for US. uniqueItems: false allOf: - $ref: '#/components/schemas/RcsSenderDetailsQuestionnaireUSQuestionsDto' answers: description: Launch answers specific for US. uniqueItems: false allOf: - $ref: '#/components/schemas/RcsSenderDetailsQuestionnaireUSAnswersDto' required: - questions - answers RcsSenderDetailsQuestionnaireDto: type: object properties: general: description: General launch questions uniqueItems: false allOf: - $ref: '#/components/schemas/RcsSenderDetailsQuestionnaireGeneralDto' verification: description: Verification questions. uniqueItems: false allOf: - $ref: '#/components/schemas/RcsSenderDetailsQuestionnaireVerificationDto' gb: description: Launch questions specific for UK. uniqueItems: false allOf: - $ref: '#/components/schemas/RcsSenderDetailsQuestionnaireGBDto' fr: description: Launch questions specific for France. uniqueItems: false allOf: - $ref: '#/components/schemas/RcsSenderDetailsQuestionnaireFRDto' es: description: Launch questions specific for Spain. uniqueItems: false allOf: - $ref: '#/components/schemas/RcsSenderDetailsQuestionnaireESDto' us: description: Launch questions specific for US. uniqueItems: false allOf: - $ref: '#/components/schemas/RcsSenderDetailsQuestionnaireUSDto' required: - general - verification RcsSenderDetailsDto: type: object properties: brand: description: Brand information. uniqueItems: false allOf: - $ref: '#/components/schemas/RcsSenderDetailsBrandDto' callbackUrl: type: string format: url description: Use Webhooks instead for sender update events. deprecated: true uniqueItems: false testNumbers: description: Phone numbers for testing. uniqueItems: false type: array items: type: string format: e.164 phone number countries: type: array description: List of two-letter country codes in ISO 3166 standard, specifying the countries to launch RCS sender in. uniqueItems: false items: $ref: '#/components/schemas/RcsCountryCodes' questionnaire: description: |2- Launch questionnaire. The launch questionnaire is based on information required by different Suppliers and Operators. As such, especially the country specific, may be subject to change. uniqueItems: false allOf: - $ref: '#/components/schemas/RcsSenderDetailsQuestionnaireDto' required: - questionnaire RcsSenderRegions: type: string enum: - BR - EU - US description: Region sender is provisioned in. RcsSenderBillingCategories: type: string enum: - BASIC_MESSAGE - CONVERSATIONAL - CONVERSATIONAL_LEGACY - SINGLE_MESSAGE description: Billing category. RcsSenderUseCases: type: string enum: - MULTIUSE - OTP - PROMOTIONAL - TRANSACTIONAL description: Use case. RcsSenderHostingRegions: type: string enum: - ASIA_PACIFIC - EUROPE - NORTH_AMERICA description: Internal Google hosting region RcsSupplierDetailsGoogleDto: type: object properties: agentId: type: string description: Google agent id. uniqueItems: false RcsSupplierDetailsDto: type: object properties: google: description: Google supplier details. uniqueItems: false allOf: - $ref: '#/components/schemas/RcsSupplierDetailsGoogleDto' RcsSenderDto: type: object properties: id: type: string description: The unique ID of the sender. uniqueItems: false conversationApiApp: type: string description: If set, the Conversation API App ID the sender is connected to. deprecated: true uniqueItems: false conversationApiAppDetails: description: If set, the details of the Conversation API App the sender is connected to. uniqueItems: false allOf: - $ref: '#/components/schemas/RcsConversationApiAppDto' state: description: The current state of the sender. uniqueItems: false allOf: - $ref: '#/components/schemas/RcsSenderStates' testNumberStates: type: array items: $ref: '#/components/schemas/RcsTestNumberStateDto' description: Test phone numbers states. uniqueItems: false countryStatus: type: array items: $ref: '#/components/schemas/RcsCountryStatusDto' description: Countries status. uniqueItems: false details: description: Sender details and information. uniqueItems: false allOf: - $ref: '#/components/schemas/RcsSenderDetailsDto' region: description: Region sender is provisioned in. uniqueItems: false allOf: - $ref: '#/components/schemas/RcsSenderRegions' billingCategory: description: Billing category. uniqueItems: false allOf: - $ref: '#/components/schemas/RcsSenderBillingCategories' useCase: description: Use case. uniqueItems: false allOf: - $ref: '#/components/schemas/RcsSenderUseCases' hostingRegion: description: Internal Google hosting region uniqueItems: false allOf: - $ref: '#/components/schemas/RcsSenderHostingRegions' authName: type: string description: The name is needed to connect the sender to a Conversation API App. uniqueItems: false authToken: type: string description: The token is needed to connect the sender to a Conversation API App. uniqueItems: false created: type: string description: The UTC Date Time in ISO 8601 for when the sender was created. uniqueItems: false modified: type: string description: The UTC Date Time in ISO 8601 for when the sender was last modified. uniqueItems: false supplierDetails: description: Supplier details. uniqueItems: false allOf: - $ref: '#/components/schemas/RcsSupplierDetailsDto' launched: type: string description: The UTC Date Time in ISO 8601 for when the sender was last launched. uniqueItems: false required: - id - region - billingCategory - useCase - hostingRegion RcsSenderListDto: type: object properties: totalSize: type: number description: Total size of the entries matching the search query. uniqueItems: false pageSize: type: number description: Requested size of the page. uniqueItems: false previousPageToken: type: string description: Encoded token to use in list request to fetch previous batch of entries. uniqueItems: false nextPageToken: type: string description: Encoded token to use in list request to fetch next batch of entries. uniqueItems: false senders: type: array items: $ref: '#/components/schemas/RcsSenderDto' description: List of senders. uniqueItems: false required: - totalSize - pageSize - senders RcsSenderStatesEnum: type: string enum: - DRAFT - IN_PROGRESS - IN_TEST - LAUNCHED - LAUNCHING - PREPARING_LAUNCH - UNLAUNCHED - UNKNOWN RcsSenderSortColumnsEnum: type: string enum: - CREATED - MODIFIED - NAME - STATE RcsSortDirectionsEnum: type: string enum: - ASC - DESC RcsInputSenderRegions: type: string enum: - BR - EU - US description: Region sender is provisioned in. RcsInputSenderBillingCategories: type: string enum: - BASIC_MESSAGE - CONVERSATIONAL - CONVERSATIONAL_LEGACY - SINGLE_MESSAGE description: Billing category. RcsInputSenderUseCases: type: string enum: - MULTIUSE - OTP - PROMOTIONAL - TRANSACTIONAL description: Use case. RcsEmailInputDto: type: object properties: label: type: string minLength: 0 maxLength: 25 description: Contact email label. uniqueItems: false address: type: string format: email description: Contact email address. uniqueItems: false required: - label - address RcsPhoneInputDto: type: object properties: label: type: string minLength: 0 maxLength: 25 description: Contact phone label. uniqueItems: false number: type: string minLength: 6 maxLength: 15 description: Contact phone number. Must be a phone number without country code and without separators, or a valid e.164 phone number. uniqueItems: false required: - label - number RcsWebsiteInputDto: type: object properties: label: type: string minLength: 0 maxLength: 25 description: Contact website label. uniqueItems: false url: type: string format: url maxLength: 255 description: Contact website address. uniqueItems: false required: - label - url RcsSenderDetailsBrandInputDto: type: object properties: name: type: string minLength: 0 maxLength: 40 description: Brand name. uniqueItems: false emails: minItems: 1 maxItems: 3 description: Contact emails. Field 'address' must have unique values across items. uniqueItems: true type: array items: $ref: '#/components/schemas/RcsEmailInputDto' phones: minItems: 1 maxItems: 3 description: Contact phone numbers. Field 'number' must have unique values across items. uniqueItems: true type: array items: $ref: '#/components/schemas/RcsPhoneInputDto' websites: minItems: 1 maxItems: 3 description: Contact websites. Field 'url' must have unique values across items. uniqueItems: true type: array items: $ref: '#/components/schemas/RcsWebsiteInputDto' color: type: string format: hex description: Brand color (HEX code). default: '#000000' uniqueItems: false description: type: string minLength: 0 maxLength: 100 description: Brand description. uniqueItems: false bannerUrl: type: string format: url description: |- Brand banner url. - Supported mime types: `image/jpeg` or `image/png`. - Maximum file size: 200KB. - Exact image dimensions: 1440 x 448 px. uniqueItems: false logoUrl: type: string format: url description: |- Brand logo url. - Supported mime types: `image/jpeg` or `image/png`. - Maximum file size: 50KB. - Exact image dimensions: 224 x 224 px. uniqueItems: false privacyPolicyUrl: type: string format: url description: Privacy Policy URL. uniqueItems: false termsOfServiceUrl: type: string format: url description: Terms & Conditions URL. uniqueItems: false RcsInputCountryCodes: type: string enum: - AT - BE - BR - CA - CZ - DK - FI - FR - DE - IT - MX - NL - 'NO' - PL - PT - SG - SK - ES - SE - US - GB description: List of two-letter country codes in ISO 3166 standard, specifying the countries to launch RCS sender in. RcsSenderDetailsQuestionnaireAnswerMetadataInputDto: type: object properties: ignore: type: string description: Ignore given string on launch, e.g. custom delimiter. uniqueItems: false RcsSenderDetailsQuestionnaireGeneralAnswersInputDto: type: object properties: optInDescription: type: string description: How you obtain opt-in to message users. uniqueItems: false optInDescriptionMetadata: description: Metadata for specified answer. uniqueItems: false allOf: - $ref: '#/components/schemas/RcsSenderDetailsQuestionnaireAnswerMetadataInputDto' triggerDescription: type: string description: Actions that triggers messages to users. uniqueItems: false triggerDescriptionMetadata: description: Metadata for specified answer. uniqueItems: false allOf: - $ref: '#/components/schemas/RcsSenderDetailsQuestionnaireAnswerMetadataInputDto' interactionsDescription: type: string description: Interactions with users. uniqueItems: false interactionsDescriptionMetadata: description: Metadata for specified answer. uniqueItems: false allOf: - $ref: '#/components/schemas/RcsSenderDetailsQuestionnaireAnswerMetadataInputDto' optOutDescription: type: string description: The message the sender sends when a user opts out. uniqueItems: false optOutDescriptionMetadata: description: Metadata for specified answer. uniqueItems: false allOf: - $ref: '#/components/schemas/RcsSenderDetailsQuestionnaireAnswerMetadataInputDto' videoUris: minItems: 1 description: Publicly available URIs for videos of the sender, for review purposes only. uniqueItems: false type: array items: type: string format: url screenshotUris: minItems: 1 description: Publicly available URIs for screenshots of the sender, for review purposes only. uniqueItems: false type: array items: type: string format: url RcsSenderDetailsQuestionnaireGeneralInputDto: type: object properties: answers: description: Launch answers uniqueItems: false allOf: - $ref: '#/components/schemas/RcsSenderDetailsQuestionnaireGeneralAnswersInputDto' required: - answers RcsSenderDetailsQuestionnaireVerificationAnswersInputDto: type: object properties: name: type: string description: Name of verification contact. uniqueItems: false email: type: string format: email description: Email of verification contact. uniqueItems: false title: type: string description: Title of verification contact. uniqueItems: false website: type: string format: url description: Website of verification contact. uniqueItems: false RcsSenderDetailsQuestionnaireVerificationInputDto: type: object properties: answers: description: Verification answers. uniqueItems: false allOf: - $ref: '#/components/schemas/RcsSenderDetailsQuestionnaireVerificationAnswersInputDto' required: - answers RcsSenderDetailsQuestionnaireGBAnswersInputDto: type: object properties: brandIndustry: type: string description: Sector or industry of business. uniqueItems: false companyLegalName: type: string description: The registered legal name of the company. uniqueItems: false companyRegistrationNumber: type: string description: The company registration number. uniqueItems: false fullCompanyAddress: type: string description: Full company address. uniqueItems: false fullCompanyAddressMetadata: description: Metadata for specified answer. uniqueItems: false allOf: - $ref: '#/components/schemas/RcsSenderDetailsQuestionnaireAnswerMetadataDto' messagesVolume: type: string description: Messages volume. uniqueItems: false messagesFrequency: type: string description: Messages frequency. uniqueItems: false campaignLength: type: string description: Length of campaign. deprecated: true uniqueItems: false RcsSenderDetailsQuestionnaireGBInputDto: type: object properties: answers: description: Launch answers specific for UK. uniqueItems: false allOf: - $ref: '#/components/schemas/RcsSenderDetailsQuestionnaireGBAnswersInputDto' required: - answers RcsSenderDetailsQuestionnaireFRAnswersInputDto: type: object properties: fullCompanyAddress: type: string description: Full company address. uniqueItems: false fullCompanyAddressMetadata: description: Metadata for specified answer. uniqueItems: false allOf: - $ref: '#/components/schemas/RcsSenderDetailsQuestionnaireAnswerMetadataInputDto' usersAmount: type: string deprecated: true description: No longer required - Will be removed end of August 2025. uniqueItems: false startDate: type: string deprecated: true description: No longer required - Will be removed end of August 2025. uniqueItems: false siren: type: string pattern: ^\d+$ minLength: 9 maxLength: 9 description: Company directory identification system number. uniqueItems: false RcsSenderDetailsQuestionnaireFRInputDto: type: object properties: answers: description: Launch answers specific for France. uniqueItems: false allOf: - $ref: '#/components/schemas/RcsSenderDetailsQuestionnaireFRAnswersInputDto' required: - answers RcsSenderDetailsQuestionnaireESAnswersInputDto: type: object properties: firstMessage: type: string description: The first message sent from the sender to the user. uniqueItems: false RcsSenderDetailsQuestionnaireESInputDto: type: object properties: answers: description: Launch answers specific for Spain. uniqueItems: false allOf: - $ref: '#/components/schemas/RcsSenderDetailsQuestionnaireESAnswersInputDto' required: - answers RcsSenderDetailsQuestionnaireUSAnswersInputDto: type: object properties: companyLegalName: type: string description: The registered legal name of the company. uniqueItems: false ein: type: string description: 'Employer Identification Number (EIN) nine-digit number assigned by IRS, following format: XX-XXXXXXX.' uniqueItems: false brandIndustry: type: string description: Sector or industry of business. uniqueItems: false fullCompanyAddress: type: string description: Full company address. uniqueItems: false fullCompanyAddressMetadata: description: Metadata for specified answer. uniqueItems: false allOf: - $ref: '#/components/schemas/RcsSenderDetailsQuestionnaireAnswerMetadataDto' smsCampaign: type: string description: US SMS campaign used as fallback. uniqueItems: false messagesVolume: type: string description: Messages volume. uniqueItems: false RcsSenderDetailsQuestionnaireUSInputDto: type: object properties: answers: description: Launch answers specific for US. uniqueItems: false allOf: - $ref: '#/components/schemas/RcsSenderDetailsQuestionnaireUSAnswersInputDto' required: - answers RcsSenderDetailsQuestionnaireInputDto: type: object properties: general: description: General launch questions uniqueItems: false allOf: - $ref: '#/components/schemas/RcsSenderDetailsQuestionnaireGeneralInputDto' verification: description: Verification questions. uniqueItems: false allOf: - $ref: '#/components/schemas/RcsSenderDetailsQuestionnaireVerificationInputDto' gb: description: Launch questions specific for UK. uniqueItems: false allOf: - $ref: '#/components/schemas/RcsSenderDetailsQuestionnaireGBInputDto' fr: description: Launch questions specific for France. uniqueItems: false allOf: - $ref: '#/components/schemas/RcsSenderDetailsQuestionnaireFRInputDto' es: description: Launch questions specific for Spain. uniqueItems: false allOf: - $ref: '#/components/schemas/RcsSenderDetailsQuestionnaireESInputDto' us: description: Launch questions specific for US. uniqueItems: false allOf: - $ref: '#/components/schemas/RcsSenderDetailsQuestionnaireUSInputDto' RcsSenderDetailsInputDto: type: object properties: brand: description: Brand information. uniqueItems: false allOf: - $ref: '#/components/schemas/RcsSenderDetailsBrandInputDto' testNumbers: maxItems: 20 uniqueItems: true description: Phone numbers for testing. type: array items: type: string format: e.164 phone number countries: type: array minItems: 1 uniqueItems: true description: List of two-letter country codes in ISO 3166 standard, specifying the countries to launch RCS sender in. items: $ref: '#/components/schemas/RcsInputCountryCodes' questionnaire: description: |2- Launch questionnaire. The launch questionnaire is based on information required by different Suppliers and Operators. As such, especially the country specific, may be subject to change. uniqueItems: false allOf: - $ref: '#/components/schemas/RcsSenderDetailsQuestionnaireInputDto' RcsSenderInputDto: type: object properties: region: description: Region sender is provisioned in. uniqueItems: false allOf: - $ref: '#/components/schemas/RcsInputSenderRegions' billingCategory: description: Billing category. uniqueItems: false allOf: - $ref: '#/components/schemas/RcsInputSenderBillingCategories' useCase: description: Use case. uniqueItems: false allOf: - $ref: '#/components/schemas/RcsInputSenderUseCases' details: description: Sender details and information. uniqueItems: false allOf: - $ref: '#/components/schemas/RcsSenderDetailsInputDto' required: - region - billingCategory - useCase RcsUpdateSenderDetailsBrandInputDto: type: object properties: name: type: string minLength: 0 maxLength: 40 description: Brand name. uniqueItems: false emails: minItems: 1 maxItems: 3 description: Contact emails. If null the value will be deleted. Field 'address' must have unique values across items. nullable: true uniqueItems: true type: array items: $ref: '#/components/schemas/RcsEmailInputDto' phones: minItems: 1 maxItems: 3 description: Contact phone numbers. If null the value will be deleted. Field 'number' must have unique values across items. nullable: true uniqueItems: true type: array items: $ref: '#/components/schemas/RcsPhoneInputDto' websites: minItems: 1 maxItems: 3 description: Contact websites. If null the value will be deleted. Field 'url' must have unique values across items. nullable: true uniqueItems: true type: array items: $ref: '#/components/schemas/RcsWebsiteInputDto' color: type: string format: hex description: Brand color (HEX code). uniqueItems: false description: type: string minLength: 0 maxLength: 100 description: Brand description. uniqueItems: false bannerUrl: type: string format: url description: |- Brand banner url. - Supported mime types: `image/jpeg` or `image/png`. - Maximum file size: 200KB. - Exact image dimensions: 1440 x 448 px. uniqueItems: false logoUrl: type: string format: url description: |- Brand logo url. - Supported mime types: `image/jpeg` or `image/png`. - Maximum file size: 50KB. - Exact image dimensions: 224 x 224 px. uniqueItems: false privacyPolicyUrl: type: string format: url description: Privacy Policy URL. uniqueItems: false termsOfServiceUrl: type: string format: url description: Terms & Conditions URL. uniqueItems: false RcsUpdateSenderDetailsQuestionnaireAnswerMetadataInputDto: type: object properties: ignore: type: string nullable: true description: Ignore given string on launch, e.g. custom delimiter. If null the value will be deleted. uniqueItems: false RcsUpdateSenderDetailsQuestionnaireGeneralAnswersInputDto: type: object properties: optInDescription: type: string nullable: true description: How you obtain opt-in to message users. If null the value will be deleted. uniqueItems: false optInDescriptionMetadata: description: Metadata for specified answer. uniqueItems: false allOf: - $ref: '#/components/schemas/RcsUpdateSenderDetailsQuestionnaireAnswerMetadataInputDto' triggerDescription: type: string nullable: true description: Actions that triggers messages to users. If null the value will be deleted. uniqueItems: false triggerDescriptionMetadata: description: Metadata for specified answer. uniqueItems: false allOf: - $ref: '#/components/schemas/RcsUpdateSenderDetailsQuestionnaireAnswerMetadataInputDto' interactionsDescription: type: string nullable: true description: Interactions with users. If null the value will be deleted. uniqueItems: false interactionsDescriptionMetadata: description: Metadata for specified answer. uniqueItems: false allOf: - $ref: '#/components/schemas/RcsUpdateSenderDetailsQuestionnaireAnswerMetadataInputDto' optOutDescription: type: string nullable: true description: The message the sender sends when a user opts out. If null the value will be deleted. uniqueItems: false optOutDescriptionMetadata: description: Metadata for specified answer. uniqueItems: false allOf: - $ref: '#/components/schemas/RcsUpdateSenderDetailsQuestionnaireAnswerMetadataInputDto' videoUris: nullable: true minItems: 1 description: Publicly available URIs for videos of the sender, for review purposes only. If null the value will be deleted. uniqueItems: false type: array items: type: string format: url screenshotUris: nullable: true minItems: 1 description: Publicly available URIs for screenshots of the sender, for review purposes only. If null the value will be deleted. uniqueItems: false type: array items: type: string format: url RcsUpdateSenderDetailsQuestionnaireGeneralInputDto: type: object properties: answers: description: Launch answers uniqueItems: false allOf: - $ref: '#/components/schemas/RcsUpdateSenderDetailsQuestionnaireGeneralAnswersInputDto' required: - answers RcsUpdateSenderDetailsQuestionnaireVerificationAnswersInputDto: type: object properties: name: type: string nullable: true description: Name of verification contact. If null the value will be deleted. uniqueItems: false email: type: string format: email nullable: true description: Email of verification contact. If null the value will be deleted. uniqueItems: false title: type: string nullable: true description: Title of verification contact. If null the value will be deleted. uniqueItems: false website: type: string format: url nullable: true description: Website of verification contact. If null the value will be deleted. uniqueItems: false RcsUpdateSenderDetailsQuestionnaireVerificationInputDto: type: object properties: answers: description: Verification answers. uniqueItems: false allOf: - $ref: '#/components/schemas/RcsUpdateSenderDetailsQuestionnaireVerificationAnswersInputDto' required: - answers RcsUpdateSenderDetailsQuestionnaireGBAnswersInputDto: type: object properties: brandIndustry: type: string nullable: true description: Sector or industry of business. If null the value will be deleted. uniqueItems: false companyLegalName: type: string nullable: true description: The registered legal name of the company. If null the value will be deleted. uniqueItems: false companyRegistrationNumber: type: string nullable: true description: The company registration number. uniqueItems: false fullCompanyAddress: type: string nullable: true description: Full company address. If null the value will be deleted. uniqueItems: false fullCompanyAddressMetadata: description: Metadata for specified answer. uniqueItems: false allOf: - $ref: '#/components/schemas/RcsUpdateSenderDetailsQuestionnaireAnswerMetadataInputDto' messagesVolume: type: string nullable: true description: Messages volume. If null the value will be deleted. uniqueItems: false messagesFrequency: type: string nullable: true description: Messages frequency. If null the value will be deleted. uniqueItems: false campaignLength: type: string nullable: true description: Length of campaign. If null the value will be deleted. deprecated: true uniqueItems: false RcsUpdateSenderDetailsQuestionnaireGBInputDto: type: object properties: answers: description: Launch answers specific for UK. uniqueItems: false allOf: - $ref: '#/components/schemas/RcsUpdateSenderDetailsQuestionnaireGBAnswersInputDto' required: - answers RcsUpdateSenderDetailsQuestionnaireFRAnswersInputDto: type: object properties: fullCompanyAddress: type: string nullable: true description: Full company address. uniqueItems: false fullCompanyAddressMetadata: description: Metadata for specified answer. uniqueItems: false allOf: - $ref: '#/components/schemas/RcsUpdateSenderDetailsQuestionnaireAnswerMetadataInputDto' siren: type: string pattern: ^\d+$ minLength: 9 maxLength: 9 nullable: true description: Company directory identification system number. uniqueItems: false RcsUpdateSenderDetailsQuestionnaireFRInputDto: type: object properties: answers: description: Launch answers specific for France. uniqueItems: false allOf: - $ref: '#/components/schemas/RcsUpdateSenderDetailsQuestionnaireFRAnswersInputDto' required: - answers RcsUpdateSenderDetailsQuestionnaireESAnswersInputDto: type: object properties: firstMessage: type: string nullable: true description: The first message sent from the sender to the user. uniqueItems: false RcsUpdateSenderDetailsQuestionnaireESInputDto: type: object properties: answers: description: Launch answers specific for Spain. uniqueItems: false allOf: - $ref: '#/components/schemas/RcsUpdateSenderDetailsQuestionnaireESAnswersInputDto' required: - answers RcsUpdateSenderDetailsQuestionnaireUSAnswersInputDto: type: object properties: companyLegalName: type: string nullable: true description: The registered legal name of the company. uniqueItems: false ein: type: string nullable: true description: 'Employer Identification Number (EIN) nine-digit number assigned by IRS, following format: XX-XXXXXXX.' uniqueItems: false brandIndustry: type: string nullable: true description: Sector or industry of business. uniqueItems: false fullCompanyAddress: type: string nullable: true description: Full company address. uniqueItems: false fullCompanyAddressMetadata: description: Metadata for specified answer. uniqueItems: false allOf: - $ref: '#/components/schemas/RcsUpdateSenderDetailsQuestionnaireAnswerMetadataInputDto' smsCampaign: type: string nullable: true description: US SMS campaign used as fallback. uniqueItems: false messagesVolume: type: string nullable: true description: Messages volume. uniqueItems: false RcsUpdateSenderDetailsQuestionnaireUSInputDto: type: object properties: answers: description: Launch answers specific for US. uniqueItems: false allOf: - $ref: '#/components/schemas/RcsUpdateSenderDetailsQuestionnaireUSAnswersInputDto' required: - answers RcsUpdateSenderDetailsQuestionnaireInputDto: type: object properties: general: description: General launch questions uniqueItems: false allOf: - $ref: '#/components/schemas/RcsUpdateSenderDetailsQuestionnaireGeneralInputDto' verification: description: Verification questions. uniqueItems: false allOf: - $ref: '#/components/schemas/RcsUpdateSenderDetailsQuestionnaireVerificationInputDto' gb: description: Launch questions specific for UK. uniqueItems: false allOf: - $ref: '#/components/schemas/RcsUpdateSenderDetailsQuestionnaireGBInputDto' fr: description: Launch questions specific for France. uniqueItems: false allOf: - $ref: '#/components/schemas/RcsUpdateSenderDetailsQuestionnaireFRInputDto' es: description: Launch questions specific for Spain. uniqueItems: false allOf: - $ref: '#/components/schemas/RcsUpdateSenderDetailsQuestionnaireESInputDto' us: description: Launch questions specific for US. uniqueItems: false allOf: - $ref: '#/components/schemas/RcsUpdateSenderDetailsQuestionnaireUSInputDto' RcsUpdateSenderDetailsInputDto: type: object properties: brand: description: Brand information. uniqueItems: false allOf: - $ref: '#/components/schemas/RcsUpdateSenderDetailsBrandInputDto' testNumbers: maxItems: 20 uniqueItems: true description: Phone numbers for testing. If null the value will be deleted. nullable: true type: array items: type: string format: e.164 phone number countries: type: array minItems: 1 uniqueItems: true description: List of two-letter country codes in ISO 3166 standard, specifying the countries to launch RCS sender in. If null the value will be deleted. nullable: true items: $ref: '#/components/schemas/RcsInputCountryCodes' questionnaire: description: |2- Launch questionnaire. The launch questionnaire is based on information required by different Suppliers and Operators. As such, especially the country specific, may be subject to change. uniqueItems: false allOf: - $ref: '#/components/schemas/RcsUpdateSenderDetailsQuestionnaireInputDto' RcsUpdateSenderInputDto: type: object properties: details: description: Sender details and information. uniqueItems: false allOf: - $ref: '#/components/schemas/RcsUpdateSenderDetailsInputDto' required: - details RcsSenderNotificationType: type: string enum: - ACTIVE - COMMENT_ADDED - CREATED - DELETED - EDITED - INACTIVE - TEST RcsSenderNotificationDto: type: object properties: type: uniqueItems: false allOf: - $ref: '#/components/schemas/RcsSenderNotificationType' created: type: string uniqueItems: false author: type: string uniqueItems: false comment: type: string uniqueItems: false required: - type RcsSenderNotificationListDto: type: object properties: totalSize: type: number description: Total size of the entries matching the search query. uniqueItems: false pageSize: type: number description: Requested size of the page. uniqueItems: false previousPageToken: type: string description: Encoded token to use in list request to fetch previous batch of entries. uniqueItems: false nextPageToken: type: string description: Encoded token to use in list request to fetch next batch of entries. uniqueItems: false notifications: type: array items: $ref: '#/components/schemas/RcsSenderNotificationDto' uniqueItems: false required: - totalSize - pageSize - notifications RcsTestNumberFeatures: type: string enum: - ACTION_COMPOSE - ACTION_CREATE_CALENDAR_EVENT - ACTION_DIAL - ACTION_OPEN_URL - ACTION_OPEN_URL_IN_WEBVIEW - ACTION_SHARE_LOCATION - ACTION_VIEW_LOCATION - REVOCATION - RICHCARD_CAROUSEL - RICHCARD_STANDALONE - FEATURE_UNSPECIFIED - UNRECOGNIZED description: List of RBM features that this device supports. RcsTestNumberCapabilitiesDto: type: object properties: features: type: array description: List of RBM features that this device supports. uniqueItems: false items: $ref: '#/components/schemas/RcsTestNumberFeatures' required: - features RcsTestNumbersDto: type: object properties: testNumbers: type: array items: $ref: '#/components/schemas/RcsTestNumberStateDto' description: Test numbers states. uniqueItems: false required: - testNumbers RcsTestNumbersInputDto: type: object properties: testNumbers: maxItems: 20 uniqueItems: true description: Phone numbers for testing. type: array items: type: string format: e.164 phone number required: - testNumbers RcsSenderDetailsQuestionnaireGeneralBaseDto: type: object properties: questions: readOnly: true description: Launch questions uniqueItems: false allOf: - $ref: '#/components/schemas/RcsSenderDetailsQuestionnaireGeneralQuestionsDto' required: - questions RcsSenderDetailsQuestionnaireVerificationBaseDto: type: object properties: questions: readOnly: true description: Verification questions. uniqueItems: false allOf: - $ref: '#/components/schemas/RcsSenderDetailsQuestionnaireVerificationQuestionsDto' required: - questions RcsSenderDetailsQuestionnaireGBBaseDto: type: object properties: questions: readOnly: true description: Launch questions specific for UK. uniqueItems: false allOf: - $ref: '#/components/schemas/RcsSenderDetailsQuestionnaireGBQuestionsDto' required: - questions RcsSenderDetailsQuestionnaireFRBaseDto: type: object properties: questions: readOnly: true description: Launch questions specific for France. uniqueItems: false allOf: - $ref: '#/components/schemas/RcsSenderDetailsQuestionnaireFRQuestionsDto' required: - questions RcsSenderDetailsQuestionnaireESBaseDto: type: object properties: questions: readOnly: true description: Launch questions specific for Spain. uniqueItems: false allOf: - $ref: '#/components/schemas/RcsSenderDetailsQuestionnaireESQuestionsDto' required: - questions RcsSenderDetailsQuestionnaireUSBaseDto: type: object properties: questions: readOnly: true description: Launch questions specific for US. uniqueItems: false allOf: - $ref: '#/components/schemas/RcsSenderDetailsQuestionnaireUSQuestionsDto' required: - questions RcsSenderDetailsQuestionnaireBaseDto: type: object properties: general: description: General launch questions uniqueItems: false allOf: - $ref: '#/components/schemas/RcsSenderDetailsQuestionnaireGeneralBaseDto' verification: description: Verification questions. uniqueItems: false allOf: - $ref: '#/components/schemas/RcsSenderDetailsQuestionnaireVerificationBaseDto' gb: description: Launch questions specific for UK. uniqueItems: false allOf: - $ref: '#/components/schemas/RcsSenderDetailsQuestionnaireGBBaseDto' fr: description: Launch questions specific for France. uniqueItems: false allOf: - $ref: '#/components/schemas/RcsSenderDetailsQuestionnaireFRBaseDto' es: description: Launch questions specific for Spain. uniqueItems: false allOf: - $ref: '#/components/schemas/RcsSenderDetailsQuestionnaireESBaseDto' us: description: Launch questions specific for US. uniqueItems: false allOf: - $ref: '#/components/schemas/RcsSenderDetailsQuestionnaireUSBaseDto' required: - general - verification RcsInputSenderUseCasesEnum: type: string enum: - MULTIUSE - OTP - PROMOTIONAL - TRANSACTIONAL RcsInputCountryCodesEnum: type: string enum: - AT - BE - BR - CA - CZ - DK - FI - FR - DE - IT - MX - NL - 'NO' - PL - PT - SG - SK - ES - SE - US - GB RcsUpscaleSenderDto: type: object properties: id: type: string description: The unique ID of the sender. uniqueItems: false conversationApiApp: type: string description: If set, the Conversation API App ID the sender is connected to. deprecated: true uniqueItems: false conversationApiAppDetails: description: If set, the details of the Conversation API App the sender is connected to. uniqueItems: false allOf: - $ref: '#/components/schemas/RcsConversationApiAppDto' state: description: The current state of the sender. uniqueItems: false allOf: - $ref: '#/components/schemas/RcsSenderStates' testNumberStates: type: array items: $ref: '#/components/schemas/RcsTestNumberStateDto' description: Test phone numbers states. uniqueItems: false countryStatus: type: array items: $ref: '#/components/schemas/RcsCountryStatusDto' description: Countries status. uniqueItems: false details: description: Sender details and information. uniqueItems: false allOf: - $ref: '#/components/schemas/RcsSenderDetailsDto' region: description: Region sender is provisioned in. uniqueItems: false allOf: - $ref: '#/components/schemas/RcsSenderRegions' billingCategory: description: Billing category. uniqueItems: false allOf: - $ref: '#/components/schemas/RcsSenderBillingCategories' useCase: description: Use case. uniqueItems: false allOf: - $ref: '#/components/schemas/RcsSenderUseCases' hostingRegion: description: Internal Google hosting region uniqueItems: false allOf: - $ref: '#/components/schemas/RcsSenderHostingRegions' authName: type: string description: The name is needed to connect the sender to a Conversation API App. uniqueItems: false authToken: type: string description: The token is needed to connect the sender to a Conversation API App. uniqueItems: false created: type: string description: The UTC Date Time in ISO 8601 for when the sender was created. uniqueItems: false modified: type: string description: The UTC Date Time in ISO 8601 for when the sender was last modified. uniqueItems: false supplierDetails: description: Supplier details. uniqueItems: false allOf: - $ref: '#/components/schemas/RcsSupplierDetailsDto' launched: type: string description: The UTC Date Time in ISO 8601 for when the sender was last launched. uniqueItems: false isUpscaled: type: boolean description: Whether RCS sender is already upscaled. uniqueItems: false required: - id - region - billingCategory - useCase - hostingRegion - isUpscaled RcsUpscaleSenderListDto: type: object properties: totalSize: type: number description: Total size of the entries matching the search query. uniqueItems: false pageSize: type: number description: Requested size of the page. uniqueItems: false previousPageToken: type: string description: Encoded token to use in list request to fetch previous batch of entries. uniqueItems: false nextPageToken: type: string description: Encoded token to use in list request to fetch next batch of entries. uniqueItems: false senders: type: array items: $ref: '#/components/schemas/RcsUpscaleSenderDto' description: List of senders. uniqueItems: false required: - totalSize - pageSize - senders RcsInternalUpscaleCountryCodes: type: string enum: - AD - AE - AF - AG - AI - AL - AM - AO - AQ - AR - AS - AT - AU - AW - AZ - BA - BB - BD - BE - BF - BG - BH - BI - BJ - BM - BN - BO - BQ - BR - BS - BT - BW - BY - BZ - CA - CD - CF - CG - CH - CI - CK - CL - CM - CN - CO - CR - CU - CV - CW - CY - CZ - DE - DJ - DK - DM - DO - DZ - EC - EE - EG - ER - ES - ET - FI - FJ - FK - FM - FO - FR - GA - GB - GD - GE - GF - GG - GH - GI - GL - GM - GN - GP - GQ - GR - GT - GU - GW - GY - HK - HN - HR - HT - HU - ID - IE - IL - IM - IN - IO - IQ - IR - IS - IT - JE - JM - JO - JP - KE - KG - KH - KI - KM - KN - KP - KR - KW - KY - KZ - LA - LB - LC - LI - LK - LR - LS - LT - LU - LV - LY - MA - MC - MD - ME - MG - MH - MK - ML - MM - MN - MO - MP - MQ - MR - MS - MT - MU - MV - MW - MX - MY - MZ - NA - NC - NE - NF - NG - NI - NL - 'NO' - NP - NR - NU - NZ - OM - PA - PE - PF - PG - PH - PK - PL - PM - PR - PS - PT - PW - PY - QA - RE - RO - RS - RU - RW - SA - SB - SC - SD - SE - SG - SH - SI - SK - SL - SM - SN - SO - SR - SS - ST - SV - SX - SY - SZ - TC - TD - TG - TH - TJ - TK - TL - TM - TN - TO - TR - TT - TV - TW - TZ - UA - UG - UM - US - UY - UZ - VC - VE - VG - VI - VN - VU - WF - WS - XK - YE - YT - ZA - ZM - ZW description: The upscale country code (ISO 3166-1 alpha-2). RcsPublicUpscaleStates: type: string enum: - DOWNSCALING - DOWNSCALING_FAILED - UPSCALED - UPSCALING - UPSCALING_FAILED description: The current state of upscale. RcsUpscaleSmsResourceTypesNumeric: type: string enum: - NUMERIC description: NUMERIC RcsNumberTypes: type: string enum: - LONG_NUMBER - SHORT_CODE - TYPE_UNSPECIFIED - UNRECOGNIZED description: The number type. RcsInternalUpscaleDetailsSmsNumericDetailsDto: type: object properties: number: type: string description: Readable number (E.164 msisdn format). uniqueItems: false countryCode: description: The number country code (ISO 3166-1 alpha-2). uniqueItems: false allOf: - $ref: '#/components/schemas/RcsCountryCodes' numberType: description: The number type. uniqueItems: false allOf: - $ref: '#/components/schemas/RcsNumberTypes' required: - number - countryCode - numberType RcsUpscaleDetailsSmsNumericDto: type: object properties: type: description: NUMERIC uniqueItems: false allOf: - $ref: '#/components/schemas/RcsUpscaleSmsResourceTypesNumeric' numberId: type: string description: The ID of number. uniqueItems: false smsAppId: type: string description: The ID of sms app. uniqueItems: false details: description: Sms details and information. uniqueItems: false allOf: - $ref: '#/components/schemas/RcsInternalUpscaleDetailsSmsNumericDetailsDto' required: - type - numberId - smsAppId - details RcsUpscaleDetailsSmsDtoDeprecated: type: object properties: numberId: type: string description: The ID of number. uniqueItems: false smsAppId: type: string description: The ID of sms app. uniqueItems: false details: description: Sms details and information. uniqueItems: false allOf: - $ref: '#/components/schemas/RcsInternalUpscaleDetailsSmsNumericDetailsDto' description: UpscaleDetailsSmsDto is deprecated. Please use UpscaleDetailsSmsByType. required: - numberId - smsAppId - details RcsUpscaleDetailsRcsDto: type: object properties: senderId: type: string description: The ID of rcs sender. uniqueItems: false required: - senderId RcsUpscaleDetailsConvAppDto: type: object properties: appId: type: string description: The ID of conversation app. uniqueItems: false required: - appId RcsRcsUpscaleDetailsDto: type: object properties: rcs: description: RCS details and information. uniqueItems: false allOf: - $ref: '#/components/schemas/RcsUpscaleDetailsRcsDto' sms: oneOf: - $ref: '#/components/schemas/RcsUpscaleDetailsSmsNumericDto' - $ref: '#/components/schemas/RcsUpscaleDetailsSmsDtoDeprecated' description: SMS details and information. uniqueItems: false convApp: description: Conversation app details and information. uniqueItems: false allOf: - $ref: '#/components/schemas/RcsUpscaleDetailsConvAppDto' required: - rcs - sms - convApp RcsRcsUpscaleDto: type: object properties: id: type: string description: The ID of upscale. uniqueItems: false countryCode: description: The upscale country code (ISO 3166-1 alpha-2). uniqueItems: false allOf: - $ref: '#/components/schemas/RcsInternalUpscaleCountryCodes' created: type: string description: The UTC Date Time in ISO 8601 for when the upscale was created. uniqueItems: false updated: type: string description: The UTC Date Time in ISO 8601 for when the upscale was updated. uniqueItems: false terminated: type: string description: The UTC Date Time in ISO 8601 for when the upscale was terminated. uniqueItems: false state: description: The current state of upscale. uniqueItems: false allOf: - $ref: '#/components/schemas/RcsPublicUpscaleStates' details: description: Upscale details and information. uniqueItems: false allOf: - $ref: '#/components/schemas/RcsRcsUpscaleDetailsDto' required: - id - countryCode - created - updated - state - details RcsRcsUpscaleListDto: type: object properties: totalSize: type: number description: Total size of the entries matching the search query. uniqueItems: false pageSize: type: number description: Requested size of the page. uniqueItems: false previousPageToken: type: string description: Encoded token to use in list request to fetch previous batch of entries. uniqueItems: false nextPageToken: type: string description: Encoded token to use in list request to fetch next batch of entries. uniqueItems: false upscales: description: List of upscales. uniqueItems: false type: array items: $ref: '#/components/schemas/RcsRcsUpscaleDto' required: - totalSize - pageSize - upscales RcsPublicUpscaleStatesEnum: type: string enum: - DOWNSCALING - DOWNSCALING_FAILED - UPSCALED - UPSCALING - UPSCALING_FAILED RcsInputUpscaleCountryCodes: type: string enum: - GB - DE - SE - MX - US - IT - DK - BR - ES - NL - SG - PT - CA - AT - BE - PL - SK - CZ - 'NO' - FR description: The upscale country code (ISO 3166-1 alpha-2). RcsInputUpscaleDetailsSmsNumericDto: type: object properties: type: description: NUMERIC uniqueItems: false allOf: - $ref: '#/components/schemas/RcsUpscaleSmsResourceTypesNumeric' numberId: type: string format: uuid without hyphens description: The ID of number. uniqueItems: false required: - type - numberId RcsInputUpscaleDetailsSmsDtoDeprecated: type: object properties: numberId: type: string format: uuid without hyphens description: The ID of number. uniqueItems: false description: InputUpscaleDetailsSmsDto is deprecated. Please use InputUpscaleDetailsSmsByType. required: - numberId RcsInputUpscaleDetailsRcsDto: type: object properties: senderId: type: string format: uuid description: The ID of rcs sender. uniqueItems: false required: - senderId RcsInputRcsUpscaleDetailsDto: type: object properties: rcs: description: RCS details and information. uniqueItems: false allOf: - $ref: '#/components/schemas/RcsInputUpscaleDetailsRcsDto' sms: oneOf: - $ref: '#/components/schemas/RcsInputUpscaleDetailsSmsNumericDto' - $ref: '#/components/schemas/RcsInputUpscaleDetailsSmsDtoDeprecated' description: SMS details and information. uniqueItems: false required: - rcs - sms RcsInputRcsUpscaleDto: type: object properties: countryCode: description: The upscale country code (ISO 3166-1 alpha-2). uniqueItems: false allOf: - $ref: '#/components/schemas/RcsInputUpscaleCountryCodes' details: description: Upscale details and information. uniqueItems: false allOf: - $ref: '#/components/schemas/RcsInputRcsUpscaleDetailsDto' required: - countryCode - details