openapi: 3.0.3
info:
  title: Provisioning API
  description: ''
  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 Senders
      - WhatsApp Accounts
      - WhatsApp Flows
      - WhatsApp Solutions
  - 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
      upscales.
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 <a
            href="https://dashboard.sinch.com/">Sinch Dashboard</a>.
          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-badges:
        - name: GA
          position: after
          color: green
    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 <a
            href="https://dashboard.sinch.com/">Sinch Dashboard</a>.
          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-badges:
        - name: GA
          position: after
          color: green
  /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 <a
            href="https://dashboard.sinch.com/">Sinch Dashboard</a>.
          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-badges:
        - name: GA
          position: after
          color: green
    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 <a
            href="https://dashboard.sinch.com/">Sinch Dashboard</a>.
          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-badges:
        - name: GA
          position: after
          color: green
    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 <a
            href="https://dashboard.sinch.com/">Sinch Dashboard</a>.
          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-badges:
        - name: GA
          position: after
          color: green
    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 <a
            href="https://dashboard.sinch.com/">Sinch Dashboard</a>.
          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-badges:
        - name: GA
          position: after
          color: green
  /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 <a
            href="https://dashboard.sinch.com/">Sinch Dashboard</a>.
          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-badges:
        - name: GA
          position: after
          color: green
    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: <SHA 256 hash>
                - 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: <SHA 256 hash>
                - 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: <SHA 256 hash>
                - 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: <SHA 256 hash>
                - 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: <SHA 256 hash>
                - 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 <a
            href="https://dashboard.sinch.com/">Sinch Dashboard</a>.
          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-badges:
        - name: GA
          position: after
          color: green
    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 <a
            href="https://dashboard.sinch.com/">Sinch Dashboard</a>.
          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-badges:
        - name: GA
          position: after
          color: green
  /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 <a
            href="https://dashboard.sinch.com/">Sinch Dashboard</a>.
          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-badges:
        - name: GA
          position: after
          color: green
  /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 <a
            href="https://dashboard.sinch.com/">Sinch Dashboard</a>.
          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-badges:
        - name: GA
          position: after
          color: green
  /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 <a
            href="https://dashboard.sinch.com/">Sinch Dashboard</a>.
          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-badges:
        - name: GA
          position: after
          color: green
  /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 <a
            href="https://dashboard.sinch.com/">Sinch Dashboard</a>.
          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-badges:
        - name: GA
          position: after
          color: green
  /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 <a
            href="https://dashboard.sinch.com/">Sinch Dashboard</a>.
          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-badges:
        - name: GA
          position: after
          color: green
  /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 <a
            href="https://dashboard.sinch.com/">Sinch Dashboard</a>.
          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-badges:
        - name: GA
          position: after
          color: green
  /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 <a
            href="https://dashboard.sinch.com/">Sinch Dashboard</a>.
          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-badges:
        - name: GA
          position: after
          color: green
    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: <SHA 256 hash>
                - 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: <SHA 256 hash>
                - 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: <SHA 256 hash>
                - 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: <SHA 256 hash>
                - 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: <SHA 256 hash>
                - 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: <SHA 256 hash>
                - 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: <SHA 256 hash>
                - 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: <SHA 256 hash>
                - 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 <a
            href="https://dashboard.sinch.com/">Sinch Dashboard</a>.
          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-badges:
        - name: GA
          position: after
          color: green
  /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 <a
            href="https://dashboard.sinch.com/">Sinch Dashboard</a>.
          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-badges:
        - name: GA
          position: after
          color: green
    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 <a
            href="https://dashboard.sinch.com/">Sinch Dashboard</a>.
          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-badges:
        - name: GA
          position: after
          color: green
    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: <SHA 256 hash>
                - 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: <SHA 256 hash>
                - 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: <SHA 256 hash>
                - 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: <SHA 256 hash>
                - 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: <SHA 256 hash>
                - 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: <SHA 256 hash>
                - 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: <SHA 256 hash>
                - 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: <SHA 256 hash>
                - 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 <a
            href="https://dashboard.sinch.com/">Sinch Dashboard</a>.
          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-badges:
        - name: GA
          position: after
          color: green
  /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 <a
            href="https://dashboard.sinch.com/">Sinch Dashboard</a>.
          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-badges:
        - name: GA
          position: after
          color: green
  /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 <a
            href="https://dashboard.sinch.com/">Sinch Dashboard</a>.
          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-badges:
        - name: GA
          position: after
          color: green
  /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 <a
            href="https://dashboard.sinch.com/">Sinch Dashboard</a>.
          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-badges:
        - name: GA
          position: after
          color: green
  /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 <a
            href="https://dashboard.sinch.com/">Sinch Dashboard</a>.
          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-badges:
        - name: GA
          position: after
          color: green
  /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 <a
            href="https://dashboard.sinch.com/">Sinch Dashboard</a>.
          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-badges:
        - name: GA
          position: after
          color: green
  /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 <a
            href="https://dashboard.sinch.com/">Sinch Dashboard</a>.
          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-badges:
        - name: Open Beta
          position: after
          color: orange
    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 <a
            href="https://dashboard.sinch.com/">Sinch Dashboard</a>.
          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-badges:
        - name: Open Beta
          position: after
          color: orange
  /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 <a
            href="https://dashboard.sinch.com/">Sinch Dashboard</a>.
          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-badges:
        - name: Open Beta
          position: after
          color: orange
  /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 <a
            href="https://dashboard.sinch.com/">Sinch Dashboard</a>.
          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-badges:
        - name: Open Beta
          position: after
          color: orange
  /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 <a
            href="https://dashboard.sinch.com/">Sinch Dashboard</a>.
          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-badges:
        - name: GA
          position: after
          color: green
    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: <SHA 256 hash>
                - 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: <SHA 256 hash>
                - 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: <SHA 256 hash>
                - 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: <SHA 256 hash>
                - 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: <SHA 256 hash>
                - 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: <SHA 256 hash>
                - 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: <SHA 256 hash>
                - 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: <SHA 256 hash>
                - 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 <a
            href="https://dashboard.sinch.com/">Sinch Dashboard</a>.
          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-badges:
        - name: GA
          position: after
          color: green
  /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 <a
            href="https://dashboard.sinch.com/">Sinch Dashboard</a>.
          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-badges:
        - name: GA
          position: after
          color: green
    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 <a
            href="https://dashboard.sinch.com/">Sinch Dashboard</a>.
          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-badges:
        - name: GA
          position: after
          color: green
  /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 <a
            href="https://dashboard.sinch.com/">Sinch Dashboard</a>.
          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-badges:
        - name: GA
          position: after
          color: green
    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 <a
            href="https://dashboard.sinch.com/">Sinch Dashboard</a>.
          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-badges:
        - name: GA
          position: after
          color: green
    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: <SHA 256 hash>
                - 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: <SHA 256 hash>
                - 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: <SHA 256 hash>
                - 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: <SHA 256 hash>
                - 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: <SHA 256 hash>
                - 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: <SHA 256 hash>
                - 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: <SHA 256 hash>
                - 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: <SHA 256 hash>
                - 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 <a
            href="https://dashboard.sinch.com/">Sinch Dashboard</a>.
          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-badges:
        - name: GA
          position: after
          color: green
  /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 <a
            href="https://dashboard.sinch.com/">Sinch Dashboard</a>.
          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-badges:
        - name: GA
          position: after
          color: green
  /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 <a
            href="https://dashboard.sinch.com/">Sinch Dashboard</a>.
          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-badges:
        - name: GA
          position: after
          color: green
  /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 <a
            href="https://dashboard.sinch.com/">Sinch Dashboard</a>.
          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-badges:
        - name: GA
          position: after
          color: green
  /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 <a
            href="https://dashboard.sinch.com/">Sinch Dashboard</a>.
          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-badges:
        - name: GA
          position: after
          color: green
  /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: <SHA 256 hash>
                - 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 <a
            href="https://dashboard.sinch.com/">Sinch Dashboard</a>.
          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-badges:
        - name: GA
          position: after
          color: green
  /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 <a
            href="https://dashboard.sinch.com/">Sinch Dashboard</a>.
          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-badges:
        - name: GA
          position: after
          color: green
  /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 <a
            href="https://dashboard.sinch.com/">Sinch Dashboard</a>.
          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-badges:
        - name: GA
          position: after
          color: green
  /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 <a
            href="https://dashboard.sinch.com/">Sinch Dashboard</a>.
          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-badges:
        - name: GA
          position: after
          color: green
  /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 <a
            href="https://dashboard.sinch.com/">Sinch Dashboard</a>.
          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-badges:
        - name: GA
          position: after
          color: green
    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: <SHA 256 hash>
                - 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: <SHA 256 hash>
                - 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: <SHA 256 hash>
                - 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: <SHA 256 hash>
                - 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 <a
            href="https://dashboard.sinch.com/">Sinch Dashboard</a>.
          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-badges:
        - name: GA
          position: after
          color: green
  /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 <a
            href="https://dashboard.sinch.com/">Sinch Dashboard</a>.
          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-badges:
        - name: GA
          position: after
          color: green
    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 <a
            href="https://dashboard.sinch.com/">Sinch Dashboard</a>.
          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-badges:
        - name: GA
          position: after
          color: green
    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 <a
            href="https://dashboard.sinch.com/">Sinch Dashboard</a>.
          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-badges:
        - name: GA
          position: after
          color: green
  /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 <a
            href="https://dashboard.sinch.com/">Sinch Dashboard</a>.
          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-badges:
        - name: GA
          position: after
          color: green
  /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 <a
            href="https://dashboard.sinch.com/">Sinch Dashboard</a>.
          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-badges:
        - name: GA
          position: after
          color: green
  /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 <a
            href="https://dashboard.sinch.com/">Sinch Dashboard</a>.
          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-badges:
        - name: GA
          position: after
          color: green
  /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 <a
            href="https://dashboard.sinch.com/">Sinch Dashboard</a>.
          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-badges:
        - name: GA
          position: after
          color: green
  /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 <a
            href="https://dashboard.sinch.com/">Sinch Dashboard</a>.
          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-badges:
        - name: GA
          position: after
          color: green
    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: <SHA 256 hash>
                - 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: <SHA 256 hash>
                - 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: <SHA 256 hash>
                - 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 <a
            href="https://dashboard.sinch.com/">Sinch Dashboard</a>.
          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-badges:
        - name: GA
          position: after
          color: green
  /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 <a
            href="https://dashboard.sinch.com/">Sinch Dashboard</a>.
          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-badges:
        - name: GA
          position: after
          color: green
    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 <a
            href="https://dashboard.sinch.com/">Sinch Dashboard</a>.
          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-badges:
        - name: GA
          position: after
          color: green
    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 <a
            href="https://dashboard.sinch.com/">Sinch Dashboard</a>.
          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-badges:
        - name: GA
          position: after
          color: green
  /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 <a
            href="https://dashboard.sinch.com/">Sinch Dashboard</a>.
          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-badges:
        - name: GA
          position: after
          color: green
  /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 <a
            href="https://dashboard.sinch.com/">Sinch Dashboard</a>.
          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-badges:
        - name: GA
          position: after
          color: green
  /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 <a
            href="https://dashboard.sinch.com/">Sinch Dashboard</a>.
          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-badges:
        - name: GA
          position: after
          color: green
  /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 <a
            href="https://dashboard.sinch.com/">Sinch Dashboard</a>.
          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-badges:
        - name: GA
          position: after
          color: green
  /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 <a
            href="https://dashboard.sinch.com/">Sinch Dashboard</a>.
          schema:
            type: string
        - name: conversationAppId
          required: true
          in: path
          description: >-
            The unique ID of the app. You can find this on the <a
            href="https://dashboard.sinch.com/convapi/apps">Sinch Dashboard</a>.
          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-badges:
        - name: Closed Beta
          position: after
          color: red
  /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 <a
            href="https://dashboard.sinch.com/">Sinch Dashboard</a>.
          schema:
            type: string
        - name: conversationAppId
          required: true
          in: path
          description: >-
            The unique ID of the app. You can find this on the <a
            href="https://dashboard.sinch.com/convapi/apps">Sinch Dashboard</a>.
          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-badges:
        - name: Closed Beta
          position: after
          color: red
  /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 <a
            href="https://dashboard.sinch.com/">Sinch Dashboard</a>.
          schema:
            type: string
        - name: conversationAppId
          required: true
          in: path
          description: >-
            The unique ID of the app. You can find this on the <a
            href="https://dashboard.sinch.com/convapi/apps">Sinch Dashboard</a>.
          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-badges:
        - name: Closed Beta
          position: after
          color: red
  /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 <a
            href="https://dashboard.sinch.com/">Sinch Dashboard</a>.
          schema:
            type: string
        - name: conversationAppId
          required: true
          in: path
          description: >-
            The unique ID of the app. You can find this on the <a
            href="https://dashboard.sinch.com/convapi/apps">Sinch Dashboard</a>.
          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-badges:
        - name: Closed Beta
          position: after
          color: red
  /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 <a
            href="https://dashboard.sinch.com/">Sinch Dashboard</a>.
          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-badges:
        - name: GA
          position: after
          color: green
  /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: <SHA 256 hash>
                - 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 <a
            href="https://dashboard.sinch.com/">Sinch Dashboard</a>.
          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-badges:
        - name: GA
          position: after
          color: green
  /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 <a
            href="https://dashboard.sinch.com/">Sinch Dashboard</a>.
          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-badges:
        - name: GA
          position: after
          color: green
  /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 <a
            href="https://dashboard.sinch.com/">Sinch Dashboard</a>.
          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-badges:
        - name: GA
          position: after
          color: green
    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: <SHA 256 hash>
                - 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: <SHA 256 hash>
                - 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: <SHA 256 hash>
                - 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 <a
            href="https://dashboard.sinch.com/">Sinch Dashboard</a>.
          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-badges:
        - name: GA
          position: after
          color: green
  /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 <a
            href="https://dashboard.sinch.com/">Sinch Dashboard</a>.
          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-badges:
        - name: GA
          position: after
          color: green
    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 <a
            href="https://dashboard.sinch.com/">Sinch Dashboard</a>.
          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-badges:
        - name: GA
          position: after
          color: green
  /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 <a
            href="https://dashboard.sinch.com/">Sinch Dashboard</a>.
          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-badges:
        - name: GA
          position: after
          color: green
  /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 <a
            href="https://dashboard.sinch.com/">Sinch Dashboard</a>.
          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-badges:
        - name: GA
          position: after
          color: green
  /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 <a
            href="https://dashboard.sinch.com/">Sinch Dashboard</a>.
          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-badges:
        - name: GA
          position: after
          color: green
  /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 <a
            href="https://dashboard.sinch.com/">Sinch Dashboard</a>.
          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-badges:
        - name: GA
          position: after
          color: green
  /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 <a
            href="https://dashboard.sinch.com/">Sinch Dashboard</a>.
          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-badges:
        - name: GA
          position: after
          color: green
  /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 <a
            href="https://dashboard.sinch.com/">Sinch Dashboard</a>.
          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-badges:
        - name: GA
          position: after
          color: green
  /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 <a
            href="https://dashboard.sinch.com/">Sinch Dashboard</a>.
          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-badges:
        - name: GA
          position: after
          color: green
  /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 <a
            href="https://dashboard.sinch.com/">Sinch Dashboard</a>.
          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-badges:
        - name: Open Beta
          position: after
          color: orange
    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 <a
            href="https://dashboard.sinch.com/">Sinch Dashboard</a>.
          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-badges:
        - name: Open Beta
          position: after
          color: orange
  /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 <a
            href="https://dashboard.sinch.com/">Sinch Dashboard</a>.
          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-badges:
        - name: Open Beta
          position: after
          color: orange
    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 <a
            href="https://dashboard.sinch.com/">Sinch Dashboard</a>.
          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-badges:
        - name: Open Beta
          position: after
          color: orange
  /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 <a
            href="https://dashboard.sinch.com/">Sinch Dashboard</a>.
          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-badges:
        - name: Open Beta
          position: after
          color: orange
  /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 <a
            href="https://dashboard.sinch.com/">Sinch Dashboard</a>.
          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-badges:
        - name: GA
          position: after
          color: green
  /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 <a
            href="https://dashboard.sinch.com/">Sinch Dashboard</a>.
          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-badges:
        - name: GA
          position: after
          color: green
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=<your_business_manager_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=<your_business_manager_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 <a
            href="https://developers.sinch.com/docs/conversation/api-reference/conversation/tag/Webhooks/#tag/Webhooks/operation/Webhooks_CreateWebhook">Conversation
            API documentation</a> 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 <a href="https://core.telegram.org/bots#privacy-mode">privacy
            mode</a> 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
