openapi: 3.0.0
info:
  title: Channels API
  description: Check channel availability and manage onboarding for SMS, WhatsApp, RCS, and other supported
    channels.
  version: v1
  license:
    name: Proprietary
    url: https://www.cm.com
servers:
- url: https://api.cm.com
  description: Production Server
security:
- ProductToken: []
paths:
  /channels/v1/accounts/{accountId}/apisettings/authentication/httpproducttokens:
    get:
      tags:
      - ApiSettings
      summary: Gets the gateway product tokens asynchronous.
      operationId: ApiSettings_GetHttpProductTokensAsync
      parameters:
      - name: accountId
        in: path
        description: The account identifier.
        required: true
        schema:
          type: string
          format: uuid
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                type: object
                additionalProperties:
                  type: array
                  items:
                    $ref: '#/components/schemas/CM.Platform.Channels.Models.ApiSettings.ApiSmssAccountHttp'
            text/json:
              schema:
                type: object
                additionalProperties:
                  type: array
                  items:
                    $ref: '#/components/schemas/CM.Platform.Channels.Models.ApiSettings.ApiSmssAccountHttp'
            text/xml:
              schema:
                type: object
                additionalProperties:
                  type: array
                  items:
                    $ref: '#/components/schemas/CM.Platform.Channels.Models.ApiSettings.ApiSmssAccountHttp'
            multipart/form-data:
              schema:
                type: object
                additionalProperties:
                  type: array
                  items:
                    $ref: '#/components/schemas/CM.Platform.Channels.Models.ApiSettings.ApiSmssAccountHttp'
  /channels/v1/accounts/{accountId}/apisettings/authentication/apikeys:
    get:
      tags:
      - ApiSettings
      summary: Get the API keys for the logical account asynchronous.
      operationId: ApiSettings_GetApiKeysAsync
      parameters:
      - name: accountId
        in: path
        description: The account identifier.
        required: true
        schema:
          type: string
          format: uuid
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/CM.Platform.Channels.Models.ApiSettings.ApiKey'
            text/json:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/CM.Platform.Channels.Models.ApiSettings.ApiKey'
            text/xml:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/CM.Platform.Channels.Models.ApiSettings.ApiKey'
            multipart/form-data:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/CM.Platform.Channels.Models.ApiSettings.ApiKey'
  /channels/v1/accounts/{accountId}/apisettings/businessmessaging/access:
    get:
      tags:
      - ApiSettings
      summary: Determines if the Account ID has Messaging Capability asynchronous.
      operationId: ApiSettings_AccountHasMessagingCapabilityAsync
      parameters:
      - name: accountId
        in: path
        description: The account identifier.
        required: true
        schema:
          type: string
          format: uuid
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                type: boolean
            text/json:
              schema:
                type: boolean
            text/xml:
              schema:
                type: boolean
            multipart/form-data:
              schema:
                type: boolean
  /channels/v1/accounts/{accountId}/apisettings/businessmessaging/testmessage/whitelist:
    get:
      tags:
      - ApiSettings
      summary: Get whitelisted numbers linked to logical account, if null, no whitelist is active.
      operationId: ApiSettings_GetTestMessageNumberWhitelistAsync
      parameters:
      - name: accountId
        in: path
        description: The account identifier.
        required: true
        schema:
          type: string
          format: uuid
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                type: array
                items:
                  type: string
            text/json:
              schema:
                type: array
                items:
                  type: string
            text/xml:
              schema:
                type: array
                items:
                  type: string
            multipart/form-data:
              schema:
                type: array
                items:
                  type: string
  /channels/v1/accounts/{accountId}/apisettings/businessmessaging/testmessage:
    post:
      tags:
      - ApiSettings
      summary: Send test message
      operationId: ApiSettings_SendTestMessageAsync
      parameters:
      - name: accountId
        in: path
        description: The account identifier.
        required: true
        schema:
          type: string
          format: uuid
      - name: productToken
        in: query
        description: The product token to use in the Business Messaging API
        required: true
        schema:
          type: string
          format: uuid
      - name: recipient
        in: query
        description: The recipient of the test message
        required: true
        schema:
          type: string
      - name: messageContent
        in: query
        description: The Message content to send to the recipient
        required: true
        schema:
          type: string
      responses:
        '204':
          description: NoContent
          content:
            '*/*':
              schema:
                $ref: '#/components/schemas/System.Void'
  /channels/v1/accounts/{accountId}/apisettings/businessmessaging/events/{entityType}:
    get:
      tags:
      - ApiSettings
      summary: Gets the business messaging entity events asynchronous.
      operationId: ApiSettings_GetBusinessMessagingEntityEventsAsync
      parameters:
      - name: accountId
        in: path
        description: The account identifier.
        required: true
        schema:
          type: string
          format: uuid
      - name: entityType
        in: path
        description: Type of the entity.
        required: true
        schema:
          type: string
          enum:
          - MT_RECIPIENT_COUNTRY_FILTER
          - SR_CONFIGURATION
          - IP_RESTRICTION_CONFIGURATION
          - RATE_LIMITING_CONFIGURATION
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/CM.Platform.Channels.Models.EventLogging.ApiBusinessMessagingEntityEvent'
            text/json:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/CM.Platform.Channels.Models.EventLogging.ApiBusinessMessagingEntityEvent'
            text/xml:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/CM.Platform.Channels.Models.EventLogging.ApiBusinessMessagingEntityEvent'
            multipart/form-data:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/CM.Platform.Channels.Models.EventLogging.ApiBusinessMessagingEntityEvent'
  /channels/v1/accounts/{accountId}/apisettings/businessmessaging/iprestrictions:
    get:
      tags:
      - ApiSettings
      summary: Gets the ip restriction configuration asynchronous.
      operationId: ApiSettings_GetIPRestrictionConfigurationAsync
      parameters:
      - name: accountId
        in: path
        description: The account identifier.
        required: true
        schema:
          type: string
          format: uuid
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/CM.Platform.Channels.Models.ApiSettings.ApiIPRestrictionConfigurationResponse'
            text/json:
              schema:
                $ref: '#/components/schemas/CM.Platform.Channels.Models.ApiSettings.ApiIPRestrictionConfigurationResponse'
            text/xml:
              schema:
                $ref: '#/components/schemas/CM.Platform.Channels.Models.ApiSettings.ApiIPRestrictionConfigurationResponse'
            multipart/form-data:
              schema:
                $ref: '#/components/schemas/CM.Platform.Channels.Models.ApiSettings.ApiIPRestrictionConfigurationResponse'
    put:
      tags:
      - ApiSettings
      summary: Updates the ip restriction configuration asynchronous.
      operationId: ApiSettings_UpdateIPRestrictionConfigurationAsync
      parameters:
      - name: accountId
        in: path
        description: The account identifier.
        required: true
        schema:
          type: string
          format: uuid
      requestBody:
        $ref: '#/components/requestBodies/CM.Platform.Channels.Models.ApiSettings.ApiIPRestrictionConfigurationRequest'
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/CM.Platform.Channels.Models.ApiSettings.ApiIPRestrictionConfigurationResponse'
            text/json:
              schema:
                $ref: '#/components/schemas/CM.Platform.Channels.Models.ApiSettings.ApiIPRestrictionConfigurationResponse'
            text/xml:
              schema:
                $ref: '#/components/schemas/CM.Platform.Channels.Models.ApiSettings.ApiIPRestrictionConfigurationResponse'
            multipart/form-data:
              schema:
                $ref: '#/components/schemas/CM.Platform.Channels.Models.ApiSettings.ApiIPRestrictionConfigurationResponse'
    post:
      tags:
      - ApiSettings
      summary: Adds the ip restriction configuration asynchronous.
      operationId: ApiSettings_AddIPRestrictionConfigurationAsync
      parameters:
      - name: accountId
        in: path
        description: The account identifier.
        required: true
        schema:
          type: string
          format: uuid
      requestBody:
        $ref: '#/components/requestBodies/CM.Platform.Channels.Models.ApiSettings.ApiIPRestrictionConfigurationRequest'
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/CM.Platform.Channels.Models.ApiSettings.ApiIPRestrictionConfigurationResponse'
            text/json:
              schema:
                $ref: '#/components/schemas/CM.Platform.Channels.Models.ApiSettings.ApiIPRestrictionConfigurationResponse'
            text/xml:
              schema:
                $ref: '#/components/schemas/CM.Platform.Channels.Models.ApiSettings.ApiIPRestrictionConfigurationResponse'
            multipart/form-data:
              schema:
                $ref: '#/components/schemas/CM.Platform.Channels.Models.ApiSettings.ApiIPRestrictionConfigurationResponse'
    delete:
      tags:
      - ApiSettings
      summary: Deletes the ip restriction configuration asynchronous.
      operationId: ApiSettings_DeleteIPRestrictionConfigurationAsync
      parameters:
      - name: accountId
        in: path
        description: The account identifier.
        required: true
        schema:
          type: string
          format: uuid
      responses:
        '204':
          description: NoContent
  /channels/v1/accounts/{accountId}/apisettings/businessmessaging/iprestrictions/suggestions:
    get:
      tags:
      - ApiSettings
      summary: Gets the ip restriction suggestions asynchronous.
      operationId: ApiSettings_GetIPRestrictionSuggestionsAsync
      parameters:
      - name: accountId
        in: path
        description: The account identifier.
        required: true
        schema:
          type: string
          format: uuid
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/CM.Platform.Channels.Models.ApiSettings.ApiIPRestrictionSuggestionsResponse'
            text/json:
              schema:
                $ref: '#/components/schemas/CM.Platform.Channels.Models.ApiSettings.ApiIPRestrictionSuggestionsResponse'
            text/xml:
              schema:
                $ref: '#/components/schemas/CM.Platform.Channels.Models.ApiSettings.ApiIPRestrictionSuggestionsResponse'
            multipart/form-data:
              schema:
                $ref: '#/components/schemas/CM.Platform.Channels.Models.ApiSettings.ApiIPRestrictionSuggestionsResponse'
  /channels/v1/accounts/{accountId}/apisettings/businessmessaging/mtrecipientcountryfilter/countries:
    get:
      tags:
      - ApiSettings
      summary: Gets the mt recipient available country filters asynchronous.
      operationId: ApiSettings_GetMTRecipientAvailableCountryFiltersAsync
      parameters:
      - name: accountId
        in: path
        description: The account identifier.
        required: true
        schema:
          type: string
          format: uuid
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/CM.Platform.Channels.Models.ApiSettings.ApiMTRecipientCountry'
            text/json:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/CM.Platform.Channels.Models.ApiSettings.ApiMTRecipientCountry'
            text/xml:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/CM.Platform.Channels.Models.ApiSettings.ApiMTRecipientCountry'
            multipart/form-data:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/CM.Platform.Channels.Models.ApiSettings.ApiMTRecipientCountry'
  /channels/v1/accounts/{accountId}/apisettings/businessmessaging/mtrecipientcountryfilter:
    get:
      tags:
      - ApiSettings
      summary: Gets the mt recipient country filter configuration asynchronous.
      operationId: ApiSettings_GetMTRecipientCountryFilterConfigurationAsync
      parameters:
      - name: accountId
        in: path
        description: The account identifier.
        required: true
        schema:
          type: string
          format: uuid
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/CM.Platform.Channels.Models.ApiSettings.ApiMTRecipientCountryFilterConfigurationResponse'
            text/json:
              schema:
                $ref: '#/components/schemas/CM.Platform.Channels.Models.ApiSettings.ApiMTRecipientCountryFilterConfigurationResponse'
            text/xml:
              schema:
                $ref: '#/components/schemas/CM.Platform.Channels.Models.ApiSettings.ApiMTRecipientCountryFilterConfigurationResponse'
            multipart/form-data:
              schema:
                $ref: '#/components/schemas/CM.Platform.Channels.Models.ApiSettings.ApiMTRecipientCountryFilterConfigurationResponse'
    put:
      tags:
      - ApiSettings
      summary: Updates the mt recipient country filter configuration asynchronous.
      operationId: ApiSettings_UpdateMTRecipientCountryFilterConfigurationAsync
      parameters:
      - name: accountId
        in: path
        description: The account identifier.
        required: true
        schema:
          type: string
          format: uuid
      requestBody:
        $ref: '#/components/requestBodies/CM.Platform.Channels.Models.ApiSettings.ApiMTRecipientCountryFilterConfigurationRequest'
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/CM.Platform.Channels.Models.ApiSettings.ApiMTRecipientCountryFilterConfigurationResponse'
            text/json:
              schema:
                $ref: '#/components/schemas/CM.Platform.Channels.Models.ApiSettings.ApiMTRecipientCountryFilterConfigurationResponse'
            text/xml:
              schema:
                $ref: '#/components/schemas/CM.Platform.Channels.Models.ApiSettings.ApiMTRecipientCountryFilterConfigurationResponse'
            multipart/form-data:
              schema:
                $ref: '#/components/schemas/CM.Platform.Channels.Models.ApiSettings.ApiMTRecipientCountryFilterConfigurationResponse'
    post:
      tags:
      - ApiSettings
      summary: Adds the mt recipient country filter configuration asynchronous.
      operationId: ApiSettings_AddMTRecipientCountryFilterConfigurationAsync
      parameters:
      - name: accountId
        in: path
        description: The account identifier.
        required: true
        schema:
          type: string
          format: uuid
      requestBody:
        $ref: '#/components/requestBodies/CM.Platform.Channels.Models.ApiSettings.ApiMTRecipientCountryFilterConfigurationRequest'
      responses:
        '201':
          description: Created
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/CM.Platform.Channels.Models.ApiSettings.ApiMTRecipientCountryFilterConfigurationResponse'
            text/json:
              schema:
                $ref: '#/components/schemas/CM.Platform.Channels.Models.ApiSettings.ApiMTRecipientCountryFilterConfigurationResponse'
            text/xml:
              schema:
                $ref: '#/components/schemas/CM.Platform.Channels.Models.ApiSettings.ApiMTRecipientCountryFilterConfigurationResponse'
            multipart/form-data:
              schema:
                $ref: '#/components/schemas/CM.Platform.Channels.Models.ApiSettings.ApiMTRecipientCountryFilterConfigurationResponse'
    delete:
      tags:
      - ApiSettings
      summary: Deletes the mt recipient country filter configuration asynchronous.
      operationId: ApiSettings_DeleteMTRecipientCountryFilterConfigurationAsync
      parameters:
      - name: accountId
        in: path
        description: The account identifier.
        required: true
        schema:
          type: string
          format: uuid
      responses:
        '204':
          description: NoContent
          content:
            '*/*':
              schema:
                $ref: '#/components/schemas/CM.Platform.Channels.Library.Core.ApiClients.TextCore.MessagingConfiguration.ApiMTRecipientCountryFilterResponse'
  /channels/v1/accounts/{accountId}/apisettings/businessmessaging/mtrecipientcountryfilter/default:
    get:
      tags:
      - ApiSettings
      summary: Gets the default mt recipient country filter configuration asynchronous.
      operationId: ApiSettings_GetDefaultMTRecipientCountryFilterConfigurationAsync
      parameters:
      - name: accountId
        in: path
        description: The account identifier.
        required: true
        schema:
          type: string
          format: uuid
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/CM.Platform.Channels.Models.ApiSettings.ApiMTRecipientCountryFilterConfigurationRequest'
            text/json:
              schema:
                $ref: '#/components/schemas/CM.Platform.Channels.Models.ApiSettings.ApiMTRecipientCountryFilterConfigurationRequest'
            text/xml:
              schema:
                $ref: '#/components/schemas/CM.Platform.Channels.Models.ApiSettings.ApiMTRecipientCountryFilterConfigurationRequest'
            multipart/form-data:
              schema:
                $ref: '#/components/schemas/CM.Platform.Channels.Models.ApiSettings.ApiMTRecipientCountryFilterConfigurationRequest'
  /channels/v1/accounts/{accountId}/apisettings/businessmessaging/ratelimit:
    get:
      tags:
      - ApiSettings
      summary: Gets the rate limiting configuration asynchronous.
      operationId: ApiSettings_GetRateLimitingConfigurationAsync
      parameters:
      - name: accountId
        in: path
        description: The account identifier.
        required: true
        schema:
          type: string
          format: uuid
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/CM.Platform.Channels.Models.ApiSettings.ApiRateLimitingConfigurationResponse'
            text/json:
              schema:
                $ref: '#/components/schemas/CM.Platform.Channels.Models.ApiSettings.ApiRateLimitingConfigurationResponse'
            text/xml:
              schema:
                $ref: '#/components/schemas/CM.Platform.Channels.Models.ApiSettings.ApiRateLimitingConfigurationResponse'
            multipart/form-data:
              schema:
                $ref: '#/components/schemas/CM.Platform.Channels.Models.ApiSettings.ApiRateLimitingConfigurationResponse'
    put:
      tags:
      - ApiSettings
      summary: Updates the rate limiting configuration asynchronous.
      operationId: ApiSettings_UpdateRateLimitingConfigurationAsync
      parameters:
      - name: accountId
        in: path
        description: The account identifier.
        required: true
        schema:
          type: string
          format: uuid
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/CM.Platform.Channels.Models.ApiSettings.ApiRateLimitingConfigurationRequest'
          text/json:
            schema:
              $ref: '#/components/schemas/CM.Platform.Channels.Models.ApiSettings.ApiRateLimitingConfigurationRequest'
          text/xml:
            schema:
              $ref: '#/components/schemas/CM.Platform.Channels.Models.ApiSettings.ApiRateLimitingConfigurationRequest'
          multipart/form-data:
            schema:
              $ref: '#/components/schemas/CM.Platform.Channels.Models.ApiSettings.ApiRateLimitingConfigurationRequest'
          application/x-www-form-urlencoded:
            schema:
              $ref: '#/components/schemas/CM.Platform.Channels.Models.ApiSettings.ApiRateLimitingConfigurationRequest'
        description: The updated configuration.
        required: true
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/CM.Platform.Channels.Models.ApiSettings.ApiRateLimitingConfigurationResponse'
            text/json:
              schema:
                $ref: '#/components/schemas/CM.Platform.Channels.Models.ApiSettings.ApiRateLimitingConfigurationResponse'
            text/xml:
              schema:
                $ref: '#/components/schemas/CM.Platform.Channels.Models.ApiSettings.ApiRateLimitingConfigurationResponse'
            multipart/form-data:
              schema:
                $ref: '#/components/schemas/CM.Platform.Channels.Models.ApiSettings.ApiRateLimitingConfigurationResponse'
    post:
      tags:
      - ApiSettings
      summary: Creates the rate limiting configuration asynchronous.
      operationId: ApiSettings_CreateRateLimitingConfigurationAsync
      parameters:
      - name: accountId
        in: path
        description: The account identifier.
        required: true
        schema:
          type: string
          format: uuid
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/CM.Platform.Channels.Models.ApiSettings.ApiRateLimitingConfigurationRequest'
          text/json:
            schema:
              $ref: '#/components/schemas/CM.Platform.Channels.Models.ApiSettings.ApiRateLimitingConfigurationRequest'
          text/xml:
            schema:
              $ref: '#/components/schemas/CM.Platform.Channels.Models.ApiSettings.ApiRateLimitingConfigurationRequest'
          multipart/form-data:
            schema:
              $ref: '#/components/schemas/CM.Platform.Channels.Models.ApiSettings.ApiRateLimitingConfigurationRequest'
          application/x-www-form-urlencoded:
            schema:
              $ref: '#/components/schemas/CM.Platform.Channels.Models.ApiSettings.ApiRateLimitingConfigurationRequest'
        description: The new configuration.
        required: true
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/CM.Platform.Channels.Models.ApiSettings.ApiRateLimitingConfigurationResponse'
            text/json:
              schema:
                $ref: '#/components/schemas/CM.Platform.Channels.Models.ApiSettings.ApiRateLimitingConfigurationResponse'
            text/xml:
              schema:
                $ref: '#/components/schemas/CM.Platform.Channels.Models.ApiSettings.ApiRateLimitingConfigurationResponse'
            multipart/form-data:
              schema:
                $ref: '#/components/schemas/CM.Platform.Channels.Models.ApiSettings.ApiRateLimitingConfigurationResponse'
    delete:
      tags:
      - ApiSettings
      summary: Deletes the rate limiting configuration asynchronous.
      operationId: ApiSettings_DeleteRateLimitingConfigurationAsync
      parameters:
      - name: accountId
        in: path
        description: The account identifier.
        required: true
        schema:
          type: string
          format: uuid
      responses:
        '204':
          description: NoContent
  /channels/v1/accounts/{accountId}/apisettings/businessmessaging/ratelimit/acceptedtimeunits:
    get:
      tags:
      - ApiSettings
      summary: Gets the rate limiting accepted time units asynchronous.
      operationId: ApiSettings_GetRateLimitingAcceptedTimeUnitsAsync
      parameters:
      - name: accountId
        in: path
        description: The account identifier.
        required: true
        schema:
          type: string
          format: uuid
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/CM.Platform.Channels.Models.ApiSettings.ApiRateLimitAcceptedTimeUnits'
            text/json:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/CM.Platform.Channels.Models.ApiSettings.ApiRateLimitAcceptedTimeUnits'
            text/xml:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/CM.Platform.Channels.Models.ApiSettings.ApiRateLimitAcceptedTimeUnits'
            multipart/form-data:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/CM.Platform.Channels.Models.ApiSettings.ApiRateLimitAcceptedTimeUnits'
  /channels/v1/accounts/{accountId}/apisettings/businessmessaging/smpp:
    get:
      tags:
      - ApiSettings
      summary: Gets the SMPP configurations asynchronous.
      operationId: ApiSettings_GetSmppConfigurationsAsync
      parameters:
      - name: accountId
        in: path
        description: The account identifier.
        required: true
        schema:
          type: string
          format: uuid
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/CM.Platform.Channels.Models.ApiSettings.ApiSmssAccountSmpp'
            text/json:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/CM.Platform.Channels.Models.ApiSettings.ApiSmssAccountSmpp'
            text/xml:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/CM.Platform.Channels.Models.ApiSettings.ApiSmssAccountSmpp'
            multipart/form-data:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/CM.Platform.Channels.Models.ApiSettings.ApiSmssAccountSmpp'
  /channels/v1/accounts/{accountId}/apisettings/businessmessaging/smpp/{smssAccountId}:
    get:
      tags:
      - ApiSettings
      summary: Gets the SMPP configuration asynchronous.
      operationId: ApiSettings_GetSmppConfigurationAsync
      parameters:
      - name: accountId
        in: path
        description: The account identifier.
        required: true
        schema:
          type: string
          format: uuid
      - name: smssAccountId
        in: path
        description: The SMSS account identifier.
        required: true
        schema:
          type: integer
          format: int32
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/CM.Platform.Channels.Models.ApiSettings.ApiSmssAccountSmpp'
            text/json:
              schema:
                $ref: '#/components/schemas/CM.Platform.Channels.Models.ApiSettings.ApiSmssAccountSmpp'
            text/xml:
              schema:
                $ref: '#/components/schemas/CM.Platform.Channels.Models.ApiSettings.ApiSmssAccountSmpp'
            multipart/form-data:
              schema:
                $ref: '#/components/schemas/CM.Platform.Channels.Models.ApiSettings.ApiSmssAccountSmpp'
  /channels/v1/accounts/{accountId}/apisettings/businessmessaging/sr:
    get:
      tags:
      - ApiSettings
      summary: Gets the sr webhook configuration asynchronous.
      operationId: ApiSettings_GetSRWebHookConfigurationAsync
      parameters:
      - name: accountId
        in: path
        description: The account identifier.
        required: true
        schema:
          type: string
          format: uuid
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/CM.Platform.Channels.Models.ApiSettings.ApiStatusReportsConfigurationResponse'
            text/json:
              schema:
                $ref: '#/components/schemas/CM.Platform.Channels.Models.ApiSettings.ApiStatusReportsConfigurationResponse'
            text/xml:
              schema:
                $ref: '#/components/schemas/CM.Platform.Channels.Models.ApiSettings.ApiStatusReportsConfigurationResponse'
            multipart/form-data:
              schema:
                $ref: '#/components/schemas/CM.Platform.Channels.Models.ApiSettings.ApiStatusReportsConfigurationResponse'
    put:
      tags:
      - ApiSettings
      summary: Puts the sr webhook configuration asynchronous.
      operationId: ApiSettings_PutSRWebHookConfigurationAsync
      parameters:
      - name: accountId
        in: path
        description: The account identifier.
        required: true
        schema:
          type: string
          format: uuid
      requestBody:
        $ref: '#/components/requestBodies/CM.Platform.Channels.Models.ApiSettings.ApiStatusReportsConfigurationRequest2'
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/CM.Platform.Channels.Models.ApiSettings.ApiStatusReportsConfigurationResponse'
            text/json:
              schema:
                $ref: '#/components/schemas/CM.Platform.Channels.Models.ApiSettings.ApiStatusReportsConfigurationResponse'
            text/xml:
              schema:
                $ref: '#/components/schemas/CM.Platform.Channels.Models.ApiSettings.ApiStatusReportsConfigurationResponse'
            multipart/form-data:
              schema:
                $ref: '#/components/schemas/CM.Platform.Channels.Models.ApiSettings.ApiStatusReportsConfigurationResponse'
    post:
      tags:
      - ApiSettings
      summary: Posts the sr webhook configuration asynchronous.
      operationId: ApiSettings_PostSRWebHookConfigurationAsync
      parameters:
      - name: accountId
        in: path
        description: The account identifier.
        required: true
        schema:
          type: string
          format: uuid
      requestBody:
        $ref: '#/components/requestBodies/CM.Platform.Channels.Models.ApiSettings.ApiStatusReportsConfigurationRequest2'
      responses:
        '201':
          description: Created
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/CM.Platform.Channels.Models.ApiSettings.ApiStatusReportsConfigurationResponse'
            text/json:
              schema:
                $ref: '#/components/schemas/CM.Platform.Channels.Models.ApiSettings.ApiStatusReportsConfigurationResponse'
            text/xml:
              schema:
                $ref: '#/components/schemas/CM.Platform.Channels.Models.ApiSettings.ApiStatusReportsConfigurationResponse'
            multipart/form-data:
              schema:
                $ref: '#/components/schemas/CM.Platform.Channels.Models.ApiSettings.ApiStatusReportsConfigurationResponse'
    delete:
      tags:
      - ApiSettings
      summary: Deletes the sr webhook configuration asynchronous.
      operationId: ApiSettings_DeleteSRWebHookConfigurationAsync
      parameters:
      - name: accountId
        in: path
        description: The account identifier.
        required: true
        schema:
          type: string
          format: uuid
      responses:
        '204':
          description: NoContent
          content:
            '*/*':
              schema:
                $ref: '#/components/schemas/CM.Platform.Channels.Models.ApiSettings.ApiStatusReportsConfigurationResponse'
  /channels/v1/accounts/{accountId}/apisettings/httpProductTokens:
    get:
      tags:
      - ApiSettings
      summary: Deprecated.
      operationId: ApiSettings_DeprecatedGetHttpProductTokensAsync
      parameters:
      - name: accountId
        in: path
        required: true
        schema:
          type: string
          format: uuid
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                type: object
                additionalProperties:
                  type: array
                  items:
                    $ref: '#/components/schemas/CM.Platform.Channels.Models.ApiSettings.ApiSmssAccountHttp'
            text/json:
              schema:
                type: object
                additionalProperties:
                  type: array
                  items:
                    $ref: '#/components/schemas/CM.Platform.Channels.Models.ApiSettings.ApiSmssAccountHttp'
            text/xml:
              schema:
                type: object
                additionalProperties:
                  type: array
                  items:
                    $ref: '#/components/schemas/CM.Platform.Channels.Models.ApiSettings.ApiSmssAccountHttp'
            multipart/form-data:
              schema:
                type: object
                additionalProperties:
                  type: array
                  items:
                    $ref: '#/components/schemas/CM.Platform.Channels.Models.ApiSettings.ApiSmssAccountHttp'
      deprecated: true
  /channels/v1/accounts/{accountId}/apisettings/access/status:
    get:
      tags:
      - ApiSettings
      summary: Deprecated.
      operationId: ApiSettings_DeprecatedAccountHasMessagingCapabilityAsync
      parameters:
      - name: accountId
        in: path
        required: true
        schema:
          type: string
          format: uuid
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                type: boolean
            text/json:
              schema:
                type: boolean
            text/xml:
              schema:
                type: boolean
            multipart/form-data:
              schema:
                type: boolean
      deprecated: true
  /channels/v1/accounts/{accountId}/apisettings/sr:
    get:
      tags:
      - ApiSettings
      summary: Deprecated.
      operationId: ApiSettings_DeprecatedGetSRWebHookConfigurationAsync
      parameters:
      - name: accountId
        in: path
        required: true
        schema:
          type: string
          format: uuid
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/CM.Platform.Channels.Models.ApiSettings.ApiStatusReportsConfigurationResponse'
            text/json:
              schema:
                $ref: '#/components/schemas/CM.Platform.Channels.Models.ApiSettings.ApiStatusReportsConfigurationResponse'
            text/xml:
              schema:
                $ref: '#/components/schemas/CM.Platform.Channels.Models.ApiSettings.ApiStatusReportsConfigurationResponse'
            multipart/form-data:
              schema:
                $ref: '#/components/schemas/CM.Platform.Channels.Models.ApiSettings.ApiStatusReportsConfigurationResponse'
      deprecated: true
    put:
      tags:
      - ApiSettings
      summary: Deprecated.
      operationId: ApiSettings_DeprecatedPutSRWebHookConfigurationAsync
      parameters:
      - name: accountId
        in: path
        required: true
        schema:
          type: string
          format: uuid
      requestBody:
        $ref: '#/components/requestBodies/CM.Platform.Channels.Models.ApiSettings.ApiStatusReportsConfigurationRequest'
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/CM.Platform.Channels.Models.ApiSettings.ApiStatusReportsConfigurationResponse'
            text/json:
              schema:
                $ref: '#/components/schemas/CM.Platform.Channels.Models.ApiSettings.ApiStatusReportsConfigurationResponse'
            text/xml:
              schema:
                $ref: '#/components/schemas/CM.Platform.Channels.Models.ApiSettings.ApiStatusReportsConfigurationResponse'
            multipart/form-data:
              schema:
                $ref: '#/components/schemas/CM.Platform.Channels.Models.ApiSettings.ApiStatusReportsConfigurationResponse'
      deprecated: true
    post:
      tags:
      - ApiSettings
      summary: Deprecated.
      operationId: ApiSettings_DeprecatedPostSRWebHookConfigurationAsync
      parameters:
      - name: accountId
        in: path
        required: true
        schema:
          type: string
          format: uuid
      requestBody:
        $ref: '#/components/requestBodies/CM.Platform.Channels.Models.ApiSettings.ApiStatusReportsConfigurationRequest'
      responses:
        '201':
          description: Created
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/CM.Platform.Channels.Models.ApiSettings.ApiStatusReportsConfigurationResponse'
            text/json:
              schema:
                $ref: '#/components/schemas/CM.Platform.Channels.Models.ApiSettings.ApiStatusReportsConfigurationResponse'
            text/xml:
              schema:
                $ref: '#/components/schemas/CM.Platform.Channels.Models.ApiSettings.ApiStatusReportsConfigurationResponse'
            multipart/form-data:
              schema:
                $ref: '#/components/schemas/CM.Platform.Channels.Models.ApiSettings.ApiStatusReportsConfigurationResponse'
      deprecated: true
    delete:
      tags:
      - ApiSettings
      summary: Deprecated.
      operationId: ApiSettings_DeprecatedDeleteSRWebHookConfigurationAsync
      parameters:
      - name: accountId
        in: path
        required: true
        schema:
          type: string
          format: uuid
      responses:
        '204':
          description: NoContent
          content:
            '*/*':
              schema:
                $ref: '#/components/schemas/CM.Platform.Channels.Models.ApiSettings.ApiStatusReportsConfigurationResponse'
      deprecated: true
  /channels/v1/accounts/{accountId}/apisettings/smpp:
    get:
      tags:
      - ApiSettings
      summary: Deprecated.
      operationId: ApiSettings_DeprecatedGetSmppConfigurationsAsync
      parameters:
      - name: accountId
        in: path
        required: true
        schema:
          type: string
          format: uuid
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/CM.Platform.Channels.Models.ApiSettings.ApiSmssAccountSmpp'
            text/json:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/CM.Platform.Channels.Models.ApiSettings.ApiSmssAccountSmpp'
            text/xml:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/CM.Platform.Channels.Models.ApiSettings.ApiSmssAccountSmpp'
            multipart/form-data:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/CM.Platform.Channels.Models.ApiSettings.ApiSmssAccountSmpp'
      deprecated: true
  /channels/v1/accounts/{accountId}/apisettings/smpp/{smssAccountId}:
    get:
      tags:
      - ApiSettings
      summary: Deprecated.
      operationId: ApiSettings_DeprecatedGetSmppConfigurationAsync
      parameters:
      - name: accountId
        in: path
        required: true
        schema:
          type: string
          format: uuid
      - name: smssAccountId
        in: path
        required: true
        schema:
          type: integer
          format: int32
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/CM.Platform.Channels.Models.ApiSettings.ApiSmssAccountSmpp'
            text/json:
              schema:
                $ref: '#/components/schemas/CM.Platform.Channels.Models.ApiSettings.ApiSmssAccountSmpp'
            text/xml:
              schema:
                $ref: '#/components/schemas/CM.Platform.Channels.Models.ApiSettings.ApiSmssAccountSmpp'
            multipart/form-data:
              schema:
                $ref: '#/components/schemas/CM.Platform.Channels.Models.ApiSettings.ApiSmssAccountSmpp'
      deprecated: true
  /channels/v1/accounts/{accountId}/apisettings/testmessage/whitelist:
    get:
      tags:
      - ApiSettings
      summary: Deprecated.
      operationId: ApiSettings_DeprecatedGetTestMessageNumberWhitelistAsync
      parameters:
      - name: accountId
        in: path
        required: true
        schema:
          type: string
          format: uuid
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                type: array
                items:
                  type: string
            text/json:
              schema:
                type: array
                items:
                  type: string
            text/xml:
              schema:
                type: array
                items:
                  type: string
            multipart/form-data:
              schema:
                type: array
                items:
                  type: string
      deprecated: true
  /channels/v1/accounts/{accountId}/apisettings/testmessage:
    post:
      tags:
      - ApiSettings
      summary: Deprecated.
      operationId: ApiSettings_DeprecatedSendTestMessageAsync
      parameters:
      - name: accountId
        in: path
        required: true
        schema:
          type: string
          format: uuid
      - name: productToken
        in: query
        required: true
        schema:
          type: string
          format: uuid
      - name: recipient
        in: query
        required: true
        schema:
          type: string
      - name: messageContent
        in: query
        required: true
        schema:
          type: string
      responses:
        '204':
          description: NoContent
          content:
            '*/*':
              schema:
                $ref: '#/components/schemas/System.Void'
      deprecated: true
  /channels/v1/accounts/{accountId}/abc/{channelRequestId}/account:
    get:
      tags:
      - AppleBusinessChat
      summary: Gets the account asynchronous.
      operationId: AppleBusinessChat_GetAbcAccountAsync
      parameters:
      - name: accountId
        in: path
        description: The account identifier.
        required: true
        schema:
          type: string
          format: uuid
      - name: channelRequestId
        in: path
        description: The channel request identifier.
        required: true
        schema:
          type: string
          format: uuid
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/CM.Platform.Channels.Models.ChannelTypes.Abc.ApiAbcAccount'
            text/json:
              schema:
                $ref: '#/components/schemas/CM.Platform.Channels.Models.ChannelTypes.Abc.ApiAbcAccount'
            text/xml:
              schema:
                $ref: '#/components/schemas/CM.Platform.Channels.Models.ChannelTypes.Abc.ApiAbcAccount'
            multipart/form-data:
              schema:
                $ref: '#/components/schemas/CM.Platform.Channels.Models.ChannelTypes.Abc.ApiAbcAccount'
    post:
      tags:
      - AppleBusinessChat
      summary: Add an abc account.
      operationId: AppleBusinessChat_AddAbcAccountAsync
      parameters:
      - name: accountId
        in: path
        description: The account identifier.
        required: true
        schema:
          type: string
          format: uuid
      - name: channelRequestId
        in: path
        description: The channel request identifier.
        required: true
        schema:
          type: string
          format: uuid
      responses:
        '201':
          description: Created
  /channels/v1/accounts/{accountId}/abc/{channelRequestId}/account/forminput:
    get:
      tags:
      - AppleBusinessChat
      summary: Gets the account form input asynchronous.
      operationId: AppleBusinessChat_GetAbcAccountFormInputAsync
      parameters:
      - name: accountId
        in: path
        description: The account identifier.
        required: true
        schema:
          type: string
          format: uuid
      - name: channelRequestId
        in: path
        description: The channel request identifier.
        required: true
        schema:
          type: string
          format: uuid
      responses:
        '202':
          description: Accepted
          content:
            application/json:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/CM.Platform.Channels.Models.RequestForms.ApiChannelRequestFormInputResponse'
            text/json:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/CM.Platform.Channels.Models.RequestForms.ApiChannelRequestFormInputResponse'
            text/xml:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/CM.Platform.Channels.Models.RequestForms.ApiChannelRequestFormInputResponse'
            multipart/form-data:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/CM.Platform.Channels.Models.RequestForms.ApiChannelRequestFormInputResponse'
  /channels/v1/accounts/{accountId}/abc/{channelRequestId}/account/{abcAccountId}/forminput:
    put:
      tags:
      - AppleBusinessChat
      summary: Adds the account form input asynchronous.
      operationId: AppleBusinessChat_AddAbcAccountFormInputAsync
      parameters:
      - name: accountId
        in: path
        description: The account identifier.
        required: true
        schema:
          type: string
          format: uuid
      - name: channelRequestId
        in: path
        description: The channel request identifier.
        required: true
        schema:
          type: string
          format: uuid
      - name: abcAccountId
        in: path
        description: The abc account identifier.
        required: true
        schema:
          type: string
          format: uuid
      requestBody:
        $ref: '#/components/requestBodies/CM.Platform.Channels.Models.RequestForms.ApiRequestFormInputRequestArray'
      responses:
        '202':
          description: Accepted
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/CM.Platform.Channels.Models.ChannelTypes.Abc.ApiAbcAccount'
            text/json:
              schema:
                $ref: '#/components/schemas/CM.Platform.Channels.Models.ChannelTypes.Abc.ApiAbcAccount'
            text/xml:
              schema:
                $ref: '#/components/schemas/CM.Platform.Channels.Models.ChannelTypes.Abc.ApiAbcAccount'
            multipart/form-data:
              schema:
                $ref: '#/components/schemas/CM.Platform.Channels.Models.ChannelTypes.Abc.ApiAbcAccount'
  /channels/v1/accounts/{accountId}/channels/{channelId}/configuration:
    get:
      tags:
      - ChannelConfiguration
      summary: Gets all configurations for a channel.
      operationId: ChannelConfiguration_GetChannelConfigurationsAsync
      parameters:
      - name: accountId
        in: path
        description: The account identifier.
        required: true
        schema:
          type: string
          format: uuid
      - name: channelId
        in: path
        description: The channel identifier.
        required: true
        schema:
          type: string
          format: uuid
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/CM.Platform.Channels.Models.Channels.ChannelConfiguration.ApiChannelConfigurations'
            text/json:
              schema:
                $ref: '#/components/schemas/CM.Platform.Channels.Models.Channels.ChannelConfiguration.ApiChannelConfigurations'
            text/xml:
              schema:
                $ref: '#/components/schemas/CM.Platform.Channels.Models.Channels.ChannelConfiguration.ApiChannelConfigurations'
            multipart/form-data:
              schema:
                $ref: '#/components/schemas/CM.Platform.Channels.Models.Channels.ChannelConfiguration.ApiChannelConfigurations'
  /channels/v1/accounts/{accountId}/channels/{channelId}/configuration/{configurationId}:
    get:
      tags:
      - ChannelConfiguration
      summary: Gets a configuration for a channel.
      operationId: ChannelConfiguration_GetChannelConfigurationAsync
      parameters:
      - name: accountId
        in: path
        description: The account identifier.
        required: true
        schema:
          type: string
          format: uuid
      - name: channelId
        in: path
        description: The channel identifier.
        required: true
        schema:
          type: string
          format: uuid
      - name: configurationId
        in: path
        description: The configuration identifier.
        required: true
        schema:
          type: string
          format: uuid
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/CM.Platform.Channels.Models.Channels.ChannelConfiguration.ApiChannelConfigurationResponse'
            text/json:
              schema:
                $ref: '#/components/schemas/CM.Platform.Channels.Models.Channels.ChannelConfiguration.ApiChannelConfigurationResponse'
            text/xml:
              schema:
                $ref: '#/components/schemas/CM.Platform.Channels.Models.Channels.ChannelConfiguration.ApiChannelConfigurationResponse'
            multipart/form-data:
              schema:
                $ref: '#/components/schemas/CM.Platform.Channels.Models.Channels.ChannelConfiguration.ApiChannelConfigurationResponse'
    put:
      tags:
      - ChannelConfiguration
      summary: Enables/disables a channel configuration.
      operationId: ChannelConfiguration_DisableChannelConfigurationAsync
      parameters:
      - name: accountId
        in: path
        description: The account identifier.
        required: true
        schema:
          type: string
          format: uuid
      - name: channelId
        in: path
        description: The channel identifier.
        required: true
        schema:
          type: string
          format: uuid
      - name: configurationId
        in: path
        description: The configuration identifier.
        required: true
        schema:
          type: string
          format: uuid
      - name: enabled
        in: query
        description: if set to true [enabled].
        required: true
        schema:
          type: boolean
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/CM.Platform.Channels.Models.Channels.ChannelConfiguration.ApiChannelConfigurationResponse'
            text/json:
              schema:
                $ref: '#/components/schemas/CM.Platform.Channels.Models.Channels.ChannelConfiguration.ApiChannelConfigurationResponse'
            text/xml:
              schema:
                $ref: '#/components/schemas/CM.Platform.Channels.Models.Channels.ChannelConfiguration.ApiChannelConfigurationResponse'
            multipart/form-data:
              schema:
                $ref: '#/components/schemas/CM.Platform.Channels.Models.Channels.ChannelConfiguration.ApiChannelConfigurationResponse'
  /channels/v1/accounts/{accountId}/channels/{channelId}/configuration/email:
    post:
      tags:
      - ChannelConfiguration
      summary: Adds a channels' email configuration element.
      operationId: ChannelConfiguration_AddEmailConfigurationElementAsync
      parameters:
      - name: accountId
        in: path
        description: The account identifier.
        required: true
        schema:
          type: string
          format: uuid
      - name: channelId
        in: path
        description: The channel identifier.
        required: true
        schema:
          type: string
          format: uuid
      requestBody:
        $ref: '#/components/requestBodies/CM.Platform.Channels.Models.Channels.ChannelConfiguration.ApiChannelEmailConfigurationRequest'
      responses:
        '201':
          description: Created
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/CM.Platform.Channels.Models.Channels.ChannelConfiguration.ApiChannelEmailConfigurationResponse'
            text/json:
              schema:
                $ref: '#/components/schemas/CM.Platform.Channels.Models.Channels.ChannelConfiguration.ApiChannelEmailConfigurationResponse'
            text/xml:
              schema:
                $ref: '#/components/schemas/CM.Platform.Channels.Models.Channels.ChannelConfiguration.ApiChannelEmailConfigurationResponse'
            multipart/form-data:
              schema:
                $ref: '#/components/schemas/CM.Platform.Channels.Models.Channels.ChannelConfiguration.ApiChannelEmailConfigurationResponse'
  /channels/v1/accounts/{accountId}/channels/{channelId}/configuration/email/{addressId}:
    put:
      tags:
      - ChannelConfiguration
      summary: Updates a channels' email configuration element.
      operationId: ChannelConfiguration_UpdateEmailConfigurationElementAsync
      parameters:
      - name: accountId
        in: path
        description: The account identifier.
        required: true
        schema:
          type: string
          format: uuid
      - name: channelId
        in: path
        description: The channel identifier.
        required: true
        schema:
          type: string
          format: uuid
      - name: addressId
        in: path
        description: The address identifier.
        required: true
        schema:
          type: string
          format: uuid
      requestBody:
        $ref: '#/components/requestBodies/CM.Platform.Channels.Models.Channels.ChannelConfiguration.ApiChannelEmailConfigurationRequest'
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/CM.Platform.Channels.Models.Channels.ChannelConfiguration.ApiChannelEmailConfigurationResponse'
            text/json:
              schema:
                $ref: '#/components/schemas/CM.Platform.Channels.Models.Channels.ChannelConfiguration.ApiChannelEmailConfigurationResponse'
            text/xml:
              schema:
                $ref: '#/components/schemas/CM.Platform.Channels.Models.Channels.ChannelConfiguration.ApiChannelEmailConfigurationResponse'
            multipart/form-data:
              schema:
                $ref: '#/components/schemas/CM.Platform.Channels.Models.Channels.ChannelConfiguration.ApiChannelEmailConfigurationResponse'
    delete:
      tags:
      - ChannelConfiguration
      summary: Deletes a channels' email configuration element.
      operationId: ChannelConfiguration_DeleteEmailConfigurationElementAsync
      parameters:
      - name: accountId
        in: path
        description: The account identifier.
        required: true
        schema:
          type: string
          format: uuid
      - name: channelId
        in: path
        description: The channel identifier.
        required: true
        schema:
          type: string
          format: uuid
      - name: addressId
        in: path
        description: The address identifier.
        required: true
        schema:
          type: string
          format: uuid
      responses:
        '200':
          description: OK
  /channels/v1/accounts/{accountId}/channels/{channelId}/configuration/webhook:
    post:
      tags:
      - ChannelConfiguration
      summary: Add a channels' web hook configuration element.
      operationId: ChannelConfiguration_AddWebHookConfigurationElementAsync
      parameters:
      - name: accountId
        in: path
        description: The account identifier.
        required: true
        schema:
          type: string
          format: uuid
      - name: channelId
        in: path
        description: The channel identifier.
        required: true
        schema:
          type: string
          format: uuid
      requestBody:
        $ref: '#/components/requestBodies/CM.Platform.Channels.Models.Channels.ChannelConfiguration.ApiChannelWebHookConfigurationRequest'
      responses:
        '201':
          description: Created
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/CM.Platform.Channels.Models.Channels.ChannelConfiguration.ApiChannelWebHookConfigurationResponse'
            text/json:
              schema:
                $ref: '#/components/schemas/CM.Platform.Channels.Models.Channels.ChannelConfiguration.ApiChannelWebHookConfigurationResponse'
            text/xml:
              schema:
                $ref: '#/components/schemas/CM.Platform.Channels.Models.Channels.ChannelConfiguration.ApiChannelWebHookConfigurationResponse'
            multipart/form-data:
              schema:
                $ref: '#/components/schemas/CM.Platform.Channels.Models.Channels.ChannelConfiguration.ApiChannelWebHookConfigurationResponse'
  /channels/v1/accounts/{accountId}/channels/{channelId}/configuration/webhook/{webhookId}:
    put:
      tags:
      - ChannelConfiguration
      summary: Updates a channels' webhook configuration element.
      operationId: ChannelConfiguration_UpdateWebHookConfigurationElementAsync
      parameters:
      - name: accountId
        in: path
        description: The account identifier.
        required: true
        schema:
          type: string
          format: uuid
      - name: channelId
        in: path
        description: The channel identifier.
        required: true
        schema:
          type: string
          format: uuid
      - name: webhookId
        in: path
        description: The webhook identifier.
        required: true
        schema:
          type: string
          format: uuid
      requestBody:
        $ref: '#/components/requestBodies/CM.Platform.Channels.Models.Channels.ChannelConfiguration.ApiChannelWebHookConfigurationRequest'
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/CM.Platform.Channels.Models.Channels.ChannelConfiguration.ApiChannelWebHookConfigurationResponse'
            text/json:
              schema:
                $ref: '#/components/schemas/CM.Platform.Channels.Models.Channels.ChannelConfiguration.ApiChannelWebHookConfigurationResponse'
            text/xml:
              schema:
                $ref: '#/components/schemas/CM.Platform.Channels.Models.Channels.ChannelConfiguration.ApiChannelWebHookConfigurationResponse'
            multipart/form-data:
              schema:
                $ref: '#/components/schemas/CM.Platform.Channels.Models.Channels.ChannelConfiguration.ApiChannelWebHookConfigurationResponse'
    delete:
      tags:
      - ChannelConfiguration
      summary: Deletes a channels' web hook configuration element.
      operationId: ChannelConfiguration_DeleteWebHookConfigurationElementAsync
      parameters:
      - name: accountId
        in: path
        description: The account identifier.
        required: true
        schema:
          type: string
          format: uuid
      - name: channelId
        in: path
        description: The channel identifier.
        required: true
        schema:
          type: string
          format: uuid
      - name: webhookId
        in: path
        description: The web hook identifier.
        required: true
        schema:
          type: string
          format: uuid
      responses:
        '200':
          description: OK
  /channels/v1/accounts/{accountId}/channels/{channelId}/configuration/eventwebhook:
    post:
      tags:
      - ChannelConfiguration
      summary: Adds an event webhook configuration element.
      operationId: ChannelConfiguration_AddEventWebHookConfigurationElementAsync
      parameters:
      - name: accountId
        in: path
        description: The account identifier.
        required: true
        schema:
          type: string
          format: uuid
      - name: channelId
        in: path
        description: The channel identifier.
        required: true
        schema:
          type: string
          format: uuid
      requestBody:
        $ref: '#/components/requestBodies/CM.Platform.Channels.Models.Channels.ChannelConfiguration.ApiChannelEventWebHookConfigurationRequest'
      responses:
        '201':
          description: Created
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/CM.Platform.Channels.Models.Channels.ChannelConfiguration.ApiChannelEventWebHookConfigurationResponse'
            text/json:
              schema:
                $ref: '#/components/schemas/CM.Platform.Channels.Models.Channels.ChannelConfiguration.ApiChannelEventWebHookConfigurationResponse'
            text/xml:
              schema:
                $ref: '#/components/schemas/CM.Platform.Channels.Models.Channels.ChannelConfiguration.ApiChannelEventWebHookConfigurationResponse'
            multipart/form-data:
              schema:
                $ref: '#/components/schemas/CM.Platform.Channels.Models.Channels.ChannelConfiguration.ApiChannelEventWebHookConfigurationResponse'
  /channels/v1/accounts/{accountId}/channels/{channelId}/configuration/eventwebhook/{eventWebhookId}:
    put:
      tags:
      - ChannelConfiguration
      summary: Updates an event webhook configuration element.
      operationId: ChannelConfiguration_UpdateEventWebHookConfigurationElementAsync
      parameters:
      - name: accountId
        in: path
        description: The account identifier.
        required: true
        schema:
          type: string
          format: uuid
      - name: channelId
        in: path
        description: The channel identifier.
        required: true
        schema:
          type: string
          format: uuid
      - name: eventWebhookId
        in: path
        description: The event webhook identifier.
        required: true
        schema:
          type: string
          format: uuid
      requestBody:
        $ref: '#/components/requestBodies/CM.Platform.Channels.Models.Channels.ChannelConfiguration.ApiChannelEventWebHookConfigurationRequest'
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/CM.Platform.Channels.Models.Channels.ChannelConfiguration.ApiChannelEventWebHookConfigurationResponse'
            text/json:
              schema:
                $ref: '#/components/schemas/CM.Platform.Channels.Models.Channels.ChannelConfiguration.ApiChannelEventWebHookConfigurationResponse'
            text/xml:
              schema:
                $ref: '#/components/schemas/CM.Platform.Channels.Models.Channels.ChannelConfiguration.ApiChannelEventWebHookConfigurationResponse'
            multipart/form-data:
              schema:
                $ref: '#/components/schemas/CM.Platform.Channels.Models.Channels.ChannelConfiguration.ApiChannelEventWebHookConfigurationResponse'
    delete:
      tags:
      - ChannelConfiguration
      summary: Deletes an event webhook configuration element.
      operationId: ChannelConfiguration_DeleteEventWebHookConfigurationElementAsync
      parameters:
      - name: accountId
        in: path
        description: The account identifier.
        required: true
        schema:
          type: string
          format: uuid
      - name: channelId
        in: path
        description: The channel identifier.
        required: true
        schema:
          type: string
          format: uuid
      - name: eventWebhookId
        in: path
        description: The event webhook identifier.
        required: true
        schema:
          type: string
          format: uuid
      responses:
        '200':
          description: OK
  /channels/v1/accounts/{accountId}/channels/{channelId}/configuration/messaginglog:
    post:
      tags:
      - ChannelConfiguration
      summary: Updates a channels' messaging log configuration.
      operationId: ChannelConfiguration_AddMessagingLogConfigurationElementAsync
      parameters:
      - name: accountId
        in: path
        description: The account identifier.
        required: true
        schema:
          type: string
          format: uuid
      - name: channelId
        in: path
        description: The channel identifier.
        required: true
        schema:
          type: string
          format: uuid
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/CM.Platform.Channels.Models.Channels.ChannelConfiguration.ApiChannelMessagingLogConfigurationRequest'
          text/json:
            schema:
              $ref: '#/components/schemas/CM.Platform.Channels.Models.Channels.ChannelConfiguration.ApiChannelMessagingLogConfigurationRequest'
          text/xml:
            schema:
              $ref: '#/components/schemas/CM.Platform.Channels.Models.Channels.ChannelConfiguration.ApiChannelMessagingLogConfigurationRequest'
          multipart/form-data:
            schema:
              $ref: '#/components/schemas/CM.Platform.Channels.Models.Channels.ChannelConfiguration.ApiChannelMessagingLogConfigurationRequest'
          application/x-www-form-urlencoded:
            schema:
              $ref: '#/components/schemas/CM.Platform.Channels.Models.Channels.ChannelConfiguration.ApiChannelMessagingLogConfigurationRequest'
        description: The configuration.
        required: true
      responses:
        '201':
          description: Created
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/CM.Platform.Channels.Models.Channels.ChannelConfiguration.ApiChannelMessagingLogConfigurationResponse'
            text/json:
              schema:
                $ref: '#/components/schemas/CM.Platform.Channels.Models.Channels.ChannelConfiguration.ApiChannelMessagingLogConfigurationResponse'
            text/xml:
              schema:
                $ref: '#/components/schemas/CM.Platform.Channels.Models.Channels.ChannelConfiguration.ApiChannelMessagingLogConfigurationResponse'
            multipart/form-data:
              schema:
                $ref: '#/components/schemas/CM.Platform.Channels.Models.Channels.ChannelConfiguration.ApiChannelMessagingLogConfigurationResponse'
  /channels/v1/accounts/{accountId}/channels/meta/loginforbusiness/attempt:
    post:
      tags:
      - Channels
      summary: Processes a Meta Login for Business attempt.
      operationId: Channels_ProcessLoginForBusinessAttemptAsync
      parameters:
      - name: accountId
        in: path
        description: The account identifier.
        required: true
        schema:
          type: string
          format: uuid
      - name: channelType
        in: query
        description: Type of the channel.
        required: true
        schema:
          type: string
          enum:
          - WHATSAPP
          - FACEBOOK
          - INSTAGRAM
      responses:
        '200':
          description: OK
  /channels/v1/accounts/{accountId}/channels/meta/loginforbusiness/attempt/dialogresult:
    post:
      tags:
      - Channels
      summary: Processes a Meta Login for Business attempt's dialog result.
      operationId: Channels_ProcessLoginForBusinessAttemptDialogResultAsync
      parameters:
      - name: accountId
        in: path
        description: The account identifier.
        required: true
        schema:
          type: string
          format: uuid
      - name: channelType
        in: query
        description: Type of the channel.
        required: true
        schema:
          type: string
          enum:
          - WHATSAPP
          - FACEBOOK
          - INSTAGRAM
      requestBody:
        content:
          application/json:
            schema:
              type: object
          text/json:
            schema:
              type: object
          text/xml:
            schema:
              type: object
          multipart/form-data:
            schema:
              type: object
          application/x-www-form-urlencoded:
            schema:
              type: object
        description: The dialog result.
        required: true
      responses:
        '200':
          description: OK
  /channels/v1/accounts/{accountId}/channels/access:
    get:
      tags:
      - Channels
      summary: Verifies the read capabilities asynchronous.
      operationId: Channels_VerifyReadCapabilitiesAsync
      parameters:
      - name: accountId
        in: path
        description: The account identifier.
        required: true
        schema:
          type: string
          format: uuid
      responses:
        '204':
          description: NoContent
  /channels/v1/accounts/{accountId}/channels/ottmetrics/year/{year}/month/{month}:
    get:
      tags:
      - Channels
      summary: Gets the monthly ott metrics asynchronous.
      operationId: Channels_GetMonthlyOttMetricsAsync
      parameters:
      - name: accountId
        in: path
        description: The account identifier.
        required: true
        schema:
          type: string
          format: uuid
      - name: year
        in: path
        description: The year.
        required: true
        schema:
          type: integer
          format: int32
      - name: month
        in: path
        description: The month.
        required: true
        schema:
          type: integer
          format: int32
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/CM.Platform.Channels.Models.Channels.ApiChannelAnalyticsBaseResponse'
            text/json:
              schema:
                $ref: '#/components/schemas/CM.Platform.Channels.Models.Channels.ApiChannelAnalyticsBaseResponse'
            text/xml:
              schema:
                $ref: '#/components/schemas/CM.Platform.Channels.Models.Channels.ApiChannelAnalyticsBaseResponse'
            multipart/form-data:
              schema:
                $ref: '#/components/schemas/CM.Platform.Channels.Models.Channels.ApiChannelAnalyticsBaseResponse'
  /channels/v1/accounts/{accountId}/channels/overview:
    get:
      tags:
      - Channels
      summary: Get a channel request overview.
      operationId: Channels_GetChannelOverviewAsync
      parameters:
      - name: accountId
        in: path
        description: The account identifier.
        required: true
        schema:
          type: string
          format: uuid
      - name: channelTypeId
        in: query
        description: The channel type identifier.
        required: false
        schema:
          type: string
          format: uuid
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/CM.Platform.Channels.Models.Channels.ApiChannelOverview'
            text/json:
              schema:
                $ref: '#/components/schemas/CM.Platform.Channels.Models.Channels.ApiChannelOverview'
            text/xml:
              schema:
                $ref: '#/components/schemas/CM.Platform.Channels.Models.Channels.ApiChannelOverview'
            multipart/form-data:
              schema:
                $ref: '#/components/schemas/CM.Platform.Channels.Models.Channels.ApiChannelOverview'
  /channels/v1/accounts/{accountId}/channels/conversationalprofiles:
    get:
      tags:
      - Channels
      summary: Get all conversational profiles.
      operationId: Channels_GetConversationalProfilesAsync
      parameters:
      - name: accountId
        in: path
        description: The account identifier.
        required: true
        schema:
          type: string
          format: uuid
      - name: channelTypeId
        in: query
        description: The channel type identifier.
        required: false
        schema:
          type: string
          format: uuid
      - name: skip
        in: query
        description: The skip.
        required: false
        schema:
          type: integer
          format: int32
      - name: take
        in: query
        description: The take.
        required: false
        schema:
          type: integer
          format: int32
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/CM.Platform.Channels.Models.Channels.ApiConversationalProfile'
            text/json:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/CM.Platform.Channels.Models.Channels.ApiConversationalProfile'
  /channels/v1/accounts/{accountId}/channels:
    get:
      tags:
      - Channels
      summary: Gets the channels asynchronous.
      operationId: Channels_GetChannelsAsync
      parameters:
      - name: accountId
        in: path
        description: The account identifier.
        required: true
        schema:
          type: string
          format: uuid
      - name: channelTypeId
        in: query
        description: The channel type identifier.
        required: false
        schema:
          type: string
          format: uuid
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/CM.Platform.Channels.Models.Channels.ApiChannels'
            text/json:
              schema:
                $ref: '#/components/schemas/CM.Platform.Channels.Models.Channels.ApiChannels'
            text/xml:
              schema:
                $ref: '#/components/schemas/CM.Platform.Channels.Models.Channels.ApiChannels'
            multipart/form-data:
              schema:
                $ref: '#/components/schemas/CM.Platform.Channels.Models.Channels.ApiChannels'
  /channels/v1/accounts/{accountId}/channels/{channelId}:
    get:
      tags:
      - Channels
      summary: Gets the channel asynchronous.
      operationId: Channels_GetChannelAsync
      parameters:
      - name: accountId
        in: path
        description: The account identifier.
        required: true
        schema:
          type: string
          format: uuid
      - name: channelId
        in: path
        description: The channel identifier.
        required: true
        schema:
          type: string
          format: uuid
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/CM.Platform.Channels.Models.Channels.ApiChannelBase'
            text/json:
              schema:
                $ref: '#/components/schemas/CM.Platform.Channels.Models.Channels.ApiChannelBase'
            text/xml:
              schema:
                $ref: '#/components/schemas/CM.Platform.Channels.Models.Channels.ApiChannelBase'
            multipart/form-data:
              schema:
                $ref: '#/components/schemas/CM.Platform.Channels.Models.Channels.ApiChannelBase'
  /channels/v1/accounts/{accountId}/channels/{channelId}/events/updates:
    get:
      tags:
      - Channels
      summary: Get a Channel's UPDATE events.
      operationId: Channels_GetChannelCategoryUpdateEventsAsync
      parameters:
      - name: accountId
        in: path
        description: The account identifier.
        required: true
        schema:
          type: string
          format: uuid
      - name: channelId
        in: path
        description: The channel identifier.
        required: true
        schema:
          type: string
          format: uuid
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/CM.Platform.Channels.Models.EventLogging.ApiBaseEvent'
            text/json:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/CM.Platform.Channels.Models.EventLogging.ApiBaseEvent'
            text/xml:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/CM.Platform.Channels.Models.EventLogging.ApiBaseEvent'
            multipart/form-data:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/CM.Platform.Channels.Models.EventLogging.ApiBaseEvent'
  /channels/v1/accounts/{accountId}/channels/requests:
    get:
      tags:
      - Channels
      summary: Gets the channel requests asynchronous.
      operationId: Channels_GetChannelRequestsAsync
      parameters:
      - name: accountId
        in: path
        description: The account identifier.
        required: true
        schema:
          type: string
          format: uuid
      - name: channelTypeId
        in: query
        description: The channel type identifier.
        required: false
        schema:
          type: string
          format: uuid
      - name: skip
        in: query
        description: The skip.
        required: false
        schema:
          type: integer
          format: int32
      - name: take
        in: query
        description: The take.
        required: false
        schema:
          type: integer
          format: int32
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/CM.Platform.Channels.Models.Channels.ApiChannelTypeRequestBase'
            text/json:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/CM.Platform.Channels.Models.Channels.ApiChannelTypeRequestBase'
    post:
      tags:
      - Channels
      summary: Adds the channel request asynchronous.
      operationId: Channels_AddChannelRequestAsync
      parameters:
      - name: accountId
        in: path
        description: The account identifier.
        required: true
        schema:
          type: string
          format: uuid
      - name: channelTypeId
        in: query
        description: The channel type identifier.
        required: true
        schema:
          type: string
          format: uuid
      - name: simulate
        in: query
        description: if set to true [simulate].
        required: false
        schema:
          type: boolean
      - name: skipChannelTypeAccountCreation
        in: query
        description: if set to true [skip channel type account creation].
        required: false
        schema:
          type: boolean
      responses:
        '201':
          description: Created
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/CM.Platform.Channels.Models.Channels.ApiChannelTypeRequestBase'
            text/json:
              schema:
                $ref: '#/components/schemas/CM.Platform.Channels.Models.Channels.ApiChannelTypeRequestBase'
  /channels/v1/accounts/{accountId}/channels/requests/{channelRequestId}:
    get:
      tags:
      - Channels
      summary: Gets the channel request asynchronous.
      operationId: Channels_GetChannelRequestAsync
      parameters:
      - name: accountId
        in: path
        description: The account identifier.
        required: true
        schema:
          type: string
          format: uuid
      - name: channelRequestId
        in: path
        description: The channel request identifier.
        required: true
        schema:
          type: string
          format: uuid
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/CM.Platform.Channels.Models.Channels.ApiChannelTypeRequest'
            text/json:
              schema:
                $ref: '#/components/schemas/CM.Platform.Channels.Models.Channels.ApiChannelTypeRequest'
            text/xml:
              schema:
                $ref: '#/components/schemas/CM.Platform.Channels.Models.Channels.ApiChannelTypeRequest'
            multipart/form-data:
              schema:
                $ref: '#/components/schemas/CM.Platform.Channels.Models.Channels.ApiChannelTypeRequest'
  /channels/v1/accounts/{accountId}/channels/types:
    get:
      tags:
      - Channels
      summary: Gets all channel types.
      operationId: Channels_GetChannelTypesAsync
      parameters:
      - name: accountId
        in: path
        description: The account identifier.
        required: true
        schema:
          type: string
          format: uuid
      - name: skip
        in: query
        description: The skip.
        required: false
        schema:
          type: integer
          format: int32
      - name: take
        in: query
        description: The take.
        required: false
        schema:
          type: integer
          format: int32
      - name: betaChannels
        in: query
        description: The beta channels.
        required: false
        schema:
          type: boolean
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/CM.Platform.Channels.Models.Channels.ApiChannelTypeBaseResponse'
            text/json:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/CM.Platform.Channels.Models.Channels.ApiChannelTypeBaseResponse'
  /channels/v1/accounts/{accountId}/channels/types/{channelTypeId}:
    get:
      tags:
      - Channels
      summary: Gets a channel type.
      operationId: Channels_GetChannelTypeAsync
      parameters:
      - name: accountId
        in: path
        description: The account identifier.
        required: true
        schema:
          type: string
          format: uuid
      - name: channelTypeId
        in: path
        description: The channel type identifier.
        required: true
        schema:
          type: string
          format: uuid
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/CM.Platform.Channels.Models.Channels.ApiChannelTypeResponse'
            text/json:
              schema:
                $ref: '#/components/schemas/CM.Platform.Channels.Models.Channels.ApiChannelTypeResponse'
            text/xml:
              schema:
                $ref: '#/components/schemas/CM.Platform.Channels.Models.Channels.ApiChannelTypeResponse'
            multipart/form-data:
              schema:
                $ref: '#/components/schemas/CM.Platform.Channels.Models.Channels.ApiChannelTypeResponse'
  /channels/v1/accounts/{accountId}/channels/types/{channelTypeId}/categories:
    get:
      tags:
      - Channels
      summary: Gets channel type categories.
      operationId: Channels_GetChannelTypeCategoriesAsync
      parameters:
      - name: accountId
        in: path
        description: The account identifier.
        required: true
        schema:
          type: string
          format: uuid
      - name: channelTypeId
        in: path
        description: The channel type identifier.
        required: true
        schema:
          type: string
          format: uuid
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/CM.Platform.Channels.Models.Channels.ApiChannelCategory'
            text/json:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/CM.Platform.Channels.Models.Channels.ApiChannelCategory'
            text/xml:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/CM.Platform.Channels.Models.Channels.ApiChannelCategory'
            multipart/form-data:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/CM.Platform.Channels.Models.Channels.ApiChannelCategory'
  /channels/v1/accounts/{accountId}/channels/types/{channelTypeId}/categories/{channelCategoryId}:
    get:
      tags:
      - Channels
      summary: Gets a channel type category.
      operationId: Channels_GetChannelTypeCategoryAsync
      parameters:
      - name: accountId
        in: path
        description: The account identifier.
        required: true
        schema:
          type: string
          format: uuid
      - name: channelTypeId
        in: path
        description: The channel type identifier.
        required: true
        schema:
          type: string
          format: uuid
      - name: channelCategoryId
        in: path
        description: The channel category identifier.
        required: true
        schema:
          type: string
          format: uuid
      - name: isSandBox
        in: query
        description: Sandbox/demo.
        required: false
        schema:
          type: boolean
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/CM.Platform.Channels.Models.Channels.ApiChannelCategory'
            text/json:
              schema:
                $ref: '#/components/schemas/CM.Platform.Channels.Models.Channels.ApiChannelCategory'
            text/xml:
              schema:
                $ref: '#/components/schemas/CM.Platform.Channels.Models.Channels.ApiChannelCategory'
            multipart/form-data:
              schema:
                $ref: '#/components/schemas/CM.Platform.Channels.Models.Channels.ApiChannelCategory'
  /channels/v1/accounts/{accountId}/channels/types/{channelTypeId}/requestform:
    get:
      tags:
      - Channels
      summary: Gets the channel request form asynchronous.
      operationId: Channels_GetChannelTypeRequestFormAsync
      parameters:
      - name: accountId
        in: path
        description: The account identifier.
        required: true
        schema:
          type: string
          format: uuid
      - name: channelTypeId
        in: path
        description: The channel type identifier.
        required: true
        schema:
          type: string
          format: uuid
      - name: channelTypeCategoryId
        in: query
        description: The channel type category identifier.
        required: false
        schema:
          type: string
          format: uuid
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/CM.Platform.Channels.Models.RequestForms.ApiChannelRequestForm'
            text/json:
              schema:
                $ref: '#/components/schemas/CM.Platform.Channels.Models.RequestForms.ApiChannelRequestForm'
            text/xml:
              schema:
                $ref: '#/components/schemas/CM.Platform.Channels.Models.RequestForms.ApiChannelRequestForm'
            multipart/form-data:
              schema:
                $ref: '#/components/schemas/CM.Platform.Channels.Models.RequestForms.ApiChannelRequestForm'
  /channels/v1/accounts/{accountId}/channels/{channelId}/customrequestform:
    get:
      tags:
      - Channels
      summary: Get a channel's custom request form.
      operationId: Channels_GetChannelCustomRequestFormAsync
      parameters:
      - name: accountId
        in: path
        description: The account identifier.
        required: true
        schema:
          type: string
          format: uuid
      - name: channelId
        in: path
        description: The channel identifier.
        required: true
        schema:
          type: string
          format: uuid
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/CM.Platform.Channels.Models.RequestForms.ApiCustomRequestForm'
            text/json:
              schema:
                $ref: '#/components/schemas/CM.Platform.Channels.Models.RequestForms.ApiCustomRequestForm'
            text/xml:
              schema:
                $ref: '#/components/schemas/CM.Platform.Channels.Models.RequestForms.ApiCustomRequestForm'
            multipart/form-data:
              schema:
                $ref: '#/components/schemas/CM.Platform.Channels.Models.RequestForms.ApiCustomRequestForm'
  /channels/v1/accounts/{accountId}/channels/{channelId}/customrequestform/forminput:
    get:
      tags:
      - Channels
      summary: Get a channel's custom request form input.
      operationId: Channels_GetChannelCustomRequestFormInputAsync
      parameters:
      - name: accountId
        in: path
        description: The account identifier.
        required: true
        schema:
          type: string
          format: uuid
      - name: channelId
        in: path
        description: The channel identifier.
        required: true
        schema:
          type: string
          format: uuid
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/CM.Platform.Channels.Models.RequestForms.ApiCustomRequestFormInputResponse'
            text/json:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/CM.Platform.Channels.Models.RequestForms.ApiCustomRequestFormInputResponse'
            text/xml:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/CM.Platform.Channels.Models.RequestForms.ApiCustomRequestFormInputResponse'
            multipart/form-data:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/CM.Platform.Channels.Models.RequestForms.ApiCustomRequestFormInputResponse'
    put:
      tags:
      - Channels
      summary: Add input to the channel's custom request form.
      operationId: Channels_AddCustomRequestFormInputAsync
      parameters:
      - name: accountId
        in: path
        description: The account identifier.
        required: true
        schema:
          type: string
          format: uuid
      - name: channelId
        in: path
        description: The channel identifier.
        required: true
        schema:
          type: string
          format: uuid
      requestBody:
        $ref: '#/components/requestBodies/CM.Platform.Channels.Models.RequestForms.ApiRequestFormInputRequestArray'
      responses:
        '202':
          description: Accepted
          content:
            application/json:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/CM.Platform.Channels.Models.RequestForms.ApiCustomRequestFormInputResponse'
            text/json:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/CM.Platform.Channels.Models.RequestForms.ApiCustomRequestFormInputResponse'
            text/xml:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/CM.Platform.Channels.Models.RequestForms.ApiCustomRequestFormInputResponse'
            multipart/form-data:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/CM.Platform.Channels.Models.RequestForms.ApiCustomRequestFormInputResponse'
  /channels/v1/accounts/{accountId}/channels/notification/{channelTypeId}:
    post:
      tags:
      - Channels
      summary: Handles the demo account channel request asynchronous.
      operationId: Channels_ProcessIncapableAccountChannelRequestAsync
      parameters:
      - name: accountId
        in: path
        description: The account identifier.
        required: true
        schema:
          type: string
          format: uuid
      - name: channelTypeId
        in: path
        description: The channel type identifier.
        required: true
        schema:
          type: string
          format: uuid
      - name: channelCategoryId
        in: query
        description: The channel category identifier.
        required: false
        schema:
          type: string
          format: uuid
      responses:
        '200':
          description: OK
  /channels/v1/accounts/{accountId}/facebook/{channelRequestId}/connections:
    get:
      tags:
      - Facebook
      summary: Get Facebook connections.
      operationId: Facebook_GetFacebookConnectionsAsync
      parameters:
      - name: accountId
        in: path
        description: The account identifier.
        required: true
        schema:
          type: string
          format: uuid
      - name: channelRequestId
        in: path
        description: The channel request identifier.
        required: true
        schema:
          type: string
          format: uuid
      - name: q
        in: query
        description: The q.
        required: false
        schema:
          type: string
      - name: status
        in: query
        description: The status.
        required: false
        explode: true
        schema:
          type: array
          items:
            type: string
            enum:
            - ACTIVE
            - PENDING
            - ELIGIBLE
            - NOT_VALIDATED
            - CUSTOMER_ACTION_REQUIRED
            - EXPIRED
            - REJECTED
            - CANCELLED
            - DELETED
      - name: skip
        in: query
        description: The skip.
        required: false
        schema:
          type: integer
          format: int32
      - name: take
        in: query
        description: The take.
        required: false
        schema:
          type: integer
          format: int32
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/CM.Platform.Channels.Models.ChannelTypes.Facebook.ApiFacebookConnectionBase'
            text/json:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/CM.Platform.Channels.Models.ChannelTypes.Facebook.ApiFacebookConnectionBase'
    put:
      tags:
      - Facebook
      summary: Update (a) Facebook connection(s) by processing a dialog session code.
      operationId: Facebook_ProcessFacebookConnectionSessionCodeAsync
      parameters:
      - name: accountId
        in: path
        description: The account identifier.
        required: true
        schema:
          type: string
          format: uuid
      - name: channelRequestId
        in: path
        description: The channel request identifier.
        required: true
        schema:
          type: string
          format: uuid
      - name: sessionCode
        in: query
        description: The session code.
        required: true
        schema:
          type: string
      responses:
        '204':
          description: NoContent
  /channels/v1/accounts/{accountId}/facebook/{channelRequestId}/connections/{connectionId}:
    get:
      tags:
      - Facebook
      summary: Get a Facebook connection.
      operationId: Facebook_GetFacebookConnectionAsync
      parameters:
      - name: accountId
        in: path
        description: The account identifier.
        required: true
        schema:
          type: string
          format: uuid
      - name: channelRequestId
        in: path
        description: The channel request identifier.
        required: true
        schema:
          type: string
          format: uuid
      - name: connectionId
        in: path
        description: The connection identifier.
        required: true
        schema:
          type: string
          format: uuid
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/CM.Platform.Channels.Models.ChannelTypes.Facebook.ApiFacebookConnection'
            text/json:
              schema:
                $ref: '#/components/schemas/CM.Platform.Channels.Models.ChannelTypes.Facebook.ApiFacebookConnection'
            text/xml:
              schema:
                $ref: '#/components/schemas/CM.Platform.Channels.Models.ChannelTypes.Facebook.ApiFacebookConnection'
            multipart/form-data:
              schema:
                $ref: '#/components/schemas/CM.Platform.Channels.Models.ChannelTypes.Facebook.ApiFacebookConnection'
  /channels/v1/accounts/{accountId}/facebook/{channelRequestId}/account:
    get:
      tags:
      - Facebook
      summary: Get a Facebook account.
      operationId: Facebook_GetFacebookAccountAsync
      parameters:
      - name: accountId
        in: path
        description: The account identifier.
        required: true
        schema:
          type: string
          format: uuid
      - name: channelRequestId
        in: path
        description: The channel request identifier.
        required: true
        schema:
          type: string
          format: uuid
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/CM.Platform.Channels.Models.ChannelTypes.Facebook.ApiFacebookAccount'
            text/json:
              schema:
                $ref: '#/components/schemas/CM.Platform.Channels.Models.ChannelTypes.Facebook.ApiFacebookAccount'
            text/xml:
              schema:
                $ref: '#/components/schemas/CM.Platform.Channels.Models.ChannelTypes.Facebook.ApiFacebookAccount'
            multipart/form-data:
              schema:
                $ref: '#/components/schemas/CM.Platform.Channels.Models.ChannelTypes.Facebook.ApiFacebookAccount'
    post:
      tags:
      - Facebook
      summary: Adds a Facebook account.
      operationId: Facebook_AddFacebookAccountAsync
      parameters:
      - name: accountId
        in: path
        description: The account identifier.
        required: true
        schema:
          type: string
          format: uuid
      - name: channelRequestId
        in: path
        description: The channel request identifier.
        required: true
        schema:
          type: string
          format: uuid
      responses:
        '201':
          description: Created
  /channels/v1/accounts/{accountId}/facebook/{channelRequestId}/account/forminput:
    get:
      tags:
      - Facebook
      summary: Get a Facebook account's form input.
      operationId: Facebook_GetFacebookAccountFormInputAsync
      parameters:
      - name: accountId
        in: path
        description: The account identifier.
        required: true
        schema:
          type: string
          format: uuid
      - name: channelRequestId
        in: path
        description: The channel request identifier.
        required: true
        schema:
          type: string
          format: uuid
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/CM.Platform.Channels.Models.RequestForms.ApiChannelRequestFormInputResponse'
            text/json:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/CM.Platform.Channels.Models.RequestForms.ApiChannelRequestFormInputResponse'
            text/xml:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/CM.Platform.Channels.Models.RequestForms.ApiChannelRequestFormInputResponse'
            multipart/form-data:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/CM.Platform.Channels.Models.RequestForms.ApiChannelRequestFormInputResponse'
  /channels/v1/accounts/{accountId}/facebook/{channelRequestId}/account/{facebookAccountId}/forminput:
    put:
      tags:
      - Facebook
      summary: Add input to a Facebook account's form.
      operationId: Facebook_AddFacebookAccountFormInputAsync
      parameters:
      - name: accountId
        in: path
        description: The account identifier.
        required: true
        schema:
          type: string
          format: uuid
      - name: channelRequestId
        in: path
        description: The channel request identifier.
        required: true
        schema:
          type: string
          format: uuid
      - name: facebookAccountId
        in: path
        description: The facebook account identifier.
        required: true
        schema:
          type: string
          format: uuid
      requestBody:
        $ref: '#/components/requestBodies/CM.Platform.Channels.Models.RequestForms.ApiRequestFormInputRequestArray'
      responses:
        '202':
          description: Accepted
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/CM.Platform.Channels.Models.ChannelTypes.Facebook.ApiFacebookAccount'
            text/json:
              schema:
                $ref: '#/components/schemas/CM.Platform.Channels.Models.ChannelTypes.Facebook.ApiFacebookAccount'
            text/xml:
              schema:
                $ref: '#/components/schemas/CM.Platform.Channels.Models.ChannelTypes.Facebook.ApiFacebookAccount'
            multipart/form-data:
              schema:
                $ref: '#/components/schemas/CM.Platform.Channels.Models.ChannelTypes.Facebook.ApiFacebookAccount'
  /channels/v1/accounts/{accountId}/gbm/{channelRequestId}/agents:
    get:
      tags:
      - GooglesBusinessMessages
      summary: Get all Google's Business Messages Agents
      operationId: GooglesBusinessMessages_GetGooglesBusinessMessagesAgentsAsync
      parameters:
      - name: accountId
        in: path
        description: The brand identifier.
        required: true
        schema:
          type: string
          format: uuid
      - name: channelRequestId
        in: path
        description: The channel request identifier.
        required: true
        schema:
          type: string
          format: uuid
      - name: q
        in: query
        description: The q.
        required: false
        schema:
          type: string
      - name: status
        in: query
        description: The status.
        required: false
        explode: true
        schema:
          type: array
          items:
            type: string
            enum:
            - ACTIVE
            - PENDING
            - ELIGIBLE
            - NOT_VALIDATED
            - CUSTOMER_ACTION_REQUIRED
            - EXPIRED
            - REJECTED
            - CANCELLED
            - DELETED
      - name: skip
        in: query
        description: The skip.
        required: false
        schema:
          type: integer
          format: int32
      - name: take
        in: query
        description: The take.
        required: false
        schema:
          type: integer
          format: int32
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/CM.Platform.Channels.Models.ChannelTypes.GooglesBusinessMessages.ApiGooglesBusinessMessagesAgentBase'
            text/json:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/CM.Platform.Channels.Models.ChannelTypes.GooglesBusinessMessages.ApiGooglesBusinessMessagesAgentBase'
  /channels/v1/accounts/{accountId}/gbm/{channelRequestId}/agents/{agentId}:
    get:
      tags:
      - GooglesBusinessMessages
      summary: Get a Google's Business Messages Agent by ID
      operationId: GooglesBusinessMessages_GetGooglesBusinessMessagesAgentAsync
      parameters:
      - name: accountId
        in: path
        description: The account identifier.
        required: true
        schema:
          type: string
          format: uuid
      - name: channelRequestId
        in: path
        description: The channel request identifier.
        required: true
        schema:
          type: string
          format: uuid
      - name: agentId
        in: path
        description: The agent identifier.
        required: true
        schema:
          type: string
          format: uuid
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/CM.Platform.Channels.Models.ChannelTypes.GooglesBusinessMessages.ApiGooglesBusinessMessagesAgent'
            text/json:
              schema:
                $ref: '#/components/schemas/CM.Platform.Channels.Models.ChannelTypes.GooglesBusinessMessages.ApiGooglesBusinessMessagesAgent'
            text/xml:
              schema:
                $ref: '#/components/schemas/CM.Platform.Channels.Models.ChannelTypes.GooglesBusinessMessages.ApiGooglesBusinessMessagesAgent'
            multipart/form-data:
              schema:
                $ref: '#/components/schemas/CM.Platform.Channels.Models.ChannelTypes.GooglesBusinessMessages.ApiGooglesBusinessMessagesAgent'
  /channels/v1/accounts/{accountId}/gbm/{channelRequestId}/brands/{brandId}/agents:
    get:
      tags:
      - GooglesBusinessMessages
      summary: Get all Google's Business Messages Agents for a specified Google's Business Messages Brand
        ID
      operationId: GooglesBusinessMessages_GetGooglesBusinessMessagesBrandAgentsAsync
      parameters:
      - name: accountId
        in: path
        description: The brand identifier.
        required: true
        schema:
          type: string
          format: uuid
      - name: channelRequestId
        in: path
        description: The channel request identifier.
        required: true
        schema:
          type: string
          format: uuid
      - name: brandId
        in: path
        description: The brand identifier.
        required: true
        schema:
          type: string
          format: uuid
      - name: q
        in: query
        description: The q.
        required: false
        schema:
          type: string
      - name: status
        in: query
        description: The status.
        required: false
        explode: true
        schema:
          type: array
          items:
            type: string
            enum:
            - ACTIVE
            - PENDING
            - ELIGIBLE
            - NOT_VALIDATED
            - CUSTOMER_ACTION_REQUIRED
            - EXPIRED
            - REJECTED
            - CANCELLED
            - DELETED
      - name: skip
        in: query
        description: The skip.
        required: false
        schema:
          type: integer
          format: int32
      - name: take
        in: query
        description: The take.
        required: false
        schema:
          type: integer
          format: int32
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/CM.Platform.Channels.Models.ChannelTypes.GooglesBusinessMessages.ApiGooglesBusinessMessagesAgentBase'
            text/json:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/CM.Platform.Channels.Models.ChannelTypes.GooglesBusinessMessages.ApiGooglesBusinessMessagesAgentBase'
    post:
      tags:
      - GooglesBusinessMessages
      summary: Adds a new Google's Business Messages Agent
      operationId: GooglesBusinessMessages_AddGooglesBusinessMessagesAgentAsync
      parameters:
      - name: accountId
        in: path
        description: The account identifier.
        required: true
        schema:
          type: string
          format: uuid
      - name: channelRequestId
        in: path
        description: The channel request identifier.
        required: true
        schema:
          type: string
          format: uuid
      - name: brandId
        in: path
        description: The brand identifier.
        required: true
        schema:
          type: string
          format: uuid
      requestBody:
        $ref: '#/components/requestBodies/CM.Platform.Channels.Models.RequestForms.ApiRequestFormInputRequestArray'
      responses:
        '201':
          description: Created
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/CM.Platform.Channels.Models.ChannelTypes.GooglesBusinessMessages.ApiGooglesBusinessMessagesAgent'
            text/json:
              schema:
                $ref: '#/components/schemas/CM.Platform.Channels.Models.ChannelTypes.GooglesBusinessMessages.ApiGooglesBusinessMessagesAgent'
            text/xml:
              schema:
                $ref: '#/components/schemas/CM.Platform.Channels.Models.ChannelTypes.GooglesBusinessMessages.ApiGooglesBusinessMessagesAgent'
            multipart/form-data:
              schema:
                $ref: '#/components/schemas/CM.Platform.Channels.Models.ChannelTypes.GooglesBusinessMessages.ApiGooglesBusinessMessagesAgent'
  /channels/v1/accounts/{accountId}/gbm/{channelRequestId}/brands/{brandId}/agents/{agentId}:
    get:
      tags:
      - GooglesBusinessMessages
      summary: Get a Google's Business Messages Agent by ID for a specified Google's Business Messages
        Brand ID
      operationId: GooglesBusinessMessages_GetGooglesBusinessMessagesBrandAgentAsync
      parameters:
      - name: accountId
        in: path
        description: The account identifier.
        required: true
        schema:
          type: string
          format: uuid
      - name: channelRequestId
        in: path
        description: The channel request identifier.
        required: true
        schema:
          type: string
          format: uuid
      - name: brandId
        in: path
        description: The brand identifier.
        required: true
        schema:
          type: string
          format: uuid
      - name: agentId
        in: path
        description: The agent identifier.
        required: true
        schema:
          type: string
          format: uuid
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/CM.Platform.Channels.Models.ChannelTypes.GooglesBusinessMessages.ApiGooglesBusinessMessagesAgent'
            text/json:
              schema:
                $ref: '#/components/schemas/CM.Platform.Channels.Models.ChannelTypes.GooglesBusinessMessages.ApiGooglesBusinessMessagesAgent'
            text/xml:
              schema:
                $ref: '#/components/schemas/CM.Platform.Channels.Models.ChannelTypes.GooglesBusinessMessages.ApiGooglesBusinessMessagesAgent'
            multipart/form-data:
              schema:
                $ref: '#/components/schemas/CM.Platform.Channels.Models.ChannelTypes.GooglesBusinessMessages.ApiGooglesBusinessMessagesAgent'
    delete:
      tags:
      - GooglesBusinessMessages
      summary: Deletes a Google's Business Messages Agent
      operationId: GooglesBusinessMessages_DeleteGooglesBusinessMessagesAgentAsync
      parameters:
      - name: accountId
        in: path
        description: The account identifier.
        required: true
        schema:
          type: string
          format: uuid
      - name: channelRequestId
        in: path
        description: The channel request identifier.
        required: true
        schema:
          type: string
          format: uuid
      - name: brandId
        in: path
        description: The brand identifier.
        required: true
        schema:
          type: string
          format: uuid
      - name: agentId
        in: path
        description: The agent identifier.
        required: true
        schema:
          type: string
          format: uuid
      responses:
        '204':
          description: NoContent
  /channels/v1/accounts/{accountId}/gbm/{channelRequestId}/brands/{brandId}/agents/{agentId}/forminput:
    get:
      tags:
      - GooglesBusinessMessages
      summary: Gets the Google's Business Messages Agents form input
      operationId: GooglesBusinessMessages_GetGooglesBusinessMessagesAgentFormInputAsync
      parameters:
      - name: accountId
        in: path
        description: The account identifier.
        required: true
        schema:
          type: string
          format: uuid
      - name: channelRequestId
        in: path
        description: The channel request identifier.
        required: true
        schema:
          type: string
          format: uuid
      - name: brandId
        in: path
        description: The brand identifier.
        required: true
        schema:
          type: string
          format: uuid
      - name: agentId
        in: path
        description: The agent identifier.
        required: true
        schema:
          type: string
          format: uuid
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/CM.Platform.Channels.Models.RequestForms.ApiChannelRequestFormInputResponse'
            text/json:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/CM.Platform.Channels.Models.RequestForms.ApiChannelRequestFormInputResponse'
            text/xml:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/CM.Platform.Channels.Models.RequestForms.ApiChannelRequestFormInputResponse'
            multipart/form-data:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/CM.Platform.Channels.Models.RequestForms.ApiChannelRequestFormInputResponse'
    put:
      tags:
      - GooglesBusinessMessages
      summary: Adds the Google's Business Messages Agents form input
      operationId: GooglesBusinessMessages_AddGooglesBusinessMessagesAgentFormInputAsync
      parameters:
      - name: accountId
        in: path
        description: The account identifier.
        required: true
        schema:
          type: string
          format: uuid
      - name: channelRequestId
        in: path
        description: The channel request identifier.
        required: true
        schema:
          type: string
          format: uuid
      - name: brandId
        in: path
        description: The brand identifier.
        required: true
        schema:
          type: string
          format: uuid
      - name: agentId
        in: path
        description: The agent identifier.
        required: true
        schema:
          type: string
          format: uuid
      requestBody:
        $ref: '#/components/requestBodies/CM.Platform.Channels.Models.RequestForms.ApiRequestFormInputRequestArray'
      responses:
        '202':
          description: Accepted
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/CM.Platform.Channels.Models.ChannelTypes.GooglesBusinessMessages.ApiGooglesBusinessMessagesAgent'
            text/json:
              schema:
                $ref: '#/components/schemas/CM.Platform.Channels.Models.ChannelTypes.GooglesBusinessMessages.ApiGooglesBusinessMessagesAgent'
            text/xml:
              schema:
                $ref: '#/components/schemas/CM.Platform.Channels.Models.ChannelTypes.GooglesBusinessMessages.ApiGooglesBusinessMessagesAgent'
            multipart/form-data:
              schema:
                $ref: '#/components/schemas/CM.Platform.Channels.Models.ChannelTypes.GooglesBusinessMessages.ApiGooglesBusinessMessagesAgent'
  /channels/v1/accounts/{accountId}/gbm/{channelRequestId}/brands/{brandId}/agents/{agentId}/configuration:
    get:
      tags:
      - GooglesBusinessMessages
      summary: Gets the Google's Business Messages Agent Configuration
      operationId: GooglesBusinessMessages_GetGooglesBusinessMessagesAgentConfigurationAsync
      parameters:
      - name: accountId
        in: path
        description: The account identifier.
        required: true
        schema:
          type: string
          format: uuid
      - name: channelRequestId
        in: path
        description: The channel request identifier.
        required: true
        schema:
          type: string
          format: uuid
      - name: brandId
        in: path
        description: The brand identifier.
        required: true
        schema:
          type: string
          format: uuid
      - name: agentId
        in: path
        description: The agent identifier.
        required: true
        schema:
          type: string
          format: uuid
      responses:
        '202':
          description: Accepted
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/CM.Platform.Channels.ExternalModels.ApiClients.Google.GoogleBusinessCommunications.ApiGooglesBusinessMessagesAgentConfiguration'
            text/json:
              schema:
                $ref: '#/components/schemas/CM.Platform.Channels.ExternalModels.ApiClients.Google.GoogleBusinessCommunications.ApiGooglesBusinessMessagesAgentConfiguration'
            text/xml:
              schema:
                $ref: '#/components/schemas/CM.Platform.Channels.ExternalModels.ApiClients.Google.GoogleBusinessCommunications.ApiGooglesBusinessMessagesAgentConfiguration'
            multipart/form-data:
              schema:
                $ref: '#/components/schemas/CM.Platform.Channels.ExternalModels.ApiClients.Google.GoogleBusinessCommunications.ApiGooglesBusinessMessagesAgentConfiguration'
    put:
      tags:
      - GooglesBusinessMessages
      summary: Updates the Google's Business Messages Agent Configuration
      operationId: GooglesBusinessMessages_UpdateGooglesBusinessMessagesAgentConfigurationAsync
      parameters:
      - name: accountId
        in: path
        description: The account identifier.
        required: true
        schema:
          type: string
          format: uuid
      - name: channelRequestId
        in: path
        description: The channel request identifier.
        required: true
        schema:
          type: string
          format: uuid
      - name: brandId
        in: path
        description: The brand identifier.
        required: true
        schema:
          type: string
          format: uuid
      - name: agentId
        in: path
        description: The agent identifier.
        required: true
        schema:
          type: string
          format: uuid
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/CM.Platform.Channels.ExternalModels.ApiClients.Google.GoogleBusinessCommunications.ApiGooglesBusinessMessagesAgentConfiguration'
          text/json:
            schema:
              $ref: '#/components/schemas/CM.Platform.Channels.ExternalModels.ApiClients.Google.GoogleBusinessCommunications.ApiGooglesBusinessMessagesAgentConfiguration'
          text/xml:
            schema:
              $ref: '#/components/schemas/CM.Platform.Channels.ExternalModels.ApiClients.Google.GoogleBusinessCommunications.ApiGooglesBusinessMessagesAgentConfiguration'
          multipart/form-data:
            schema:
              $ref: '#/components/schemas/CM.Platform.Channels.ExternalModels.ApiClients.Google.GoogleBusinessCommunications.ApiGooglesBusinessMessagesAgentConfiguration'
          application/x-www-form-urlencoded:
            schema:
              $ref: '#/components/schemas/CM.Platform.Channels.ExternalModels.ApiClients.Google.GoogleBusinessCommunications.ApiGooglesBusinessMessagesAgentConfiguration'
        description: The configuration.
        required: true
      responses:
        '202':
          description: Accepted
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/CM.Platform.Channels.ExternalModels.ApiClients.Google.GoogleBusinessCommunications.ApiGooglesBusinessMessagesAgentConfiguration'
            text/json:
              schema:
                $ref: '#/components/schemas/CM.Platform.Channels.ExternalModels.ApiClients.Google.GoogleBusinessCommunications.ApiGooglesBusinessMessagesAgentConfiguration'
            text/xml:
              schema:
                $ref: '#/components/schemas/CM.Platform.Channels.ExternalModels.ApiClients.Google.GoogleBusinessCommunications.ApiGooglesBusinessMessagesAgentConfiguration'
            multipart/form-data:
              schema:
                $ref: '#/components/schemas/CM.Platform.Channels.ExternalModels.ApiClients.Google.GoogleBusinessCommunications.ApiGooglesBusinessMessagesAgentConfiguration'
  /channels/v1/accounts/{accountId}/gbm/{channelRequestId}/brands/{brandId}/agents/{agentId}/testurls:
    get:
      tags:
      - GooglesBusinessMessages
      summary: Gets the Google's Business Messages Agent Test Urls
      operationId: GooglesBusinessMessages_GetGooglesBusinessMessagesAgentTestUrlsAsync
      parameters:
      - name: accountId
        in: path
        description: The account identifier.
        required: true
        schema:
          type: string
          format: uuid
      - name: channelRequestId
        in: path
        description: The channel request identifier.
        required: true
        schema:
          type: string
          format: uuid
      - name: brandId
        in: path
        description: The brand identifier.
        required: true
        schema:
          type: string
          format: uuid
      - name: agentId
        in: path
        description: The agent identifier.
        required: true
        schema:
          type: string
          format: uuid
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/CM.Platform.Channels.ExternalModels.ApiClients.Google.GoogleBusinessCommunications.ApiGooglesBusinessMessagesAgentTestUrl'
            text/json:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/CM.Platform.Channels.ExternalModels.ApiClients.Google.GoogleBusinessCommunications.ApiGooglesBusinessMessagesAgentTestUrl'
            text/xml:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/CM.Platform.Channels.ExternalModels.ApiClients.Google.GoogleBusinessCommunications.ApiGooglesBusinessMessagesAgentTestUrl'
            multipart/form-data:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/CM.Platform.Channels.ExternalModels.ApiClients.Google.GoogleBusinessCommunications.ApiGooglesBusinessMessagesAgentTestUrl'
  /channels/v1/accounts/{accountId}/gbm/{channelRequestId}/brands/{brandId}/agents/{agentId}/launch:
    post:
      tags:
      - GooglesBusinessMessages
      summary: Configure the Google's Business Messages Agent Launch
      operationId: GooglesBusinessMessages_ConfigureGooglesBusinessMessagesAgentLaunchAsync
      parameters:
      - name: accountId
        in: path
        description: The account identifier.
        required: true
        schema:
          type: string
          format: uuid
      - name: channelRequestId
        in: path
        description: The channel request identifier.
        required: true
        schema:
          type: string
          format: uuid
      - name: brandId
        in: path
        description: The brand identifier.
        required: true
        schema:
          type: string
          format: uuid
      - name: agentId
        in: path
        description: The agent identifier.
        required: true
        schema:
          type: string
          format: uuid
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/CM.Platform.Channels.Models.ChannelTypes.GooglesBusinessMessages.LaunchFlow.ApiAgentLaunchSettingsRequest'
          text/json:
            schema:
              $ref: '#/components/schemas/CM.Platform.Channels.Models.ChannelTypes.GooglesBusinessMessages.LaunchFlow.ApiAgentLaunchSettingsRequest'
          text/xml:
            schema:
              $ref: '#/components/schemas/CM.Platform.Channels.Models.ChannelTypes.GooglesBusinessMessages.LaunchFlow.ApiAgentLaunchSettingsRequest'
          multipart/form-data:
            schema:
              $ref: '#/components/schemas/CM.Platform.Channels.Models.ChannelTypes.GooglesBusinessMessages.LaunchFlow.ApiAgentLaunchSettingsRequest'
          application/x-www-form-urlencoded:
            schema:
              $ref: '#/components/schemas/CM.Platform.Channels.Models.ChannelTypes.GooglesBusinessMessages.LaunchFlow.ApiAgentLaunchSettingsRequest'
        description: The request.
        required: true
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/CM.Platform.Channels.Models.ChannelTypes.GooglesBusinessMessages.LaunchFlow.ApiAgentLaunchSettingsResponse'
            text/json:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/CM.Platform.Channels.Models.ChannelTypes.GooglesBusinessMessages.LaunchFlow.ApiAgentLaunchSettingsResponse'
            text/xml:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/CM.Platform.Channels.Models.ChannelTypes.GooglesBusinessMessages.LaunchFlow.ApiAgentLaunchSettingsResponse'
            multipart/form-data:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/CM.Platform.Channels.Models.ChannelTypes.GooglesBusinessMessages.LaunchFlow.ApiAgentLaunchSettingsResponse'
  /channels/v1/accounts/{accountId}/gbm/{channelRequestId}/brands/{brandId}/agents/{agentId}/locations/{locationId}/launch:
    post:
      tags:
      - GooglesBusinessMessages
      summary: Configure the Google's Business Messages Agent Location Launch
      operationId: GooglesBusinessMessages_ConfigureGooglesBusinessMessagesAgentAgentLocationLaunchAsync
      parameters:
      - name: accountId
        in: path
        description: The account identifier.
        required: true
        schema:
          type: string
          format: uuid
      - name: channelRequestId
        in: path
        description: The channel request identifier.
        required: true
        schema:
          type: string
          format: uuid
      - name: brandId
        in: path
        description: The brand identifier.
        required: true
        schema:
          type: string
          format: uuid
      - name: agentId
        in: path
        description: The agent identifier.
        required: true
        schema:
          type: string
          format: uuid
      - name: locationId
        in: path
        description: The location identifier.
        required: true
        schema:
          type: string
          format: uuid
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/CM.Platform.Channels.Models.ChannelTypes.GooglesBusinessMessages.LaunchFlow.ApiAgentLocationLaunchSettingsRequest'
          text/json:
            schema:
              $ref: '#/components/schemas/CM.Platform.Channels.Models.ChannelTypes.GooglesBusinessMessages.LaunchFlow.ApiAgentLocationLaunchSettingsRequest'
          text/xml:
            schema:
              $ref: '#/components/schemas/CM.Platform.Channels.Models.ChannelTypes.GooglesBusinessMessages.LaunchFlow.ApiAgentLocationLaunchSettingsRequest'
          multipart/form-data:
            schema:
              $ref: '#/components/schemas/CM.Platform.Channels.Models.ChannelTypes.GooglesBusinessMessages.LaunchFlow.ApiAgentLocationLaunchSettingsRequest'
          application/x-www-form-urlencoded:
            schema:
              $ref: '#/components/schemas/CM.Platform.Channels.Models.ChannelTypes.GooglesBusinessMessages.LaunchFlow.ApiAgentLocationLaunchSettingsRequest'
        description: The request.
        required: true
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/CM.Platform.Channels.Models.ChannelTypes.GooglesBusinessMessages.LaunchFlow.ApiAgentLocationLaunchSettingsResponse'
            text/json:
              schema:
                $ref: '#/components/schemas/CM.Platform.Channels.Models.ChannelTypes.GooglesBusinessMessages.LaunchFlow.ApiAgentLocationLaunchSettingsResponse'
            text/xml:
              schema:
                $ref: '#/components/schemas/CM.Platform.Channels.Models.ChannelTypes.GooglesBusinessMessages.LaunchFlow.ApiAgentLocationLaunchSettingsResponse'
            multipart/form-data:
              schema:
                $ref: '#/components/schemas/CM.Platform.Channels.Models.ChannelTypes.GooglesBusinessMessages.LaunchFlow.ApiAgentLocationLaunchSettingsResponse'
  /channels/v1/accounts/{accountId}/gbm/{channelRequestId}/brands/{brandId}/agents/{agentId}/locations:
    get:
      tags:
      - GooglesBusinessMessages
      summary: Get Locations linked to a Google's Business Messages Agent
      operationId: GooglesBusinessMessages_GetGooglesBusinessMessagesAgentLocationsAsync
      parameters:
      - name: accountId
        in: path
        description: The account identifier.
        required: true
        schema:
          type: string
          format: uuid
      - name: channelRequestId
        in: path
        description: The channel request identifier.
        required: true
        schema:
          type: string
          format: uuid
      - name: brandId
        in: path
        description: The brand identifier.
        required: true
        schema:
          type: string
          format: uuid
      - name: agentId
        in: path
        description: The agent identifier.
        required: true
        schema:
          type: string
          format: uuid
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/CM.Platform.Channels.Models.ChannelTypes.GooglesBusinessMessages.LaunchFlow.ApiGooglesBusinessMessagesLocation'
            text/json:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/CM.Platform.Channels.Models.ChannelTypes.GooglesBusinessMessages.LaunchFlow.ApiGooglesBusinessMessagesLocation'
            text/xml:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/CM.Platform.Channels.Models.ChannelTypes.GooglesBusinessMessages.LaunchFlow.ApiGooglesBusinessMessagesLocation'
            multipart/form-data:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/CM.Platform.Channels.Models.ChannelTypes.GooglesBusinessMessages.LaunchFlow.ApiGooglesBusinessMessagesLocation'
    post:
      tags:
      - GooglesBusinessMessages
      summary: Create Location for an Google's Business Messages Agent from a Google My Business Location
        Id
      operationId: GooglesBusinessMessages_CreateGooglesBusinessMessagesLocationFromMyBusinessLocationIdAsync
      parameters:
      - name: accountId
        in: path
        description: The account identifier.
        required: true
        schema:
          type: string
          format: uuid
      - name: channelRequestId
        in: path
        description: The channel request identifier.
        required: true
        schema:
          type: string
          format: uuid
      - name: brandId
        in: path
        description: The brand identifier.
        required: true
        schema:
          type: string
          format: uuid
      - name: agentId
        in: path
        description: The agent identifier.
        required: true
        schema:
          type: string
          format: uuid
      - name: myBusinessLocationId
        in: query
        description: My business location identifier.
        required: true
        schema:
          type: string
      requestBody:
        $ref: '#/components/requestBodies/CM.Platform.Channels.Models.ChannelTypes.GooglesBusinessMessages.LaunchFlow.ApiGooglesBusinessMessagesOAuthUserCredentials'
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/CM.Platform.Channels.Models.ChannelTypes.GooglesBusinessMessages.LaunchFlow.ApiGooglesBusinessMessagesLocation'
            text/json:
              schema:
                $ref: '#/components/schemas/CM.Platform.Channels.Models.ChannelTypes.GooglesBusinessMessages.LaunchFlow.ApiGooglesBusinessMessagesLocation'
            text/xml:
              schema:
                $ref: '#/components/schemas/CM.Platform.Channels.Models.ChannelTypes.GooglesBusinessMessages.LaunchFlow.ApiGooglesBusinessMessagesLocation'
            multipart/form-data:
              schema:
                $ref: '#/components/schemas/CM.Platform.Channels.Models.ChannelTypes.GooglesBusinessMessages.LaunchFlow.ApiGooglesBusinessMessagesLocation'
  /channels/v1/accounts/{accountId}/gbm/{channelRequestId}/brands/{brandId}/agents/{agentId}/locations/{locationId}:
    get:
      tags:
      - GooglesBusinessMessages
      summary: Get a Location linked to a Google's Business Messages Agent by ID
      operationId: GooglesBusinessMessages_GetGooglesBusinessMessagesAgentLocationAsync
      parameters:
      - name: accountId
        in: path
        description: The account identifier.
        required: true
        schema:
          type: string
          format: uuid
      - name: channelRequestId
        in: path
        description: The channel request identifier.
        required: true
        schema:
          type: string
          format: uuid
      - name: brandId
        in: path
        description: The brand identifier.
        required: true
        schema:
          type: string
          format: uuid
      - name: agentId
        in: path
        description: The agent identifier.
        required: true
        schema:
          type: string
          format: uuid
      - name: locationId
        in: path
        description: The location identifier.
        required: true
        schema:
          type: string
          format: uuid
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/CM.Platform.Channels.Models.ChannelTypes.GooglesBusinessMessages.LaunchFlow.ApiGooglesBusinessMessagesLocation'
            text/json:
              schema:
                $ref: '#/components/schemas/CM.Platform.Channels.Models.ChannelTypes.GooglesBusinessMessages.LaunchFlow.ApiGooglesBusinessMessagesLocation'
            text/xml:
              schema:
                $ref: '#/components/schemas/CM.Platform.Channels.Models.ChannelTypes.GooglesBusinessMessages.LaunchFlow.ApiGooglesBusinessMessagesLocation'
            multipart/form-data:
              schema:
                $ref: '#/components/schemas/CM.Platform.Channels.Models.ChannelTypes.GooglesBusinessMessages.LaunchFlow.ApiGooglesBusinessMessagesLocation'
    delete:
      tags:
      - GooglesBusinessMessages
      summary: Delete a Location by ID
      operationId: GooglesBusinessMessages_DeleteGooglesBusinessMessagesLocationAsync
      parameters:
      - name: accountId
        in: path
        description: The account identifier.
        required: true
        schema:
          type: string
          format: uuid
      - name: channelRequestId
        in: path
        description: The channel request identifier.
        required: true
        schema:
          type: string
          format: uuid
      - name: brandId
        in: path
        description: The brand identifier.
        required: true
        schema:
          type: string
          format: uuid
      - name: agentId
        in: path
        description: The agent identifier.
        required: true
        schema:
          type: string
          format: uuid
      - name: locationId
        in: path
        description: The location identifier.
        required: true
        schema:
          type: string
          format: uuid
      responses:
        '204':
          description: NoContent
  ? /channels/v1/accounts/{accountId}/gbm/{channelRequestId}/brands/{brandId}/agents/{agentId}/locations/{locationId}/updatecache
  : get:
      tags:
      - GooglesBusinessMessages
      summary: Updates location data cache for a Google's Business Messages Agent Location by ID
      operationId: GooglesBusinessMessages_UpdateGooglesBusinessMessagesAgentLocationDataAsync
      parameters:
      - name: accountId
        in: path
        description: The account identifier.
        required: true
        schema:
          type: string
          format: uuid
      - name: channelRequestId
        in: path
        description: The channel request identifier.
        required: true
        schema:
          type: string
          format: uuid
      - name: brandId
        in: path
        description: The brand identifier.
        required: true
        schema:
          type: string
          format: uuid
      - name: agentId
        in: path
        description: The agent identifier.
        required: true
        schema:
          type: string
          format: uuid
      - name: locationId
        in: path
        description: The location identifier.
        required: true
        schema:
          type: string
          format: uuid
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/CM.Platform.Channels.Models.ChannelTypes.GooglesBusinessMessages.LaunchFlow.ApiGooglesBusinessMessagesLocation'
            text/json:
              schema:
                $ref: '#/components/schemas/CM.Platform.Channels.Models.ChannelTypes.GooglesBusinessMessages.LaunchFlow.ApiGooglesBusinessMessagesLocation'
            text/xml:
              schema:
                $ref: '#/components/schemas/CM.Platform.Channels.Models.ChannelTypes.GooglesBusinessMessages.LaunchFlow.ApiGooglesBusinessMessagesLocation'
            multipart/form-data:
              schema:
                $ref: '#/components/schemas/CM.Platform.Channels.Models.ChannelTypes.GooglesBusinessMessages.LaunchFlow.ApiGooglesBusinessMessagesLocation'
  /channels/v1/accounts/{accountId}/gbm/{channelRequestId}/brands/{brandId}/agents/{agentId}/verify:
    post:
      tags:
      - GooglesBusinessMessages
      summary: Verify a Google's Business Messages Agent
      operationId: GooglesBusinessMessages_VerifyGooglesBusinessMessagesAgentAsync
      parameters:
      - name: accountId
        in: path
        description: The account identifier.
        required: true
        schema:
          type: string
          format: uuid
      - name: channelRequestId
        in: path
        description: The channel request identifier.
        required: true
        schema:
          type: string
          format: uuid
      - name: brandId
        in: path
        description: The brand identifier.
        required: true
        schema:
          type: string
          format: uuid
      - name: agentId
        in: path
        description: The agent identifier.
        required: true
        schema:
          type: string
          format: uuid
      - name: forceManualVerification
        in: query
        description: if set to true [force manual verification].
        required: false
        schema:
          type: boolean
      requestBody:
        $ref: '#/components/requestBodies/CM.Platform.Channels.Models.ChannelTypes.GooglesBusinessMessages.LaunchFlow.ApiGooglesBusinessMessagesOAuthUserCredentials'
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/CM.Platform.Channels.Models.ChannelTypes.GooglesBusinessMessages.ApiGooglesBusinessMessagesAgent'
            text/json:
              schema:
                $ref: '#/components/schemas/CM.Platform.Channels.Models.ChannelTypes.GooglesBusinessMessages.ApiGooglesBusinessMessagesAgent'
            text/xml:
              schema:
                $ref: '#/components/schemas/CM.Platform.Channels.Models.ChannelTypes.GooglesBusinessMessages.ApiGooglesBusinessMessagesAgent'
            multipart/form-data:
              schema:
                $ref: '#/components/schemas/CM.Platform.Channels.Models.ChannelTypes.GooglesBusinessMessages.ApiGooglesBusinessMessagesAgent'
    delete:
      tags:
      - GooglesBusinessMessages
      summary: Cancel the Google's Business Messages Agent Verification Request
      operationId: GooglesBusinessMessages_CancelGooglesBusinessMessagesAgentAsync
      parameters:
      - name: accountId
        in: path
        description: The account identifier.
        required: true
        schema:
          type: string
          format: uuid
      - name: channelRequestId
        in: path
        description: The channel request identifier.
        required: true
        schema:
          type: string
          format: uuid
      - name: brandId
        in: path
        description: The brand identifier.
        required: true
        schema:
          type: string
          format: uuid
      - name: agentId
        in: path
        description: The agent identifier.
        required: true
        schema:
          type: string
          format: uuid
      responses:
        '204':
          description: NoContent
  /channels/v1/accounts/{accountId}/gbm/{channelRequestId}/brands/{brandId}/agents/{agentId}/locations/{locationId}/verify:
    post:
      tags:
      - GooglesBusinessMessages
      summary: Verify a Google's Business Messages Location
      operationId: GooglesBusinessMessages_VerifyGooglesBusinessMessagesAgentLocationAsync
      parameters:
      - name: accountId
        in: path
        description: The account identifier.
        required: true
        schema:
          type: string
          format: uuid
      - name: channelRequestId
        in: path
        description: The channel request identifier.
        required: true
        schema:
          type: string
          format: uuid
      - name: brandId
        in: path
        description: The brand identifier.
        required: true
        schema:
          type: string
          format: uuid
      - name: agentId
        in: path
        description: The agent identifier.
        required: true
        schema:
          type: string
          format: uuid
      - name: locationId
        in: path
        description: The location identifier.
        required: true
        schema:
          type: string
          format: uuid
      requestBody:
        $ref: '#/components/requestBodies/CM.Platform.Channels.Models.ChannelTypes.GooglesBusinessMessages.LaunchFlow.ApiGooglesBusinessMessagesOAuthUserCredentials'
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/CM.Platform.Channels.Models.ChannelTypes.GooglesBusinessMessages.LaunchFlow.ApiGooglesBusinessMessagesLocation'
            text/json:
              schema:
                $ref: '#/components/schemas/CM.Platform.Channels.Models.ChannelTypes.GooglesBusinessMessages.LaunchFlow.ApiGooglesBusinessMessagesLocation'
            text/xml:
              schema:
                $ref: '#/components/schemas/CM.Platform.Channels.Models.ChannelTypes.GooglesBusinessMessages.LaunchFlow.ApiGooglesBusinessMessagesLocation'
            multipart/form-data:
              schema:
                $ref: '#/components/schemas/CM.Platform.Channels.Models.ChannelTypes.GooglesBusinessMessages.LaunchFlow.ApiGooglesBusinessMessagesLocation'
  /channels/v1/accounts/{accountId}/gbm/{channelRequestId}/brands:
    get:
      tags:
      - GooglesBusinessMessages
      summary: Get all Google's Business Messages Brands
      operationId: GooglesBusinessMessages_GetGooglesBusinessMessagesBrandsAsync
      parameters:
      - name: accountId
        in: path
        description: The account identifier.
        required: true
        schema:
          type: string
          format: uuid
      - name: channelRequestId
        in: path
        description: The channel request identifier.
        required: true
        schema:
          type: string
          format: uuid
      - name: q
        in: query
        description: The q.
        required: false
        schema:
          type: string
      - name: status
        in: query
        description: The status.
        required: false
        explode: true
        schema:
          type: array
          items:
            type: string
            enum:
            - ACTIVE
            - PENDING
            - ELIGIBLE
            - NOT_VALIDATED
            - CUSTOMER_ACTION_REQUIRED
            - EXPIRED
            - REJECTED
            - CANCELLED
            - DELETED
      - name: skip
        in: query
        description: The skip.
        required: false
        schema:
          type: integer
          format: int32
      - name: take
        in: query
        description: The take.
        required: false
        schema:
          type: integer
          format: int32
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/CM.Platform.Channels.Models.ChannelTypes.GooglesBusinessMessages.ApiGooglesBusinessMessagesBrandBase'
            text/json:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/CM.Platform.Channels.Models.ChannelTypes.GooglesBusinessMessages.ApiGooglesBusinessMessagesBrandBase'
    post:
      tags:
      - GooglesBusinessMessages
      summary: Add a new Google's Business Messages Brand
      operationId: GooglesBusinessMessages_AddGooglesBusinessMessagesBrandAsync
      parameters:
      - name: accountId
        in: path
        description: The account identifier.
        required: true
        schema:
          type: string
          format: uuid
      - name: channelRequestId
        in: path
        description: The channel request identifier.
        required: true
        schema:
          type: string
          format: uuid
      requestBody:
        $ref: '#/components/requestBodies/CM.Platform.Channels.Models.RequestForms.ApiRequestFormInputRequestArray'
      responses:
        '201':
          description: Created
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/CM.Platform.Channels.Models.ChannelTypes.GooglesBusinessMessages.ApiGooglesBusinessMessagesBrand'
            text/json:
              schema:
                $ref: '#/components/schemas/CM.Platform.Channels.Models.ChannelTypes.GooglesBusinessMessages.ApiGooglesBusinessMessagesBrand'
            text/xml:
              schema:
                $ref: '#/components/schemas/CM.Platform.Channels.Models.ChannelTypes.GooglesBusinessMessages.ApiGooglesBusinessMessagesBrand'
            multipart/form-data:
              schema:
                $ref: '#/components/schemas/CM.Platform.Channels.Models.ChannelTypes.GooglesBusinessMessages.ApiGooglesBusinessMessagesBrand'
  /channels/v1/accounts/{accountId}/gbm/{channelRequestId}/brands/{brandId}:
    get:
      tags:
      - GooglesBusinessMessages
      summary: Get a Google's Business Messages Brand by ID
      operationId: GooglesBusinessMessages_GetGooglesBusinessMessagesBrandAsync
      parameters:
      - name: accountId
        in: path
        description: The account identifier.
        required: true
        schema:
          type: string
          format: uuid
      - name: channelRequestId
        in: path
        description: The channel request identifier.
        required: true
        schema:
          type: string
          format: uuid
      - name: brandId
        in: path
        description: The brand identifier.
        required: true
        schema:
          type: string
          format: uuid
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/CM.Platform.Channels.Models.ChannelTypes.GooglesBusinessMessages.ApiGooglesBusinessMessagesBrand'
            text/json:
              schema:
                $ref: '#/components/schemas/CM.Platform.Channels.Models.ChannelTypes.GooglesBusinessMessages.ApiGooglesBusinessMessagesBrand'
            text/xml:
              schema:
                $ref: '#/components/schemas/CM.Platform.Channels.Models.ChannelTypes.GooglesBusinessMessages.ApiGooglesBusinessMessagesBrand'
            multipart/form-data:
              schema:
                $ref: '#/components/schemas/CM.Platform.Channels.Models.ChannelTypes.GooglesBusinessMessages.ApiGooglesBusinessMessagesBrand'
    delete:
      tags:
      - GooglesBusinessMessages
      summary: Delete a Google's Business Messages Brand
      operationId: GooglesBusinessMessages_DeleteGooglesBusinessMessagesBrandAsync
      parameters:
      - name: accountId
        in: path
        description: The account identifier.
        required: true
        schema:
          type: string
          format: uuid
      - name: channelRequestId
        in: path
        description: The channel request identifier.
        required: true
        schema:
          type: string
          format: uuid
      - name: brandId
        in: path
        description: The brand identifier.
        required: true
        schema:
          type: string
          format: uuid
      responses:
        '204':
          description: NoContent
  /channels/v1/accounts/{accountId}/gbm/{channelRequestId}/brands/{brandId}/forminput:
    get:
      tags:
      - GooglesBusinessMessages
      summary: Gets the Google's Business Messages Brand form input
      operationId: GooglesBusinessMessages_GetGooglesBusinessMessagesBrandFormInputAsync
      parameters:
      - name: accountId
        in: path
        description: The account identifier.
        required: true
        schema:
          type: string
          format: uuid
      - name: channelRequestId
        in: path
        description: The channel request identifier.
        required: true
        schema:
          type: string
          format: uuid
      - name: brandId
        in: path
        description: The brand identifier.
        required: true
        schema:
          type: string
          format: uuid
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/CM.Platform.Channels.Models.RequestForms.ApiChannelRequestFormInputResponse'
            text/json:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/CM.Platform.Channels.Models.RequestForms.ApiChannelRequestFormInputResponse'
            text/xml:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/CM.Platform.Channels.Models.RequestForms.ApiChannelRequestFormInputResponse'
            multipart/form-data:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/CM.Platform.Channels.Models.RequestForms.ApiChannelRequestFormInputResponse'
    put:
      tags:
      - GooglesBusinessMessages
      summary: Adds the Google's Business Messages Brand form input
      operationId: GooglesBusinessMessages_AddGooglesBusinessMessagesBrandFormInputAsync
      parameters:
      - name: accountId
        in: path
        description: The account identifier.
        required: true
        schema:
          type: string
          format: uuid
      - name: channelRequestId
        in: path
        description: The channel request identifier.
        required: true
        schema:
          type: string
          format: uuid
      - name: brandId
        in: path
        description: The brand identifier.
        required: true
        schema:
          type: string
          format: uuid
      requestBody:
        $ref: '#/components/requestBodies/CM.Platform.Channels.Models.RequestForms.ApiRequestFormInputRequestArray'
      responses:
        '202':
          description: Accepted
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/CM.Platform.Channels.Models.ChannelTypes.GooglesBusinessMessages.ApiGooglesBusinessMessagesBrand'
            text/json:
              schema:
                $ref: '#/components/schemas/CM.Platform.Channels.Models.ChannelTypes.GooglesBusinessMessages.ApiGooglesBusinessMessagesBrand'
            text/xml:
              schema:
                $ref: '#/components/schemas/CM.Platform.Channels.Models.ChannelTypes.GooglesBusinessMessages.ApiGooglesBusinessMessagesBrand'
            multipart/form-data:
              schema:
                $ref: '#/components/schemas/CM.Platform.Channels.Models.ChannelTypes.GooglesBusinessMessages.ApiGooglesBusinessMessagesBrand'
  /channels/v1/accounts/{accountId}/gbm/{channelRequestId}/account:
    get:
      tags:
      - GooglesBusinessMessages
      summary: Get a Google's Business Messages Account
      operationId: GooglesBusinessMessages_GetGooglesBusinessMessagesAccountAsync
      parameters:
      - name: accountId
        in: path
        description: The account identifier.
        required: true
        schema:
          type: string
          format: uuid
      - name: channelRequestId
        in: path
        description: The channel request identifier.
        required: true
        schema:
          type: string
          format: uuid
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/CM.Platform.Channels.Models.ChannelTypes.GooglesBusinessMessages.ApiGooglesBusinessMessagesAccount'
            text/json:
              schema:
                $ref: '#/components/schemas/CM.Platform.Channels.Models.ChannelTypes.GooglesBusinessMessages.ApiGooglesBusinessMessagesAccount'
            text/xml:
              schema:
                $ref: '#/components/schemas/CM.Platform.Channels.Models.ChannelTypes.GooglesBusinessMessages.ApiGooglesBusinessMessagesAccount'
            multipart/form-data:
              schema:
                $ref: '#/components/schemas/CM.Platform.Channels.Models.ChannelTypes.GooglesBusinessMessages.ApiGooglesBusinessMessagesAccount'
    post:
      tags:
      - GooglesBusinessMessages
      summary: Adds a Google's Business Messages Account
      operationId: GooglesBusinessMessages_AddGooglesBusinessMessagesAccountAsync
      parameters:
      - name: accountId
        in: path
        description: The account identifier.
        required: true
        schema:
          type: string
          format: uuid
      - name: channelRequestId
        in: path
        description: The channel request identifier.
        required: true
        schema:
          type: string
          format: uuid
      responses:
        '201':
          description: Created
  /channels/v1/accounts/{accountId}/gbm/{channelRequestId}/account/forminput:
    get:
      tags:
      - GooglesBusinessMessages
      summary: Get the form input for a Google's Business Messages Account
      operationId: GooglesBusinessMessages_GetGooglesBusinessMessagesAccountFormInputAsync
      parameters:
      - name: accountId
        in: path
        description: The account identifier.
        required: true
        schema:
          type: string
          format: uuid
      - name: channelRequestId
        in: path
        description: The channel request identifier.
        required: true
        schema:
          type: string
          format: uuid
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/CM.Platform.Channels.Models.RequestForms.ApiChannelRequestFormInputResponse'
            text/json:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/CM.Platform.Channels.Models.RequestForms.ApiChannelRequestFormInputResponse'
            text/xml:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/CM.Platform.Channels.Models.RequestForms.ApiChannelRequestFormInputResponse'
            multipart/form-data:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/CM.Platform.Channels.Models.RequestForms.ApiChannelRequestFormInputResponse'
    put:
      tags:
      - GooglesBusinessMessages
      summary: Adds the Google's Business Messages Account form input
      operationId: GooglesBusinessMessages_AddGooglesBusinessMessagesAccountFormInputAsync
      parameters:
      - name: accountId
        in: path
        description: The account identifier.
        required: true
        schema:
          type: string
          format: uuid
      - name: channelRequestId
        in: path
        description: The channel request identifier.
        required: true
        schema:
          type: string
          format: uuid
      requestBody:
        $ref: '#/components/requestBodies/CM.Platform.Channels.Models.RequestForms.ApiRequestFormInputRequestArray'
      responses:
        '202':
          description: Accepted
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/CM.Platform.Channels.Models.ChannelTypes.GooglesBusinessMessages.ApiGooglesBusinessMessagesAccount'
            text/json:
              schema:
                $ref: '#/components/schemas/CM.Platform.Channels.Models.ChannelTypes.GooglesBusinessMessages.ApiGooglesBusinessMessagesAccount'
            text/xml:
              schema:
                $ref: '#/components/schemas/CM.Platform.Channels.Models.ChannelTypes.GooglesBusinessMessages.ApiGooglesBusinessMessagesAccount'
            multipart/form-data:
              schema:
                $ref: '#/components/schemas/CM.Platform.Channels.Models.ChannelTypes.GooglesBusinessMessages.ApiGooglesBusinessMessagesAccount'
  /channels/v1/accounts/{accountId}/gbm/{channelRequestId}/oauth:
    get:
      tags:
      - GooglesBusinessMessages
      summary: Convert the Google OAuth Authorization Code into a OAuth Access Token Object
      operationId: GooglesBusinessMessages_ConvertGoogleOAuthAuthorizationCodeToOAuthAccessTokenAsync
      parameters:
      - name: accountId
        in: path
        description: The account identifier.
        required: true
        schema:
          type: string
          format: uuid
      - name: channelRequestId
        in: path
        description: The channel request identifier.
        required: true
        schema:
          type: string
          format: uuid
      - name: oAuthAuthorizationCode
        in: query
        description: The o authentication authorization code.
        required: true
        schema:
          type: string
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/CM.Platform.Channels.Models.ChannelTypes.GooglesBusinessMessages.LaunchFlow.ApiGooglesBusinessMessagesOAuthUserCredentials'
            text/json:
              schema:
                $ref: '#/components/schemas/CM.Platform.Channels.Models.ChannelTypes.GooglesBusinessMessages.LaunchFlow.ApiGooglesBusinessMessagesOAuthUserCredentials'
            text/xml:
              schema:
                $ref: '#/components/schemas/CM.Platform.Channels.Models.ChannelTypes.GooglesBusinessMessages.LaunchFlow.ApiGooglesBusinessMessagesOAuthUserCredentials'
            multipart/form-data:
              schema:
                $ref: '#/components/schemas/CM.Platform.Channels.Models.ChannelTypes.GooglesBusinessMessages.LaunchFlow.ApiGooglesBusinessMessagesOAuthUserCredentials'
  /channels/v1/accounts/{accountId}/gbm/{channelRequestId}/mybusiness/accounts:
    post:
      tags:
      - GooglesBusinessMessages
      summary: Get all Google My Business Accounts that the supplied OAuth Credential has access to
      operationId: GooglesBusinessMessages_GetGoogleMyBusinessAccountsAsync
      parameters:
      - name: accountId
        in: path
        description: The account identifier.
        required: true
        schema:
          type: string
          format: uuid
      - name: channelRequestId
        in: path
        description: The channel request identifier.
        required: true
        schema:
          type: string
          format: uuid
      requestBody:
        $ref: '#/components/requestBodies/CM.Platform.Channels.Models.ChannelTypes.GooglesBusinessMessages.LaunchFlow.ApiGooglesBusinessMessagesOAuthUserCredentials'
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/CM.Platform.Channels.Models.ChannelTypes.GooglesBusinessMessages.LaunchFlow.ApiGoogleMyBusinessAccount'
            text/json:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/CM.Platform.Channels.Models.ChannelTypes.GooglesBusinessMessages.LaunchFlow.ApiGoogleMyBusinessAccount'
            text/xml:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/CM.Platform.Channels.Models.ChannelTypes.GooglesBusinessMessages.LaunchFlow.ApiGoogleMyBusinessAccount'
            multipart/form-data:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/CM.Platform.Channels.Models.ChannelTypes.GooglesBusinessMessages.LaunchFlow.ApiGoogleMyBusinessAccount'
  /channels/v1/accounts/{accountId}/gbm/{channelRequestId}/mybusiness/accounts/{myBusinessAccountId}/locations:
    post:
      tags:
      - GooglesBusinessMessages
      summary: Get all Google My Business Locations from a Google My Business Account that the supplied
        OAuth Credential has access to
      operationId: GooglesBusinessMessages_GetGoogleMyBusinessLocationsFromMyBusinessAccountIdAsync
      parameters:
      - name: accountId
        in: path
        description: The account identifier.
        required: true
        schema:
          type: string
          format: uuid
      - name: channelRequestId
        in: path
        description: The channel request identifier.
        required: true
        schema:
          type: string
          format: uuid
      - name: myBusinessAccountId
        in: path
        description: My business account identifier.
        required: true
        schema:
          type: string
      - name: brandId
        in: query
        description: The brand identifier.
        required: true
        schema:
          type: string
          format: uuid
      requestBody:
        $ref: '#/components/requestBodies/CM.Platform.Channels.Models.ChannelTypes.GooglesBusinessMessages.LaunchFlow.ApiGooglesBusinessMessagesOAuthUserCredentials'
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/CM.Platform.Channels.Models.ChannelTypes.GooglesBusinessMessages.LaunchFlow.ApiGoogleMyBusinessLocation'
            text/json:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/CM.Platform.Channels.Models.ChannelTypes.GooglesBusinessMessages.LaunchFlow.ApiGoogleMyBusinessLocation'
            text/xml:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/CM.Platform.Channels.Models.ChannelTypes.GooglesBusinessMessages.LaunchFlow.ApiGoogleMyBusinessLocation'
            multipart/form-data:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/CM.Platform.Channels.Models.ChannelTypes.GooglesBusinessMessages.LaunchFlow.ApiGoogleMyBusinessLocation'
  /channels/v1/accounts/{accountId}/instagram/{channelRequestId}/connections:
    get:
      tags:
      - Instagram
      summary: Get Instagram connections.
      operationId: Instagram_GetInstagramConnectionsAsync
      parameters:
      - name: accountId
        in: path
        description: The account identifier.
        required: true
        schema:
          type: string
          format: uuid
      - name: channelRequestId
        in: path
        description: The channel request identifier.
        required: true
        schema:
          type: string
          format: uuid
      - name: q
        in: query
        description: The q.
        required: false
        schema:
          type: string
      - name: status
        in: query
        description: The status.
        required: false
        explode: true
        schema:
          type: array
          items:
            type: string
            enum:
            - ACTIVE
            - PENDING
            - ELIGIBLE
            - NOT_VALIDATED
            - CUSTOMER_ACTION_REQUIRED
            - EXPIRED
            - REJECTED
            - CANCELLED
            - DELETED
      - name: skip
        in: query
        description: The skip.
        required: false
        schema:
          type: integer
          format: int32
      - name: take
        in: query
        description: The take.
        required: false
        schema:
          type: integer
          format: int32
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/CM.Platform.Channels.Models.ChannelTypes.Instagram.ApiInstagramConnectionBase'
            text/json:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/CM.Platform.Channels.Models.ChannelTypes.Instagram.ApiInstagramConnectionBase'
    put:
      tags:
      - Instagram
      summary: Update (a) Instagram connection(s) by processing a dialog session code.
      operationId: Instagram_ProcessInstagramConnectionSessionCodeAsync
      parameters:
      - name: accountId
        in: path
        description: The account identifier.
        required: true
        schema:
          type: string
          format: uuid
      - name: channelRequestId
        in: path
        description: The channel request identifier.
        required: true
        schema:
          type: string
          format: uuid
      - name: sessionCode
        in: query
        description: The session code.
        required: true
        schema:
          type: string
      responses:
        '204':
          description: NoContent
  /channels/v1/accounts/{accountId}/instagram/{channelRequestId}/connections/{connectionId}:
    get:
      tags:
      - Instagram
      summary: Get a Instagram connection.
      operationId: Instagram_GetInstagramConnectionAsync
      parameters:
      - name: accountId
        in: path
        description: The account identifier.
        required: true
        schema:
          type: string
          format: uuid
      - name: channelRequestId
        in: path
        description: The channel request identifier.
        required: true
        schema:
          type: string
          format: uuid
      - name: connectionId
        in: path
        description: The connection identifier.
        required: true
        schema:
          type: string
          format: uuid
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/CM.Platform.Channels.Models.ChannelTypes.Instagram.ApiInstagramConnection'
            text/json:
              schema:
                $ref: '#/components/schemas/CM.Platform.Channels.Models.ChannelTypes.Instagram.ApiInstagramConnection'
            text/xml:
              schema:
                $ref: '#/components/schemas/CM.Platform.Channels.Models.ChannelTypes.Instagram.ApiInstagramConnection'
            multipart/form-data:
              schema:
                $ref: '#/components/schemas/CM.Platform.Channels.Models.ChannelTypes.Instagram.ApiInstagramConnection'
  /channels/v1/accounts/{accountId}/instagram/{channelRequestId}/account:
    get:
      tags:
      - Instagram
      summary: Get a Instagram account.
      operationId: Instagram_GetInstagramAccountAsync
      parameters:
      - name: accountId
        in: path
        description: The account identifier.
        required: true
        schema:
          type: string
          format: uuid
      - name: channelRequestId
        in: path
        description: The channel request identifier.
        required: true
        schema:
          type: string
          format: uuid
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/CM.Platform.Channels.Models.ChannelTypes.Instagram.ApiInstagramAccount'
            text/json:
              schema:
                $ref: '#/components/schemas/CM.Platform.Channels.Models.ChannelTypes.Instagram.ApiInstagramAccount'
            text/xml:
              schema:
                $ref: '#/components/schemas/CM.Platform.Channels.Models.ChannelTypes.Instagram.ApiInstagramAccount'
            multipart/form-data:
              schema:
                $ref: '#/components/schemas/CM.Platform.Channels.Models.ChannelTypes.Instagram.ApiInstagramAccount'
    post:
      tags:
      - Instagram
      summary: Adds a Instagram account.
      operationId: Instagram_AddInstagramAccountAsync
      parameters:
      - name: accountId
        in: path
        description: The account identifier.
        required: true
        schema:
          type: string
          format: uuid
      - name: channelRequestId
        in: path
        description: The channel request identifier.
        required: true
        schema:
          type: string
          format: uuid
      responses:
        '201':
          description: Created
  /channels/v1/accounts/{accountId}/instagram/{channelRequestId}/account/forminput:
    get:
      tags:
      - Instagram
      summary: Get a Instagram account's form input.
      operationId: Instagram_GetInstagramAccountFormInputAsync
      parameters:
      - name: accountId
        in: path
        description: The account identifier.
        required: true
        schema:
          type: string
          format: uuid
      - name: channelRequestId
        in: path
        description: The channel request identifier.
        required: true
        schema:
          type: string
          format: uuid
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/CM.Platform.Channels.Models.RequestForms.ApiChannelRequestFormInputResponse'
            text/json:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/CM.Platform.Channels.Models.RequestForms.ApiChannelRequestFormInputResponse'
            text/xml:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/CM.Platform.Channels.Models.RequestForms.ApiChannelRequestFormInputResponse'
            multipart/form-data:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/CM.Platform.Channels.Models.RequestForms.ApiChannelRequestFormInputResponse'
  /channels/v1/accounts/{accountId}/instagram/{channelRequestId}/account/{instagramAccountId}/forminput:
    put:
      tags:
      - Instagram
      summary: Adds the instagram account form input asynchronous.
      operationId: Instagram_AddInstagramAccountFormInputAsync
      parameters:
      - name: accountId
        in: path
        description: The account identifier.
        required: true
        schema:
          type: string
          format: uuid
      - name: channelRequestId
        in: path
        description: The channel request identifier.
        required: true
        schema:
          type: string
          format: uuid
      - name: instagramAccountId
        in: path
        description: The instagram account identifier.
        required: true
        schema:
          type: string
          format: uuid
      requestBody:
        $ref: '#/components/requestBodies/CM.Platform.Channels.Models.RequestForms.ApiRequestFormInputRequestArray'
      responses:
        '202':
          description: Accepted
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/CM.Platform.Channels.Models.ChannelTypes.Instagram.ApiInstagramAccount'
            text/json:
              schema:
                $ref: '#/components/schemas/CM.Platform.Channels.Models.ChannelTypes.Instagram.ApiInstagramAccount'
            text/xml:
              schema:
                $ref: '#/components/schemas/CM.Platform.Channels.Models.ChannelTypes.Instagram.ApiInstagramAccount'
            multipart/form-data:
              schema:
                $ref: '#/components/schemas/CM.Platform.Channels.Models.ChannelTypes.Instagram.ApiInstagramAccount'
  /channels/v1/accounts/{accountId}/keywords:
    get:
      tags:
      - Keywords
      summary: Get all claimed keywords (paginated).
      operationId: Keywords_GetKeywordClaimsAsync
      parameters:
      - name: accountId
        in: path
        description: The account identifier.
        required: true
        schema:
          type: string
          format: uuid
      - name: q
        in: query
        description: The query.
        required: false
        schema:
          type: string
      - name: phoneNumber
        in: query
        description: The phone numbers to filter the results on.
        required: false
        explode: true
        schema:
          type: array
          items:
            type: string
      - name: keyword
        in: query
        description: The keywords to filter the results on.
        required: false
        explode: true
        schema:
          type: array
          items:
            type: string
      - name: country
        in: query
        description: The country.
        required: false
        schema:
          type: string
      - name: status
        in: query
        description: The status.
        required: false
        explode: true
        schema:
          type: array
          items:
            type: string
            enum:
            - ACTIVE
            - PENDING
            - ELIGIBLE
            - NOT_VALIDATED
            - CUSTOMER_ACTION_REQUIRED
            - EXPIRED
            - REJECTED
            - CANCELLED
            - DELETED
      - name: skip
        in: query
        description: The skip.
        required: false
        schema:
          type: integer
          format: int32
      - name: take
        in: query
        description: The take.
        required: false
        schema:
          type: integer
          format: int32
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/CM.Platform.Channels.Models.ChannelTypes.Sms.ApiKeywordClaimBase'
            text/json:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/CM.Platform.Channels.Models.ChannelTypes.Sms.ApiKeywordClaimBase'
    post:
      tags:
      - Keywords
      summary: Claim a keyword.
      operationId: Keywords_AddKeywordClaimAsync
      parameters:
      - name: accountId
        in: path
        description: The account identifier.
        required: true
        schema:
          type: string
          format: uuid
      - name: periodicity
        in: query
        description: The periodicity.
        required: true
        schema:
          type: string
          enum:
          - MONTHLY
          - YEARLY
          - NONE
      - name: currency
        in: query
        description: The currency.
        required: false
        schema:
          type: string
      - name: simulate
        in: query
        description: if set to true no actual operations will be performed, but validation will occur.
        required: false
        schema:
          type: boolean
      - name: asIncomingOrderFlow
        in: query
        description: if set to true [as incoming order flow].
        required: false
        schema:
          type: boolean
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/CM.Platform.Channels.Models.ChannelTypes.Sms.ApiKeywordClaimRequest'
          text/json:
            schema:
              $ref: '#/components/schemas/CM.Platform.Channels.Models.ChannelTypes.Sms.ApiKeywordClaimRequest'
          text/xml:
            schema:
              $ref: '#/components/schemas/CM.Platform.Channels.Models.ChannelTypes.Sms.ApiKeywordClaimRequest'
          multipart/form-data:
            schema:
              $ref: '#/components/schemas/CM.Platform.Channels.Models.ChannelTypes.Sms.ApiKeywordClaimRequest'
          application/x-www-form-urlencoded:
            schema:
              $ref: '#/components/schemas/CM.Platform.Channels.Models.ChannelTypes.Sms.ApiKeywordClaimRequest'
        description: The claim.
        required: true
      responses:
        '201':
          description: Created
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/CM.Platform.Channels.Models.ChannelTypes.Sms.ApiKeywordClaimResponse'
            text/json:
              schema:
                $ref: '#/components/schemas/CM.Platform.Channels.Models.ChannelTypes.Sms.ApiKeywordClaimResponse'
        '204':
          description: NoContent
        '400':
          description: BadRequest
  /channels/v1/accounts/{accountId}/keywords/{keywordClaimId}:
    get:
      tags:
      - Keywords
      summary: Get a keyword claim by id.
      operationId: Keywords_GetKeywordClaimAsync
      parameters:
      - name: accountId
        in: path
        description: The account identifier.
        required: true
        schema:
          type: string
          format: uuid
      - name: keywordClaimId
        in: path
        description: The keyword identifier.
        required: true
        schema:
          type: string
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/CM.Platform.Channels.Models.ChannelTypes.Sms.ApiKeywordClaimResponse'
            text/json:
              schema:
                $ref: '#/components/schemas/CM.Platform.Channels.Models.ChannelTypes.Sms.ApiKeywordClaimResponse'
            text/xml:
              schema:
                $ref: '#/components/schemas/CM.Platform.Channels.Models.ChannelTypes.Sms.ApiKeywordClaimResponse'
            multipart/form-data:
              schema:
                $ref: '#/components/schemas/CM.Platform.Channels.Models.ChannelTypes.Sms.ApiKeywordClaimResponse'
    delete:
      tags:
      - Keywords
      summary: Cancel a keyword claim.
      operationId: Keywords_CancelKeywordClaimAsync
      parameters:
      - name: accountId
        in: path
        description: The account identifier.
        required: true
        schema:
          type: string
          format: uuid
      - name: keywordClaimId
        in: path
        description: The keyword identifier.
        required: true
        schema:
          type: string
      responses:
        '204':
          description: NoContent
  /channels/v1/accounts/{accountId}/line/{channelRequestId}/account:
    get:
      tags:
      - Line
      summary: Get a Line account.
      operationId: Line_GetLineAccountAsync
      parameters:
      - name: accountId
        in: path
        description: The account identifier.
        required: true
        schema:
          type: string
          format: uuid
      - name: channelRequestId
        in: path
        description: The channel request identifier.
        required: true
        schema:
          type: string
          format: uuid
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/CM.Platform.Channels.Models.ChannelTypes.Line.ApiLineAccount'
            text/json:
              schema:
                $ref: '#/components/schemas/CM.Platform.Channels.Models.ChannelTypes.Line.ApiLineAccount'
            text/xml:
              schema:
                $ref: '#/components/schemas/CM.Platform.Channels.Models.ChannelTypes.Line.ApiLineAccount'
            multipart/form-data:
              schema:
                $ref: '#/components/schemas/CM.Platform.Channels.Models.ChannelTypes.Line.ApiLineAccount'
    post:
      tags:
      - Line
      summary: Adds a Line account.
      operationId: Line_AddLineAccountAsync
      parameters:
      - name: accountId
        in: path
        description: The account identifier.
        required: true
        schema:
          type: string
          format: uuid
      - name: channelRequestId
        in: path
        description: The channel request identifier.
        required: true
        schema:
          type: string
          format: uuid
      responses:
        '201':
          description: Created
  /channels/v1/accounts/{accountId}/line/{channelRequestId}/account/forminput:
    get:
      tags:
      - Line
      summary: Get a Line account's form input.
      operationId: Line_GetLineAccountFormInputAsync
      parameters:
      - name: accountId
        in: path
        description: The account identifier.
        required: true
        schema:
          type: string
          format: uuid
      - name: channelRequestId
        in: path
        description: The channel request identifier.
        required: true
        schema:
          type: string
          format: uuid
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/CM.Platform.Channels.Models.RequestForms.ApiChannelRequestFormInputResponse'
            text/json:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/CM.Platform.Channels.Models.RequestForms.ApiChannelRequestFormInputResponse'
            text/xml:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/CM.Platform.Channels.Models.RequestForms.ApiChannelRequestFormInputResponse'
            multipart/form-data:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/CM.Platform.Channels.Models.RequestForms.ApiChannelRequestFormInputResponse'
  /channels/v1/accounts/{accountId}/line/{channelRequestId}/account/{lineAccountId}/forminput:
    put:
      tags:
      - Line
      summary: Adds the Line account form input asynchronous.
      operationId: Line_AddLineAccountFormInputAsync
      parameters:
      - name: accountId
        in: path
        description: The account identifier.
        required: true
        schema:
          type: string
          format: uuid
      - name: channelRequestId
        in: path
        description: The channel request identifier.
        required: true
        schema:
          type: string
          format: uuid
      - name: lineAccountId
        in: path
        description: The line account identifier.
        required: true
        schema:
          type: string
          format: uuid
      requestBody:
        $ref: '#/components/requestBodies/CM.Platform.Channels.Models.RequestForms.ApiRequestFormInputRequestArray'
      responses:
        '202':
          description: Accepted
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/CM.Platform.Channels.Models.ChannelTypes.Line.ApiLineAccount'
            text/json:
              schema:
                $ref: '#/components/schemas/CM.Platform.Channels.Models.ChannelTypes.Line.ApiLineAccount'
            text/xml:
              schema:
                $ref: '#/components/schemas/CM.Platform.Channels.Models.ChannelTypes.Line.ApiLineAccount'
            multipart/form-data:
              schema:
                $ref: '#/components/schemas/CM.Platform.Channels.Models.ChannelTypes.Line.ApiLineAccount'
  /channels/v1/accounts/{accountId}/line/{channelRequestId}/notifyServices:
    get:
      tags:
      - Line
      summary: Gets the line notify services asynchronous.
      operationId: Line_GetLineNotifyServicesAsync
      parameters:
      - name: accountId
        in: path
        description: The account identifier.
        required: true
        schema:
          type: string
          format: uuid
      - name: channelRequestId
        in: path
        description: The channel request identifier.
        required: true
        schema:
          type: string
          format: uuid
      - name: q
        in: query
        description: The q.
        required: false
        schema:
          type: string
      - name: status
        in: query
        description: The status.
        required: false
        explode: true
        schema:
          type: array
          items:
            type: string
            enum:
            - ACTIVE
            - PENDING
            - ELIGIBLE
            - NOT_VALIDATED
            - CUSTOMER_ACTION_REQUIRED
            - EXPIRED
            - REJECTED
            - CANCELLED
            - DELETED
      - name: skip
        in: query
        description: The skip.
        required: false
        schema:
          type: integer
          format: int32
      - name: take
        in: query
        description: The take.
        required: false
        schema:
          type: integer
          format: int32
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/CM.Platform.Channels.Models.ChannelTypes.Line.ApiLineNotifyServiceBase'
            text/json:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/CM.Platform.Channels.Models.ChannelTypes.Line.ApiLineNotifyServiceBase'
    post:
      tags:
      - Line
      summary: Adds the line notify service asynchronous.
      operationId: Line_AddLineNotifyServiceAsync
      parameters:
      - name: accountId
        in: path
        description: The account identifier.
        required: true
        schema:
          type: string
          format: uuid
      - name: channelRequestId
        in: path
        description: The channel request identifier.
        required: true
        schema:
          type: string
          format: uuid
      requestBody:
        $ref: '#/components/requestBodies/CM.Platform.Channels.Models.ChannelTypes.Line.ApiLineNotifyServiceRequest'
      responses:
        '201':
          description: Created
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/CM.Platform.Channels.Models.ChannelTypes.Line.ApiLineNotifyService'
            text/json:
              schema:
                $ref: '#/components/schemas/CM.Platform.Channels.Models.ChannelTypes.Line.ApiLineNotifyService'
  /channels/v1/accounts/{accountId}/line/{channelRequestId}/notifyServices/{notifyServiceId}:
    get:
      tags:
      - Line
      summary: Gets the line notify service asynchronous.
      operationId: Line_GetLineNotifyServiceAsync
      parameters:
      - name: accountId
        in: path
        description: The account identifier.
        required: true
        schema:
          type: string
          format: uuid
      - name: channelRequestId
        in: path
        description: The channel request identifier.
        required: true
        schema:
          type: string
          format: uuid
      - name: notifyServiceId
        in: path
        description: The notify service identifier.
        required: true
        schema:
          type: string
          format: uuid
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/CM.Platform.Channels.Models.ChannelTypes.Line.ApiLineNotifyService'
            text/json:
              schema:
                $ref: '#/components/schemas/CM.Platform.Channels.Models.ChannelTypes.Line.ApiLineNotifyService'
            text/xml:
              schema:
                $ref: '#/components/schemas/CM.Platform.Channels.Models.ChannelTypes.Line.ApiLineNotifyService'
            multipart/form-data:
              schema:
                $ref: '#/components/schemas/CM.Platform.Channels.Models.ChannelTypes.Line.ApiLineNotifyService'
    put:
      tags:
      - Line
      summary: Updates the line notify service asynchronous.
      operationId: Line_UpdateLineNotifyServiceAsync
      parameters:
      - name: accountId
        in: path
        description: The account identifier.
        required: true
        schema:
          type: string
          format: uuid
      - name: channelRequestId
        in: path
        description: The channel request identifier.
        required: true
        schema:
          type: string
          format: uuid
      - name: notifyServiceId
        in: path
        description: The notify service identifier.
        required: true
        schema:
          type: string
          format: uuid
      requestBody:
        $ref: '#/components/requestBodies/CM.Platform.Channels.Models.ChannelTypes.Line.ApiLineNotifyServiceRequest'
      responses:
        '201':
          description: Created
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/CM.Platform.Channels.Models.ChannelTypes.Line.ApiLineNotifyService'
            text/json:
              schema:
                $ref: '#/components/schemas/CM.Platform.Channels.Models.ChannelTypes.Line.ApiLineNotifyService'
            text/xml:
              schema:
                $ref: '#/components/schemas/CM.Platform.Channels.Models.ChannelTypes.Line.ApiLineNotifyService'
            multipart/form-data:
              schema:
                $ref: '#/components/schemas/CM.Platform.Channels.Models.ChannelTypes.Line.ApiLineNotifyService'
    delete:
      tags:
      - Line
      summary: Deletes the line notify service asynchronous.
      operationId: Line_DeleteLineNotifyServiceAsync
      parameters:
      - name: accountId
        in: path
        description: The account identifier.
        required: true
        schema:
          type: string
          format: uuid
      - name: channelRequestId
        in: path
        description: The channel request identifier.
        required: true
        schema:
          type: string
          format: uuid
      - name: notifyServiceId
        in: path
        description: The notify service identifier.
        required: true
        schema:
          type: string
          format: uuid
      responses:
        '204':
          description: NoContent
  /channels/v1/accounts/{accountId}/mobilepush/{channelRequestId}/applications/{mobilePushApplicationId}/android:
    get:
      tags:
      - MobilePush
      summary: Gets the mobile push android application asynchronous.
      operationId: MobilePush_GetMobilePushAndroidApplicationAsync
      parameters:
      - name: accountId
        in: path
        description: The account identifier.
        required: true
        schema:
          type: string
          format: uuid
      - name: channelRequestId
        in: path
        description: The channel request identifier.
        required: true
        schema:
          type: string
          format: uuid
      - name: mobilePushApplicationId
        in: path
        description: The mobile push application identifier.
        required: true
        schema:
          type: string
          format: uuid
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                type: string
            text/json:
              schema:
                type: string
            text/xml:
              schema:
                type: string
            multipart/form-data:
              schema:
                type: string
    put:
      tags:
      - MobilePush
      summary: Updates the mobile push android application asynchronous.
      operationId: MobilePush_UpdateMobilePushAndroidApplicationAsync
      parameters:
      - name: accountId
        in: path
        description: The account identifier.
        required: true
        schema:
          type: string
          format: uuid
      - name: channelRequestId
        in: path
        description: The channel request identifier.
        required: true
        schema:
          type: string
          format: uuid
      - name: mobilePushApplicationId
        in: path
        description: The mobile push application identifier.
        required: true
        schema:
          type: string
          format: uuid
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/CM.Platform.Channels.Models.ChannelTypes.MobilePush.ApiMobilePushAndroidApplication'
          text/json:
            schema:
              $ref: '#/components/schemas/CM.Platform.Channels.Models.ChannelTypes.MobilePush.ApiMobilePushAndroidApplication'
          text/xml:
            schema:
              $ref: '#/components/schemas/CM.Platform.Channels.Models.ChannelTypes.MobilePush.ApiMobilePushAndroidApplication'
          multipart/form-data:
            schema:
              $ref: '#/components/schemas/CM.Platform.Channels.Models.ChannelTypes.MobilePush.ApiMobilePushAndroidApplication'
          application/x-www-form-urlencoded:
            schema:
              $ref: '#/components/schemas/CM.Platform.Channels.Models.ChannelTypes.MobilePush.ApiMobilePushAndroidApplication'
        description: The mobile push android application.
        required: true
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/CM.Platform.Channels.Models.ChannelTypes.MobilePush.ApiMobilePushApplication'
            text/json:
              schema:
                $ref: '#/components/schemas/CM.Platform.Channels.Models.ChannelTypes.MobilePush.ApiMobilePushApplication'
            text/xml:
              schema:
                $ref: '#/components/schemas/CM.Platform.Channels.Models.ChannelTypes.MobilePush.ApiMobilePushApplication'
            multipart/form-data:
              schema:
                $ref: '#/components/schemas/CM.Platform.Channels.Models.ChannelTypes.MobilePush.ApiMobilePushApplication'
    delete:
      tags:
      - MobilePush
      summary: Deletes the mobile push android application asynchronous.
      operationId: MobilePush_DeleteMobilePushAndroidApplicationAsync
      parameters:
      - name: accountId
        in: path
        description: The account identifier.
        required: true
        schema:
          type: string
          format: uuid
      - name: channelRequestId
        in: path
        description: The channel request identifier.
        required: true
        schema:
          type: string
          format: uuid
      - name: mobilePushApplicationId
        in: path
        description: The mobile push application identifier.
        required: true
        schema:
          type: string
          format: uuid
      responses:
        '204':
          description: NoContent
  /channels/v1/accounts/{accountId}/mobilepush/{channelRequestId}/applications:
    get:
      tags:
      - MobilePush
      summary: Gets the mobile push applications asynchronous.
      operationId: MobilePush_GetMobilePushApplicationsAsync
      parameters:
      - name: accountId
        in: path
        description: The account identifier.
        required: true
        schema:
          type: string
          format: uuid
      - name: channelRequestId
        in: path
        description: The channel request identifier.
        required: true
        schema:
          type: string
          format: uuid
      - name: q
        in: query
        description: The q.
        required: false
        schema:
          type: string
      - name: status
        in: query
        description: The status.
        required: false
        explode: true
        schema:
          type: array
          items:
            type: string
            enum:
            - ACTIVE
            - PENDING
            - ELIGIBLE
            - NOT_VALIDATED
            - CUSTOMER_ACTION_REQUIRED
            - EXPIRED
            - REJECTED
            - CANCELLED
            - DELETED
      - name: skip
        in: query
        description: The skip.
        required: false
        schema:
          type: integer
          format: int32
      - name: take
        in: query
        description: The take.
        required: false
        schema:
          type: integer
          format: int32
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/CM.Platform.Channels.Models.ChannelTypes.MobilePush.ApiMobilePushApplicationBase'
            text/json:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/CM.Platform.Channels.Models.ChannelTypes.MobilePush.ApiMobilePushApplicationBase'
    post:
      tags:
      - MobilePush
      summary: Adds the mobile push application asynchronous.
      operationId: MobilePush_AddMobilePushApplicationAsync
      parameters:
      - name: accountId
        in: path
        description: The account identifier.
        required: true
        schema:
          type: string
          format: uuid
      - name: channelRequestId
        in: path
        description: The channel request identifier.
        required: true
        schema:
          type: string
          format: uuid
      requestBody:
        $ref: '#/components/requestBodies/CM.Platform.Channels.Models.ChannelTypes.MobilePush.ApiMobilePushApplicationRequest'
      responses:
        '201':
          description: Created
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/CM.Platform.Channels.Models.ChannelTypes.MobilePush.ApiMobilePushApplication'
            text/json:
              schema:
                $ref: '#/components/schemas/CM.Platform.Channels.Models.ChannelTypes.MobilePush.ApiMobilePushApplication'
  /channels/v1/accounts/{accountId}/mobilepush/{channelRequestId}/applications/{mobilePushApplicationId}:
    get:
      tags:
      - MobilePush
      summary: Gets the mobile push application asynchronous.
      operationId: MobilePush_GetMobilePushApplicationAsync
      parameters:
      - name: accountId
        in: path
        description: The account identifier.
        required: true
        schema:
          type: string
          format: uuid
      - name: channelRequestId
        in: path
        description: The channel request identifier.
        required: true
        schema:
          type: string
          format: uuid
      - name: mobilePushApplicationId
        in: path
        description: The mobile push application identifier.
        required: true
        schema:
          type: string
          format: uuid
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/CM.Platform.Channels.Models.ChannelTypes.MobilePush.ApiMobilePushApplication'
            text/json:
              schema:
                $ref: '#/components/schemas/CM.Platform.Channels.Models.ChannelTypes.MobilePush.ApiMobilePushApplication'
            text/xml:
              schema:
                $ref: '#/components/schemas/CM.Platform.Channels.Models.ChannelTypes.MobilePush.ApiMobilePushApplication'
            multipart/form-data:
              schema:
                $ref: '#/components/schemas/CM.Platform.Channels.Models.ChannelTypes.MobilePush.ApiMobilePushApplication'
    put:
      tags:
      - MobilePush
      summary: Updates the mobile push application asynchronous.
      operationId: MobilePush_UpdateMobilePushApplicationAsync
      parameters:
      - name: accountId
        in: path
        description: The account identifier.
        required: true
        schema:
          type: string
          format: uuid
      - name: channelRequestId
        in: path
        description: The channel request identifier.
        required: true
        schema:
          type: string
          format: uuid
      - name: mobilePushApplicationId
        in: path
        description: The mobile push application identifier.
        required: true
        schema:
          type: string
          format: uuid
      requestBody:
        $ref: '#/components/requestBodies/CM.Platform.Channels.Models.ChannelTypes.MobilePush.ApiMobilePushApplicationRequest'
      responses:
        '201':
          description: Created
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/CM.Platform.Channels.Models.ChannelTypes.MobilePush.ApiMobilePushApplication'
            text/json:
              schema:
                $ref: '#/components/schemas/CM.Platform.Channels.Models.ChannelTypes.MobilePush.ApiMobilePushApplication'
            text/xml:
              schema:
                $ref: '#/components/schemas/CM.Platform.Channels.Models.ChannelTypes.MobilePush.ApiMobilePushApplication'
            multipart/form-data:
              schema:
                $ref: '#/components/schemas/CM.Platform.Channels.Models.ChannelTypes.MobilePush.ApiMobilePushApplication'
    delete:
      tags:
      - MobilePush
      summary: Deletes the mobile push application asynchronous.
      operationId: MobilePush_DeleteMobilePushApplicationAsync
      parameters:
      - name: accountId
        in: path
        description: The account identifier.
        required: true
        schema:
          type: string
          format: uuid
      - name: channelRequestId
        in: path
        description: The channel request identifier.
        required: true
        schema:
          type: string
          format: uuid
      - name: mobilePushApplicationId
        in: path
        description: The mobile push application identifier.
        required: true
        schema:
          type: string
          format: uuid
      responses:
        '204':
          description: NoContent
  /channels/v1/accounts/{accountId}/mobilepush/{channelRequestId}/applications/{mobilePushApplicationId}/ios:
    get:
      tags:
      - MobilePush
      summary: Gets the mobile push ios application asynchronous.
      operationId: MobilePush_GetMobilePushIosApplicationAsync
      parameters:
      - name: accountId
        in: path
        description: The account identifier.
        required: true
        schema:
          type: string
          format: uuid
      - name: channelRequestId
        in: path
        description: The channel request identifier.
        required: true
        schema:
          type: string
          format: uuid
      - name: mobilePushApplicationId
        in: path
        description: The mobile push application identifier.
        required: true
        schema:
          type: string
          format: uuid
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/CM.Platform.Channels.Models.ChannelTypes.MobilePush.ApiMobilePushIosApplication'
            text/json:
              schema:
                $ref: '#/components/schemas/CM.Platform.Channels.Models.ChannelTypes.MobilePush.ApiMobilePushIosApplication'
            text/xml:
              schema:
                $ref: '#/components/schemas/CM.Platform.Channels.Models.ChannelTypes.MobilePush.ApiMobilePushIosApplication'
            multipart/form-data:
              schema:
                $ref: '#/components/schemas/CM.Platform.Channels.Models.ChannelTypes.MobilePush.ApiMobilePushIosApplication'
    put:
      tags:
      - MobilePush
      summary: Updates the mobile push ios application asynchronous.
      operationId: MobilePush_UpdateMobilePushIosApplicationAsync
      parameters:
      - name: accountId
        in: path
        description: The account identifier.
        required: true
        schema:
          type: string
          format: uuid
      - name: channelRequestId
        in: path
        description: The channel request identifier.
        required: true
        schema:
          type: string
          format: uuid
      - name: mobilePushApplicationId
        in: path
        description: The mobile push application identifier.
        required: true
        schema:
          type: string
          format: uuid
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/CM.Platform.Channels.Models.ChannelTypes.MobilePush.ApiMobilePushIosApplication'
          text/json:
            schema:
              $ref: '#/components/schemas/CM.Platform.Channels.Models.ChannelTypes.MobilePush.ApiMobilePushIosApplication'
          text/xml:
            schema:
              $ref: '#/components/schemas/CM.Platform.Channels.Models.ChannelTypes.MobilePush.ApiMobilePushIosApplication'
          multipart/form-data:
            schema:
              $ref: '#/components/schemas/CM.Platform.Channels.Models.ChannelTypes.MobilePush.ApiMobilePushIosApplication'
          application/x-www-form-urlencoded:
            schema:
              $ref: '#/components/schemas/CM.Platform.Channels.Models.ChannelTypes.MobilePush.ApiMobilePushIosApplication'
        description: The mobile push ios application.
        required: true
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/CM.Platform.Channels.Models.ChannelTypes.MobilePush.ApiMobilePushIosApplication'
            text/json:
              schema:
                $ref: '#/components/schemas/CM.Platform.Channels.Models.ChannelTypes.MobilePush.ApiMobilePushIosApplication'
            text/xml:
              schema:
                $ref: '#/components/schemas/CM.Platform.Channels.Models.ChannelTypes.MobilePush.ApiMobilePushIosApplication'
            multipart/form-data:
              schema:
                $ref: '#/components/schemas/CM.Platform.Channels.Models.ChannelTypes.MobilePush.ApiMobilePushIosApplication'
    delete:
      tags:
      - MobilePush
      summary: Deletes the mobile push ios application asynchronous.
      operationId: MobilePush_DeleteMobilePushIosApplicationAsync
      parameters:
      - name: accountId
        in: path
        description: The account identifier.
        required: true
        schema:
          type: string
          format: uuid
      - name: channelRequestId
        in: path
        description: The channel request identifier.
        required: true
        schema:
          type: string
          format: uuid
      - name: mobilePushApplicationId
        in: path
        description: The mobile push application identifier.
        required: true
        schema:
          type: string
          format: uuid
      responses:
        '204':
          description: NoContent
  /channels/v1/accounts/{accountId}/mobilepush/{channelRequestId}/applications/{mobilePushApplicationId}/ios/csr:
    get:
      tags:
      - MobilePush
      summary: Gets the mobile push ios application CSR asynchronous.
      operationId: MobilePush_GetMobilePushIosApplicationCsrAsync
      parameters:
      - name: accountId
        in: path
        description: The account identifier.
        required: true
        schema:
          type: string
          format: uuid
      - name: channelRequestId
        in: path
        description: The channel request identifier.
        required: true
        schema:
          type: string
          format: uuid
      - name: mobilePushApplicationId
        in: path
        description: The mobile push application identifier.
        required: true
        schema:
          type: string
          format: uuid
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                type: object
            text/json:
              schema:
                type: object
            text/xml:
              schema:
                type: object
            multipart/form-data:
              schema:
                type: object
  /channels/v1/accounts/{accountId}/mobilepush/{channelRequestId}/applications/{mobilePushApplicationId}/ios/cert:
    post:
      tags:
      - MobilePush
      summary: Posts the mobile push ios application cert asynchronous.
      operationId: MobilePush_PostMobilePushIosApplicationCertAsync
      parameters:
      - name: accountId
        in: path
        description: The account identifier.
        required: true
        schema:
          type: string
          format: uuid
      - name: channelRequestId
        in: path
        description: The channel request identifier.
        required: true
        schema:
          type: string
          format: uuid
      - name: mobilePushApplicationId
        in: path
        description: The mobile push application identifier.
        required: true
        schema:
          type: string
          format: uuid
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/CM.Platform.Channels.Models.ChannelTypes.MobilePush.ApiMobilePushIosApplication'
            text/json:
              schema:
                $ref: '#/components/schemas/CM.Platform.Channels.Models.ChannelTypes.MobilePush.ApiMobilePushIosApplication'
            text/xml:
              schema:
                $ref: '#/components/schemas/CM.Platform.Channels.Models.ChannelTypes.MobilePush.ApiMobilePushIosApplication'
            multipart/form-data:
              schema:
                $ref: '#/components/schemas/CM.Platform.Channels.Models.ChannelTypes.MobilePush.ApiMobilePushIosApplication'
  /channels/v1/accounts/{accountId}/mobilepush/{channelRequestId}/account:
    get:
      tags:
      - MobilePush
      summary: "ø\r\n            Gets the mobile push account asynchronous."
      operationId: MobilePush_GetMobilePushAccountAsync
      parameters:
      - name: accountId
        in: path
        description: The account identifier.
        required: true
        schema:
          type: string
          format: uuid
      - name: channelRequestId
        in: path
        description: The channel request identifier.
        required: true
        schema:
          type: string
          format: uuid
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/CM.Platform.Channels.Models.ChannelTypes.MobilePush.ApiMobilePushAccount'
            text/json:
              schema:
                $ref: '#/components/schemas/CM.Platform.Channels.Models.ChannelTypes.MobilePush.ApiMobilePushAccount'
            text/xml:
              schema:
                $ref: '#/components/schemas/CM.Platform.Channels.Models.ChannelTypes.MobilePush.ApiMobilePushAccount'
            multipart/form-data:
              schema:
                $ref: '#/components/schemas/CM.Platform.Channels.Models.ChannelTypes.MobilePush.ApiMobilePushAccount'
    post:
      tags:
      - MobilePush
      summary: Adds the mobile push account asynchronous.
      operationId: MobilePush_AddMobilePushAccountAsync
      parameters:
      - name: accountId
        in: path
        description: The account identifier.
        required: true
        schema:
          type: string
          format: uuid
      - name: channelRequestId
        in: path
        description: The channel request identifier.
        required: true
        schema:
          type: string
          format: uuid
      responses:
        '201':
          description: Created
  /channels/v1/accounts/{accountId}/mobilepush/{channelRequestId}/account/forminput:
    get:
      tags:
      - MobilePush
      summary: Gets the mobile push account form input asynchronous.
      operationId: MobilePush_GetMobilePushAccountFormInputAsync
      parameters:
      - name: accountId
        in: path
        description: The account identifier.
        required: true
        schema:
          type: string
          format: uuid
      - name: channelRequestId
        in: path
        description: The channel request identifier.
        required: true
        schema:
          type: string
          format: uuid
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/CM.Platform.Channels.Models.RequestForms.ApiChannelRequestFormInputResponse'
            text/json:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/CM.Platform.Channels.Models.RequestForms.ApiChannelRequestFormInputResponse'
            text/xml:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/CM.Platform.Channels.Models.RequestForms.ApiChannelRequestFormInputResponse'
            multipart/form-data:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/CM.Platform.Channels.Models.RequestForms.ApiChannelRequestFormInputResponse'
  /channels/v1/accounts/{accountId}/mobilepush/{channelRequestId}/account/{mobilePushAccountId}/forminput:
    put:
      tags:
      - MobilePush
      summary: Adds the mobile push account form input asynchronous.
      operationId: MobilePush_AddMobilePushAccountFormInputAsync
      parameters:
      - name: accountId
        in: path
        description: The account identifier.
        required: true
        schema:
          type: string
          format: uuid
      - name: channelRequestId
        in: path
        description: The channel request identifier.
        required: true
        schema:
          type: string
          format: uuid
      - name: mobilePushAccountId
        in: path
        description: The mobile push account identifier.
        required: true
        schema:
          type: string
          format: uuid
      requestBody:
        $ref: '#/components/requestBodies/CM.Platform.Channels.Models.RequestForms.ApiRequestFormInputRequestArray'
      responses:
        '202':
          description: Accepted
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/CM.Platform.Channels.Models.ChannelTypes.MobilePush.ApiMobilePushAccount'
            text/json:
              schema:
                $ref: '#/components/schemas/CM.Platform.Channels.Models.ChannelTypes.MobilePush.ApiMobilePushAccount'
            text/xml:
              schema:
                $ref: '#/components/schemas/CM.Platform.Channels.Models.ChannelTypes.MobilePush.ApiMobilePushAccount'
            multipart/form-data:
              schema:
                $ref: '#/components/schemas/CM.Platform.Channels.Models.ChannelTypes.MobilePush.ApiMobilePushAccount'
  /channels/v1/organizations/{organizationCrmId}:
    get:
      tags:
      - Organizations
      summary: Get an organization.
      operationId: Organizations_GetOrganizationAsync
      parameters:
      - name: organizationCrmId
        in: path
        description: The organization identifier.
        required: true
        schema:
          type: integer
          format: int32
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/CM.Platform.Channels.Models.Organizations.ApiOrganizationConfiguration'
            text/json:
              schema:
                $ref: '#/components/schemas/CM.Platform.Channels.Models.Organizations.ApiOrganizationConfiguration'
            text/xml:
              schema:
                $ref: '#/components/schemas/CM.Platform.Channels.Models.Organizations.ApiOrganizationConfiguration'
            multipart/form-data:
              schema:
                $ref: '#/components/schemas/CM.Platform.Channels.Models.Organizations.ApiOrganizationConfiguration'
  /channels/v1/organizations/{organizationCrmId}/accounts:
    get:
      tags:
      - Organizations
      summary: Get an organization's accounts.
      operationId: Organizations_GetOrganizationAccountsAsync
      parameters:
      - name: organizationCrmId
        in: path
        description: The organization CRM identifier.
        required: true
        schema:
          type: integer
          format: int32
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/CM.Platform.Channels.Models.Organizations.ApiOrganizationAccount'
            text/json:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/CM.Platform.Channels.Models.Organizations.ApiOrganizationAccount'
            text/xml:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/CM.Platform.Channels.Models.Organizations.ApiOrganizationAccount'
            multipart/form-data:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/CM.Platform.Channels.Models.Organizations.ApiOrganizationAccount'
    post:
      tags:
      - Organizations
      summary: Create an organization account.
      operationId: Organizations_CreateOrganizationAccountAsync
      parameters:
      - name: organizationCrmId
        in: path
        description: The organization CRM identifier.
        required: true
        schema:
          type: integer
          format: int32
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/CM.Platform.Channels.Models.Organizations.ApiOrganizationAccountRequest'
          text/json:
            schema:
              $ref: '#/components/schemas/CM.Platform.Channels.Models.Organizations.ApiOrganizationAccountRequest'
          text/xml:
            schema:
              $ref: '#/components/schemas/CM.Platform.Channels.Models.Organizations.ApiOrganizationAccountRequest'
          multipart/form-data:
            schema:
              $ref: '#/components/schemas/CM.Platform.Channels.Models.Organizations.ApiOrganizationAccountRequest'
          application/x-www-form-urlencoded:
            schema:
              $ref: '#/components/schemas/CM.Platform.Channels.Models.Organizations.ApiOrganizationAccountRequest'
        description: The account request.
        required: true
      responses:
        '201':
          description: Created
  /channels/v1/accounts/{accountId}/payments/{channelRequestId}/credentials:
    get:
      tags:
      - Payments
      summary: Gets the payments credentials asynchronous.
      operationId: Payments_GetAllPaymentsCredentialsAsync
      parameters:
      - name: accountId
        in: path
        description: The account identifier.
        required: true
        schema:
          type: string
          format: uuid
      - name: channelRequestId
        in: path
        description: The channel request identifier.
        required: true
        schema:
          type: string
          format: uuid
      - name: status
        in: query
        description: The status.
        required: false
        explode: true
        schema:
          type: array
          items:
            type: string
            enum:
            - ACTIVE
            - PENDING
            - ELIGIBLE
            - NOT_VALIDATED
            - CUSTOMER_ACTION_REQUIRED
            - EXPIRED
            - REJECTED
            - CANCELLED
            - DELETED
      - name: skip
        in: query
        description: The skip.
        required: false
        schema:
          type: integer
          format: int32
      - name: take
        in: query
        description: The take.
        required: false
        schema:
          type: integer
          format: int32
      - name: type
        in: query
        description: The type.
        required: false
        schema:
          type: string
          enum:
          - CMPAYMENTS
          - WEBCHECKOUT
          - IDEALPLATFORM
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/CM.Platform.Channels.Models.ChannelTypes.Payments.ApiPaymentsCredentialsResponse'
            text/json:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/CM.Platform.Channels.Models.ChannelTypes.Payments.ApiPaymentsCredentialsResponse'
    post:
      tags:
      - Payments
      summary: Adds the payments credentials asynchronous.
      operationId: Payments_AddPaymentsCredentialsAsync
      parameters:
      - name: accountId
        in: path
        description: The account identifier.
        required: true
        schema:
          type: string
          format: uuid
      - name: channelRequestId
        in: path
        description: The channel request identifier.
        required: true
        schema:
          type: string
          format: uuid
      requestBody:
        $ref: '#/components/requestBodies/CM.Platform.Channels.Models.ChannelTypes.Payments.ApiPaymentsCredentialsRequest'
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/CM.Platform.Channels.Models.ChannelTypes.Payments.ApiPaymentsCredentialsResponse'
            text/json:
              schema:
                $ref: '#/components/schemas/CM.Platform.Channels.Models.ChannelTypes.Payments.ApiPaymentsCredentialsResponse'
            text/xml:
              schema:
                $ref: '#/components/schemas/CM.Platform.Channels.Models.ChannelTypes.Payments.ApiPaymentsCredentialsResponse'
            multipart/form-data:
              schema:
                $ref: '#/components/schemas/CM.Platform.Channels.Models.ChannelTypes.Payments.ApiPaymentsCredentialsResponse'
  /channels/v1/accounts/{accountId}/payments/{channelRequestId}/credentials/{credentialsId}:
    get:
      tags:
      - Payments
      summary: Gets the payments credentials by identifier asynchronous.
      operationId: Payments_GetPaymentsCredentialsByIdAsync
      parameters:
      - name: accountId
        in: path
        description: The account identifier.
        required: true
        schema:
          type: string
          format: uuid
      - name: channelRequestId
        in: path
        description: The channel request identifier.
        required: true
        schema:
          type: string
          format: uuid
      - name: credentialsId
        in: path
        description: The credentials identifier.
        required: true
        schema:
          type: string
          format: uuid
      - name: withAttributes
        in: query
        description: Flag to ask for the Credentials Attributes.
        required: false
        schema:
          type: boolean
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/CM.Platform.Channels.Models.ChannelTypes.Payments.ApiPaymentsCredentialsResponse'
            text/json:
              schema:
                $ref: '#/components/schemas/CM.Platform.Channels.Models.ChannelTypes.Payments.ApiPaymentsCredentialsResponse'
            text/xml:
              schema:
                $ref: '#/components/schemas/CM.Platform.Channels.Models.ChannelTypes.Payments.ApiPaymentsCredentialsResponse'
            multipart/form-data:
              schema:
                $ref: '#/components/schemas/CM.Platform.Channels.Models.ChannelTypes.Payments.ApiPaymentsCredentialsResponse'
    put:
      tags:
      - Payments
      summary: Updates the payments credentials asynchronous.
      operationId: Payments_UpdatePaymentsCredentialsAsync
      parameters:
      - name: accountId
        in: path
        description: The account identifier.
        required: true
        schema:
          type: string
          format: uuid
      - name: channelRequestId
        in: path
        description: The channel request identifier.
        required: true
        schema:
          type: string
          format: uuid
      - name: credentialsId
        in: path
        description: The credentials identifier.
        required: true
        schema:
          type: string
          format: uuid
      requestBody:
        $ref: '#/components/requestBodies/CM.Platform.Channels.Models.ChannelTypes.Payments.ApiPaymentsCredentialsRequest'
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/CM.Platform.Channels.Models.ChannelTypes.Payments.ApiPaymentsCredentialsResponse'
            text/json:
              schema:
                $ref: '#/components/schemas/CM.Platform.Channels.Models.ChannelTypes.Payments.ApiPaymentsCredentialsResponse'
            text/xml:
              schema:
                $ref: '#/components/schemas/CM.Platform.Channels.Models.ChannelTypes.Payments.ApiPaymentsCredentialsResponse'
            multipart/form-data:
              schema:
                $ref: '#/components/schemas/CM.Platform.Channels.Models.ChannelTypes.Payments.ApiPaymentsCredentialsResponse'
    delete:
      tags:
      - Payments
      summary: Deletes the payments credentials asynchronous.
      operationId: Payments_DeletePaymentsCredentialsAsync
      parameters:
      - name: accountId
        in: path
        description: The account identifier.
        required: true
        schema:
          type: string
          format: uuid
      - name: channelRequestId
        in: path
        description: The channel request identifier.
        required: true
        schema:
          type: string
          format: uuid
      - name: credentialsId
        in: path
        description: The credentials identifier.
        required: true
        schema:
          type: string
          format: uuid
      responses:
        '204':
          description: NoContent
  /channels/v1/accounts/{accountId}/phonenumbers:
    get:
      tags:
      - PhoneNumbers
      summary: Get all available phone numbers (paginated).
      operationId: PhoneNumbers_GetPhoneNumbersAsync
      parameters:
      - name: accountId
        in: path
        description: The account identifier.
        required: true
        schema:
          type: string
          format: uuid
      - name: q
        in: query
        description: The search query.
        required: false
        schema:
          type: string
      - name: country
        in: query
        description: The country to limit the result set to.
        required: false
        schema:
          type: string
      - name: isOwned
        in: query
        description: If set, filters the result to only numbers owned by the account.
        required: false
        schema:
          type: boolean
      - name: isShortcode
        in: query
        description: If set, filters the result to being a shortcode (true) or not (false).
        required: false
        schema:
          type: boolean
      - name: isShared
        in: query
        description: If set, filters the result to being shared (true) or not (false).
        required: false
        schema:
          type: boolean
      - name: skip
        in: query
        description: The skip.
        required: false
        schema:
          type: integer
          format: int32
      - name: take
        in: query
        description: The take.
        required: false
        schema:
          type: integer
          format: int32
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/CM.Platform.Channels.Models.ChannelTypes.Sms.ApiPhoneNumberResponse'
            text/json:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/CM.Platform.Channels.Models.ChannelTypes.Sms.ApiPhoneNumberResponse'
  /channels/v1/accounts/{accountId}/phonenumbers/{phoneNumberId}:
    get:
      tags:
      - PhoneNumbers
      summary: Get a phone number by id.
      operationId: PhoneNumbers_GetPhoneNumberAsync
      parameters:
      - name: accountId
        in: path
        description: The account identifier.
        required: true
        schema:
          type: string
          format: uuid
      - name: phoneNumberId
        in: path
        description: The phone number id.
        required: true
        schema:
          type: string
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/CM.Platform.Channels.Models.ChannelTypes.Sms.ApiPhoneNumberResponse'
            text/json:
              schema:
                $ref: '#/components/schemas/CM.Platform.Channels.Models.ChannelTypes.Sms.ApiPhoneNumberResponse'
            text/xml:
              schema:
                $ref: '#/components/schemas/CM.Platform.Channels.Models.ChannelTypes.Sms.ApiPhoneNumberResponse'
            multipart/form-data:
              schema:
                $ref: '#/components/schemas/CM.Platform.Channels.Models.ChannelTypes.Sms.ApiPhoneNumberResponse'
    delete:
      tags:
      - PhoneNumbers
      summary: Cancel a dedicated phone number.
      operationId: PhoneNumbers_CancelPhoneNumberAsync
      parameters:
      - name: accountId
        in: path
        description: The account identifier.
        required: true
        schema:
          type: string
          format: uuid
      - name: phoneNumberId
        in: path
        description: The phone number identifier.
        required: true
        schema:
          type: string
      responses:
        '204':
          description: NoContent
  /channels/v1/accounts/{accountId}/phonenumbers/numbertypes:
    get:
      tags:
      - PhoneNumbers
      summary: Get all available number types (paginated).
      operationId: PhoneNumbers_GetNumberTypesAsync
      parameters:
      - name: accountId
        in: path
        description: The account identifier.
        required: true
        schema:
          type: string
          format: uuid
      - name: numberTypeId
        in: query
        description: The number type identifier.
        required: false
        schema:
          type: string
          format: uuid
      - name: currency
        in: query
        description: The currency.
        required: false
        schema:
          type: string
      - name: country
        in: query
        description: The country.
        required: false
        schema:
          type: string
      - name: category
        in: query
        description: The category.
        required: false
        schema:
          type: string
      - name: purpose
        in: query
        description: The purpose.
        required: false
        explode: true
        schema:
          type: array
          items:
            type: string
      - name: skip
        in: query
        description: The skip.
        required: false
        schema:
          type: integer
          format: int32
      - name: take
        in: query
        description: The take.
        required: false
        schema:
          type: integer
          format: int32
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/CM.Platform.Channels.Models.ChannelTypes.Sms.ApiNumberTypeResponse'
            text/json:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/CM.Platform.Channels.Models.ChannelTypes.Sms.ApiNumberTypeResponse'
  /channels/v1/accounts/{accountId}/phonenumbers/requests:
    get:
      tags:
      - PhoneNumbers
      summary: Get all dedicated phone number requests (paginated).
      operationId: PhoneNumbers_GetPhoneNumberRequestsAsync
      parameters:
      - name: accountId
        in: path
        description: The account identifier.
        required: true
        schema:
          type: string
          format: uuid
      - name: country
        in: query
        description: If set, filters the result on country.
        required: false
        schema:
          type: string
      - name: isActive
        in: query
        description: If set, filters the result on active state
        required: false
        schema:
          type: boolean
      - name: isPending
        in: query
        description: If set, filters the result on pending state.
        required: false
        schema:
          type: boolean
      - name: isCancelled
        in: query
        description: If set, filters the result on cancelled state.
        required: false
        schema:
          type: boolean
      - name: q
        in: query
        description: The search query.
        required: false
        schema:
          type: string
      - name: status
        in: query
        description: The status.
        required: false
        explode: true
        schema:
          type: array
          items:
            type: string
            enum:
            - ACTIVE
            - PENDING
            - ELIGIBLE
            - NOT_VALIDATED
            - CUSTOMER_ACTION_REQUIRED
            - EXPIRED
            - REJECTED
            - CANCELLED
            - DELETED
      - name: skip
        in: query
        description: The skip.
        required: false
        schema:
          type: integer
          format: int32
      - name: take
        in: query
        description: The take.
        required: false
        schema:
          type: integer
          format: int32
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/CM.Platform.Channels.Models.ChannelTypes.Sms.ApiNumberRequestBase'
            text/json:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/CM.Platform.Channels.Models.ChannelTypes.Sms.ApiNumberRequestBase'
    post:
      tags:
      - PhoneNumbers
      summary: Request a dedicated phone number.
      operationId: PhoneNumbers_AddPhoneNumberRequestAsync
      parameters:
      - name: accountId
        in: path
        description: The account identifier.
        required: true
        schema:
          type: string
          format: uuid
      - name: numberTypeId
        in: query
        description: The number type identifier.
        required: true
        schema:
          type: string
          format: uuid
      - name: periodicity
        in: query
        description: The periodicity.
        required: true
        schema:
          type: string
          enum:
          - MONTHLY
          - YEARLY
          - NONE
      - name: currency
        in: query
        description: The currency.
        required: false
        schema:
          type: string
      - name: simulate
        in: query
        description: if set to true [simulate].
        required: false
        schema:
          type: boolean
      - name: asIncomingOrderFlow
        in: query
        description: if set to true [as incoming order flow].
        required: false
        schema:
          type: boolean
      responses:
        '201':
          description: Created
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/CM.Platform.Channels.Models.ChannelTypes.Sms.ApiNumberRequestResponse'
            text/json:
              schema:
                $ref: '#/components/schemas/CM.Platform.Channels.Models.ChannelTypes.Sms.ApiNumberRequestResponse'
  /channels/v1/accounts/{accountId}/phonenumbers/requests/{requestId}:
    get:
      tags:
      - PhoneNumbers
      summary: Gets a phone number request by id.
      operationId: PhoneNumbers_GetPhoneNumberRequestAsync
      parameters:
      - name: accountId
        in: path
        description: The account identifier.
        required: true
        schema:
          type: string
          format: uuid
      - name: requestId
        in: path
        description: The number request identifier.
        required: true
        schema:
          type: string
          format: uuid
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/CM.Platform.Channels.Models.ChannelTypes.Sms.ApiNumberRequestResponse'
            text/json:
              schema:
                $ref: '#/components/schemas/CM.Platform.Channels.Models.ChannelTypes.Sms.ApiNumberRequestResponse'
            text/xml:
              schema:
                $ref: '#/components/schemas/CM.Platform.Channels.Models.ChannelTypes.Sms.ApiNumberRequestResponse'
            multipart/form-data:
              schema:
                $ref: '#/components/schemas/CM.Platform.Channels.Models.ChannelTypes.Sms.ApiNumberRequestResponse'
  /channels/v1/accounts/{accountId}/rcs/{channelRequestId}/account:
    get:
      tags:
      - RichContentServices
      summary: Get an RCS account.
      operationId: RichContentServices_GetRcsAccountAsync
      parameters:
      - name: accountId
        in: path
        description: The account identifier.
        required: true
        schema:
          type: string
          format: uuid
      - name: channelRequestId
        in: path
        description: The channel request identifier.
        required: true
        schema:
          type: string
          format: uuid
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/CM.Platform.Channels.Models.ChannelTypes.Rcs.ApiRcsAccount'
            text/json:
              schema:
                $ref: '#/components/schemas/CM.Platform.Channels.Models.ChannelTypes.Rcs.ApiRcsAccount'
            text/xml:
              schema:
                $ref: '#/components/schemas/CM.Platform.Channels.Models.ChannelTypes.Rcs.ApiRcsAccount'
            multipart/form-data:
              schema:
                $ref: '#/components/schemas/CM.Platform.Channels.Models.ChannelTypes.Rcs.ApiRcsAccount'
    post:
      tags:
      - RichContentServices
      summary: Add an RCS account.
      operationId: RichContentServices_AddRcsAccountAsync
      parameters:
      - name: accountId
        in: path
        description: The account identifier.
        required: true
        schema:
          type: string
          format: uuid
      - name: channelRequestId
        in: path
        description: The channel request identifier.
        required: true
        schema:
          type: string
          format: uuid
      responses:
        '201':
          description: Created
  /channels/v1/accounts/{accountId}/rcs/{channelRequestId}/account/forminput:
    get:
      tags:
      - RichContentServices
      summary: Get an RCS account's form input.
      operationId: RichContentServices_GetRcsAccountFormInputAsync
      parameters:
      - name: accountId
        in: path
        description: The account identifier.
        required: true
        schema:
          type: string
          format: uuid
      - name: channelRequestId
        in: path
        description: The channel request identifier.
        required: true
        schema:
          type: string
          format: uuid
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/CM.Platform.Channels.Models.RequestForms.ApiChannelRequestFormInputResponse'
            text/json:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/CM.Platform.Channels.Models.RequestForms.ApiChannelRequestFormInputResponse'
            text/xml:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/CM.Platform.Channels.Models.RequestForms.ApiChannelRequestFormInputResponse'
            multipart/form-data:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/CM.Platform.Channels.Models.RequestForms.ApiChannelRequestFormInputResponse'
  /channels/v1/accounts/{accountId}/rcs/{channelRequestId}/account/{rcsAccountId}/forminput:
    put:
      tags:
      - RichContentServices
      summary: Add an RCS account's form input.
      operationId: RichContentServices_AddRcsAccountFormInputAsync
      parameters:
      - name: accountId
        in: path
        description: The account identifier.
        required: true
        schema:
          type: string
          format: uuid
      - name: channelRequestId
        in: path
        description: The channel request identifier.
        required: true
        schema:
          type: string
          format: uuid
      - name: rcsAccountId
        in: path
        description: The RCS account identifier.
        required: true
        schema:
          type: string
          format: uuid
      requestBody:
        $ref: '#/components/requestBodies/CM.Platform.Channels.Models.RequestForms.ApiRequestFormInputRequestArray'
      responses:
        '202':
          description: Accepted
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/CM.Platform.Channels.Models.ChannelTypes.Rcs.ApiRcsAccount'
            text/json:
              schema:
                $ref: '#/components/schemas/CM.Platform.Channels.Models.ChannelTypes.Rcs.ApiRcsAccount'
            text/xml:
              schema:
                $ref: '#/components/schemas/CM.Platform.Channels.Models.ChannelTypes.Rcs.ApiRcsAccount'
            multipart/form-data:
              schema:
                $ref: '#/components/schemas/CM.Platform.Channels.Models.ChannelTypes.Rcs.ApiRcsAccount'
  /channels/v1/accounts/{accountId}/rcs/{channelRequestId}/profiles:
    get:
      tags:
      - RichContentServices
      summary: Gets the profiles asynchronous.
      operationId: RichContentServices_GetRcsProfilesAsync
      parameters:
      - name: accountId
        in: path
        description: The account identifier.
        required: true
        schema:
          type: string
          format: uuid
      - name: channelRequestId
        in: path
        description: The channel request identifier.
        required: true
        schema:
          type: string
          format: uuid
      - name: q
        in: query
        description: The q.
        required: false
        schema:
          type: string
      - name: status
        in: query
        description: The status.
        required: false
        explode: true
        schema:
          type: array
          items:
            type: string
            enum:
            - ACTIVE
            - PENDING
            - ELIGIBLE
            - NOT_VALIDATED
            - CUSTOMER_ACTION_REQUIRED
            - EXPIRED
            - REJECTED
            - CANCELLED
            - DELETED
      - name: skip
        in: query
        description: The skip.
        required: false
        schema:
          type: integer
          format: int32
      - name: take
        in: query
        description: The take.
        required: false
        schema:
          type: integer
          format: int32
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/CM.Platform.Channels.Models.ChannelTypes.Rcs.ApiRcsProfileBase'
            text/json:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/CM.Platform.Channels.Models.ChannelTypes.Rcs.ApiRcsProfileBase'
    post:
      tags:
      - RichContentServices
      summary: Adds the profile asynchronous.
      operationId: RichContentServices_AddRcsProfileAsync
      parameters:
      - name: accountId
        in: path
        description: The account identifier.
        required: true
        schema:
          type: string
          format: uuid
      - name: channelRequestId
        in: path
        description: The channel request identifier.
        required: true
        schema:
          type: string
          format: uuid
      - name: simulate
        in: query
        description: if set to true [simulate].
        required: false
        schema:
          type: boolean
      responses:
        '201':
          description: Created
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/CM.Platform.Channels.Models.ChannelTypes.Rcs.ApiRcsProfile'
            text/json:
              schema:
                $ref: '#/components/schemas/CM.Platform.Channels.Models.ChannelTypes.Rcs.ApiRcsProfile'
  /channels/v1/accounts/{accountId}/rcs/{channelRequestId}/profiles/{profileId}:
    get:
      tags:
      - RichContentServices
      summary: Gets the profile asynchronous.
      operationId: RichContentServices_GetRcsProfileAsync
      parameters:
      - name: accountId
        in: path
        description: The account identifier.
        required: true
        schema:
          type: string
          format: uuid
      - name: channelRequestId
        in: path
        description: The channel request identifier.
        required: true
        schema:
          type: string
          format: uuid
      - name: profileId
        in: path
        description: The profile identifier.
        required: true
        schema:
          type: string
          format: uuid
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/CM.Platform.Channels.Models.ChannelTypes.Rcs.ApiRcsProfile'
            text/json:
              schema:
                $ref: '#/components/schemas/CM.Platform.Channels.Models.ChannelTypes.Rcs.ApiRcsProfile'
            text/xml:
              schema:
                $ref: '#/components/schemas/CM.Platform.Channels.Models.ChannelTypes.Rcs.ApiRcsProfile'
            multipart/form-data:
              schema:
                $ref: '#/components/schemas/CM.Platform.Channels.Models.ChannelTypes.Rcs.ApiRcsProfile'
  /channels/v1/accounts/{accountId}/rcs/{channelRequestId}/profiles/{profileId}/forminput:
    get:
      tags:
      - RichContentServices
      summary: Gets the profile form input asynchronous.
      operationId: RichContentServices_GetRcsProfileFormInputAsync
      parameters:
      - name: accountId
        in: path
        description: The account identifier.
        required: true
        schema:
          type: string
          format: uuid
      - name: channelRequestId
        in: path
        description: The channel request identifier.
        required: true
        schema:
          type: string
          format: uuid
      - name: profileId
        in: path
        description: The profile identifier.
        required: true
        schema:
          type: string
          format: uuid
      responses:
        '202':
          description: Accepted
          content:
            application/json:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/CM.Platform.Channels.Models.RequestForms.ApiChannelRequestFormInputResponse'
            text/json:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/CM.Platform.Channels.Models.RequestForms.ApiChannelRequestFormInputResponse'
            text/xml:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/CM.Platform.Channels.Models.RequestForms.ApiChannelRequestFormInputResponse'
            multipart/form-data:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/CM.Platform.Channels.Models.RequestForms.ApiChannelRequestFormInputResponse'
    put:
      tags:
      - RichContentServices
      summary: Adds the profile form input asynchronous.
      operationId: RichContentServices_AddRcsProfileFormInputAsync
      parameters:
      - name: accountId
        in: path
        description: The account identifier.
        required: true
        schema:
          type: string
          format: uuid
      - name: channelRequestId
        in: path
        description: The channel request identifier.
        required: true
        schema:
          type: string
          format: uuid
      - name: profileId
        in: path
        description: The profile identifier.
        required: true
        schema:
          type: string
          format: uuid
      requestBody:
        $ref: '#/components/requestBodies/CM.Platform.Channels.Models.RequestForms.ApiRequestFormInputRequestArray'
      responses:
        '202':
          description: Accepted
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/CM.Platform.Channels.Models.ChannelTypes.Rcs.ApiRcsProfile'
            text/json:
              schema:
                $ref: '#/components/schemas/CM.Platform.Channels.Models.ChannelTypes.Rcs.ApiRcsProfile'
            text/xml:
              schema:
                $ref: '#/components/schemas/CM.Platform.Channels.Models.ChannelTypes.Rcs.ApiRcsProfile'
            multipart/form-data:
              schema:
                $ref: '#/components/schemas/CM.Platform.Channels.Models.ChannelTypes.Rcs.ApiRcsProfile'
  /channels/v1/administration/scenarioconfiguration/scenarios:
    get:
      tags:
      - ScenarioConfiguration
      summary: Get scenario configuration scenarios.
      operationId: ScenarioConfiguration_GetScenarioConfigScenariosAdministrationAsync
      parameters:
      - name: q
        in: query
        description: The input.
        required: false
        schema:
          type: string
      - name: activeOnly
        in: query
        description: The active only.
        required: false
        schema:
          type: boolean
      - name: countryCode
        in: query
        description: The country code.
        required: false
        schema:
          type: string
      - name: shortcode
        in: query
        description: The shortcode.
        required: false
        schema:
          type: string
      - name: alias
        in: query
        description: The alias.
        required: false
        schema:
          type: string
      - name: medium
        in: query
        description: The medium (use string value 'null' to search for scenarios with medium null).
        required: false
        schema:
          type: string
      - name: customer
        in: query
        description: The customer.
        required: false
        schema:
          type: integer
          format: int32
      - name: skip
        in: query
        description: The skip.
        required: false
        schema:
          type: integer
          format: int32
      - name: take
        in: query
        description: The take.
        required: false
        schema:
          type: integer
          format: int32
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/CM.Platform.Channels.ExternalModels.ApiClients.TextCore.WebhookConfiguration.ScenarioV2'
            text/json:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/CM.Platform.Channels.ExternalModels.ApiClients.TextCore.WebhookConfiguration.ScenarioV2'
    post:
      tags:
      - ScenarioConfiguration
      summary: Add a scenario configuration scenario.
      operationId: ScenarioConfiguration_AddScenarioConfigScenarioAdministrationAsync
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/CM.Platform.Channels.ExternalModels.ApiClients.TextCore.WebhookConfiguration.ScenarioV2Base'
          text/json:
            schema:
              $ref: '#/components/schemas/CM.Platform.Channels.ExternalModels.ApiClients.TextCore.WebhookConfiguration.ScenarioV2Base'
          text/xml:
            schema:
              $ref: '#/components/schemas/CM.Platform.Channels.ExternalModels.ApiClients.TextCore.WebhookConfiguration.ScenarioV2Base'
          multipart/form-data:
            schema:
              $ref: '#/components/schemas/CM.Platform.Channels.ExternalModels.ApiClients.TextCore.WebhookConfiguration.ScenarioV2Base'
          application/x-www-form-urlencoded:
            schema:
              $ref: '#/components/schemas/CM.Platform.Channels.ExternalModels.ApiClients.TextCore.WebhookConfiguration.ScenarioV2Base'
        description: The scenario.
        required: true
      responses:
        '201':
          description: Created
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/CM.Platform.Channels.ExternalModels.ApiClients.TextCore.WebhookConfiguration.ScenarioV2'
            text/json:
              schema:
                $ref: '#/components/schemas/CM.Platform.Channels.ExternalModels.ApiClients.TextCore.WebhookConfiguration.ScenarioV2'
            text/xml:
              schema:
                $ref: '#/components/schemas/CM.Platform.Channels.ExternalModels.ApiClients.TextCore.WebhookConfiguration.ScenarioV2'
            multipart/form-data:
              schema:
                $ref: '#/components/schemas/CM.Platform.Channels.ExternalModels.ApiClients.TextCore.WebhookConfiguration.ScenarioV2'
  /channels/v1/administration/scenarioconfiguration/scenarios/{scenarioId}:
    get:
      tags:
      - ScenarioConfiguration
      summary: Get a scenario by ID.
      operationId: ScenarioConfiguration_GetScenarioConfigScenarioAdministrationAsync
      parameters:
      - name: scenarioId
        in: path
        description: The scenario identifier.
        required: true
        schema:
          type: integer
          format: int32
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/CM.Platform.Channels.ExternalModels.ApiClients.TextCore.WebhookConfiguration.ScenarioV2'
            text/json:
              schema:
                $ref: '#/components/schemas/CM.Platform.Channels.ExternalModels.ApiClients.TextCore.WebhookConfiguration.ScenarioV2'
            text/xml:
              schema:
                $ref: '#/components/schemas/CM.Platform.Channels.ExternalModels.ApiClients.TextCore.WebhookConfiguration.ScenarioV2'
            multipart/form-data:
              schema:
                $ref: '#/components/schemas/CM.Platform.Channels.ExternalModels.ApiClients.TextCore.WebhookConfiguration.ScenarioV2'
    put:
      tags:
      - ScenarioConfiguration
      summary: Update a scenario configuration scenario.
      operationId: ScenarioConfiguration_UpdateScenarioConfigScenarioAdministrationAsync
      parameters:
      - name: scenarioId
        in: path
        description: The scenario identifier.
        required: true
        schema:
          type: integer
          format: int32
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/CM.Platform.Channels.ExternalModels.ApiClients.TextCore.WebhookConfiguration.ScenarioV2Base'
          text/json:
            schema:
              $ref: '#/components/schemas/CM.Platform.Channels.ExternalModels.ApiClients.TextCore.WebhookConfiguration.ScenarioV2Base'
          text/xml:
            schema:
              $ref: '#/components/schemas/CM.Platform.Channels.ExternalModels.ApiClients.TextCore.WebhookConfiguration.ScenarioV2Base'
          multipart/form-data:
            schema:
              $ref: '#/components/schemas/CM.Platform.Channels.ExternalModels.ApiClients.TextCore.WebhookConfiguration.ScenarioV2Base'
          application/x-www-form-urlencoded:
            schema:
              $ref: '#/components/schemas/CM.Platform.Channels.ExternalModels.ApiClients.TextCore.WebhookConfiguration.ScenarioV2Base'
        description: The scenario update.
        required: true
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/CM.Platform.Channels.ExternalModels.ApiClients.TextCore.WebhookConfiguration.ScenarioV2'
            text/json:
              schema:
                $ref: '#/components/schemas/CM.Platform.Channels.ExternalModels.ApiClients.TextCore.WebhookConfiguration.ScenarioV2'
            text/xml:
              schema:
                $ref: '#/components/schemas/CM.Platform.Channels.ExternalModels.ApiClients.TextCore.WebhookConfiguration.ScenarioV2'
            multipart/form-data:
              schema:
                $ref: '#/components/schemas/CM.Platform.Channels.ExternalModels.ApiClients.TextCore.WebhookConfiguration.ScenarioV2'
    delete:
      tags:
      - ScenarioConfiguration
      summary: Deletes the scenario configuration scenario by ID
      operationId: ScenarioConfiguration_DeleteScenarioConfigScenarioAdministrationAsync
      parameters:
      - name: scenarioId
        in: path
        description: The scenario identifier.
        required: true
        schema:
          type: integer
          format: int32
      responses:
        '204':
          description: NoContent
  /channels/v1/administration/scenarioconfiguration/scenarios/{scenarioId}/mohandlers:
    get:
      tags:
      - ScenarioConfiguration
      summary: Get a scenario configuration scenario's handlers.
      operationId: ScenarioConfiguration_GetScenarioConfigScenarioHandlersAdministrationAsync
      parameters:
      - name: scenarioId
        in: path
        description: The scenario identifier.
        required: true
        schema:
          type: integer
          format: int32
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/CM.Platform.Channels.ExternalModels.ApiClients.TextCore.WebhookConfiguration.MoHandlerV2'
            text/json:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/CM.Platform.Channels.ExternalModels.ApiClients.TextCore.WebhookConfiguration.MoHandlerV2'
            text/xml:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/CM.Platform.Channels.ExternalModels.ApiClients.TextCore.WebhookConfiguration.MoHandlerV2'
            multipart/form-data:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/CM.Platform.Channels.ExternalModels.ApiClients.TextCore.WebhookConfiguration.MoHandlerV2'
  /channels/v1/administration/scenarioconfiguration/scenarios/{scenarioId}/events:
    get:
      tags:
      - ScenarioConfiguration
      summary: Get a scenario configuration scenario's events.
      operationId: ScenarioConfiguration_GetScenarioConfigScenarioEventsAdministrationAsync
      parameters:
      - name: scenarioId
        in: path
        description: The scenario identifier.
        required: true
        schema:
          type: integer
          format: int32
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/CM.Platform.Channels.Models.EventLogging.ApiChannelsScenarioEventAdmin'
            text/json:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/CM.Platform.Channels.Models.EventLogging.ApiChannelsScenarioEventAdmin'
            text/xml:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/CM.Platform.Channels.Models.EventLogging.ApiChannelsScenarioEventAdmin'
            multipart/form-data:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/CM.Platform.Channels.Models.EventLogging.ApiChannelsScenarioEventAdmin'
  /channels/v1/administration/scenarioconfiguration/countries:
    get:
      tags:
      - ScenarioConfiguration
      summary: Gets scenario configuration countries.
      operationId: ScenarioConfiguration_GetScenarioConfigCountriesAdministrationAsync
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/CM.Platform.Channels.ExternalModels.ApiClients.TextCore.WebhookConfiguration.Country'
            text/json:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/CM.Platform.Channels.ExternalModels.ApiClients.TextCore.WebhookConfiguration.Country'
            text/xml:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/CM.Platform.Channels.ExternalModels.ApiClients.TextCore.WebhookConfiguration.Country'
            multipart/form-data:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/CM.Platform.Channels.ExternalModels.ApiClients.TextCore.WebhookConfiguration.Country'
  /channels/v1/administration/scenarioconfiguration/mediums:
    get:
      tags:
      - ScenarioConfiguration
      summary: Get scenario configuration mediums.
      operationId: ScenarioConfiguration_GetScenarioConfigMediumsAdministrationAsync
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                type: array
                items:
                  type: string
            text/json:
              schema:
                type: array
                items:
                  type: string
            text/xml:
              schema:
                type: array
                items:
                  type: string
            multipart/form-data:
              schema:
                type: array
                items:
                  type: string
  /channels/v1/administration/scenarioconfiguration/mohandlers:
    get:
      tags:
      - ScenarioConfiguration
      summary: Gets the mo handlers administration asynchronous.
      operationId: ScenarioConfiguration_GetMoHandlersAdministrationAsync
      parameters:
      - name: q
        in: query
        description: The q.
        required: false
        schema:
          type: string
      - name: customer
        in: query
        description: The customer.
        required: false
        schema:
          type: integer
          format: int32
      - name: skip
        in: query
        description: The skip.
        required: false
        schema:
          type: integer
          format: int32
      - name: take
        in: query
        description: The take.
        required: false
        schema:
          type: integer
          format: int32
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/CM.Platform.Channels.ExternalModels.ApiClients.TextCore.WebhookConfiguration.MoHandlerV2'
            text/json:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/CM.Platform.Channels.ExternalModels.ApiClients.TextCore.WebhookConfiguration.MoHandlerV2'
    post:
      tags:
      - ScenarioConfiguration
      summary: Add a new MoHandler.
      operationId: ScenarioConfiguration_AddMoHandlerAdministrationAsync
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/CM.Platform.Channels.ExternalModels.ApiClients.TextCore.WebhookConfiguration.MoHandlerV2Base'
          text/json:
            schema:
              $ref: '#/components/schemas/CM.Platform.Channels.ExternalModels.ApiClients.TextCore.WebhookConfiguration.MoHandlerV2Base'
          text/xml:
            schema:
              $ref: '#/components/schemas/CM.Platform.Channels.ExternalModels.ApiClients.TextCore.WebhookConfiguration.MoHandlerV2Base'
          multipart/form-data:
            schema:
              $ref: '#/components/schemas/CM.Platform.Channels.ExternalModels.ApiClients.TextCore.WebhookConfiguration.MoHandlerV2Base'
          application/x-www-form-urlencoded:
            schema:
              $ref: '#/components/schemas/CM.Platform.Channels.ExternalModels.ApiClients.TextCore.WebhookConfiguration.MoHandlerV2Base'
        description: The new mo handler.
        required: true
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/CM.Platform.Channels.ExternalModels.ApiClients.TextCore.WebhookConfiguration.MoHandlerV2'
            text/json:
              schema:
                $ref: '#/components/schemas/CM.Platform.Channels.ExternalModels.ApiClients.TextCore.WebhookConfiguration.MoHandlerV2'
            text/xml:
              schema:
                $ref: '#/components/schemas/CM.Platform.Channels.ExternalModels.ApiClients.TextCore.WebhookConfiguration.MoHandlerV2'
            multipart/form-data:
              schema:
                $ref: '#/components/schemas/CM.Platform.Channels.ExternalModels.ApiClients.TextCore.WebhookConfiguration.MoHandlerV2'
  /channels/v1/administration/scenarioconfiguration/mohandlers/{moHandlerId}:
    get:
      tags:
      - ScenarioConfiguration
      summary: Get an MoHandler by ID.
      operationId: ScenarioConfiguration_GetMoHandlerAdministrationAsync
      parameters:
      - name: moHandlerId
        in: path
        description: The mo handler identifier.
        required: true
        schema:
          type: integer
          format: int32
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/CM.Platform.Channels.ExternalModels.ApiClients.TextCore.WebhookConfiguration.MoHandlerV2'
            text/json:
              schema:
                $ref: '#/components/schemas/CM.Platform.Channels.ExternalModels.ApiClients.TextCore.WebhookConfiguration.MoHandlerV2'
            text/xml:
              schema:
                $ref: '#/components/schemas/CM.Platform.Channels.ExternalModels.ApiClients.TextCore.WebhookConfiguration.MoHandlerV2'
            multipart/form-data:
              schema:
                $ref: '#/components/schemas/CM.Platform.Channels.ExternalModels.ApiClients.TextCore.WebhookConfiguration.MoHandlerV2'
    put:
      tags:
      - ScenarioConfiguration
      summary: Update an MoHandler.
      operationId: ScenarioConfiguration_UpdateMoHandlerAdministrationAsync
      parameters:
      - name: moHandlerId
        in: path
        description: The mo handler identifier.
        required: true
        schema:
          type: integer
          format: int32
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/CM.Platform.Channels.ExternalModels.ApiClients.TextCore.WebhookConfiguration.MoHandlerV2Base'
          text/json:
            schema:
              $ref: '#/components/schemas/CM.Platform.Channels.ExternalModels.ApiClients.TextCore.WebhookConfiguration.MoHandlerV2Base'
          text/xml:
            schema:
              $ref: '#/components/schemas/CM.Platform.Channels.ExternalModels.ApiClients.TextCore.WebhookConfiguration.MoHandlerV2Base'
          multipart/form-data:
            schema:
              $ref: '#/components/schemas/CM.Platform.Channels.ExternalModels.ApiClients.TextCore.WebhookConfiguration.MoHandlerV2Base'
          application/x-www-form-urlencoded:
            schema:
              $ref: '#/components/schemas/CM.Platform.Channels.ExternalModels.ApiClients.TextCore.WebhookConfiguration.MoHandlerV2Base'
        description: The updated mo handler.
        required: true
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/CM.Platform.Channels.ExternalModels.ApiClients.TextCore.WebhookConfiguration.MoHandlerV2'
            text/json:
              schema:
                $ref: '#/components/schemas/CM.Platform.Channels.ExternalModels.ApiClients.TextCore.WebhookConfiguration.MoHandlerV2'
            text/xml:
              schema:
                $ref: '#/components/schemas/CM.Platform.Channels.ExternalModels.ApiClients.TextCore.WebhookConfiguration.MoHandlerV2'
            multipart/form-data:
              schema:
                $ref: '#/components/schemas/CM.Platform.Channels.ExternalModels.ApiClients.TextCore.WebhookConfiguration.MoHandlerV2'
    delete:
      tags:
      - ScenarioConfiguration
      summary: Delete an MoHandler.
      operationId: ScenarioConfiguration_DeleteMoHandlerAdministrationAsync
      parameters:
      - name: moHandlerId
        in: path
        description: The mo handler identifier.
        required: true
        schema:
          type: integer
          format: int32
      responses:
        '204':
          description: NoContent
  /channels/v1/administration/scenarioconfiguration/mohandlers/{moHandlerId}/events:
    get:
      tags:
      - ScenarioConfiguration
      summary: Get an MoHandler's events.
      operationId: ScenarioConfiguration_GetMoHandlerEventsAdministrationAsync
      parameters:
      - name: moHandlerId
        in: path
        description: The mo handler identifier.
        required: true
        schema:
          type: integer
          format: int32
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/CM.Platform.Channels.Models.EventLogging.ApiChannelsMoHandlerEventAdmin'
            text/json:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/CM.Platform.Channels.Models.EventLogging.ApiChannelsMoHandlerEventAdmin'
            text/xml:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/CM.Platform.Channels.Models.EventLogging.ApiChannelsMoHandlerEventAdmin'
            multipart/form-data:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/CM.Platform.Channels.Models.EventLogging.ApiChannelsMoHandlerEventAdmin'
  /channels/v1/administration/scenarioconfiguration/mohandlers/{moHandlerId}/scenarios:
    put:
      tags:
      - ScenarioConfiguration
      summary: Link (a) scenario(s) to an MoHandler by ID.
      operationId: ScenarioConfiguration_LinkScenariosToMoHandlerAdministrationAsync
      parameters:
      - name: moHandlerId
        in: path
        description: The mo handler identifier.
        required: true
        schema:
          type: integer
          format: int32
      requestBody:
        content:
          application/json:
            schema:
              type: array
              items:
                format: int32
                type: integer
          text/json:
            schema:
              type: array
              items:
                format: int32
                type: integer
          text/xml:
            schema:
              type: array
              items:
                format: int32
                type: integer
          multipart/form-data:
            schema:
              type: array
              items:
                format: int32
                type: integer
          application/x-www-form-urlencoded:
            schema:
              type: array
              items:
                format: int32
                type: integer
        description: The scenario ids.
        required: true
      responses:
        '204':
          description: NoContent
  /channels/v1/administration/scenarioconfiguration/mohandlers/{moHandlerId}/scenarios/{scenarioId}:
    delete:
      tags:
      - ScenarioConfiguration
      summary: Unlinks the scenarios from mo handler administration asynchronous.
      operationId: ScenarioConfiguration_UnlinkScenariosFromMoHandlerAdministrationAsync
      parameters:
      - name: moHandlerId
        in: path
        description: The mo handler identifier.
        required: true
        schema:
          type: integer
          format: int32
      - name: scenarioId
        in: path
        description: The scenario identifier to unlink.
        required: true
        schema:
          type: integer
          format: int32
      responses:
        '204':
          description: NoContent
  /channels/v1/administration/scenarioconfiguration/mohandlers/templates:
    get:
      tags:
      - ScenarioConfiguration
      summary: Gets the mo handler templates administration asynchronous.
      operationId: ScenarioConfiguration_GetMoHandlerTemplatesAdministrationAsync
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/CM.Platform.Channels.ExternalModels.ApiClients.TextCore.WebhookConfiguration.MoHandlerV2MoTemplate'
            text/json:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/CM.Platform.Channels.ExternalModels.ApiClients.TextCore.WebhookConfiguration.MoHandlerV2MoTemplate'
            text/xml:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/CM.Platform.Channels.ExternalModels.ApiClients.TextCore.WebhookConfiguration.MoHandlerV2MoTemplate'
            multipart/form-data:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/CM.Platform.Channels.ExternalModels.ApiClients.TextCore.WebhookConfiguration.MoHandlerV2MoTemplate'
  /channels/v1/administration/scenarioconfiguration/mohandlers/platformlocations:
    get:
      tags:
      - ScenarioConfiguration
      summary: Gets the mo handler platform locations administration asynchronous.
      operationId: ScenarioConfiguration_GetMoHandlerPlatformLocationsAdministrationAsync
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/CM.Platform.Channels.ExternalModels.ApiClients.TextCore.WebhookConfiguration.MoHandlerV2PlatformLocation'
            text/json:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/CM.Platform.Channels.ExternalModels.ApiClients.TextCore.WebhookConfiguration.MoHandlerV2PlatformLocation'
            text/xml:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/CM.Platform.Channels.ExternalModels.ApiClients.TextCore.WebhookConfiguration.MoHandlerV2PlatformLocation'
            multipart/form-data:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/CM.Platform.Channels.ExternalModels.ApiClients.TextCore.WebhookConfiguration.MoHandlerV2PlatformLocation'
  /channels/v1/status:
    get:
      tags:
      - Status
      summary: Gets the status.
      operationId: Status_GetStatus
      responses:
        '200':
          description: OK
  /channels/v1/accounts/{accountId}/sms/{channelRequestId}/10dlc/brands:
    get:
      tags:
      - TenDlc
      summary: Get 10DLC brands.
      operationId: TenDlc_GetTenDlcBrandsAsync
      parameters:
      - name: accountId
        in: path
        description: The account identifier.
        required: true
        schema:
          type: string
          format: uuid
      - name: channelRequestId
        in: path
        description: The channel request identifier.
        required: true
        schema:
          type: string
          format: uuid
      - name: q
        in: query
        description: The q.
        required: false
        schema:
          type: string
      - name: status
        in: query
        description: The status.
        required: false
        explode: true
        schema:
          type: array
          items:
            type: string
            enum:
            - ACTIVE
            - PENDING
            - ELIGIBLE
            - NOT_VALIDATED
            - CUSTOMER_ACTION_REQUIRED
            - EXPIRED
            - REJECTED
            - CANCELLED
            - DELETED
      - name: skip
        in: query
        description: The skip.
        required: false
        schema:
          type: integer
          format: int32
      - name: take
        in: query
        description: The take.
        required: false
        schema:
          type: integer
          format: int32
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/CM.Platform.Channels.Models.ChannelTypes.Sms.ApiTenDlcBrandBase'
            text/json:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/CM.Platform.Channels.Models.ChannelTypes.Sms.ApiTenDlcBrandBase'
    post:
      tags:
      - TenDlc
      summary: Add 10DLC brand.
      operationId: TenDlc_AddTenDlcBrandAsync
      parameters:
      - name: accountId
        in: path
        description: The account identifier.
        required: true
        schema:
          type: string
          format: uuid
      - name: channelRequestId
        in: path
        description: The channel request identifier.
        required: true
        schema:
          type: string
          format: uuid
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/CM.Platform.Channels.Models.ChannelTypes.Sms.ApiTenDlcBrand'
            text/json:
              schema:
                $ref: '#/components/schemas/CM.Platform.Channels.Models.ChannelTypes.Sms.ApiTenDlcBrand'
            text/xml:
              schema:
                $ref: '#/components/schemas/CM.Platform.Channels.Models.ChannelTypes.Sms.ApiTenDlcBrand'
            multipart/form-data:
              schema:
                $ref: '#/components/schemas/CM.Platform.Channels.Models.ChannelTypes.Sms.ApiTenDlcBrand'
  /channels/v1/accounts/{accountId}/sms/{channelRequestId}/10dlc/brands/{brandId}:
    get:
      tags:
      - TenDlc
      summary: Get a 10DLC brand.
      operationId: TenDlc_GetTenDlcBrandAsync
      parameters:
      - name: accountId
        in: path
        description: The account identifier.
        required: true
        schema:
          type: string
          format: uuid
      - name: channelRequestId
        in: path
        description: The channel request identifier.
        required: true
        schema:
          type: string
          format: uuid
      - name: brandId
        in: path
        description: The brand identifier.
        required: true
        schema:
          type: string
          format: uuid
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/CM.Platform.Channels.Models.ChannelTypes.Sms.ApiTenDlcBrand'
            text/json:
              schema:
                $ref: '#/components/schemas/CM.Platform.Channels.Models.ChannelTypes.Sms.ApiTenDlcBrand'
            text/xml:
              schema:
                $ref: '#/components/schemas/CM.Platform.Channels.Models.ChannelTypes.Sms.ApiTenDlcBrand'
            multipart/form-data:
              schema:
                $ref: '#/components/schemas/CM.Platform.Channels.Models.ChannelTypes.Sms.ApiTenDlcBrand'
    delete:
      tags:
      - TenDlc
      summary: Cancel a 10DLC brand.
      operationId: TenDlc_CancelTenDlcBrandAsync
      parameters:
      - name: accountId
        in: path
        description: The account identifier.
        required: true
        schema:
          type: string
          format: uuid
      - name: channelRequestId
        in: path
        description: The channel request identifier.
        required: true
        schema:
          type: string
          format: uuid
      - name: brandId
        in: path
        description: The brand identifier.
        required: true
        schema:
          type: string
          format: uuid
      responses:
        '204':
          description: NoContent
  /channels/v1/accounts/{accountId}/sms/{channelRequestId}/10dlc/brands/{brandId}/forminput:
    get:
      tags:
      - TenDlc
      summary: Get 10DLC brand form input.
      operationId: TenDlc_GetTenDlcBrandFormInputAsync
      parameters:
      - name: accountId
        in: path
        description: The account identifier.
        required: true
        schema:
          type: string
          format: uuid
      - name: channelRequestId
        in: path
        description: The channel request identifier.
        required: true
        schema:
          type: string
          format: uuid
      - name: brandId
        in: path
        description: The brand identifier.
        required: true
        schema:
          type: string
          format: uuid
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/CM.Platform.Channels.Models.RequestForms.ApiRequestFormInputResponse'
            text/json:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/CM.Platform.Channels.Models.RequestForms.ApiRequestFormInputResponse'
            text/xml:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/CM.Platform.Channels.Models.RequestForms.ApiRequestFormInputResponse'
            multipart/form-data:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/CM.Platform.Channels.Models.RequestForms.ApiRequestFormInputResponse'
    put:
      tags:
      - TenDlc
      summary: Add 10DLC brand form input.
      operationId: TenDlc_AddTenDlcBrandFormInputAsync
      parameters:
      - name: accountId
        in: path
        description: The account identifier.
        required: true
        schema:
          type: string
          format: uuid
      - name: channelRequestId
        in: path
        description: The channel request identifier.
        required: true
        schema:
          type: string
          format: uuid
      - name: brandId
        in: path
        description: The brand identifier.
        required: true
        schema:
          type: string
          format: uuid
      requestBody:
        $ref: '#/components/requestBodies/CM.Platform.Channels.Models.RequestForms.ApiRequestFormInputRequestArray'
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/CM.Platform.Channels.Models.ChannelTypes.Sms.ApiTenDlcBrand'
            text/json:
              schema:
                $ref: '#/components/schemas/CM.Platform.Channels.Models.ChannelTypes.Sms.ApiTenDlcBrand'
            text/xml:
              schema:
                $ref: '#/components/schemas/CM.Platform.Channels.Models.ChannelTypes.Sms.ApiTenDlcBrand'
            multipart/form-data:
              schema:
                $ref: '#/components/schemas/CM.Platform.Channels.Models.ChannelTypes.Sms.ApiTenDlcBrand'
  /channels/v1/accounts/{accountId}/sms/{channelRequestId}/10dlc/brands/{brandId}/vetting:
    get:
      tags:
      - TenDlc
      summary: Gets the ten DLC brand vetting status asynchronous.
      operationId: TenDlc_GetTenDlcBrandVettingStatusAsync
      parameters:
      - name: accountId
        in: path
        description: The account identifier.
        required: true
        schema:
          type: string
          format: uuid
      - name: channelRequestId
        in: path
        description: The channel request identifier.
        required: true
        schema:
          type: string
          format: uuid
      - name: brandId
        in: path
        description: The brand identifier.
        required: true
        schema:
          type: string
          format: uuid
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/CM.Platform.Channels.Models.ChannelTypes.Sms.ApiTenDlcBrandVettingStatus'
            text/json:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/CM.Platform.Channels.Models.ChannelTypes.Sms.ApiTenDlcBrandVettingStatus'
            text/xml:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/CM.Platform.Channels.Models.ChannelTypes.Sms.ApiTenDlcBrandVettingStatus'
            multipart/form-data:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/CM.Platform.Channels.Models.ChannelTypes.Sms.ApiTenDlcBrandVettingStatus'
  /channels/v1/accounts/{accountId}/sms/{channelRequestId}/10dlc/campaigns:
    get:
      tags:
      - TenDlc
      summary: Gets the ten DLC campaigns asynchronous.
      operationId: TenDlc_GetTenDlcCampaignsAsync
      parameters:
      - name: accountId
        in: path
        description: The account identifier.
        required: true
        schema:
          type: string
          format: uuid
      - name: channelRequestId
        in: path
        description: The channel request identifier.
        required: true
        schema:
          type: string
          format: uuid
      - name: q
        in: query
        description: The q.
        required: false
        schema:
          type: string
      - name: status
        in: query
        description: The status.
        required: false
        explode: true
        schema:
          type: array
          items:
            type: string
            enum:
            - ACTIVE
            - PENDING
            - ELIGIBLE
            - NOT_VALIDATED
            - CUSTOMER_ACTION_REQUIRED
            - EXPIRED
            - REJECTED
            - CANCELLED
            - DELETED
      - name: skip
        in: query
        description: The skip.
        required: false
        schema:
          type: integer
          format: int32
      - name: take
        in: query
        description: The take.
        required: false
        schema:
          type: integer
          format: int32
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/CM.Platform.Channels.Models.ChannelTypes.Sms.ApiTenDlcCampaignBase'
            text/json:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/CM.Platform.Channels.Models.ChannelTypes.Sms.ApiTenDlcCampaignBase'
  /channels/v1/accounts/{accountId}/sms/{channelRequestId}/10dlc/brands/{brandId}/campaigns:
    get:
      tags:
      - TenDlc
      summary: Get 10DLC campaigns asynchronous.
      operationId: TenDlc_GetTenDlcCampaignsByBrandAsync
      parameters:
      - name: accountId
        in: path
        description: The account identifier.
        required: true
        schema:
          type: string
          format: uuid
      - name: channelRequestId
        in: path
        description: The channel request identifier.
        required: true
        schema:
          type: string
          format: uuid
      - name: brandId
        in: path
        description: The brand identifier.
        required: true
        schema:
          type: string
          format: uuid
      - name: q
        in: query
        description: The q.
        required: false
        schema:
          type: string
      - name: status
        in: query
        description: The status.
        required: false
        explode: true
        schema:
          type: array
          items:
            type: string
            enum:
            - ACTIVE
            - PENDING
            - ELIGIBLE
            - NOT_VALIDATED
            - CUSTOMER_ACTION_REQUIRED
            - EXPIRED
            - REJECTED
            - CANCELLED
            - DELETED
      - name: skip
        in: query
        description: The skip.
        required: false
        schema:
          type: integer
          format: int32
      - name: take
        in: query
        description: The take.
        required: false
        schema:
          type: integer
          format: int32
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/CM.Platform.Channels.Models.ChannelTypes.Sms.ApiTenDlcCampaignBase'
            text/json:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/CM.Platform.Channels.Models.ChannelTypes.Sms.ApiTenDlcCampaignBase'
    post:
      tags:
      - TenDlc
      summary: Add 10DLC campaign asynchronous.
      operationId: TenDlc_AddTenDlcCampaignAsync
      parameters:
      - name: accountId
        in: path
        description: The account identifier.
        required: true
        schema:
          type: string
          format: uuid
      - name: channelRequestId
        in: path
        description: The channel request identifier.
        required: true
        schema:
          type: string
          format: uuid
      - name: brandId
        in: path
        description: The brand identifier.
        required: true
        schema:
          type: string
          format: uuid
      responses:
        '201':
          description: Created
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/CM.Platform.Channels.Models.ChannelTypes.Sms.ApiTenDlcCampaign'
            text/json:
              schema:
                $ref: '#/components/schemas/CM.Platform.Channels.Models.ChannelTypes.Sms.ApiTenDlcCampaign'
            text/xml:
              schema:
                $ref: '#/components/schemas/CM.Platform.Channels.Models.ChannelTypes.Sms.ApiTenDlcCampaign'
            multipart/form-data:
              schema:
                $ref: '#/components/schemas/CM.Platform.Channels.Models.ChannelTypes.Sms.ApiTenDlcCampaign'
  /channels/v1/accounts/{accountId}/sms/{channelRequestId}/10dlc/brands/{brandId}/campaigns/{campaignId}:
    get:
      tags:
      - TenDlc
      summary: Get a 10DLC campaign asynchronous.
      operationId: TenDlc_GetTenDlcCampaignByBrandAsync
      parameters:
      - name: accountId
        in: path
        description: The account identifier.
        required: true
        schema:
          type: string
          format: uuid
      - name: channelRequestId
        in: path
        description: The channel request identifier.
        required: true
        schema:
          type: string
          format: uuid
      - name: brandId
        in: path
        description: The brand identifier.
        required: true
        schema:
          type: string
          format: uuid
      - name: campaignId
        in: path
        description: The campaign identifier.
        required: true
        schema:
          type: string
          format: uuid
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/CM.Platform.Channels.Models.ChannelTypes.Sms.ApiTenDlcCampaign'
            text/json:
              schema:
                $ref: '#/components/schemas/CM.Platform.Channels.Models.ChannelTypes.Sms.ApiTenDlcCampaign'
            text/xml:
              schema:
                $ref: '#/components/schemas/CM.Platform.Channels.Models.ChannelTypes.Sms.ApiTenDlcCampaign'
            multipart/form-data:
              schema:
                $ref: '#/components/schemas/CM.Platform.Channels.Models.ChannelTypes.Sms.ApiTenDlcCampaign'
    delete:
      tags:
      - TenDlc
      summary: Cancel a 10DLC campaign asynchronous.
      operationId: TenDlc_CancelTenDlcCampaignAsync
      parameters:
      - name: accountId
        in: path
        description: The account identifier.
        required: true
        schema:
          type: string
          format: uuid
      - name: channelRequestId
        in: path
        description: The channel request identifier.
        required: true
        schema:
          type: string
          format: uuid
      - name: brandId
        in: path
        description: The brand identifier.
        required: true
        schema:
          type: string
          format: uuid
      - name: campaignId
        in: path
        description: The campaign identifier.
        required: true
        schema:
          type: string
          format: uuid
      responses:
        '204':
          description: NoContent
  /channels/v1/accounts/{accountId}/sms/{channelRequestId}/10dlc/brands/{brandId}/campaigns/{campaignId}/forminput:
    get:
      tags:
      - TenDlc
      summary: Get 10DLC campaign form input asynchronous.
      operationId: TenDlc_GetTenDlcCampaignFormInputAsync
      parameters:
      - name: accountId
        in: path
        description: The account identifier.
        required: true
        schema:
          type: string
          format: uuid
      - name: channelRequestId
        in: path
        description: The channel request identifier.
        required: true
        schema:
          type: string
          format: uuid
      - name: brandId
        in: path
        description: The brand identifier.
        required: true
        schema:
          type: string
          format: uuid
      - name: campaignId
        in: path
        description: The campaign identifier.
        required: true
        schema:
          type: string
          format: uuid
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/CM.Platform.Channels.Models.RequestForms.ApiChannelRequestFormInputResponse'
            text/json:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/CM.Platform.Channels.Models.RequestForms.ApiChannelRequestFormInputResponse'
            text/xml:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/CM.Platform.Channels.Models.RequestForms.ApiChannelRequestFormInputResponse'
            multipart/form-data:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/CM.Platform.Channels.Models.RequestForms.ApiChannelRequestFormInputResponse'
    put:
      tags:
      - TenDlc
      summary: Add 10DLC campaign form input asynchronous.
      operationId: TenDlc_AddTenDlcCampaignFormInputAsync
      parameters:
      - name: accountId
        in: path
        description: The account identifier.
        required: true
        schema:
          type: string
          format: uuid
      - name: channelRequestId
        in: path
        description: The channel request identifier.
        required: true
        schema:
          type: string
          format: uuid
      - name: brandId
        in: path
        description: The brand identifier.
        required: true
        schema:
          type: string
          format: uuid
      - name: campaignId
        in: path
        description: The campaign identifier.
        required: true
        schema:
          type: string
          format: uuid
      requestBody:
        $ref: '#/components/requestBodies/CM.Platform.Channels.Models.RequestForms.ApiRequestFormInputRequestArray'
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/CM.Platform.Channels.Models.ChannelTypes.Sms.ApiTenDlcCampaign'
            text/json:
              schema:
                $ref: '#/components/schemas/CM.Platform.Channels.Models.ChannelTypes.Sms.ApiTenDlcCampaign'
            text/xml:
              schema:
                $ref: '#/components/schemas/CM.Platform.Channels.Models.ChannelTypes.Sms.ApiTenDlcCampaign'
            multipart/form-data:
              schema:
                $ref: '#/components/schemas/CM.Platform.Channels.Models.ChannelTypes.Sms.ApiTenDlcCampaign'
  /channels/v1/accounts/{accountId}/sms/{channelRequestId}/10dlc/campaigns/{campaignId}:
    get:
      tags:
      - TenDlc
      summary: Search for a 10DLC campaign.
      operationId: TenDlc_GetTenDlcCampaignAsync
      parameters:
      - name: accountId
        in: path
        description: The account identifier.
        required: true
        schema:
          type: string
          format: uuid
      - name: channelRequestId
        in: path
        description: The channel request identifier.
        required: true
        schema:
          type: string
          format: uuid
      - name: campaignId
        in: path
        description: The campaign identifier.
        required: true
        schema:
          type: string
          format: uuid
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/CM.Platform.Channels.Models.ChannelTypes.Sms.ApiTenDlcCampaignBase'
            text/json:
              schema:
                $ref: '#/components/schemas/CM.Platform.Channels.Models.ChannelTypes.Sms.ApiTenDlcCampaignBase'
            text/xml:
              schema:
                $ref: '#/components/schemas/CM.Platform.Channels.Models.ChannelTypes.Sms.ApiTenDlcCampaignBase'
            multipart/form-data:
              schema:
                $ref: '#/components/schemas/CM.Platform.Channels.Models.ChannelTypes.Sms.ApiTenDlcCampaignBase'
  /channels/v1/accounts/{accountId}/trials/messaging/status:
    get:
      tags:
      - Trials
      summary: Get a trial status.
      operationId: Trials_GetMessagingTrialStatusAsync
      parameters:
      - name: accountId
        in: path
        description: The account identifier.
        required: true
        schema:
          type: string
          format: uuid
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/CM.Platform.Channels.Models.Channels.ApiTrialStatus'
            text/json:
              schema:
                $ref: '#/components/schemas/CM.Platform.Channels.Models.Channels.ApiTrialStatus'
            text/xml:
              schema:
                $ref: '#/components/schemas/CM.Platform.Channels.Models.Channels.ApiTrialStatus'
            multipart/form-data:
              schema:
                $ref: '#/components/schemas/CM.Platform.Channels.Models.Channels.ApiTrialStatus'
  /channels/v1/accounts/{accountId}/trials/messaging/whitelist:
    get:
      tags:
      - Trials
      summary: Get Messaging trial number whitelist.
      operationId: Trials_GetMessagingTrialNumberWhitelistAsync
      parameters:
      - name: accountId
        in: path
        description: The account identifier.
        required: true
        schema:
          type: string
          format: uuid
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                type: array
                items:
                  type: string
            text/json:
              schema:
                type: array
                items:
                  type: string
            text/xml:
              schema:
                type: array
                items:
                  type: string
            multipart/form-data:
              schema:
                type: array
                items:
                  type: string
  /channels/v1/accounts/{accountId}/trials/messaging/whitelist/{number}:
    post:
      tags:
      - Trials
      summary: Adds a Messaging trial whitelisted number.
      operationId: Trials_AddMessagingTrialWhitelistNumberAsync
      parameters:
      - name: accountId
        in: path
        description: The account identifier.
        required: true
        schema:
          type: string
          format: uuid
      - name: number
        in: path
        description: The number.
        required: true
        schema:
          type: string
      responses:
        '201':
          description: Created
          content:
            application/json:
              schema:
                type: array
                items:
                  type: string
            text/json:
              schema:
                type: array
                items:
                  type: string
            text/xml:
              schema:
                type: array
                items:
                  type: string
            multipart/form-data:
              schema:
                type: array
                items:
                  type: string
    delete:
      tags:
      - Trials
      summary: Delete a Messaging trial whitelisted number.
      operationId: Trials_DeleteMessagingTrialWhitelistNumberAsync
      parameters:
      - name: accountId
        in: path
        description: The account identifier.
        required: true
        schema:
          type: string
          format: uuid
      - name: number
        in: path
        description: The number.
        required: true
        schema:
          type: string
      responses:
        '204':
          description: NoContent
  /channels/v1/accounts/{accountId}/twitter/{channelRequestId}/accounts:
    get:
      tags:
      - Twitter
      summary: Gets the accounts asynchronous.
      operationId: Twitter_GetTwitterAccountsAsync
      parameters:
      - name: accountId
        in: path
        description: The account identifier.
        required: true
        schema:
          type: string
          format: uuid
      - name: channelRequestId
        in: path
        description: The channel request identifier.
        required: true
        schema:
          type: string
          format: uuid
      - name: q
        in: query
        description: The q.
        required: false
        schema:
          type: string
      - name: status
        in: query
        description: The status.
        required: false
        explode: true
        schema:
          type: array
          items:
            type: string
            enum:
            - ACTIVE
            - PENDING
            - ELIGIBLE
            - NOT_VALIDATED
            - CUSTOMER_ACTION_REQUIRED
            - EXPIRED
            - REJECTED
            - CANCELLED
            - DELETED
      - name: skip
        in: query
        description: The skip.
        required: false
        schema:
          type: integer
          format: int32
      - name: take
        in: query
        description: The take.
        required: false
        schema:
          type: integer
          format: int32
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/CM.Platform.Channels.Models.ChannelTypes.Twitter.ApiTwitterAccountBase'
            text/json:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/CM.Platform.Channels.Models.ChannelTypes.Twitter.ApiTwitterAccountBase'
    post:
      tags:
      - Twitter
      summary: Adds the account asynchronous.
      operationId: Twitter_AddTwitterAccountAsync
      parameters:
      - name: accountId
        in: path
        description: The account identifier.
        required: true
        schema:
          type: string
          format: uuid
      - name: channelRequestId
        in: path
        description: The channel request identifier.
        required: true
        schema:
          type: string
          format: uuid
      - name: simulate
        in: query
        description: if set to true [simulate].
        required: false
        schema:
          type: boolean
      responses:
        '201':
          description: Created
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/CM.Platform.Channels.Models.ChannelTypes.Twitter.ApiTwitterAccount'
            text/json:
              schema:
                $ref: '#/components/schemas/CM.Platform.Channels.Models.ChannelTypes.Twitter.ApiTwitterAccount'
  /channels/v1/accounts/{accountId}/twitter/{channelRequestId}/accounts/{twitterAccountId}:
    get:
      tags:
      - Twitter
      summary: Gets the account asynchronous.
      operationId: Twitter_GetTwitterAccountAsync
      parameters:
      - name: accountId
        in: path
        description: The account identifier.
        required: true
        schema:
          type: string
          format: uuid
      - name: channelRequestId
        in: path
        description: The channel request identifier.
        required: true
        schema:
          type: string
          format: uuid
      - name: twitterAccountId
        in: path
        description: The account identifier.
        required: true
        schema:
          type: string
          format: uuid
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/CM.Platform.Channels.Models.ChannelTypes.Twitter.ApiTwitterAccount'
            text/json:
              schema:
                $ref: '#/components/schemas/CM.Platform.Channels.Models.ChannelTypes.Twitter.ApiTwitterAccount'
            text/xml:
              schema:
                $ref: '#/components/schemas/CM.Platform.Channels.Models.ChannelTypes.Twitter.ApiTwitterAccount'
            multipart/form-data:
              schema:
                $ref: '#/components/schemas/CM.Platform.Channels.Models.ChannelTypes.Twitter.ApiTwitterAccount'
    delete:
      tags:
      - Twitter
      summary: Deletes a Twitter account.
      operationId: Twitter_DeleteAccountAsync
      parameters:
      - name: accountId
        in: path
        description: The account identifier.
        required: true
        schema:
          type: string
          format: uuid
      - name: twitterAccountId
        in: path
        description: The twitter account identifier.
        required: true
        schema:
          type: string
          format: uuid
      - name: channelRequestId
        in: path
        description: The channel request identifier.
        required: true
        schema:
          type: string
          format: uuid
      responses:
        '204':
          description: NoContent
  /channels/v1/accounts/{accountId}/twitter/{channelRequestId}/accounts/{twitterAccountId}/forminput:
    get:
      tags:
      - Twitter
      summary: Gets the account form input asynchronous.
      operationId: Twitter_GetTwitterAccountFormInputAsync
      parameters:
      - name: accountId
        in: path
        description: The account identifier.
        required: true
        schema:
          type: string
          format: uuid
      - name: channelRequestId
        in: path
        description: The channel request identifier.
        required: true
        schema:
          type: string
          format: uuid
      - name: twitterAccountId
        in: path
        description: The account identifier.
        required: true
        schema:
          type: string
          format: uuid
      responses:
        '202':
          description: Accepted
          content:
            application/json:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/CM.Platform.Channels.Models.RequestForms.ApiChannelRequestFormInputResponse'
            text/json:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/CM.Platform.Channels.Models.RequestForms.ApiChannelRequestFormInputResponse'
            text/xml:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/CM.Platform.Channels.Models.RequestForms.ApiChannelRequestFormInputResponse'
            multipart/form-data:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/CM.Platform.Channels.Models.RequestForms.ApiChannelRequestFormInputResponse'
    put:
      tags:
      - Twitter
      summary: Adds the account form input asynchronous.
      operationId: Twitter_AddTwitterAccountFormInputAsync
      parameters:
      - name: accountId
        in: path
        description: The account identifier.
        required: true
        schema:
          type: string
          format: uuid
      - name: channelRequestId
        in: path
        description: The channel request identifier.
        required: true
        schema:
          type: string
          format: uuid
      - name: twitterAccountId
        in: path
        description: The account identifier.
        required: true
        schema:
          type: string
          format: uuid
      requestBody:
        $ref: '#/components/requestBodies/CM.Platform.Channels.Models.RequestForms.ApiRequestFormInputRequestArray'
      responses:
        '202':
          description: Accepted
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/CM.Platform.Channels.Models.ChannelTypes.Twitter.ApiTwitterAccount'
            text/json:
              schema:
                $ref: '#/components/schemas/CM.Platform.Channels.Models.ChannelTypes.Twitter.ApiTwitterAccount'
            text/xml:
              schema:
                $ref: '#/components/schemas/CM.Platform.Channels.Models.ChannelTypes.Twitter.ApiTwitterAccount'
            multipart/form-data:
              schema:
                $ref: '#/components/schemas/CM.Platform.Channels.Models.ChannelTypes.Twitter.ApiTwitterAccount'
  /channels/v1/accounts/{accountId}/twitter/oauth/authorize:
    get:
      tags:
      - Twitter
      summary: Get the OAuth url for Twitter authorization
      operationId: Twitter_GetTwitterAccountAuthenticationUrlAsync
      parameters:
      - name: accountId
        in: path
        description: The account identifier
        required: true
        schema:
          type: string
          format: uuid
      - name: twitterAccountId
        in: query
        description: The twitter account identifier
        required: true
        schema:
          type: string
          format: uuid
      - name: environment
        in: query
        description: The front-end environment
        required: true
        schema:
          type: string
          enum:
          - TEST
          - BETA
          - PRODUCTION
      responses:
        '200':
          description: OK
  /channels/v1/accounts/{accountId}/twitter/oauth/verify:
    put:
      tags:
      - Twitter
      summary: Finish authorization to verify Twitter account
      operationId: Twitter_VerifyTwitterAccountAsync
      parameters:
      - name: accountId
        in: path
        description: The account identifier
        required: true
        schema:
          type: string
          format: uuid
      - name: twitterAccountId
        in: query
        description: The twitter account identifier
        required: true
        schema:
          type: string
          format: uuid
      - name: oAuthToken
        in: query
        description: The oAuth token
        required: true
        schema:
          type: string
      - name: oAuthTokenSecret
        in: query
        description: The oAuth token secret
        required: true
        schema:
          type: string
      - name: oAuthVerifier
        in: query
        description: The oAuth verifier
        required: true
        schema:
          type: string
      responses:
        '200':
          description: OK
  /channels/v1/accounts/{accountId}/vsms/{channelRequestId}/account:
    get:
      tags:
      - VerifiedSms
      summary: Gets the account asynchronous.
      operationId: VerifiedSms_GetVSmsAccountAsync
      parameters:
      - name: accountId
        in: path
        description: The account identifier.
        required: true
        schema:
          type: string
          format: uuid
      - name: channelRequestId
        in: path
        description: The channel request identifier.
        required: true
        schema:
          type: string
          format: uuid
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/CM.Platform.Channels.Models.ChannelTypes.vSms.ApiVSmsAccount'
            text/json:
              schema:
                $ref: '#/components/schemas/CM.Platform.Channels.Models.ChannelTypes.vSms.ApiVSmsAccount'
            text/xml:
              schema:
                $ref: '#/components/schemas/CM.Platform.Channels.Models.ChannelTypes.vSms.ApiVSmsAccount'
            multipart/form-data:
              schema:
                $ref: '#/components/schemas/CM.Platform.Channels.Models.ChannelTypes.vSms.ApiVSmsAccount'
  /channels/v1/accounts/{accountId}/vsms/{channelRequestId}/account/forminput:
    get:
      tags:
      - VerifiedSms
      summary: Gets the account form input asynchronous.
      operationId: VerifiedSms_GetVSmsAccountFormInputAsync
      parameters:
      - name: accountId
        in: path
        description: The account identifier.
        required: true
        schema:
          type: string
          format: uuid
      - name: channelRequestId
        in: path
        description: The channel request identifier.
        required: true
        schema:
          type: string
          format: uuid
      responses:
        '202':
          description: Accepted
          content:
            application/json:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/CM.Platform.Channels.Models.RequestForms.ApiChannelRequestFormInputResponse'
            text/json:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/CM.Platform.Channels.Models.RequestForms.ApiChannelRequestFormInputResponse'
            text/xml:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/CM.Platform.Channels.Models.RequestForms.ApiChannelRequestFormInputResponse'
            multipart/form-data:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/CM.Platform.Channels.Models.RequestForms.ApiChannelRequestFormInputResponse'
  /channels/v1/accounts/{accountId}/vsms/{channelRequestId}/account/{vSmsAccountId}/forminput:
    put:
      tags:
      - VerifiedSms
      summary: Adds the account form input asynchronous.
      operationId: VerifiedSms_AddVSmsAccountFormInputAsync
      parameters:
      - name: accountId
        in: path
        description: The account identifier.
        required: true
        schema:
          type: string
          format: uuid
      - name: channelRequestId
        in: path
        description: The channel request identifier.
        required: true
        schema:
          type: string
          format: uuid
      - name: vSmsAccountId
        in: path
        description: The v SMS account identifier.
        required: true
        schema:
          type: string
          format: uuid
      requestBody:
        $ref: '#/components/requestBodies/CM.Platform.Channels.Models.RequestForms.ApiRequestFormInputRequestArray'
      responses:
        '202':
          description: Accepted
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/CM.Platform.Channels.Models.ChannelTypes.vSms.ApiVSmsAccount'
            text/json:
              schema:
                $ref: '#/components/schemas/CM.Platform.Channels.Models.ChannelTypes.vSms.ApiVSmsAccount'
            text/xml:
              schema:
                $ref: '#/components/schemas/CM.Platform.Channels.Models.ChannelTypes.vSms.ApiVSmsAccount'
            multipart/form-data:
              schema:
                $ref: '#/components/schemas/CM.Platform.Channels.Models.ChannelTypes.vSms.ApiVSmsAccount'
  /channels/v1/accounts/{accountId}/viber/{channelRequestId}/account:
    get:
      tags:
      - Viber
      summary: Gets the account asynchronous.
      operationId: Viber_GetViberAccountAsync
      parameters:
      - name: accountId
        in: path
        description: The account identifier.
        required: true
        schema:
          type: string
          format: uuid
      - name: channelRequestId
        in: path
        description: The channel request identifier.
        required: true
        schema:
          type: string
          format: uuid
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/CM.Platform.Channels.Models.ChannelTypes.Viber.ApiViberAccount'
            text/json:
              schema:
                $ref: '#/components/schemas/CM.Platform.Channels.Models.ChannelTypes.Viber.ApiViberAccount'
            text/xml:
              schema:
                $ref: '#/components/schemas/CM.Platform.Channels.Models.ChannelTypes.Viber.ApiViberAccount'
            multipart/form-data:
              schema:
                $ref: '#/components/schemas/CM.Platform.Channels.Models.ChannelTypes.Viber.ApiViberAccount'
    post:
      tags:
      - Viber
      summary: Adds the viber account asynchronous.
      operationId: Viber_AddViberAccountAsync
      parameters:
      - name: accountId
        in: path
        description: The account identifier.
        required: true
        schema:
          type: string
          format: uuid
      - name: channelRequestId
        in: path
        description: The channel request identifier.
        required: true
        schema:
          type: string
          format: uuid
      responses:
        '201':
          description: Created
  /channels/v1/accounts/{accountId}/viber/{channelRequestId}/account/forminput:
    get:
      tags:
      - Viber
      summary: Gets the account form input asynchronous.
      operationId: Viber_GetViberAccountFormInputAsync
      parameters:
      - name: accountId
        in: path
        description: The account identifier.
        required: true
        schema:
          type: string
          format: uuid
      - name: channelRequestId
        in: path
        description: The channel request identifier.
        required: true
        schema:
          type: string
          format: uuid
      responses:
        '202':
          description: Accepted
          content:
            application/json:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/CM.Platform.Channels.Models.RequestForms.ApiChannelRequestFormInputResponse'
            text/json:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/CM.Platform.Channels.Models.RequestForms.ApiChannelRequestFormInputResponse'
            text/xml:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/CM.Platform.Channels.Models.RequestForms.ApiChannelRequestFormInputResponse'
            multipart/form-data:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/CM.Platform.Channels.Models.RequestForms.ApiChannelRequestFormInputResponse'
  /channels/v1/accounts/{accountId}/viber/{channelRequestId}/account/{viberAccountId}/forminput:
    put:
      tags:
      - Viber
      summary: Adds the account form input asynchronous.
      operationId: Viber_AddViberAccountFormInputAsync
      parameters:
      - name: accountId
        in: path
        description: The account identifier.
        required: true
        schema:
          type: string
          format: uuid
      - name: channelRequestId
        in: path
        description: The channel request identifier.
        required: true
        schema:
          type: string
          format: uuid
      - name: viberAccountId
        in: path
        description: The viber account identifier.
        required: true
        schema:
          type: string
          format: uuid
      requestBody:
        $ref: '#/components/requestBodies/CM.Platform.Channels.Models.RequestForms.ApiRequestFormInputRequestArray'
      responses:
        '202':
          description: Accepted
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/CM.Platform.Channels.Models.ChannelTypes.Viber.ApiViberAccount'
            text/json:
              schema:
                $ref: '#/components/schemas/CM.Platform.Channels.Models.ChannelTypes.Viber.ApiViberAccount'
            text/xml:
              schema:
                $ref: '#/components/schemas/CM.Platform.Channels.Models.ChannelTypes.Viber.ApiViberAccount'
            multipart/form-data:
              schema:
                $ref: '#/components/schemas/CM.Platform.Channels.Models.ChannelTypes.Viber.ApiViberAccount'
  /channels/v1/accounts/{accountId}/whatsapp/{channelRequestId}/businessaccount/marketingliteapi/eligibility:
    get:
      tags:
      - WhatsApp
      summary: Get a WhatsApp business account's marketing lite API eligibility status.
      operationId: WhatsApp_GetBusinessAccountMarketingLiteApiEligibilityStatusAsync
      parameters:
      - name: accountId
        in: path
        description: The account identifier.
        required: true
        schema:
          type: string
          format: uuid
      - name: channelRequestId
        in: path
        description: The channel request identifier.
        required: true
        schema:
          type: string
          format: uuid
      - name: forceMetaStatusUpdate
        in: query
        description: The force meta status update.
        required: false
        schema:
          type: boolean
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/CM.Platform.Channels.Models.ChannelTypes.WhatsApp.ApiWhatsAppBusinessAccountMarketingLiteApiEligibility'
            text/json:
              schema:
                $ref: '#/components/schemas/CM.Platform.Channels.Models.ChannelTypes.WhatsApp.ApiWhatsAppBusinessAccountMarketingLiteApiEligibility'
            text/xml:
              schema:
                $ref: '#/components/schemas/CM.Platform.Channels.Models.ChannelTypes.WhatsApp.ApiWhatsAppBusinessAccountMarketingLiteApiEligibility'
            multipart/form-data:
              schema:
                $ref: '#/components/schemas/CM.Platform.Channels.Models.ChannelTypes.WhatsApp.ApiWhatsAppBusinessAccountMarketingLiteApiEligibility'
  /channels/v1/accounts/{accountId}/whatsapp/{channelRequestId}/businessaccount/marketingliteapi/business/onboard:
    post:
      tags:
      - WhatsApp
      summary: Start a WhatsApp business account's Meta business marketing lite API onboarding.
      operationId: WhatsApp_StartBusinessAccountMarketingLiteApiBusinessOnboardingAsync
      parameters:
      - name: accountId
        in: path
        description: The account identifier.
        required: true
        schema:
          type: string
          format: uuid
      - name: channelRequestId
        in: path
        description: The channel request identifier.
        required: true
        schema:
          type: string
          format: uuid
      responses:
        '204':
          description: NoContent
  /channels/v1/accounts/{accountId}/whatsapp/{channelRequestId}/businessaccount/marketingliteapi/eligibility/numbers:
    post:
      tags:
      - WhatsApp
      summary: Get WhatsApp business account numbers' marketing lite API eligibility status.
      operationId: WhatsApp_GetBusinessAccountMarketingLiteApiNumberEligibilityStatusAsync
      parameters:
      - name: accountId
        in: path
        description: The account identifier.
        required: true
        schema:
          type: string
          format: uuid
      - name: channelRequestId
        in: path
        description: The channel request identifier.
        required: true
        schema:
          type: string
          format: uuid
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/CM.Platform.Channels.Models.ChannelTypes.WhatsApp.ApiWhatsAppBusinessAccountMarketingLiteApiNumberEligibility'
            text/json:
              schema:
                $ref: '#/components/schemas/CM.Platform.Channels.Models.ChannelTypes.WhatsApp.ApiWhatsAppBusinessAccountMarketingLiteApiNumberEligibility'
            text/xml:
              schema:
                $ref: '#/components/schemas/CM.Platform.Channels.Models.ChannelTypes.WhatsApp.ApiWhatsAppBusinessAccountMarketingLiteApiNumberEligibility'
            multipart/form-data:
              schema:
                $ref: '#/components/schemas/CM.Platform.Channels.Models.ChannelTypes.WhatsApp.ApiWhatsAppBusinessAccountMarketingLiteApiNumberEligibility'
  /channels/v1/accounts/{accountId}/whatsapp/{channelRequestId}/businessaccount/marketingliteapi/numbers/{numberId}/onboard:
    post:
      tags:
      - WhatsApp
      summary: Start a WhatsApp business account eligible number's marketing lite API onboarding.
      operationId: WhatsApp_StartBusinessAccountMarketingLiteApiEligibleNumberOnboardingAsync
      parameters:
      - name: accountId
        in: path
        description: The account identifier.
        required: true
        schema:
          type: string
          format: uuid
      - name: channelRequestId
        in: path
        description: The channel request identifier.
        required: true
        schema:
          type: string
          format: uuid
      - name: numberId
        in: path
        description: The number identifier.
        required: true
        schema:
          type: string
      responses:
        '204':
          description: NoContent
  /channels/v1/accounts/{accountId}/whatsapp/embeddedsignup/accesstoken:
    post:
      tags:
      - WhatsApp
      summary: Processes an embedded sign up session token.
      operationId: WhatsApp_ProcessEmbeddedSignUpSessionTokenAsync
      parameters:
      - name: accountId
        in: path
        description: The account identifier.
        required: true
        schema:
          type: string
          format: uuid
      - name: userAccessToken
        in: query
        description: The user access token.
        required: true
        schema:
          type: string
      responses:
        '202':
          description: Accepted
          content:
            application/json:
              schema:
                type: string
            text/json:
              schema:
                type: string
            text/xml:
              schema:
                type: string
            multipart/form-data:
              schema:
                type: string
  /channels/v1/accounts/{accountId}/whatsapp/embeddedsignup/code:
    post:
      tags:
      - WhatsApp
      summary: Processes the embedded sign up session code asynchronous.
      operationId: WhatsApp_ProcessEmbeddedSignUpSessionCodeAsync
      parameters:
      - name: accountId
        in: path
        description: The account identifier.
        required: true
        schema:
          type: string
          format: uuid
      - name: sessionCode
        in: query
        description: The session code.
        required: true
        schema:
          type: string
      responses:
        '202':
          description: Accepted
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/CM.Platform.Channels.Models.ChannelTypes.WhatsApp.ApiWhatsAppBusinessAccountEmbeddedSignupSessionCodeResponse'
            text/json:
              schema:
                $ref: '#/components/schemas/CM.Platform.Channels.Models.ChannelTypes.WhatsApp.ApiWhatsAppBusinessAccountEmbeddedSignupSessionCodeResponse'
            text/xml:
              schema:
                $ref: '#/components/schemas/CM.Platform.Channels.Models.ChannelTypes.WhatsApp.ApiWhatsAppBusinessAccountEmbeddedSignupSessionCodeResponse'
            multipart/form-data:
              schema:
                $ref: '#/components/schemas/CM.Platform.Channels.Models.ChannelTypes.WhatsApp.ApiWhatsAppBusinessAccountEmbeddedSignupSessionCodeResponse'
  /channels/v1/accounts/{accountId}/whatsapp/{channelRequestId}/businessaccount:
    get:
      tags:
      - WhatsApp
      summary: Gets a WhatsApp business account.
      operationId: WhatsApp_GetBusinessAccountAsync
      parameters:
      - name: accountId
        in: path
        description: The account identifier.
        required: true
        schema:
          type: string
          format: uuid
      - name: channelRequestId
        in: path
        description: The channel request identifier.
        required: true
        schema:
          type: string
          format: uuid
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/CM.Platform.Channels.Models.ChannelTypes.WhatsApp.ApiWhatsAppBusinessAccount'
            text/json:
              schema:
                $ref: '#/components/schemas/CM.Platform.Channels.Models.ChannelTypes.WhatsApp.ApiWhatsAppBusinessAccount'
            text/xml:
              schema:
                $ref: '#/components/schemas/CM.Platform.Channels.Models.ChannelTypes.WhatsApp.ApiWhatsAppBusinessAccount'
            multipart/form-data:
              schema:
                $ref: '#/components/schemas/CM.Platform.Channels.Models.ChannelTypes.WhatsApp.ApiWhatsAppBusinessAccount'
    post:
      tags:
      - WhatsApp
      summary: Adds the business account asynchronous.
      operationId: WhatsApp_AddBusinessAccountAsync
      parameters:
      - name: accountId
        in: path
        description: The account identifier.
        required: true
        schema:
          type: string
          format: uuid
      - name: channelRequestId
        in: path
        description: The channel request identifier.
        required: true
        schema:
          type: string
          format: uuid
      - name: facebookId
        in: query
        description: The whats application business account identifier.
        required: false
        schema:
          type: string
      - name: businessIntegrationAccessToken
        in: query
        description: The business integration access token.
        required: false
        schema:
          type: string
      responses:
        '201':
          description: Created
  /channels/v1/accounts/{accountId}/whatsapp/{channelRequestId}/businessaccount/forminput:
    get:
      tags:
      - WhatsApp
      summary: Gets the business account form input asynchronous.
      operationId: WhatsApp_GetBusinessAccountFormInputAsync
      parameters:
      - name: accountId
        in: path
        description: The account identifier.
        required: true
        schema:
          type: string
          format: uuid
      - name: channelRequestId
        in: path
        description: The channel request identifier.
        required: true
        schema:
          type: string
          format: uuid
      responses:
        '202':
          description: Accepted
          content:
            application/json:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/CM.Platform.Channels.Models.RequestForms.ApiChannelRequestFormInputResponse'
            text/json:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/CM.Platform.Channels.Models.RequestForms.ApiChannelRequestFormInputResponse'
            text/xml:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/CM.Platform.Channels.Models.RequestForms.ApiChannelRequestFormInputResponse'
            multipart/form-data:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/CM.Platform.Channels.Models.RequestForms.ApiChannelRequestFormInputResponse'
  /channels/v1/accounts/{accountId}/whatsapp/{channelRequestId}/businessaccount/{businessAccountId}/forminput:
    put:
      tags:
      - WhatsApp
      summary: Adds WhatsApp business account form input.
      operationId: WhatsApp_AddBusinessAccountFormInputAsync
      parameters:
      - name: accountId
        in: path
        description: The account identifier.
        required: true
        schema:
          type: string
          format: uuid
      - name: channelRequestId
        in: path
        description: The channel request identifier.
        required: true
        schema:
          type: string
          format: uuid
      - name: businessAccountId
        in: path
        description: The business account identifier.
        required: true
        schema:
          type: string
          format: uuid
      requestBody:
        $ref: '#/components/requestBodies/CM.Platform.Channels.Models.RequestForms.ApiRequestFormInputRequestArray'
      responses:
        '202':
          description: Accepted
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/CM.Platform.Channels.Models.ChannelTypes.WhatsApp.ApiWhatsAppBusinessAccount'
            text/json:
              schema:
                $ref: '#/components/schemas/CM.Platform.Channels.Models.ChannelTypes.WhatsApp.ApiWhatsAppBusinessAccount'
            text/xml:
              schema:
                $ref: '#/components/schemas/CM.Platform.Channels.Models.ChannelTypes.WhatsApp.ApiWhatsAppBusinessAccount'
            multipart/form-data:
              schema:
                $ref: '#/components/schemas/CM.Platform.Channels.Models.ChannelTypes.WhatsApp.ApiWhatsAppBusinessAccount'
  /channels/v1/accounts/{accountId}/whatsapp/supportedlanguages:
    get:
      tags:
      - WhatsApp
      summary: Gets the WhatsApp supported languages.
      operationId: WhatsApp_GetWhatsAppSupportedLanguagesAsync
      parameters:
      - name: accountId
        in: path
        description: The account identifier.
        required: true
        schema:
          type: string
          format: uuid
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/CM.Platform.Channels.Models.ChannelTypes.WhatsApp.ApiWhatsAppSupportedLanguage'
            text/json:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/CM.Platform.Channels.Models.ChannelTypes.WhatsApp.ApiWhatsAppSupportedLanguage'
            text/xml:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/CM.Platform.Channels.Models.ChannelTypes.WhatsApp.ApiWhatsAppSupportedLanguage'
            multipart/form-data:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/CM.Platform.Channels.Models.ChannelTypes.WhatsApp.ApiWhatsAppSupportedLanguage'
  /channels/v1/accounts/{accountId}/whatsapp/{channelRequestId}/profiles/{profileId}/conversationalcomponents:
    get:
      tags:
      - WhatsApp
      summary: Get a profile's conversational components.
      operationId: WhatsApp_GetProfileConversationalComponentsAsync
      parameters:
      - name: accountId
        in: path
        description: The account identifier.
        required: true
        schema:
          type: string
          format: uuid
      - name: channelRequestId
        in: path
        description: The channel request identifier.
        required: true
        schema:
          type: string
          format: uuid
      - name: profileId
        in: path
        description: The profile identifier.
        required: true
        schema:
          type: string
          format: uuid
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/CM.Platform.Channels.Models.ChannelTypes.WhatsApp.ApiWhatsAppProfileConversationalComponents'
            text/json:
              schema:
                $ref: '#/components/schemas/CM.Platform.Channels.Models.ChannelTypes.WhatsApp.ApiWhatsAppProfileConversationalComponents'
            text/xml:
              schema:
                $ref: '#/components/schemas/CM.Platform.Channels.Models.ChannelTypes.WhatsApp.ApiWhatsAppProfileConversationalComponents'
            multipart/form-data:
              schema:
                $ref: '#/components/schemas/CM.Platform.Channels.Models.ChannelTypes.WhatsApp.ApiWhatsAppProfileConversationalComponents'
    put:
      tags:
      - WhatsApp
      summary: Update a profile's conversational components.
      operationId: WhatsApp_UpdateProfileConversationalComponentsAsync
      parameters:
      - name: accountId
        in: path
        description: The account identifier.
        required: true
        schema:
          type: string
          format: uuid
      - name: channelRequestId
        in: path
        description: The channel request identifier.
        required: true
        schema:
          type: string
          format: uuid
      - name: profileId
        in: path
        description: The profile identifier.
        required: true
        schema:
          type: string
          format: uuid
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/CM.Platform.Channels.Models.ChannelTypes.WhatsApp.ApiWhatsAppProfileConversationalComponents'
          text/json:
            schema:
              $ref: '#/components/schemas/CM.Platform.Channels.Models.ChannelTypes.WhatsApp.ApiWhatsAppProfileConversationalComponents'
          text/xml:
            schema:
              $ref: '#/components/schemas/CM.Platform.Channels.Models.ChannelTypes.WhatsApp.ApiWhatsAppProfileConversationalComponents'
          multipart/form-data:
            schema:
              $ref: '#/components/schemas/CM.Platform.Channels.Models.ChannelTypes.WhatsApp.ApiWhatsAppProfileConversationalComponents'
          application/x-www-form-urlencoded:
            schema:
              $ref: '#/components/schemas/CM.Platform.Channels.Models.ChannelTypes.WhatsApp.ApiWhatsAppProfileConversationalComponents'
        description: The conversational components.
        required: true
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/CM.Platform.Channels.Models.ChannelTypes.WhatsApp.ApiWhatsAppProfileConversationalComponents'
            text/json:
              schema:
                $ref: '#/components/schemas/CM.Platform.Channels.Models.ChannelTypes.WhatsApp.ApiWhatsAppProfileConversationalComponents'
            text/xml:
              schema:
                $ref: '#/components/schemas/CM.Platform.Channels.Models.ChannelTypes.WhatsApp.ApiWhatsAppProfileConversationalComponents'
            multipart/form-data:
              schema:
                $ref: '#/components/schemas/CM.Platform.Channels.Models.ChannelTypes.WhatsApp.ApiWhatsAppProfileConversationalComponents'
  /channels/v1/accounts/{accountId}/whatsapp/{channelRequestId}/profiles:
    get:
      tags:
      - WhatsApp
      summary: Gets all known WhatsApp profiles.
      operationId: WhatsApp_GetProfilesAsync
      parameters:
      - name: accountId
        in: path
        description: The account identifier.
        required: true
        schema:
          type: string
          format: uuid
      - name: channelRequestId
        in: path
        description: The channel request identifier.
        required: true
        schema:
          type: string
          format: uuid
      - name: q
        in: query
        description: The search query.
        required: false
        schema:
          type: string
      - name: status
        in: query
        description: The status.
        required: false
        explode: true
        schema:
          type: array
          items:
            type: string
            enum:
            - ACTIVE
            - PENDING
            - ELIGIBLE
            - NOT_VALIDATED
            - CUSTOMER_ACTION_REQUIRED
            - EXPIRED
            - REJECTED
            - CANCELLED
            - DELETED
      - name: includeMetaQualityRating
        in: query
        description: if set to true [include meta quality rating].
        required: false
        schema:
          type: boolean
      - name: skip
        in: query
        description: The skip.
        required: false
        schema:
          type: integer
          format: int32
      - name: take
        in: query
        description: The take.
        required: false
        schema:
          type: integer
          format: int32
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/CM.Platform.Channels.Models.ChannelTypes.WhatsApp.ApiWhatsAppProfileBase'
            text/json:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/CM.Platform.Channels.Models.ChannelTypes.WhatsApp.ApiWhatsAppProfileBase'
    post:
      tags:
      - WhatsApp
      summary: Adds a WhatsApp profile.
      operationId: WhatsApp_AddProfileAsync
      parameters:
      - name: accountId
        in: path
        description: The account identifier.
        required: true
        schema:
          type: string
          format: uuid
      - name: channelRequestId
        in: path
        description: The channel request identifier.
        required: true
        schema:
          type: string
          format: uuid
      - name: simulate
        in: query
        description: if set to true [simulate].
        required: false
        schema:
          type: boolean
      responses:
        '201':
          description: Created
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/CM.Platform.Channels.Models.ChannelTypes.WhatsApp.ApiWhatsAppProfile'
            text/json:
              schema:
                $ref: '#/components/schemas/CM.Platform.Channels.Models.ChannelTypes.WhatsApp.ApiWhatsAppProfile'
  /channels/v1/accounts/{accountId}/whatsapp/{channelRequestId}/profiles/{profileId}:
    get:
      tags:
      - WhatsApp
      summary: Gets a WhatsApp profile.
      operationId: WhatsApp_GetProfileAsync
      parameters:
      - name: accountId
        in: path
        description: The account identifier.
        required: true
        schema:
          type: string
          format: uuid
      - name: channelRequestId
        in: path
        description: The channel request identifier.
        required: true
        schema:
          type: string
          format: uuid
      - name: profileId
        in: path
        description: The profile identifier.
        required: true
        schema:
          type: string
          format: uuid
      - name: includeMetaSupplierInfo
        in: query
        description: if set to true [include meta supplier information].
        required: false
        schema:
          type: boolean
      - name: syncWithMeta
        in: query
        description: if set to true [synchronize with meta].
        required: false
        schema:
          type: boolean
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/CM.Platform.Channels.Models.ChannelTypes.WhatsApp.ApiWhatsAppProfile'
            text/json:
              schema:
                $ref: '#/components/schemas/CM.Platform.Channels.Models.ChannelTypes.WhatsApp.ApiWhatsAppProfile'
            text/xml:
              schema:
                $ref: '#/components/schemas/CM.Platform.Channels.Models.ChannelTypes.WhatsApp.ApiWhatsAppProfile'
            multipart/form-data:
              schema:
                $ref: '#/components/schemas/CM.Platform.Channels.Models.ChannelTypes.WhatsApp.ApiWhatsAppProfile'
    delete:
      tags:
      - WhatsApp
      summary: Deletes a WhatsApp profile.
      operationId: WhatsApp_DeleteProfileAsync
      parameters:
      - name: accountId
        in: path
        description: The account identifier.
        required: true
        schema:
          type: string
          format: uuid
      - name: channelRequestId
        in: path
        description: The channel request identifier.
        required: true
        schema:
          type: string
          format: uuid
      - name: profileId
        in: path
        description: The profile identifier.
        required: true
        schema:
          type: string
          format: uuid
      responses:
        '204':
          description: NoContent
  /channels/v1/accounts/{accountId}/whatsapp/{channelRequestId}/profiles/{profileId}/forminput:
    get:
      tags:
      - WhatsApp
      summary: Gets a WhatsApp profile's form input.
      operationId: WhatsApp_GetProfileFormInputAsync
      parameters:
      - name: accountId
        in: path
        description: The account identifier.
        required: true
        schema:
          type: string
          format: uuid
      - name: channelRequestId
        in: path
        description: The channel request identifier.
        required: true
        schema:
          type: string
          format: uuid
      - name: profileId
        in: path
        description: The profile identifier.
        required: true
        schema:
          type: string
          format: uuid
      - name: includeProfileImage
        in: query
        description: if set to true [include profile image].
        required: false
        schema:
          type: boolean
      responses:
        '202':
          description: Accepted
          content:
            application/json:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/CM.Platform.Channels.Models.RequestForms.ApiChannelRequestFormInputResponse'
            text/json:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/CM.Platform.Channels.Models.RequestForms.ApiChannelRequestFormInputResponse'
            text/xml:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/CM.Platform.Channels.Models.RequestForms.ApiChannelRequestFormInputResponse'
            multipart/form-data:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/CM.Platform.Channels.Models.RequestForms.ApiChannelRequestFormInputResponse'
    put:
      tags:
      - WhatsApp
      summary: Adds WhatsApp profile form input.
      operationId: WhatsApp_AddProfileFormInputAsync
      parameters:
      - name: accountId
        in: path
        description: The account identifier.
        required: true
        schema:
          type: string
          format: uuid
      - name: channelRequestId
        in: path
        description: The channel request identifier.
        required: true
        schema:
          type: string
          format: uuid
      - name: profileId
        in: path
        description: The profile identifier.
        required: true
        schema:
          type: string
          format: uuid
      requestBody:
        $ref: '#/components/requestBodies/CM.Platform.Channels.Models.RequestForms.ApiRequestFormInputRequestArray'
      responses:
        '202':
          description: Accepted
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/CM.Platform.Channels.Models.ChannelTypes.WhatsApp.ApiWhatsAppProfile'
            text/json:
              schema:
                $ref: '#/components/schemas/CM.Platform.Channels.Models.ChannelTypes.WhatsApp.ApiWhatsAppProfile'
            text/xml:
              schema:
                $ref: '#/components/schemas/CM.Platform.Channels.Models.ChannelTypes.WhatsApp.ApiWhatsAppProfile'
            multipart/form-data:
              schema:
                $ref: '#/components/schemas/CM.Platform.Channels.Models.ChannelTypes.WhatsApp.ApiWhatsAppProfile'
  /channels/v1/accounts/{accountId}/whatsapp/{channelRequestId}/profiles/{profileId}/phonenumber:
    put:
      tags:
      - WhatsApp
      summary: Updates a WhatsApp profile.
      operationId: WhatsApp_UpdateProfilePhoneNumberAsync
      parameters:
      - name: accountId
        in: path
        description: The account identifier.
        required: true
        schema:
          type: string
          format: uuid
      - name: channelRequestId
        in: path
        description: The channel request identifier.
        required: true
        schema:
          type: string
          format: uuid
      - name: profileId
        in: path
        description: The profile identifier.
        required: true
        schema:
          type: string
          format: uuid
      - name: phoneNumber
        in: query
        description: The phone number.
        required: true
        schema:
          type: string
      responses:
        '202':
          description: Accepted
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/CM.Platform.Channels.Models.ChannelTypes.WhatsApp.ApiWhatsAppProfile'
            text/json:
              schema:
                $ref: '#/components/schemas/CM.Platform.Channels.Models.ChannelTypes.WhatsApp.ApiWhatsAppProfile'
            text/xml:
              schema:
                $ref: '#/components/schemas/CM.Platform.Channels.Models.ChannelTypes.WhatsApp.ApiWhatsAppProfile'
            multipart/form-data:
              schema:
                $ref: '#/components/schemas/CM.Platform.Channels.Models.ChannelTypes.WhatsApp.ApiWhatsAppProfile'
  /channels/v1/accounts/{accountId}/whatsapp/{channelRequestId}/profiles/{profileId}/phonenumber/otp:
    get:
      tags:
      - WhatsApp
      summary: Triggers a profile phone number one-time-password.
      operationId: WhatsApp_GetProfilePhoneNumberOtpAsync
      parameters:
      - name: accountId
        in: path
        description: The account identifier.
        required: true
        schema:
          type: string
          format: uuid
      - name: channelRequestId
        in: path
        description: The channel request identifier.
        required: true
        schema:
          type: string
          format: uuid
      - name: profileId
        in: path
        description: The profile identifier.
        required: true
        schema:
          type: string
          format: uuid
      - name: otpMethod
        in: query
        description: The otp method.
        required: true
        schema:
          type: string
          enum:
          - voice
          - sms
      responses:
        '202':
          description: Accepted
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/CM.Platform.Channels.Models.ChannelTypes.WhatsApp.ApiWhatsAppProfile'
            text/json:
              schema:
                $ref: '#/components/schemas/CM.Platform.Channels.Models.ChannelTypes.WhatsApp.ApiWhatsAppProfile'
            text/xml:
              schema:
                $ref: '#/components/schemas/CM.Platform.Channels.Models.ChannelTypes.WhatsApp.ApiWhatsAppProfile'
            multipart/form-data:
              schema:
                $ref: '#/components/schemas/CM.Platform.Channels.Models.ChannelTypes.WhatsApp.ApiWhatsAppProfile'
    post:
      tags:
      - WhatsApp
      summary: Validates a profile phone number.
      operationId: WhatsApp_ValidateProfilePhoneNumberAsync
      parameters:
      - name: accountId
        in: path
        description: The account identifier.
        required: true
        schema:
          type: string
          format: uuid
      - name: channelRequestId
        in: path
        description: The channel request identifier.
        required: true
        schema:
          type: string
          format: uuid
      - name: profileId
        in: path
        description: The profile identifier.
        required: true
        schema:
          type: string
          format: uuid
      - name: phoneNumber
        in: query
        description: The phone number.
        required: true
        schema:
          type: string
      - name: otp
        in: query
        description: The otp.
        required: true
        schema:
          type: string
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/CM.Platform.Channels.Models.ChannelTypes.WhatsApp.ApiWhatsAppProfile'
            text/json:
              schema:
                $ref: '#/components/schemas/CM.Platform.Channels.Models.ChannelTypes.WhatsApp.ApiWhatsAppProfile'
            text/xml:
              schema:
                $ref: '#/components/schemas/CM.Platform.Channels.Models.ChannelTypes.WhatsApp.ApiWhatsAppProfile'
            multipart/form-data:
              schema:
                $ref: '#/components/schemas/CM.Platform.Channels.Models.ChannelTypes.WhatsApp.ApiWhatsAppProfile'
  /channels/v1/accounts/{accountId}/whatsapp/{channelRequestId}/profiles/{profileId}/embeddedsignup/finalize:
    post:
      tags:
      - WhatsApp
      summary: Finalize an imported via embedded sign up and ownership-verified profile.
      operationId: WhatsApp_FinalizeEmbeddedSignUpImportedProfileAsync
      parameters:
      - name: accountId
        in: path
        description: The account identifier.
        required: true
        schema:
          type: string
          format: uuid
      - name: channelRequestId
        in: path
        description: The channel request identifier.
        required: true
        schema:
          type: string
          format: uuid
      - name: profileId
        in: path
        description: The profile identifier.
        required: true
        schema:
          type: string
          format: uuid
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/CM.Platform.Channels.Models.ChannelTypes.WhatsApp.ApiWhatsAppProfile'
            text/json:
              schema:
                $ref: '#/components/schemas/CM.Platform.Channels.Models.ChannelTypes.WhatsApp.ApiWhatsAppProfile'
            text/xml:
              schema:
                $ref: '#/components/schemas/CM.Platform.Channels.Models.ChannelTypes.WhatsApp.ApiWhatsAppProfile'
            multipart/form-data:
              schema:
                $ref: '#/components/schemas/CM.Platform.Channels.Models.ChannelTypes.WhatsApp.ApiWhatsAppProfile'
  /channels/v1/accounts/{accountId}/whatsapp/sandbox/profiles:
    get:
      tags:
      - WhatsApp
      summary: Gets all known WhatsApp sandbox profiles.
      operationId: WhatsApp_GetSandboxProfilesAsync
      parameters:
      - name: accountId
        in: path
        description: The account identifier.
        required: true
        schema:
          type: string
          format: uuid
      - name: q
        in: query
        description: The search query.
        required: false
        schema:
          type: string
      - name: skip
        in: query
        description: The skip.
        required: false
        schema:
          type: integer
          format: int32
      - name: take
        in: query
        description: The take.
        required: false
        schema:
          type: integer
          format: int32
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/CM.Platform.Channels.Models.ChannelTypes.WhatsApp.ApiWhatsAppProfileBase'
            text/json:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/CM.Platform.Channels.Models.ChannelTypes.WhatsApp.ApiWhatsAppProfileBase'
    post:
      tags:
      - WhatsApp
      summary: Adds a WhatsApp sandbox profile.
      operationId: WhatsApp_AddSandboxProfileAsync
      parameters:
      - name: accountId
        in: path
        description: The account identifier.
        required: true
        schema:
          type: string
          format: uuid
      - name: phoneNumber
        in: query
        description: The phone number.
        required: true
        schema:
          type: string
      responses:
        '201':
          description: Created
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/CM.Platform.Channels.Models.ChannelTypes.WhatsApp.ApiWhatsAppProfile'
            text/json:
              schema:
                $ref: '#/components/schemas/CM.Platform.Channels.Models.ChannelTypes.WhatsApp.ApiWhatsAppProfile'
  /channels/v1/accounts/{accountId}/whatsapp/sandbox/profiles/{profileId}:
    get:
      tags:
      - WhatsApp
      summary: Gets a WhatsApp sandbox profile.
      operationId: WhatsApp_GetSandboxProfileAsync
      parameters:
      - name: accountId
        in: path
        description: The account identifier.
        required: true
        schema:
          type: string
          format: uuid
      - name: profileId
        in: path
        description: The profile identifier.
        required: true
        schema:
          type: string
          format: uuid
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/CM.Platform.Channels.Models.ChannelTypes.WhatsApp.ApiWhatsAppProfile'
            text/json:
              schema:
                $ref: '#/components/schemas/CM.Platform.Channels.Models.ChannelTypes.WhatsApp.ApiWhatsAppProfile'
            text/xml:
              schema:
                $ref: '#/components/schemas/CM.Platform.Channels.Models.ChannelTypes.WhatsApp.ApiWhatsAppProfile'
            multipart/form-data:
              schema:
                $ref: '#/components/schemas/CM.Platform.Channels.Models.ChannelTypes.WhatsApp.ApiWhatsAppProfile'
    delete:
      tags:
      - WhatsApp
      summary: Deletes a WhatsApp sandbox profile.
      operationId: WhatsApp_DeleteSandboxProfileAsync
      parameters:
      - name: accountId
        in: path
        description: The account identifier.
        required: true
        schema:
          type: string
          format: uuid
      - name: profileId
        in: path
        description: The profile identifier.
        required: true
        schema:
          type: string
          format: uuid
      responses:
        '204':
          description: NoContent
  /channels/v1/accounts/{accountId}/whatsapp/sandbox/expiration:
    get:
      tags:
      - WhatsApp
      summary: Gets the expire date for sandbox profiles in a channel group.
      operationId: WhatsApp_GetWhatsAppSandboxExpirationDateAsync
      parameters:
      - name: accountId
        in: path
        description: The account identifier.
        required: true
        schema:
          type: string
          format: uuid
      responses:
        '200':
          description: OK
  /channels/v1/accounts/{accountId}/whatsapp/{channelRequestId}/templates/categories:
    get:
      tags:
      - WhatsApp
      summary: Gets supported WhatsApp template categories.
      operationId: WhatsApp_GetTemplateCategoriesAsync
      parameters:
      - name: accountId
        in: path
        description: The account identifier.
        required: true
        schema:
          type: string
          format: uuid
      - name: channelRequestId
        in: path
        description: The channel request identifier.
        required: true
        schema:
          type: string
          format: uuid
      - name: includeDeprecatedCategories
        in: query
        description: The include deprecated categories.
        required: false
        schema:
          type: boolean
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/CM.Platform.Channels.Models.ChannelTypes.WhatsApp.ApiWhatsAppTemplateCategory'
            text/json:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/CM.Platform.Channels.Models.ChannelTypes.WhatsApp.ApiWhatsAppTemplateCategory'
            text/xml:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/CM.Platform.Channels.Models.ChannelTypes.WhatsApp.ApiWhatsAppTemplateCategory'
            multipart/form-data:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/CM.Platform.Channels.Models.ChannelTypes.WhatsApp.ApiWhatsAppTemplateCategory'
  /channels/v1/accounts/{accountId}/whatsapp/{channelRequestId}/templates:
    get:
      tags:
      - WhatsApp
      summary: Gets all WhatsApp templates.
      operationId: WhatsApp_GetTemplatesAsync
      parameters:
      - name: accountId
        in: path
        description: The account identifier.
        required: true
        schema:
          type: string
          format: uuid
      - name: channelRequestId
        in: path
        description: The channel request identifier.
        required: true
        schema:
          type: string
          format: uuid
      - name: q
        in: query
        description: The search query.
        required: false
        schema:
          type: string
      - name: status
        in: query
        description: The status.
        required: false
        explode: true
        schema:
          type: array
          items:
            type: string
            enum:
            - ACTIVE
            - PENDING
            - ELIGIBLE
            - NOT_VALIDATED
            - CUSTOMER_ACTION_REQUIRED
            - EXPIRED
            - REJECTED
            - CANCELLED
            - DELETED
      - name: skip
        in: query
        description: The skip.
        required: false
        schema:
          type: integer
          format: int32
      - name: take
        in: query
        description: The take.
        required: false
        schema:
          type: integer
          format: int32
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/CM.Platform.Channels.Models.ChannelTypes.WhatsApp.ApiWhatsAppTemplateBaseResponse'
            text/json:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/CM.Platform.Channels.Models.ChannelTypes.WhatsApp.ApiWhatsAppTemplateBaseResponse'
    post:
      tags:
      - WhatsApp
      summary: Adds a WhatsApp template.
      operationId: WhatsApp_AddTemplateAsync
      parameters:
      - name: accountId
        in: path
        description: The account identifier.
        required: true
        schema:
          type: string
          format: uuid
      - name: channelRequestId
        in: path
        description: The channel request identifier.
        required: true
        schema:
          type: string
          format: uuid
      - name: templateCategoryId
        in: query
        description: The template category identifier.
        required: true
        schema:
          type: string
          format: uuid
      - name: templateGeneratedLayout
        in: query
        description: The template generated layout.
        required: false
        schema:
          type: string
          enum:
          - AUTHENTICATION_OTP_COPY
          - AUTHENTICATION_OTP_ONE_TAP
          - MARKETING_CAROUSEL
          - MARKETING_COUPONS
          - MARKETING_LIMITED_TIME_OFFER
          - UTILITY_CAROUSEL
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/CM.Platform.Channels.Models.ChannelTypes.WhatsApp.ApiWhatsAppTemplateBaseRequest'
          text/json:
            schema:
              $ref: '#/components/schemas/CM.Platform.Channels.Models.ChannelTypes.WhatsApp.ApiWhatsAppTemplateBaseRequest'
          text/xml:
            schema:
              $ref: '#/components/schemas/CM.Platform.Channels.Models.ChannelTypes.WhatsApp.ApiWhatsAppTemplateBaseRequest'
          multipart/form-data:
            schema:
              $ref: '#/components/schemas/CM.Platform.Channels.Models.ChannelTypes.WhatsApp.ApiWhatsAppTemplateBaseRequest'
          application/x-www-form-urlencoded:
            schema:
              $ref: '#/components/schemas/CM.Platform.Channels.Models.ChannelTypes.WhatsApp.ApiWhatsAppTemplateBaseRequest'
        description: The template request.
        required: true
      responses:
        '201':
          description: Created
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/CM.Platform.Channels.Models.ChannelTypes.WhatsApp.ApiWhatsAppTemplateResponse'
            text/json:
              schema:
                $ref: '#/components/schemas/CM.Platform.Channels.Models.ChannelTypes.WhatsApp.ApiWhatsAppTemplateResponse'
  /channels/v1/accounts/{accountId}/whatsapp/{channelRequestId}/templates/{templateId}:
    get:
      tags:
      - WhatsApp
      summary: Gets a WhatsApp template.
      operationId: WhatsApp_GetTemplateAsync
      parameters:
      - name: accountId
        in: path
        description: The account identifier.
        required: true
        schema:
          type: string
          format: uuid
      - name: channelRequestId
        in: path
        description: The channel request identifier.
        required: true
        schema:
          type: string
          format: uuid
      - name: templateId
        in: path
        description: The template identifier.
        required: true
        schema:
          type: string
          format: uuid
      - name: includeMetaCallbackHistory
        in: query
        description: if set to true [include meta callback history].
        required: false
        schema:
          type: boolean
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/CM.Platform.Channels.Models.ChannelTypes.WhatsApp.ApiWhatsAppTemplateResponse'
            text/json:
              schema:
                $ref: '#/components/schemas/CM.Platform.Channels.Models.ChannelTypes.WhatsApp.ApiWhatsAppTemplateResponse'
            text/xml:
              schema:
                $ref: '#/components/schemas/CM.Platform.Channels.Models.ChannelTypes.WhatsApp.ApiWhatsAppTemplateResponse'
            multipart/form-data:
              schema:
                $ref: '#/components/schemas/CM.Platform.Channels.Models.ChannelTypes.WhatsApp.ApiWhatsAppTemplateResponse'
    put:
      tags:
      - WhatsApp
      summary: Updates a WhatsApp template.
      operationId: WhatsApp_UpdateTemplateAsync
      parameters:
      - name: accountId
        in: path
        description: The account identifier.
        required: true
        schema:
          type: string
          format: uuid
      - name: channelRequestId
        in: path
        description: The channel request identifier.
        required: true
        schema:
          type: string
          format: uuid
      - name: templateId
        in: path
        description: The template identifier.
        required: true
        schema:
          type: string
          format: uuid
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/CM.Platform.Channels.Models.ChannelTypes.WhatsApp.ApiWhatsAppTemplateUpdateRequest'
          text/json:
            schema:
              $ref: '#/components/schemas/CM.Platform.Channels.Models.ChannelTypes.WhatsApp.ApiWhatsAppTemplateUpdateRequest'
          text/xml:
            schema:
              $ref: '#/components/schemas/CM.Platform.Channels.Models.ChannelTypes.WhatsApp.ApiWhatsAppTemplateUpdateRequest'
          multipart/form-data:
            schema:
              $ref: '#/components/schemas/CM.Platform.Channels.Models.ChannelTypes.WhatsApp.ApiWhatsAppTemplateUpdateRequest'
          application/x-www-form-urlencoded:
            schema:
              $ref: '#/components/schemas/CM.Platform.Channels.Models.ChannelTypes.WhatsApp.ApiWhatsAppTemplateUpdateRequest'
        description: The template update.
        required: true
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/CM.Platform.Channels.Models.ChannelTypes.WhatsApp.ApiWhatsAppTemplateResponse'
            text/json:
              schema:
                $ref: '#/components/schemas/CM.Platform.Channels.Models.ChannelTypes.WhatsApp.ApiWhatsAppTemplateResponse'
            text/xml:
              schema:
                $ref: '#/components/schemas/CM.Platform.Channels.Models.ChannelTypes.WhatsApp.ApiWhatsAppTemplateResponse'
            multipart/form-data:
              schema:
                $ref: '#/components/schemas/CM.Platform.Channels.Models.ChannelTypes.WhatsApp.ApiWhatsAppTemplateResponse'
    delete:
      tags:
      - WhatsApp
      summary: Deletes a template.
      operationId: WhatsApp_DeleteTemplateAsync
      parameters:
      - name: accountId
        in: path
        description: The account identifier.
        required: true
        schema:
          type: string
          format: uuid
      - name: channelRequestId
        in: path
        description: The channel request identifier.
        required: true
        schema:
          type: string
          format: uuid
      - name: templateId
        in: path
        description: The template identifier.
        required: true
        schema:
          type: string
          format: uuid
      responses:
        '204':
          description: NoContent
  /channels/v1/accounts/{accountId}/whatsapp/{channelRequestId}/templates/{templateId}/languages/{languageId}:
    get:
      tags:
      - WhatsApp
      summary: Gets a template language.
      operationId: WhatsApp_GetTemplateLanguageAsync
      parameters:
      - name: accountId
        in: path
        description: The account identifier.
        required: true
        schema:
          type: string
          format: uuid
      - name: channelRequestId
        in: path
        description: The channel request identifier.
        required: true
        schema:
          type: string
          format: uuid
      - name: templateId
        in: path
        description: The template identifier.
        required: true
        schema:
          type: string
          format: uuid
      - name: languageId
        in: path
        description: The language identifier.
        required: true
        schema:
          type: string
          format: uuid
      - name: includeMetaCallbackHistory
        in: query
        description: if set to true [include meta callback history].
        required: false
        schema:
          type: boolean
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/CM.Platform.Channels.Models.ChannelTypes.WhatsApp.ApiWhatsAppTemplateLanguageResponse'
            text/json:
              schema:
                $ref: '#/components/schemas/CM.Platform.Channels.Models.ChannelTypes.WhatsApp.ApiWhatsAppTemplateLanguageResponse'
            text/xml:
              schema:
                $ref: '#/components/schemas/CM.Platform.Channels.Models.ChannelTypes.WhatsApp.ApiWhatsAppTemplateLanguageResponse'
            multipart/form-data:
              schema:
                $ref: '#/components/schemas/CM.Platform.Channels.Models.ChannelTypes.WhatsApp.ApiWhatsAppTemplateLanguageResponse'
  /channels/v1/accounts/{accountId}/whatsapp/{channelRequestId}/templates/{templateId}/header:
    put:
      tags:
      - WhatsApp
      summary: Updates the template header settings asynchronous.
      operationId: WhatsApp_UpdateTemplateHeaderSettingsAsync
      parameters:
      - name: accountId
        in: path
        description: The account identifier.
        required: true
        schema:
          type: string
          format: uuid
      - name: channelRequestId
        in: path
        description: The channel request identifier.
        required: true
        schema:
          type: string
          format: uuid
      - name: templateId
        in: path
        description: The template identifier.
        required: true
        schema:
          type: string
          format: uuid
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/CM.Platform.Channels.Models.ChannelTypes.WhatsApp.ApiWhatsAppTemplateHeaderSettingsRequest'
          text/json:
            schema:
              $ref: '#/components/schemas/CM.Platform.Channels.Models.ChannelTypes.WhatsApp.ApiWhatsAppTemplateHeaderSettingsRequest'
          text/xml:
            schema:
              $ref: '#/components/schemas/CM.Platform.Channels.Models.ChannelTypes.WhatsApp.ApiWhatsAppTemplateHeaderSettingsRequest'
          multipart/form-data:
            schema:
              $ref: '#/components/schemas/CM.Platform.Channels.Models.ChannelTypes.WhatsApp.ApiWhatsAppTemplateHeaderSettingsRequest'
          application/x-www-form-urlencoded:
            schema:
              $ref: '#/components/schemas/CM.Platform.Channels.Models.ChannelTypes.WhatsApp.ApiWhatsAppTemplateHeaderSettingsRequest'
        description: The header settings.
        required: true
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/CM.Platform.Channels.Models.ChannelTypes.WhatsApp.ApiWhatsAppTemplateHeaderSettingsRequest'
            text/json:
              schema:
                $ref: '#/components/schemas/CM.Platform.Channels.Models.ChannelTypes.WhatsApp.ApiWhatsAppTemplateHeaderSettingsRequest'
            text/xml:
              schema:
                $ref: '#/components/schemas/CM.Platform.Channels.Models.ChannelTypes.WhatsApp.ApiWhatsAppTemplateHeaderSettingsRequest'
            multipart/form-data:
              schema:
                $ref: '#/components/schemas/CM.Platform.Channels.Models.ChannelTypes.WhatsApp.ApiWhatsAppTemplateHeaderSettingsRequest'
  /channels/v1/accounts/{accountId}/whatsapp/{channelRequestId}/templates/{templateId}/interactivesettings:
    put:
      tags:
      - WhatsApp
      summary: Updates the template interactive settings asynchronous.
      operationId: WhatsApp_UpdateTemplateInteractiveSettingsAsync
      parameters:
      - name: accountId
        in: path
        description: The account identifier.
        required: true
        schema:
          type: string
          format: uuid
      - name: channelRequestId
        in: path
        description: The channel request identifier.
        required: true
        schema:
          type: string
          format: uuid
      - name: templateId
        in: path
        description: The template identifier.
        required: true
        schema:
          type: string
          format: uuid
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/CM.Platform.Channels.Models.ChannelTypes.WhatsApp.ApiWhatsAppTemplateInteractiveSettingsRequest'
          text/json:
            schema:
              $ref: '#/components/schemas/CM.Platform.Channels.Models.ChannelTypes.WhatsApp.ApiWhatsAppTemplateInteractiveSettingsRequest'
          text/xml:
            schema:
              $ref: '#/components/schemas/CM.Platform.Channels.Models.ChannelTypes.WhatsApp.ApiWhatsAppTemplateInteractiveSettingsRequest'
          multipart/form-data:
            schema:
              $ref: '#/components/schemas/CM.Platform.Channels.Models.ChannelTypes.WhatsApp.ApiWhatsAppTemplateInteractiveSettingsRequest'
          application/x-www-form-urlencoded:
            schema:
              $ref: '#/components/schemas/CM.Platform.Channels.Models.ChannelTypes.WhatsApp.ApiWhatsAppTemplateInteractiveSettingsRequest'
        description: The settings.
        required: true
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/CM.Platform.Channels.Models.ChannelTypes.WhatsApp.ApiWhatsAppTemplateResponse'
            text/json:
              schema:
                $ref: '#/components/schemas/CM.Platform.Channels.Models.ChannelTypes.WhatsApp.ApiWhatsAppTemplateResponse'
            text/xml:
              schema:
                $ref: '#/components/schemas/CM.Platform.Channels.Models.ChannelTypes.WhatsApp.ApiWhatsAppTemplateResponse'
            multipart/form-data:
              schema:
                $ref: '#/components/schemas/CM.Platform.Channels.Models.ChannelTypes.WhatsApp.ApiWhatsAppTemplateResponse'
  ? /channels/v1/accounts/{accountId}/whatsapp/{channelRequestId}/templates/{templateId}/languages/{languageId}/interactivesettings
  : put:
      tags:
      - WhatsApp
      summary: Updates the template language interactive settings asynchronous.
      operationId: WhatsApp_UpdateTemplateLanguageInteractiveSettingsAsync
      parameters:
      - name: accountId
        in: path
        description: The account identifier.
        required: true
        schema:
          type: string
          format: uuid
      - name: channelRequestId
        in: path
        description: The channel request identifier.
        required: true
        schema:
          type: string
          format: uuid
      - name: templateId
        in: path
        description: The template identifier.
        required: true
        schema:
          type: string
          format: uuid
      - name: languageId
        in: path
        description: The language identifier.
        required: true
        schema:
          type: string
          format: uuid
      - name: ignoreButtonValidityChecks
        in: query
        description: if set to true [ignore button validity checks].
        required: false
        schema:
          type: boolean
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/CM.Platform.Channels.Models.ChannelTypes.WhatsApp.ApiWhatsAppTemplateLanguageInteractiveSettingsRequest'
          text/json:
            schema:
              $ref: '#/components/schemas/CM.Platform.Channels.Models.ChannelTypes.WhatsApp.ApiWhatsAppTemplateLanguageInteractiveSettingsRequest'
          text/xml:
            schema:
              $ref: '#/components/schemas/CM.Platform.Channels.Models.ChannelTypes.WhatsApp.ApiWhatsAppTemplateLanguageInteractiveSettingsRequest'
          multipart/form-data:
            schema:
              $ref: '#/components/schemas/CM.Platform.Channels.Models.ChannelTypes.WhatsApp.ApiWhatsAppTemplateLanguageInteractiveSettingsRequest'
          application/x-www-form-urlencoded:
            schema:
              $ref: '#/components/schemas/CM.Platform.Channels.Models.ChannelTypes.WhatsApp.ApiWhatsAppTemplateLanguageInteractiveSettingsRequest'
        description: The interactive settings.
        required: true
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/CM.Platform.Channels.Models.ChannelTypes.WhatsApp.ApiWhatsAppTemplateResponse'
            text/json:
              schema:
                $ref: '#/components/schemas/CM.Platform.Channels.Models.ChannelTypes.WhatsApp.ApiWhatsAppTemplateResponse'
            text/xml:
              schema:
                $ref: '#/components/schemas/CM.Platform.Channels.Models.ChannelTypes.WhatsApp.ApiWhatsAppTemplateResponse'
            multipart/form-data:
              schema:
                $ref: '#/components/schemas/CM.Platform.Channels.Models.ChannelTypes.WhatsApp.ApiWhatsAppTemplateResponse'
  ? /channels/v1/accounts/{accountId}/whatsapp/{channelRequestId}/templates/{templateId}/languages/{languageId}/carouselsettings
  : put:
      tags:
      - WhatsApp
      summary: Updates the template language carousel settings asynchronous.
      operationId: WhatsApp_UpdateTemplateLanguageCarouselSettingsAsync
      parameters:
      - name: accountId
        in: path
        description: The account identifier.
        required: true
        schema:
          type: string
          format: uuid
      - name: channelRequestId
        in: path
        description: The channel request identifier.
        required: true
        schema:
          type: string
          format: uuid
      - name: templateId
        in: path
        description: The template identifier.
        required: true
        schema:
          type: string
          format: uuid
      - name: languageId
        in: path
        description: The language identifier.
        required: true
        schema:
          type: string
          format: uuid
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/CM.Platform.Channels.Models.ChannelTypes.WhatsApp.ApiWhatsAppTemplateLanguageCarouselSettingsRequest'
          text/json:
            schema:
              $ref: '#/components/schemas/CM.Platform.Channels.Models.ChannelTypes.WhatsApp.ApiWhatsAppTemplateLanguageCarouselSettingsRequest'
          text/xml:
            schema:
              $ref: '#/components/schemas/CM.Platform.Channels.Models.ChannelTypes.WhatsApp.ApiWhatsAppTemplateLanguageCarouselSettingsRequest'
          multipart/form-data:
            schema:
              $ref: '#/components/schemas/CM.Platform.Channels.Models.ChannelTypes.WhatsApp.ApiWhatsAppTemplateLanguageCarouselSettingsRequest'
          application/x-www-form-urlencoded:
            schema:
              $ref: '#/components/schemas/CM.Platform.Channels.Models.ChannelTypes.WhatsApp.ApiWhatsAppTemplateLanguageCarouselSettingsRequest'
        description: The carousel settings.
        required: true
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/CM.Platform.Channels.Models.ChannelTypes.WhatsApp.ApiWhatsAppTemplateResponse'
            text/json:
              schema:
                $ref: '#/components/schemas/CM.Platform.Channels.Models.ChannelTypes.WhatsApp.ApiWhatsAppTemplateResponse'
            text/xml:
              schema:
                $ref: '#/components/schemas/CM.Platform.Channels.Models.ChannelTypes.WhatsApp.ApiWhatsAppTemplateResponse'
            multipart/form-data:
              schema:
                $ref: '#/components/schemas/CM.Platform.Channels.Models.ChannelTypes.WhatsApp.ApiWhatsAppTemplateResponse'
  /channels/v1/accounts/{accountId}/whatsapp/{channelRequestId}/templates/{templateId}/languages/{languageId}/ttl:
    put:
      tags:
      - WhatsApp
      summary: Updates the template language time to live settings asynchronous.
      operationId: WhatsApp_UpdateTemplateLanguageTimeToLiveSettingsAsync
      parameters:
      - name: accountId
        in: path
        description: The account identifier.
        required: true
        schema:
          type: string
          format: uuid
      - name: channelRequestId
        in: path
        description: The channel request identifier.
        required: true
        schema:
          type: string
          format: uuid
      - name: templateId
        in: path
        description: The template identifier.
        required: true
        schema:
          type: string
          format: uuid
      - name: languageId
        in: path
        description: The language identifier.
        required: true
        schema:
          type: string
          format: uuid
      - name: messageSendTimeToLiveSeconds
        in: query
        description: The message send time to live seconds.
        required: true
        schema:
          type: integer
          format: int32
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/CM.Platform.Channels.Models.ChannelTypes.WhatsApp.ApiWhatsAppTemplateResponse'
            text/json:
              schema:
                $ref: '#/components/schemas/CM.Platform.Channels.Models.ChannelTypes.WhatsApp.ApiWhatsAppTemplateResponse'
            text/xml:
              schema:
                $ref: '#/components/schemas/CM.Platform.Channels.Models.ChannelTypes.WhatsApp.ApiWhatsAppTemplateResponse'
            multipart/form-data:
              schema:
                $ref: '#/components/schemas/CM.Platform.Channels.Models.ChannelTypes.WhatsApp.ApiWhatsAppTemplateResponse'
  /channels/v1/accounts/{accountId}/whatsapp/{channelRequestId}/templates/{templateId}/validate:
    post:
      tags:
      - WhatsApp
      summary: Requests validation for a template.
      operationId: WhatsApp_RequestTemplateValidationAsync
      parameters:
      - name: accountId
        in: path
        description: The account identifier.
        required: true
        schema:
          type: string
          format: uuid
      - name: channelRequestId
        in: path
        description: The channel request identifier.
        required: true
        schema:
          type: string
          format: uuid
      - name: templateId
        in: path
        description: The template identifier.
        required: true
        schema:
          type: string
          format: uuid
      - name: useDefaultHeaderMediaExample
        in: query
        description: if set to true [use default example].
        required: false
        schema:
          type: boolean
      responses:
        '202':
          description: Accepted
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/CM.Platform.Channels.Models.ChannelTypes.WhatsApp.ApiWhatsAppTemplateResponse'
            text/json:
              schema:
                $ref: '#/components/schemas/CM.Platform.Channels.Models.ChannelTypes.WhatsApp.ApiWhatsAppTemplateResponse'
            text/xml:
              schema:
                $ref: '#/components/schemas/CM.Platform.Channels.Models.ChannelTypes.WhatsApp.ApiWhatsAppTemplateResponse'
            multipart/form-data:
              schema:
                $ref: '#/components/schemas/CM.Platform.Channels.Models.ChannelTypes.WhatsApp.ApiWhatsAppTemplateResponse'
  /channels/v1/accounts/{accountId}/whatsapp/{channelRequestId}/templates/{templateId}/fields:
    post:
      tags:
      - WhatsApp
      summary: Adds a replacement field to a template.
      operationId: WhatsApp_AddTemplateReplacementFieldAsync
      parameters:
      - name: accountId
        in: path
        description: The account identifier.
        required: true
        schema:
          type: string
          format: uuid
      - name: channelRequestId
        in: path
        description: The channel request identifier.
        required: true
        schema:
          type: string
          format: uuid
      - name: templateId
        in: path
        description: The template identifier.
        required: true
        schema:
          type: string
          format: uuid
      - name: name
        in: query
        description: The name.
        required: true
        schema:
          type: string
      - name: type
        in: query
        description: The type.
        required: true
        schema:
          type: string
          enum:
          - text
          - currency
          - datetime
      responses:
        '201':
          description: Created
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/CM.Platform.Channels.Models.ChannelTypes.WhatsApp.ApiWhatsAppTemplateResponse'
            text/json:
              schema:
                $ref: '#/components/schemas/CM.Platform.Channels.Models.ChannelTypes.WhatsApp.ApiWhatsAppTemplateResponse'
            text/xml:
              schema:
                $ref: '#/components/schemas/CM.Platform.Channels.Models.ChannelTypes.WhatsApp.ApiWhatsAppTemplateResponse'
            multipart/form-data:
              schema:
                $ref: '#/components/schemas/CM.Platform.Channels.Models.ChannelTypes.WhatsApp.ApiWhatsAppTemplateResponse'
  /channels/v1/accounts/{accountId}/whatsapp/{channelRequestId}/templates/{templateId}/fields/{fieldId}:
    put:
      tags:
      - WhatsApp
      summary: Updates a template replacement field.
      operationId: WhatsApp_UpdateTemplateReplacementFieldAsync
      parameters:
      - name: accountId
        in: path
        description: The account identifier.
        required: true
        schema:
          type: string
          format: uuid
      - name: channelRequestId
        in: path
        description: The channel request identifier.
        required: true
        schema:
          type: string
          format: uuid
      - name: templateId
        in: path
        description: The template identifier.
        required: true
        schema:
          type: string
          format: uuid
      - name: fieldId
        in: path
        description: The field identifier.
        required: true
        schema:
          type: string
          format: uuid
      - name: name
        in: query
        description: The name.
        required: true
        schema:
          type: string
      - name: type
        in: query
        description: The type.
        required: true
        schema:
          type: string
          enum:
          - text
          - currency
          - datetime
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/CM.Platform.Channels.Models.ChannelTypes.WhatsApp.ApiWhatsAppTemplateResponse'
            text/json:
              schema:
                $ref: '#/components/schemas/CM.Platform.Channels.Models.ChannelTypes.WhatsApp.ApiWhatsAppTemplateResponse'
            text/xml:
              schema:
                $ref: '#/components/schemas/CM.Platform.Channels.Models.ChannelTypes.WhatsApp.ApiWhatsAppTemplateResponse'
            multipart/form-data:
              schema:
                $ref: '#/components/schemas/CM.Platform.Channels.Models.ChannelTypes.WhatsApp.ApiWhatsAppTemplateResponse'
    delete:
      tags:
      - WhatsApp
      summary: Removes a replacement field from a template.
      operationId: WhatsApp_RemoveTemplateReplacementFieldAsync
      parameters:
      - name: accountId
        in: path
        description: The account identifier.
        required: true
        schema:
          type: string
          format: uuid
      - name: channelRequestId
        in: path
        description: The channel request identifier.
        required: true
        schema:
          type: string
          format: uuid
      - name: templateId
        in: path
        description: The template identifier.
        required: true
        schema:
          type: string
          format: uuid
      - name: fieldId
        in: path
        description: The field identifier.
        required: true
        schema:
          type: string
          format: uuid
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/CM.Platform.Channels.Models.ChannelTypes.WhatsApp.ApiWhatsAppTemplateResponse'
            text/json:
              schema:
                $ref: '#/components/schemas/CM.Platform.Channels.Models.ChannelTypes.WhatsApp.ApiWhatsAppTemplateResponse'
            text/xml:
              schema:
                $ref: '#/components/schemas/CM.Platform.Channels.Models.ChannelTypes.WhatsApp.ApiWhatsAppTemplateResponse'
            multipart/form-data:
              schema:
                $ref: '#/components/schemas/CM.Platform.Channels.Models.ChannelTypes.WhatsApp.ApiWhatsAppTemplateResponse'
  /channels/v1/accounts/{accountId}/whatsapp/{channelRequestId}/templates/{templateId}/enabledlanguages:
    get:
      tags:
      - WhatsApp
      summary: Gets the enabled languages for a template.
      operationId: WhatsApp_GetWhatsAppTemplateEnabledLanguagesAsync
      parameters:
      - name: accountId
        in: path
        description: The account identifier.
        required: true
        schema:
          type: string
          format: uuid
      - name: channelRequestId
        in: path
        description: The channel request identifier.
        required: true
        schema:
          type: string
          format: uuid
      - name: templateId
        in: path
        description: The template identifier.
        required: true
        schema:
          type: string
          format: uuid
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/CM.Platform.Channels.Models.ChannelTypes.WhatsApp.ApiWhatsAppSupportedLanguage'
            text/json:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/CM.Platform.Channels.Models.ChannelTypes.WhatsApp.ApiWhatsAppSupportedLanguage'
            text/xml:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/CM.Platform.Channels.Models.ChannelTypes.WhatsApp.ApiWhatsAppSupportedLanguage'
            multipart/form-data:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/CM.Platform.Channels.Models.ChannelTypes.WhatsApp.ApiWhatsAppSupportedLanguage'
  ? /channels/v1/accounts/{accountId}/whatsapp/{channelRequestId}/templates/{templateId}/enabledlanguages/{supportedLanguageId}
  : post:
      tags:
      - WhatsApp
      summary: Adds an enabled language for a template.
      operationId: WhatsApp_AddWhatsAppTemplateEnabledLanguageAsync
      parameters:
      - name: accountId
        in: path
        description: The account identifier.
        required: true
        schema:
          type: string
          format: uuid
      - name: channelRequestId
        in: path
        description: The channel request identifier.
        required: true
        schema:
          type: string
          format: uuid
      - name: templateId
        in: path
        description: The template identifier.
        required: true
        schema:
          type: string
          format: uuid
      - name: supportedLanguageId
        in: path
        description: The enabled language identifier.
        required: true
        schema:
          type: string
          format: uuid
      responses:
        '201':
          description: Created
          content:
            application/json:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/CM.Platform.Channels.Models.ChannelTypes.WhatsApp.ApiWhatsAppSupportedLanguage'
            text/json:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/CM.Platform.Channels.Models.ChannelTypes.WhatsApp.ApiWhatsAppSupportedLanguage'
            text/xml:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/CM.Platform.Channels.Models.ChannelTypes.WhatsApp.ApiWhatsAppSupportedLanguage'
            multipart/form-data:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/CM.Platform.Channels.Models.ChannelTypes.WhatsApp.ApiWhatsAppSupportedLanguage'
    delete:
      tags:
      - WhatsApp
      summary: Removes an enabled language for a template.
      operationId: WhatsApp_RemoveWhatsAppTemplateEnabledLanguageAsync
      parameters:
      - name: accountId
        in: path
        description: The account identifier.
        required: true
        schema:
          type: string
          format: uuid
      - name: channelRequestId
        in: path
        description: The channel request identifier.
        required: true
        schema:
          type: string
          format: uuid
      - name: templateId
        in: path
        description: The template identifier.
        required: true
        schema:
          type: string
          format: uuid
      - name: supportedLanguageId
        in: path
        description: The enabled language identifier.
        required: true
        schema:
          type: string
          format: uuid
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/CM.Platform.Channels.Models.ChannelTypes.WhatsApp.ApiWhatsAppSupportedLanguage'
            text/json:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/CM.Platform.Channels.Models.ChannelTypes.WhatsApp.ApiWhatsAppSupportedLanguage'
            text/xml:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/CM.Platform.Channels.Models.ChannelTypes.WhatsApp.ApiWhatsAppSupportedLanguage'
            multipart/form-data:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/CM.Platform.Channels.Models.ChannelTypes.WhatsApp.ApiWhatsAppSupportedLanguage'
  /channels/v1/accounts/{accountId}/whatsapp/{channelRequestId}/templates/{templateId}/analytics/meta:
    get:
      tags:
      - WhatsApp
      summary: Get a template's Meta analytics.
      operationId: WhatsApp_GetTemplateMetaAnalyticsAsync
      parameters:
      - name: accountId
        in: path
        description: The account identifier.
        required: true
        schema:
          type: string
          format: uuid
      - name: channelRequestId
        in: path
        description: The channel request identifier.
        required: true
        schema:
          type: string
          format: uuid
      - name: templateId
        in: path
        description: The template identifier.
        required: true
        schema:
          type: string
          format: uuid
      - name: startDate
        in: query
        description: The start date.
        required: true
        schema:
          type: string
          format: date-time
      - name: languageId
        in: query
        description: The language identifier.
        required: false
        schema:
          type: string
          format: uuid
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/CM.Platform.Channels.Models.ChannelTypes.WhatsApp.ApiWhatsAppTemplateMetaAnalytics'
            text/json:
              schema:
                $ref: '#/components/schemas/CM.Platform.Channels.Models.ChannelTypes.WhatsApp.ApiWhatsAppTemplateMetaAnalytics'
            text/xml:
              schema:
                $ref: '#/components/schemas/CM.Platform.Channels.Models.ChannelTypes.WhatsApp.ApiWhatsAppTemplateMetaAnalytics'
            multipart/form-data:
              schema:
                $ref: '#/components/schemas/CM.Platform.Channels.Models.ChannelTypes.WhatsApp.ApiWhatsAppTemplateMetaAnalytics'
  /channels/v1/accounts/{accountId}/whatsapp/{channelRequestId}/templates/{templateId}/supplierStatus:
    get:
      tags:
      - WhatsApp
      summary: Get a template's supplier status.
      operationId: WhatsApp_GetTemplateSupplierStatusAsync
      parameters:
      - name: accountId
        in: path
        description: The account identifier.
        required: true
        schema:
          type: string
          format: uuid
      - name: channelRequestId
        in: path
        description: The channel request identifier.
        required: true
        schema:
          type: string
          format: uuid
      - name: templateId
        in: path
        description: The template identifier.
        required: true
        schema:
          type: string
          format: uuid
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/CM.Platform.Channels.Models.Channels.ApiChannelSupplierStatusBase'
            text/json:
              schema:
                $ref: '#/components/schemas/CM.Platform.Channels.Models.Channels.ApiChannelSupplierStatusBase'
            text/xml:
              schema:
                $ref: '#/components/schemas/CM.Platform.Channels.Models.Channels.ApiChannelSupplierStatusBase'
            multipart/form-data:
              schema:
                $ref: '#/components/schemas/CM.Platform.Channels.Models.Channels.ApiChannelSupplierStatusBase'
  /channels/v1/accounts/{accountId}/whatsapp/{channelRequestId}/templates/{templateId}/languages/{languageId}/supplierStatus:
    get:
      tags:
      - WhatsApp
      summary: Get a template language's supplier status.
      operationId: WhatsApp_GetTemplateLanguageSupplierStatusAsync
      parameters:
      - name: accountId
        in: path
        description: The account identifier.
        required: true
        schema:
          type: string
          format: uuid
      - name: channelRequestId
        in: path
        description: The channel request identifier.
        required: true
        schema:
          type: string
          format: uuid
      - name: templateId
        in: path
        description: The template identifier.
        required: true
        schema:
          type: string
          format: uuid
      - name: languageId
        in: path
        description: The language identifier.
        required: true
        schema:
          type: string
          format: uuid
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                type: object
                additionalProperties:
                  $ref: '#/components/schemas/CM.Platform.Channels.Models.Channels.ApiChannelSupplierStatus'
            text/json:
              schema:
                type: object
                additionalProperties:
                  $ref: '#/components/schemas/CM.Platform.Channels.Models.Channels.ApiChannelSupplierStatus'
            text/xml:
              schema:
                type: object
                additionalProperties:
                  $ref: '#/components/schemas/CM.Platform.Channels.Models.Channels.ApiChannelSupplierStatus'
            multipart/form-data:
              schema:
                type: object
                additionalProperties:
                  $ref: '#/components/schemas/CM.Platform.Channels.Models.Channels.ApiChannelSupplierStatus'
  /channels/v1/accounts/{accountId}/whatsapppartnersolution/{channelRequestId}/partnersolution:
    get:
      tags:
      - WhatsAppPartnerSolution
      summary: Gets all WhatsApp PartnerSolutions for this account.
      operationId: WhatsAppPartnerSolution_GetWhatsAppPartnerSolutionsAsync
      parameters:
      - name: accountId
        in: path
        description: The account identifier.
        required: true
        schema:
          type: string
          format: uuid
      - name: channelRequestId
        in: path
        description: The channel request identifier.
        required: true
        schema:
          type: string
          format: uuid
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/CM.Platform.Channels.Models.ChannelTypes.WhatsAppPartnerSolution.ApiWhatsAppPartnerSolution'
            text/json:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/CM.Platform.Channels.Models.ChannelTypes.WhatsAppPartnerSolution.ApiWhatsAppPartnerSolution'
            text/xml:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/CM.Platform.Channels.Models.ChannelTypes.WhatsAppPartnerSolution.ApiWhatsAppPartnerSolution'
            multipart/form-data:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/CM.Platform.Channels.Models.ChannelTypes.WhatsAppPartnerSolution.ApiWhatsAppPartnerSolution'
  /channels/v1/accounts/{accountId}/whatsapppartnersolution/{channelRequestId}/partnersolution/{partnerSolutionId}:
    get:
      tags:
      - WhatsAppPartnerSolution
      summary: Gets a WhatsApp Partner Solution.
      operationId: WhatsAppPartnerSolution_GetWhatsAppPartnerSolutionAsync
      parameters:
      - name: accountId
        in: path
        description: The account identifier.
        required: true
        schema:
          type: string
          format: uuid
      - name: channelRequestId
        in: path
        description: The channel request identifier.
        required: true
        schema:
          type: string
          format: uuid
      - name: partnerSolutionId
        in: path
        description: ''
        required: true
        schema:
          type: string
          format: uuid
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/CM.Platform.Channels.Models.ChannelTypes.WhatsAppPartnerSolution.ApiWhatsAppPartnerSolution'
            text/json:
              schema:
                $ref: '#/components/schemas/CM.Platform.Channels.Models.ChannelTypes.WhatsAppPartnerSolution.ApiWhatsAppPartnerSolution'
            text/xml:
              schema:
                $ref: '#/components/schemas/CM.Platform.Channels.Models.ChannelTypes.WhatsAppPartnerSolution.ApiWhatsAppPartnerSolution'
            multipart/form-data:
              schema:
                $ref: '#/components/schemas/CM.Platform.Channels.Models.ChannelTypes.WhatsAppPartnerSolution.ApiWhatsAppPartnerSolution'
  ? /channels/v1/accounts/{accountId}/whatsapppartnersolution/{channelRequestId}/partnersolution/{partnerSolutionId}/businessaccounts
  : get:
      tags:
      - WhatsAppPartnerSolution
      summary: Gets a WhatsApp Partner Solution business accounts.
      operationId: WhatsAppPartnerSolution_GetWhatsAppPartnerSolutionBusinessAccountsAsync
      parameters:
      - name: accountId
        in: path
        description: The account identifier.
        required: true
        schema:
          type: string
          format: uuid
      - name: channelRequestId
        in: path
        description: The channel request identifier.
        required: true
        schema:
          type: string
          format: uuid
      - name: partnerSolutionId
        in: path
        description: ''
        required: true
        schema:
          type: string
          format: uuid
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/CM.Platform.Channels.Models.ChannelTypes.WhatsAppPartnerSolution.ApiWhatsAppPartnerSolutionBusinessAccount'
            text/json:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/CM.Platform.Channels.Models.ChannelTypes.WhatsAppPartnerSolution.ApiWhatsAppPartnerSolutionBusinessAccount'
            text/xml:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/CM.Platform.Channels.Models.ChannelTypes.WhatsAppPartnerSolution.ApiWhatsAppPartnerSolutionBusinessAccount'
            multipart/form-data:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/CM.Platform.Channels.Models.ChannelTypes.WhatsAppPartnerSolution.ApiWhatsAppPartnerSolutionBusinessAccount'
components:
  securitySchemes:
    ProductToken:
      type: apiKey
      description: Product token for authentication. Obtain from your CM.com dashboard under Messaging
        > Product Tokens.
      name: producttoken
      in: header
  requestBodies:
    CM.Platform.Channels.Models.ApiSettings.ApiStatusReportsConfigurationRequest:
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/CM.Platform.Channels.Models.ApiSettings.ApiStatusReportsConfigurationRequest'
        text/json:
          schema:
            $ref: '#/components/schemas/CM.Platform.Channels.Models.ApiSettings.ApiStatusReportsConfigurationRequest'
        text/xml:
          schema:
            $ref: '#/components/schemas/CM.Platform.Channels.Models.ApiSettings.ApiStatusReportsConfigurationRequest'
        multipart/form-data:
          schema:
            $ref: '#/components/schemas/CM.Platform.Channels.Models.ApiSettings.ApiStatusReportsConfigurationRequest'
        application/x-www-form-urlencoded:
          schema:
            $ref: '#/components/schemas/CM.Platform.Channels.Models.ApiSettings.ApiStatusReportsConfigurationRequest'
      required: true
    CM.Platform.Channels.Models.ChannelTypes.GooglesBusinessMessages.LaunchFlow.ApiGooglesBusinessMessagesOAuthUserCredentials:
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/CM.Platform.Channels.Models.ChannelTypes.GooglesBusinessMessages.LaunchFlow.ApiGooglesBusinessMessagesOAuthUserCredentials'
        text/json:
          schema:
            $ref: '#/components/schemas/CM.Platform.Channels.Models.ChannelTypes.GooglesBusinessMessages.LaunchFlow.ApiGooglesBusinessMessagesOAuthUserCredentials'
        text/xml:
          schema:
            $ref: '#/components/schemas/CM.Platform.Channels.Models.ChannelTypes.GooglesBusinessMessages.LaunchFlow.ApiGooglesBusinessMessagesOAuthUserCredentials'
        multipart/form-data:
          schema:
            $ref: '#/components/schemas/CM.Platform.Channels.Models.ChannelTypes.GooglesBusinessMessages.LaunchFlow.ApiGooglesBusinessMessagesOAuthUserCredentials'
        application/x-www-form-urlencoded:
          schema:
            $ref: '#/components/schemas/CM.Platform.Channels.Models.ChannelTypes.GooglesBusinessMessages.LaunchFlow.ApiGooglesBusinessMessagesOAuthUserCredentials'
      description: The o authentication credentials.
      required: true
    CM.Platform.Channels.Models.ChannelTypes.MobilePush.ApiMobilePushApplicationRequest:
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/CM.Platform.Channels.Models.ChannelTypes.MobilePush.ApiMobilePushApplicationRequest'
        text/json:
          schema:
            $ref: '#/components/schemas/CM.Platform.Channels.Models.ChannelTypes.MobilePush.ApiMobilePushApplicationRequest'
        text/xml:
          schema:
            $ref: '#/components/schemas/CM.Platform.Channels.Models.ChannelTypes.MobilePush.ApiMobilePushApplicationRequest'
        multipart/form-data:
          schema:
            $ref: '#/components/schemas/CM.Platform.Channels.Models.ChannelTypes.MobilePush.ApiMobilePushApplicationRequest'
        application/x-www-form-urlencoded:
          schema:
            $ref: '#/components/schemas/CM.Platform.Channels.Models.ChannelTypes.MobilePush.ApiMobilePushApplicationRequest'
      description: The mobile push application.
      required: true
    CM.Platform.Channels.Models.ApiSettings.ApiStatusReportsConfigurationRequest2:
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/CM.Platform.Channels.Models.ApiSettings.ApiStatusReportsConfigurationRequest'
        text/json:
          schema:
            $ref: '#/components/schemas/CM.Platform.Channels.Models.ApiSettings.ApiStatusReportsConfigurationRequest'
        text/xml:
          schema:
            $ref: '#/components/schemas/CM.Platform.Channels.Models.ApiSettings.ApiStatusReportsConfigurationRequest'
        multipart/form-data:
          schema:
            $ref: '#/components/schemas/CM.Platform.Channels.Models.ApiSettings.ApiStatusReportsConfigurationRequest'
        application/x-www-form-urlencoded:
          schema:
            $ref: '#/components/schemas/CM.Platform.Channels.Models.ApiSettings.ApiStatusReportsConfigurationRequest'
      description: The sr webhook.
      required: true
    CM.Platform.Channels.Models.ApiSettings.ApiMTRecipientCountryFilterConfigurationRequest:
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/CM.Platform.Channels.Models.ApiSettings.ApiMTRecipientCountryFilterConfigurationRequest'
        text/json:
          schema:
            $ref: '#/components/schemas/CM.Platform.Channels.Models.ApiSettings.ApiMTRecipientCountryFilterConfigurationRequest'
        text/xml:
          schema:
            $ref: '#/components/schemas/CM.Platform.Channels.Models.ApiSettings.ApiMTRecipientCountryFilterConfigurationRequest'
        multipart/form-data:
          schema:
            $ref: '#/components/schemas/CM.Platform.Channels.Models.ApiSettings.ApiMTRecipientCountryFilterConfigurationRequest'
        application/x-www-form-urlencoded:
          schema:
            $ref: '#/components/schemas/CM.Platform.Channels.Models.ApiSettings.ApiMTRecipientCountryFilterConfigurationRequest'
      description: The country filter.
      required: true
    CM.Platform.Channels.Models.ApiSettings.ApiIPRestrictionConfigurationRequest:
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/CM.Platform.Channels.Models.ApiSettings.ApiIPRestrictionConfigurationRequest'
        text/json:
          schema:
            $ref: '#/components/schemas/CM.Platform.Channels.Models.ApiSettings.ApiIPRestrictionConfigurationRequest'
        text/xml:
          schema:
            $ref: '#/components/schemas/CM.Platform.Channels.Models.ApiSettings.ApiIPRestrictionConfigurationRequest'
        multipart/form-data:
          schema:
            $ref: '#/components/schemas/CM.Platform.Channels.Models.ApiSettings.ApiIPRestrictionConfigurationRequest'
        application/x-www-form-urlencoded:
          schema:
            $ref: '#/components/schemas/CM.Platform.Channels.Models.ApiSettings.ApiIPRestrictionConfigurationRequest'
      description: The requested configuration.
      required: true
    CM.Platform.Channels.Models.RequestForms.ApiRequestFormInputRequestArray:
      content:
        application/json:
          schema:
            type: array
            items:
              $ref: '#/components/schemas/CM.Platform.Channels.Models.RequestForms.ApiRequestFormInputRequest'
        text/json:
          schema:
            type: array
            items:
              $ref: '#/components/schemas/CM.Platform.Channels.Models.RequestForms.ApiRequestFormInputRequest'
        text/xml:
          schema:
            type: array
            items:
              $ref: '#/components/schemas/CM.Platform.Channels.Models.RequestForms.ApiRequestFormInputRequest'
        multipart/form-data:
          schema:
            type: array
            items:
              $ref: '#/components/schemas/CM.Platform.Channels.Models.RequestForms.ApiRequestFormInputRequest'
        application/x-www-form-urlencoded:
          schema:
            type: array
            items:
              $ref: '#/components/schemas/CM.Platform.Channels.Models.RequestForms.ApiRequestFormInputRequest'
      description: The form input.
      required: true
    CM.Platform.Channels.Models.Channels.ChannelConfiguration.ApiChannelEmailConfigurationRequest:
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/CM.Platform.Channels.Models.Channels.ChannelConfiguration.ApiChannelEmailConfigurationRequest'
        text/json:
          schema:
            $ref: '#/components/schemas/CM.Platform.Channels.Models.Channels.ChannelConfiguration.ApiChannelEmailConfigurationRequest'
        text/xml:
          schema:
            $ref: '#/components/schemas/CM.Platform.Channels.Models.Channels.ChannelConfiguration.ApiChannelEmailConfigurationRequest'
        multipart/form-data:
          schema:
            $ref: '#/components/schemas/CM.Platform.Channels.Models.Channels.ChannelConfiguration.ApiChannelEmailConfigurationRequest'
        application/x-www-form-urlencoded:
          schema:
            $ref: '#/components/schemas/CM.Platform.Channels.Models.Channels.ChannelConfiguration.ApiChannelEmailConfigurationRequest'
      description: The configuration.
      required: true
    CM.Platform.Channels.Models.Channels.ChannelConfiguration.ApiChannelWebHookConfigurationRequest:
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/CM.Platform.Channels.Models.Channels.ChannelConfiguration.ApiChannelWebHookConfigurationRequest'
        text/json:
          schema:
            $ref: '#/components/schemas/CM.Platform.Channels.Models.Channels.ChannelConfiguration.ApiChannelWebHookConfigurationRequest'
        text/xml:
          schema:
            $ref: '#/components/schemas/CM.Platform.Channels.Models.Channels.ChannelConfiguration.ApiChannelWebHookConfigurationRequest'
        multipart/form-data:
          schema:
            $ref: '#/components/schemas/CM.Platform.Channels.Models.Channels.ChannelConfiguration.ApiChannelWebHookConfigurationRequest'
        application/x-www-form-urlencoded:
          schema:
            $ref: '#/components/schemas/CM.Platform.Channels.Models.Channels.ChannelConfiguration.ApiChannelWebHookConfigurationRequest'
      description: The configuration.
      required: true
    CM.Platform.Channels.Models.Channels.ChannelConfiguration.ApiChannelEventWebHookConfigurationRequest:
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/CM.Platform.Channels.Models.Channels.ChannelConfiguration.ApiChannelEventWebHookConfigurationRequest'
        text/json:
          schema:
            $ref: '#/components/schemas/CM.Platform.Channels.Models.Channels.ChannelConfiguration.ApiChannelEventWebHookConfigurationRequest'
        text/xml:
          schema:
            $ref: '#/components/schemas/CM.Platform.Channels.Models.Channels.ChannelConfiguration.ApiChannelEventWebHookConfigurationRequest'
        multipart/form-data:
          schema:
            $ref: '#/components/schemas/CM.Platform.Channels.Models.Channels.ChannelConfiguration.ApiChannelEventWebHookConfigurationRequest'
        application/x-www-form-urlencoded:
          schema:
            $ref: '#/components/schemas/CM.Platform.Channels.Models.Channels.ChannelConfiguration.ApiChannelEventWebHookConfigurationRequest'
      description: The configuration.
      required: true
    CM.Platform.Channels.Models.ChannelTypes.Line.ApiLineNotifyServiceRequest:
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/CM.Platform.Channels.Models.ChannelTypes.Line.ApiLineNotifyServiceRequest'
        text/json:
          schema:
            $ref: '#/components/schemas/CM.Platform.Channels.Models.ChannelTypes.Line.ApiLineNotifyServiceRequest'
        text/xml:
          schema:
            $ref: '#/components/schemas/CM.Platform.Channels.Models.ChannelTypes.Line.ApiLineNotifyServiceRequest'
        multipart/form-data:
          schema:
            $ref: '#/components/schemas/CM.Platform.Channels.Models.ChannelTypes.Line.ApiLineNotifyServiceRequest'
        application/x-www-form-urlencoded:
          schema:
            $ref: '#/components/schemas/CM.Platform.Channels.Models.ChannelTypes.Line.ApiLineNotifyServiceRequest'
      description: The line notify service.
      required: true
    CM.Platform.Channels.Models.ChannelTypes.Payments.ApiPaymentsCredentialsRequest:
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/CM.Platform.Channels.Models.ChannelTypes.Payments.ApiPaymentsCredentialsRequest'
        text/json:
          schema:
            $ref: '#/components/schemas/CM.Platform.Channels.Models.ChannelTypes.Payments.ApiPaymentsCredentialsRequest'
        text/xml:
          schema:
            $ref: '#/components/schemas/CM.Platform.Channels.Models.ChannelTypes.Payments.ApiPaymentsCredentialsRequest'
        multipart/form-data:
          schema:
            $ref: '#/components/schemas/CM.Platform.Channels.Models.ChannelTypes.Payments.ApiPaymentsCredentialsRequest'
        application/x-www-form-urlencoded:
          schema:
            $ref: '#/components/schemas/CM.Platform.Channels.Models.ChannelTypes.Payments.ApiPaymentsCredentialsRequest'
      description: The credentials.
      required: true
  schemas:
    System.Threading.CancellationToken:
      type: object
      properties:
        IsCancellationRequested:
          type: boolean
          readOnly: true
        CanBeCanceled:
          type: boolean
          readOnly: true
        WaitHandle:
          $ref: '#/components/schemas/System.Threading.WaitHandle'
    System.Threading.WaitHandle:
      type: object
      properties:
        Handle:
          type: object
        SafeWaitHandle:
          $ref: '#/components/schemas/Microsoft.Win32.SafeHandles.SafeWaitHandle'
    Microsoft.Win32.SafeHandles.SafeWaitHandle:
      type: object
      properties:
        IsInvalid:
          type: boolean
          readOnly: true
        IsClosed:
          type: boolean
          readOnly: true
    CM.Platform.Channels.Models.ChannelTypes.Twitter.ApiTwitterAccountAdmin:
      required:
      - id
      - accountId
      - channelCategoryID
      - userId
      - screenName
      - isActive
      - isPending
      - isApproved
      - orderStatusExtended
      - createdOnUtc
      type: object
      properties:
        id:
          format: uuid
          type: string
          example: 00000000-0000-0000-0000-000000000000
        channelId:
          format: uuid
          type: string
          example: 00000000-0000-0000-0000-000000000000
        accountId:
          format: uuid
          type: string
          example: 00000000-0000-0000-0000-000000000000
        channelRequestId:
          format: uuid
          type: string
          example: 00000000-0000-0000-0000-000000000000
        channelCategoryID:
          format: uuid
          type: string
          example: 00000000-0000-0000-0000-000000000000
        userId:
          type: string
        screenName:
          type: string
        isActive:
          type: boolean
        isPending:
          type: boolean
        isApproved:
          type: boolean
        orderStatusExtended:
          $ref: '#/components/schemas/CM.Platform.Channels.Models.Orders.ApiOrderStatus'
        orderStatus:
          enum:
          - SELFSERVICE_CREATED
          - SELFSERVICE_FAILED
          - SELFSERVICE_PROVISIONED
          - SELFSERVICE_SUSPENDED
          - VALIDATE
          - RESERVE
          - PROVISION
          - CANCEL
          - FINALIZE
          - TERMINATE
          - SUBSCRIPTION_STOPPED
          type: string
        formInput:
          type: array
          items:
            $ref: '#/components/schemas/CM.Platform.Channels.Models.RequestForms.ApiChannelRequestFormInputResponse'
        fulfilledOnUtc:
          format: date-time
          type: string
        createdOnUtc:
          format: date-time
          type: string
        rejectionReason:
          type: string
        rejectedOnUtc:
          format: date-time
          type: string
        cancelledOnUtc:
          format: date-time
          type: string
        accountBanner:
          type: string
        deletedOnUtc:
          format: date-time
          type: string
        entityStatus:
          enum:
          - ACTIVE
          - PENDING
          - ELIGIBLE
          - NOT_VALIDATED
          - CUSTOMER_ACTION_REQUIRED
          - EXPIRED
          - REJECTED
          - CANCELLED
          - DELETED
          type: string
        accountImage:
          type: string
        location:
          type: string
        description:
          type: string
        name:
          type: string
    CM.Platform.Channels.Models.Orders.ApiOrderStatus:
      type: object
      properties:
        isOrderRequired:
          type: boolean
        status:
          enum:
          - SELFSERVICE_CREATED
          - SELFSERVICE_FAILED
          - SELFSERVICE_PROVISIONED
          - SELFSERVICE_SUSPENDED
          - VALIDATE
          - RESERVE
          - PROVISION
          - CANCEL
          - FINALIZE
          - TERMINATE
          - SUBSCRIPTION_STOPPED
          type: string
        linkedOrderId:
          format: uuid
          type: string
          example: 00000000-0000-0000-0000-000000000000
    CM.Platform.Channels.Models.RequestForms.ApiChannelRequestFormInputResponse:
      type: object
      properties:
        id:
          format: uuid
          type: string
          example: 00000000-0000-0000-0000-000000000000
        channelCategoryRequestID:
          format: uuid
          type: string
          example: 00000000-0000-0000-0000-000000000000
        formElementId:
          format: uuid
          type: string
          example: 00000000-0000-0000-0000-000000000000
        inputValue:
          type: string
        createdOnUtc:
          format: date-time
          type: string
    CM.Platform.Channels.Models.ChannelTypes.Viber.ApiViberAccountAdminBase:
      required:
      - id
      - accountId
      - serviceId
      - phoneNumber
      - name
      - isActive
      - isPending
      - createdOnUtc
      type: object
      properties:
        id:
          format: uuid
          type: string
          example: 00000000-0000-0000-0000-000000000000
        accountId:
          format: uuid
          type: string
          example: 00000000-0000-0000-0000-000000000000
        channelRequestId:
          format: uuid
          type: string
          example: 00000000-0000-0000-0000-000000000000
        channelId:
          format: uuid
          type: string
          example: 00000000-0000-0000-0000-000000000000
        serviceId:
          type: string
        phoneNumber:
          type: string
        name:
          type: string
        isActive:
          type: boolean
        isPending:
          type: boolean
        orderStatus:
          enum:
          - SELFSERVICE_CREATED
          - SELFSERVICE_FAILED
          - SELFSERVICE_PROVISIONED
          - SELFSERVICE_SUSPENDED
          - VALIDATE
          - RESERVE
          - PROVISION
          - CANCEL
          - FINALIZE
          - TERMINATE
          - SUBSCRIPTION_STOPPED
          type: string
        fulfilledOnUtc:
          format: date-time
          type: string
        createdOnUtc:
          format: date-time
          type: string
        rejectionReason:
          type: string
        rejectedOnUtc:
          format: date-time
          type: string
        cancelledOnUtc:
          format: date-time
          type: string
        deletedOnUtc:
          format: date-time
          type: string
        entityStatus:
          enum:
          - ACTIVE
          - PENDING
          - ELIGIBLE
          - NOT_VALIDATED
          - CUSTOMER_ACTION_REQUIRED
          - EXPIRED
          - REJECTED
          - CANCELLED
          - DELETED
          type: string
    System.Net.Http.Formatting.IContentNegotiator:
      type: object
      properties: {}
    System.Net.Http.Formatting.MediaTypeFormatter:
      type: object
      properties:
        SupportedMediaTypes:
          type: array
          items:
            $ref: '#/components/schemas/System.Net.Http.Headers.MediaTypeHeaderValue'
          readOnly: true
        SupportedEncodings:
          type: array
          items:
            $ref: '#/components/schemas/System.Text.Encoding'
          readOnly: true
        MediaTypeMappings:
          type: array
          items:
            $ref: '#/components/schemas/System.Net.Http.Formatting.MediaTypeMapping'
          readOnly: true
        RequiredMemberSelector:
          $ref: '#/components/schemas/System.Net.Http.Formatting.IRequiredMemberSelector'
    System.Net.Http.Headers.MediaTypeHeaderValue:
      type: object
      properties:
        CharSet:
          type: string
        Parameters:
          type: array
          items:
            $ref: '#/components/schemas/System.Net.Http.Headers.NameValueHeaderValue'
          readOnly: true
        MediaType:
          type: string
    System.Text.Encoding:
      type: object
      properties:
        BodyName:
          type: string
          readOnly: true
        EncodingName:
          type: string
          readOnly: true
        HeaderName:
          type: string
          readOnly: true
        WebName:
          type: string
          readOnly: true
        WindowsCodePage:
          format: int32
          type: integer
          readOnly: true
        IsBrowserDisplay:
          type: boolean
          readOnly: true
        IsBrowserSave:
          type: boolean
          readOnly: true
        IsMailNewsDisplay:
          type: boolean
          readOnly: true
        IsMailNewsSave:
          type: boolean
          readOnly: true
        IsSingleByte:
          type: boolean
          readOnly: true
        EncoderFallback:
          $ref: '#/components/schemas/System.Text.EncoderFallback'
        DecoderFallback:
          $ref: '#/components/schemas/System.Text.DecoderFallback'
        IsReadOnly:
          type: boolean
          readOnly: true
        CodePage:
          format: int32
          type: integer
          readOnly: true
    System.Net.Http.Formatting.MediaTypeMapping:
      type: object
      properties:
        MediaType:
          $ref: '#/components/schemas/System.Net.Http.Headers.MediaTypeHeaderValue'
    System.Net.Http.Formatting.IRequiredMemberSelector:
      type: object
      properties: {}
    System.Net.Http.Headers.NameValueHeaderValue:
      type: object
      properties:
        Name:
          type: string
          readOnly: true
        Value:
          type: string
    System.Text.EncoderFallback:
      type: object
      properties:
        MaxCharCount:
          format: int32
          type: integer
          readOnly: true
    System.Text.DecoderFallback:
      type: object
      properties:
        MaxCharCount:
          format: int32
          type: integer
          readOnly: true
    CM.Platform.Channels.Models.ChannelTypes.Viber.ApiViberAccountAdmin:
      required:
      - id
      - accountId
      - channelCategoryID
      - serviceId
      - phoneNumber
      - name
      - isActive
      - isPending
      - orderStatusExtended
      - createdOnUtc
      type: object
      properties:
        id:
          format: uuid
          type: string
          example: 00000000-0000-0000-0000-000000000000
        accountId:
          format: uuid
          type: string
          example: 00000000-0000-0000-0000-000000000000
        channelRequestId:
          format: uuid
          type: string
          example: 00000000-0000-0000-0000-000000000000
        channelTypeId:
          format: uuid
          type: string
          example: 00000000-0000-0000-0000-000000000000
        channelId:
          format: uuid
          type: string
          example: 00000000-0000-0000-0000-000000000000
        channelCategoryID:
          format: uuid
          type: string
          example: 00000000-0000-0000-0000-000000000000
        serviceId:
          type: string
        phoneNumber:
          type: string
        name:
          type: string
        isActive:
          type: boolean
        isPending:
          type: boolean
        orderStatusExtended:
          $ref: '#/components/schemas/CM.Platform.Channels.Models.Orders.ApiOrderStatus'
        orderStatus:
          enum:
          - SELFSERVICE_CREATED
          - SELFSERVICE_FAILED
          - SELFSERVICE_PROVISIONED
          - SELFSERVICE_SUSPENDED
          - VALIDATE
          - RESERVE
          - PROVISION
          - CANCEL
          - FINALIZE
          - TERMINATE
          - SUBSCRIPTION_STOPPED
          type: string
        formInput:
          type: array
          items:
            $ref: '#/components/schemas/CM.Platform.Channels.Models.RequestForms.ApiChannelRequestFormInputResponse'
        fulfilledOnUtc:
          format: date-time
          type: string
        createdOnUtc:
          format: date-time
          type: string
        rejectionReason:
          type: string
        rejectedOnUtc:
          format: date-time
          type: string
        cancelledOnUtc:
          format: date-time
          type: string
        deletedOnUtc:
          format: date-time
          type: string
        entityStatus:
          enum:
          - ACTIVE
          - PENDING
          - ELIGIBLE
          - NOT_VALIDATED
          - CUSTOMER_ACTION_REQUIRED
          - EXPIRED
          - REJECTED
          - CANCELLED
          - DELETED
          type: string
    CM.Platform.Channels.Models.ChannelTypes.vSms.ApiVSmsAccountAdminBase:
      required:
      - id
      - accountId
      - channelRequestId
      - isPending
      - createdOnUtc
      type: object
      properties:
        id:
          format: uuid
          type: string
          example: 00000000-0000-0000-0000-000000000000
        accountId:
          format: uuid
          type: string
          example: 00000000-0000-0000-0000-000000000000
        channelRequestId:
          format: uuid
          type: string
          example: 00000000-0000-0000-0000-000000000000
        isPending:
          type: boolean
        cancelledOnUtc:
          format: date-time
          type: string
        fulfilledOnUtc:
          format: date-time
          type: string
        createdOnUtc:
          format: date-time
          type: string
        entityStatus:
          enum:
          - ACTIVE
          - PENDING
          - ELIGIBLE
          - NOT_VALIDATED
          - CUSTOMER_ACTION_REQUIRED
          - EXPIRED
          - REJECTED
          - CANCELLED
          - DELETED
          type: string
        orderStatus:
          enum:
          - SELFSERVICE_CREATED
          - SELFSERVICE_FAILED
          - SELFSERVICE_PROVISIONED
          - SELFSERVICE_SUSPENDED
          - VALIDATE
          - RESERVE
          - PROVISION
          - CANCEL
          - FINALIZE
          - TERMINATE
          - SUBSCRIPTION_STOPPED
          type: string
    CM.Platform.Channels.Models.ChannelTypes.vSms.ApiVSmsAccountAdmin:
      required:
      - id
      - accountId
      - channelRequestId
      - channelCategoryID
      - isPending
      - createdOnUtc
      - orderStatusExtended
      type: object
      properties:
        id:
          format: uuid
          type: string
          example: 00000000-0000-0000-0000-000000000000
        accountId:
          format: uuid
          type: string
          example: 00000000-0000-0000-0000-000000000000
        channelTypeId:
          format: uuid
          type: string
          example: 00000000-0000-0000-0000-000000000000
        channelRequestId:
          format: uuid
          type: string
          example: 00000000-0000-0000-0000-000000000000
        channelCategoryID:
          format: uuid
          type: string
          example: 00000000-0000-0000-0000-000000000000
        isPending:
          type: boolean
        cancelledOnUtc:
          format: date-time
          type: string
        fulfilledOnUtc:
          format: date-time
          type: string
        createdOnUtc:
          format: date-time
          type: string
        entityStatus:
          enum:
          - ACTIVE
          - PENDING
          - ELIGIBLE
          - NOT_VALIDATED
          - CUSTOMER_ACTION_REQUIRED
          - EXPIRED
          - REJECTED
          - CANCELLED
          - DELETED
          type: string
        orderStatusExtended:
          $ref: '#/components/schemas/CM.Platform.Channels.Models.Orders.ApiOrderStatus'
        orderStatus:
          enum:
          - SELFSERVICE_CREATED
          - SELFSERVICE_FAILED
          - SELFSERVICE_PROVISIONED
          - SELFSERVICE_SUSPENDED
          - VALIDATE
          - RESERVE
          - PROVISION
          - CANCEL
          - FINALIZE
          - TERMINATE
          - SUBSCRIPTION_STOPPED
          type: string
        formInput:
          type: array
          items:
            $ref: '#/components/schemas/CM.Platform.Channels.Models.RequestForms.ApiChannelRequestFormInputResponse'
    CM.Platform.Channels.Models.ChannelTypes.WhatsApp.ApiWhatsAppBusinessAccountAdminBase:
      required:
      - id
      - accountId
      - channelRequestId
      - isPending
      - createdOnUtc
      type: object
      properties:
        id:
          format: uuid
          type: string
          example: 00000000-0000-0000-0000-000000000000
        accountId:
          format: uuid
          type: string
          example: 00000000-0000-0000-0000-000000000000
        channelRequestId:
          format: uuid
          type: string
          example: 00000000-0000-0000-0000-000000000000
        isPending:
          type: boolean
        orderStatus:
          enum:
          - SELFSERVICE_CREATED
          - SELFSERVICE_FAILED
          - SELFSERVICE_PROVISIONED
          - SELFSERVICE_SUSPENDED
          - VALIDATE
          - RESERVE
          - PROVISION
          - CANCEL
          - FINALIZE
          - TERMINATE
          - SUBSCRIPTION_STOPPED
          type: string
        isFacebookEmbeddedSignUp:
          type: boolean
        facebookId:
          type: string
        cancelledOnUtc:
          format: date-time
          type: string
        fulfilledOnUtc:
          format: date-time
          type: string
        createdOnUtc:
          format: date-time
          type: string
        country:
          type: string
        entityStatus:
          enum:
          - ACTIVE
          - PENDING
          - ELIGIBLE
          - NOT_VALIDATED
          - CUSTOMER_ACTION_REQUIRED
          - EXPIRED
          - REJECTED
          - CANCELLED
          - DELETED
          type: string
    CM.Platform.Channels.Models.ChannelTypes.WhatsApp.ApiWhatsAppBusinessAccountAdmin:
      required:
      - id
      - accountId
      - channelRequestId
      - channelCategoryID
      - isPending
      - orderStatusExtended
      - createdOnUtc
      type: object
      properties:
        id:
          format: uuid
          type: string
          example: 00000000-0000-0000-0000-000000000000
        metaWebhookForwardUrl:
          type: string
        accountId:
          format: uuid
          type: string
          example: 00000000-0000-0000-0000-000000000000
        channelTypeId:
          format: uuid
          type: string
          example: 00000000-0000-0000-0000-000000000000
        channelRequestId:
          format: uuid
          type: string
          example: 00000000-0000-0000-0000-000000000000
        channelCategoryID:
          format: uuid
          type: string
          example: 00000000-0000-0000-0000-000000000000
        isPending:
          type: boolean
        orderStatusExtended:
          $ref: '#/components/schemas/CM.Platform.Channels.Models.Orders.ApiOrderStatus'
        orderStatus:
          enum:
          - SELFSERVICE_CREATED
          - SELFSERVICE_FAILED
          - SELFSERVICE_PROVISIONED
          - SELFSERVICE_SUSPENDED
          - VALIDATE
          - RESERVE
          - PROVISION
          - CANCEL
          - FINALIZE
          - TERMINATE
          - SUBSCRIPTION_STOPPED
          type: string
        isFacebookEmbeddedSignUp:
          type: boolean
        facebookId:
          type: string
        cancelledOnUtc:
          format: date-time
          type: string
        fulfilledOnUtc:
          format: date-time
          type: string
        createdOnUtc:
          format: date-time
          type: string
        country:
          type: string
        formInput:
          type: array
          items:
            $ref: '#/components/schemas/CM.Platform.Channels.Models.RequestForms.ApiChannelRequestFormInputResponse'
        entityStatus:
          enum:
          - ACTIVE
          - PENDING
          - ELIGIBLE
          - NOT_VALIDATED
          - CUSTOMER_ACTION_REQUIRED
          - EXPIRED
          - REJECTED
          - CANCELLED
          - DELETED
          type: string
    CM.Platform.Channels.Models.ChannelTypes.WhatsApp.ApiWhatsAppTemplateMetaSyncResult:
      required:
      - issues
      type: object
      properties:
        channelsTemplateId:
          format: uuid
          type: string
          example: 00000000-0000-0000-0000-000000000000
        channelsTemplateName:
          type: string
        metaTemplateName:
          type: string
        issues:
          type: array
          items:
            enum:
            - MISSING_META
            - MISSING_CHANNELS
            - CATEGORY
            - CATEGORY_META_MULTIPLE
            - CATEGORY_META_MISSING
            - LANGUAGE_COUNT
            type: string
    CM.Platform.Channels.Models.EventLogging.ApiBaseEvent:
      required:
      - id
      - eventType
      - createdOnUtc
      type: object
      properties:
        id:
          format: uuid
          type: string
          example: 00000000-0000-0000-0000-000000000000
        accountId:
          format: uuid
          type: string
          example: 00000000-0000-0000-0000-000000000000
        ssoAccountId:
          format: uuid
          type: string
          example: 00000000-0000-0000-0000-000000000000
        eventType:
          type: string
        eventSubType:
          type: string
        eventData:
          type: object
        createdOnUtc:
          format: date-time
          type: string
    CM.Platform.Channels.ExternalModels.ApiClients.Meta.MetaBusinessUser:
      type: object
      properties:
        id:
          type: string
        name:
          type: string
        email:
          type: string
        first_name:
          type: string
        last_name:
          type: string
        pending_email:
          type: string
        role:
          type: string
        title:
          type: string
        two_fac_status:
          type: string
    CM.Platform.Channels.Models.ChannelTypes.WhatsApp.ApiWhatsAppProfileBase:
      required:
      - id
      - accountId
      - isActive
      - isOtpProcessed
      - isOtpSent
      - isPending
      - isSandbox
      - createdOnUtc
      type: object
      properties:
        id:
          format: uuid
          type: string
          example: 00000000-0000-0000-0000-000000000000
        accountId:
          format: uuid
          type: string
          example: 00000000-0000-0000-0000-000000000000
        isFacebookEmbeddedSignUpImport:
          type: boolean
        phoneNumber:
          type: string
        name:
          type: string
        isActive:
          type: boolean
        isOtpProcessed:
          type: boolean
        isOtpSent:
          type: boolean
        isPending:
          type: boolean
        isSandbox:
          type: boolean
        metaQualityRating:
          $ref: '#/components/schemas/CM.Platform.Channels.Models.ChannelTypes.WhatsApp.ApiWhatsAppProfileMetaQualityRating'
        fulfilledOnUtc:
          format: date-time
          type: string
        createdOnUtc:
          format: date-time
          type: string
        rejectedOnUtc:
          format: date-time
          type: string
        cancelledOnUtc:
          format: date-time
          type: string
        deletedOnUtc:
          format: date-time
          type: string
        entityStatus:
          enum:
          - ACTIVE
          - PENDING
          - ELIGIBLE
          - NOT_VALIDATED
          - CUSTOMER_ACTION_REQUIRED
          - EXPIRED
          - REJECTED
          - CANCELLED
          - DELETED
          type: string
    CM.Platform.Channels.Models.ChannelTypes.WhatsApp.ApiWhatsAppProfileMetaQualityRating:
      type: object
      properties:
        rating:
          type: string
        currentLimit:
          $ref: '#/components/schemas/CM.Platform.Channels.Models.ChannelTypes.WhatsApp.ApiWhatsAppProfileMetaQualityRatingLimit'
        dailyConversationLimit:
          format: int64
          type: integer
        restrictionHistory:
          type: array
          items:
            type: array
            items:
              $ref: '#/components/schemas/CM.Platform.Channels.Models.External.MetaCallbacks.ApiMetaCallbackWhatsAppBusinessAccountUpdateRestriction'
    CM.Platform.Channels.Models.ChannelTypes.WhatsApp.ApiWhatsAppProfileMetaQualityRatingLimit:
      type: object
      properties:
        fallbackLimit:
          type: string
        officialLimit:
          enum:
          - TIER_50
          - TIER_250
          - TIER_1K
          - TIER_10K
          - TIER_100K
          - TIER_UNLIMITED
          type: string
    CM.Platform.Channels.Models.External.MetaCallbacks.ApiMetaCallbackWhatsAppBusinessAccountUpdateRestriction:
      type: object
      properties:
        restriction_type:
          type: string
        expiration:
          type: string
    CM.Platform.Channels.Models.ChannelTypes.WhatsApp.ApiWhatsAppProfileAdmin:
      required:
      - id
      - accountId
      - channelRequestId
      - channelCategoryID
      - isActive
      - isInternallyRegistered
      - isOtpProcessed
      - isOtpSent
      - isPending
      - isSandbox
      - createdOnUtc
      type: object
      properties:
        id:
          format: uuid
          type: string
          example: 00000000-0000-0000-0000-000000000000
        channelId:
          format: uuid
          type: string
          example: 00000000-0000-0000-0000-000000000000
        accountId:
          format: uuid
          type: string
          example: 00000000-0000-0000-0000-000000000000
        channelRequestId:
          format: uuid
          type: string
          example: 00000000-0000-0000-0000-000000000000
        channelCategoryID:
          format: uuid
          type: string
          example: 00000000-0000-0000-0000-000000000000
        businessAccountID:
          format: uuid
          type: string
          example: 00000000-0000-0000-0000-000000000000
        facebookBusinessAccountId:
          type: string
        isFacebookEmbeddedSignUpOwnershipVerified:
          type: boolean
        isFacebookEmbeddedSignUpImport:
          type: boolean
        phoneNumberRequestId:
          format: uuid
          type: string
          example: 00000000-0000-0000-0000-000000000000
        phoneNumber:
          type: string
        incomingBspMigrationState:
          $ref: '#/components/schemas/CM.Platform.Channels.Models.ChannelTypes.WhatsApp.ApiWhatsAppProfileIncomingBspMigrationState'
        deploymentStatus:
          $ref: '#/components/schemas/CM.Platform.Channels.ExternalModels.ApiClients.TextCore.WhatsAppConfiguration.ApiWhatsAppProfileDeploymentStatus'
        image:
          type: string
        imageUrl:
          type: string
        rejectionReason:
          type: string
        name:
          type: string
        isActive:
          type: boolean
        isInternallyRegistered:
          type: boolean
        isOtpProcessed:
          type: boolean
        isOtpSent:
          type: boolean
        isPending:
          type: boolean
        isSandbox:
          type: boolean
        metaSupplierInfoAdmin:
          $ref: '#/components/schemas/CM.Platform.Channels.Models.ChannelTypes.WhatsApp.ApiWhatsAppProfileMetaSupplierInfoAdmin'
        metaSupplierInfo:
          $ref: '#/components/schemas/CM.Platform.Channels.Models.ChannelTypes.WhatsApp.ApiWhatsAppProfileMetaSupplierInfo'
        metaQualityRating:
          $ref: '#/components/schemas/CM.Platform.Channels.Models.ChannelTypes.WhatsApp.ApiWhatsAppProfileMetaQualityRating'
        fulfilledOnUtc:
          format: date-time
          type: string
        createdOnUtc:
          format: date-time
          type: string
        rejectedOnUtc:
          format: date-time
          type: string
        cancelledOnUtc:
          format: date-time
          type: string
        deletedOnUtc:
          format: date-time
          type: string
        entityStatus:
          enum:
          - ACTIVE
          - PENDING
          - ELIGIBLE
          - NOT_VALIDATED
          - CUSTOMER_ACTION_REQUIRED
          - EXPIRED
          - REJECTED
          - CANCELLED
          - DELETED
          type: string
    CM.Platform.Channels.Models.ChannelTypes.WhatsApp.ApiWhatsAppProfileIncomingBspMigrationState:
      required:
      - isMigrationInitiated
      - isOtpRequested
      - isOtpValidated
      - isCertificateAccessible
      - initiatedOnUtc
      - phoneNumberCountryCode
      - phoneNumber
      - facebookMigrationRequestId
      - otpMethod
      - otpLanguage
      - internalConfigurationState
      type: object
      properties:
        isMigrationInitiated:
          type: boolean
        isOtpRequested:
          type: boolean
        isOtpValidated:
          type: boolean
        isCertificateAccessible:
          type: boolean
        initiatedBy:
          format: uuid
          type: string
          example: 00000000-0000-0000-0000-000000000000
        initiatedOnUtc:
          format: date-time
          type: string
        finalizedOnUtc:
          format: date-time
          type: string
        phoneNumberCountryCode:
          type: string
        phoneNumber:
          type: string
        facebookMigrationRequestId:
          type: string
        otpMethod:
          enum:
          - voice
          - sms
          type: string
        otpLanguage:
          type: string
        internalConfigurationState:
          $ref: '#/components/schemas/CM.Platform.Channels.Models.ChannelTypes.WhatsApp.ApiWhatsAppProfileIncomingBspMigrationInternalConfigurationState'
    CM.Platform.Channels.ExternalModels.ApiClients.TextCore.WhatsAppConfiguration.ApiWhatsAppProfileDeploymentStatus:
      type: object
      properties:
        metaStorageLocation:
          type: string
    CM.Platform.Channels.Models.ChannelTypes.WhatsApp.ApiWhatsAppProfileMetaSupplierInfoAdmin:
      type: object
      properties:
        certificate:
          type: string
        apiBusinessGlobalSearchEligibility:
          type: string
        healthStatus:
          type: object
        lastOnboardedTime:
          type: string
        newCertificate:
          type: string
        id:
          type: string
        accountMode:
          type: string
        codeVerificationStatus:
          enum:
          - NOT_VERIFIED
          - VERIFIED
          - EXPIRED
          type: string
        displayPhonenumber:
          type: string
        isOfficialBusinessAccount:
          type: boolean
        isPinEnabled:
          type: boolean
        isPreVerifiedNumber:
          type: boolean
        nameStatus:
          type: string
        newNameStatus:
          type: string
        platformType:
          type: string
        qualityRating:
          type: string
        qualityScore:
          type: object
        searchVisibility:
          type: string
        status:
          type: string
        throughput:
          type: object
        verifiedName:
          type: string
    CM.Platform.Channels.Models.ChannelTypes.WhatsApp.ApiWhatsAppProfileMetaSupplierInfo:
      type: object
      properties:
        id:
          type: string
        accountMode:
          type: string
        codeVerificationStatus:
          enum:
          - NOT_VERIFIED
          - VERIFIED
          - EXPIRED
          type: string
        displayPhonenumber:
          type: string
        isOfficialBusinessAccount:
          type: boolean
        isPinEnabled:
          type: boolean
        isPreVerifiedNumber:
          type: boolean
        nameStatus:
          type: string
        newNameStatus:
          type: string
        platformType:
          type: string
        qualityRating:
          type: string
        qualityScore:
          type: object
        searchVisibility:
          type: string
        status:
          type: string
        throughput:
          type: object
        verifiedName:
          type: string
    CM.Platform.Channels.Models.ChannelTypes.WhatsApp.ApiWhatsAppProfileIncomingBspMigrationInternalConfigurationState:
      required:
      - currentStage
      - stages
      type: object
      properties:
        currentStage:
          format: int32
          type: integer
        provisionMaxWaitSeconds:
          format: int32
          type: integer
        error:
          type: string
        stages:
          type: object
          additionalProperties:
            type: string
    CM.Platform.Channels.Models.ChannelTypes.WhatsApp.ApiWhatsAppProfile:
      required:
      - id
      - accountId
      - isActive
      - isOtpProcessed
      - isOtpSent
      - isPending
      - isSandbox
      - createdOnUtc
      type: object
      properties:
        id:
          format: uuid
          type: string
          example: 00000000-0000-0000-0000-000000000000
        channelId:
          format: uuid
          type: string
          example: 00000000-0000-0000-0000-000000000000
        accountId:
          format: uuid
          type: string
          example: 00000000-0000-0000-0000-000000000000
        isFacebookEmbeddedSignUpOwnershipVerified:
          type: boolean
        isFacebookEmbeddedSignUpImport:
          type: boolean
        phoneNumber:
          type: string
        image:
          type: string
        imageUrl:
          type: string
        rejectionReason:
          type: string
        name:
          type: string
        isActive:
          type: boolean
        isOtpProcessed:
          type: boolean
        isOtpSent:
          type: boolean
        isPending:
          type: boolean
        isSandbox:
          type: boolean
        metaSupplierInfo:
          $ref: '#/components/schemas/CM.Platform.Channels.Models.ChannelTypes.WhatsApp.ApiWhatsAppProfileMetaSupplierInfo'
        metaQualityRating:
          $ref: '#/components/schemas/CM.Platform.Channels.Models.ChannelTypes.WhatsApp.ApiWhatsAppProfileMetaQualityRating'
        fulfilledOnUtc:
          format: date-time
          type: string
        createdOnUtc:
          format: date-time
          type: string
        rejectedOnUtc:
          format: date-time
          type: string
        cancelledOnUtc:
          format: date-time
          type: string
        deletedOnUtc:
          format: date-time
          type: string
        entityStatus:
          enum:
          - ACTIVE
          - PENDING
          - ELIGIBLE
          - NOT_VALIDATED
          - CUSTOMER_ACTION_REQUIRED
          - EXPIRED
          - REJECTED
          - CANCELLED
          - DELETED
          type: string
    CM.Platform.Channels.Models.ChannelTypes.WhatsApp.ApiWhatsAppTemplateBaseResponse:
      required:
      - id
      - accountId
      - templateCategoryId
      - enabledLanguages
      - isActive
      - isIncomplete
      - isPending
      - isValidationRequested
      - createdOnUtc
      type: object
      properties:
        id:
          format: uuid
          type: string
          example: 00000000-0000-0000-0000-000000000000
        accountId:
          format: uuid
          type: string
          example: 00000000-0000-0000-0000-000000000000
        facebookNamespaceId:
          type: string
        name:
          type: string
        templateCategoryId:
          format: uuid
          type: string
          example: 00000000-0000-0000-0000-000000000000
        category:
          type: string
        generatedLayout:
          enum:
          - AUTHENTICATION_OTP_COPY
          - AUTHENTICATION_OTP_ONE_TAP
          - MARKETING_CAROUSEL
          - MARKETING_COUPONS
          - MARKETING_LIMITED_TIME_OFFER
          - UTILITY_CAROUSEL
          type: string
        facebookName:
          type: string
        enabledLanguages:
          type: array
          items:
            format: uuid
            type: string
            example: 00000000-0000-0000-0000-000000000000
        assistedMode:
          type: boolean
        headerSettings:
          $ref: '#/components/schemas/CM.Platform.Channels.Models.ChannelTypes.WhatsApp.ApiWhatsAppTemplateHeaderSettingsResponse'
        settings:
          $ref: '#/components/schemas/CM.Platform.Channels.Models.ChannelTypes.WhatsApp.ApiWhatsAppTemplateSettingsResponse'
        languagesStatus:
          $ref: '#/components/schemas/CM.Platform.Channels.Models.ChannelTypes.WhatsApp.ApiWhatsAppTemplateLanguageStatus'
        languages:
          type: object
          additionalProperties:
            $ref: '#/components/schemas/CM.Platform.Channels.Models.ChannelTypes.WhatsApp.ApiWhatsAppTemplateLanguageResponse'
        isActive:
          type: boolean
        isIncomplete:
          type: boolean
        isPending:
          type: boolean
        isValidationRequested:
          type: boolean
        rejectedOnUtc:
          format: date-time
          type: string
        cancelledOnUtc:
          format: date-time
          type: string
        deletedOnUtc:
          format: date-time
          type: string
        fulfilledOnUtc:
          format: date-time
          type: string
        createdOnUtc:
          format: date-time
          type: string
        entityStatus:
          enum:
          - ACTIVE
          - PENDING
          - ELIGIBLE
          - NOT_VALIDATED
          - CUSTOMER_ACTION_REQUIRED
          - EXPIRED
          - REJECTED
          - CANCELLED
          - DELETED
          type: string
    CM.Platform.Channels.Models.ChannelTypes.WhatsApp.ApiWhatsAppTemplateHeaderSettingsResponse:
      type: object
      properties:
        isGeneratedLayout:
          type: boolean
        generatedLayoutExampleValue:
          type: string
        format:
          enum:
          - none
          - text
          - image
          - document
          - video
          type: string
        replacementFields:
          type: array
          items:
            $ref: '#/components/schemas/CM.Platform.Channels.Models.ChannelTypes.WhatsApp.ApiWhatsAppTemplateReplacementField'
    CM.Platform.Channels.Models.ChannelTypes.WhatsApp.ApiWhatsAppTemplateSettingsResponse:
      type: object
      properties:
        isGeneratedLayout:
          type: boolean
        replacementFields:
          type: array
          items:
            $ref: '#/components/schemas/CM.Platform.Channels.Models.ChannelTypes.WhatsApp.ApiWhatsAppTemplateReplacementField'
    CM.Platform.Channels.Models.ChannelTypes.WhatsApp.ApiWhatsAppTemplateLanguageStatus:
      required:
      - total
      - active
      - languageCategoryOverrideActive
      type: object
      properties:
        total:
          format: int32
          type: integer
        active:
          format: int32
          type: integer
        languageCategoryOverrideActive:
          type: boolean
    CM.Platform.Channels.Models.ChannelTypes.WhatsApp.ApiWhatsAppTemplateLanguageResponse:
      required:
      - id
      - category
      - name
      - header
      - body
      - content
      - footer
      - isActive
      - isIncomplete
      - isPending
      - isValidationRequested
      - createdOnUtc
      type: object
      properties:
        id:
          format: uuid
          type: string
          example: 00000000-0000-0000-0000-000000000000
        category:
          $ref: '#/components/schemas/CM.Platform.Channels.Models.ChannelTypes.WhatsApp.ApiWhatsAppTemplateLanguageCategory'
        name:
          type: string
        header:
          $ref: '#/components/schemas/CM.Platform.Channels.Models.ChannelTypes.WhatsApp.ApiWhatsAppTemplateLanguageHeaderLayoutResponse'
        headerContent:
          type: string
        body:
          $ref: '#/components/schemas/CM.Platform.Channels.Models.ChannelTypes.WhatsApp.ApiWhatsAppTemplateLanguageBodyLayoutResponse'
        content:
          type: string
        footer:
          $ref: '#/components/schemas/CM.Platform.Channels.Models.ChannelTypes.WhatsApp.ApiWhatsAppTemplateLanguageFooterLayoutResponse'
        footerContent:
          type: string
        interactiveSettings:
          $ref: '#/components/schemas/CM.Platform.Channels.Models.ChannelTypes.WhatsApp.ApiWhatsAppTemplateLanguageInteractiveSettingsResponse'
        carouselLayoutSettings:
          $ref: '#/components/schemas/CM.Platform.Channels.Models.ChannelTypes.WhatsApp.ApiWhatsAppTemplateLanguageCarouselLayoutResponse'
        limitedTimeOffer:
          $ref: '#/components/schemas/CM.Platform.Channels.Models.ChannelTypes.WhatsApp.ApiWhatsAppTemplateLanguageLimitedTimeOfferLayoutResponse'
        messageSendTimeToLiveSeconds:
          format: int32
          type: integer
        rejectionReason:
          type: string
        isActive:
          type: boolean
        isIncomplete:
          type: boolean
        isPending:
          type: boolean
        isValidationRequested:
          type: boolean
        rejectedOnUtc:
          format: date-time
          type: string
        fulfilledOnUtc:
          format: date-time
          type: string
        updatedOnUtc:
          format: date-time
          type: string
        createdOnUtc:
          format: date-time
          type: string
        metaCallbackHistory:
          $ref: '#/components/schemas/CM.Platform.Channels.Models.ChannelTypes.WhatsApp.ApiWhatsAppTemplateLanguageMetaCallbackHistory'
        entityStatus:
          enum:
          - ACTIVE
          - PENDING
          - ELIGIBLE
          - NOT_VALIDATED
          - CUSTOMER_ACTION_REQUIRED
          - EXPIRED
          - REJECTED
          - CANCELLED
          - DELETED
          type: string
    CM.Platform.Channels.Models.ChannelTypes.WhatsApp.ApiWhatsAppTemplateReplacementField:
      type: object
      properties:
        id:
          format: uuid
          type: string
          example: 00000000-0000-0000-0000-000000000000
        index:
          format: int32
          type: integer
        name:
          type: string
        type:
          type: string
        isGeneratedLayout:
          type: boolean
        generatedLayoutExampleValue:
          type: string
    CM.Platform.Channels.Models.ChannelTypes.WhatsApp.ApiWhatsAppTemplateLanguageCategory:
      required:
      - id
      - name
      - metaOverride
      type: object
      properties:
        id:
          format: uuid
          type: string
          example: 00000000-0000-0000-0000-000000000000
        name:
          type: string
        metaOverride:
          type: boolean
        metaOverrideOnUtc:
          format: date-time
          type: string
    CM.Platform.Channels.Models.ChannelTypes.WhatsApp.ApiWhatsAppTemplateLanguageHeaderLayoutResponse:
      type: object
      properties:
        isGeneratedLayout:
          type: boolean
        generatedLayoutExampleValue:
          type: string
        content:
          type: string
    CM.Platform.Channels.Models.ChannelTypes.WhatsApp.ApiWhatsAppTemplateLanguageBodyLayoutResponse:
      type: object
      properties:
        isGeneratedLayout:
          type: boolean
        generatedLayoutExampleValue:
          type: string
        content:
          type: string
    CM.Platform.Channels.Models.ChannelTypes.WhatsApp.ApiWhatsAppTemplateLanguageFooterLayoutResponse:
      type: object
      properties:
        isGeneratedLayout:
          type: boolean
        generatedLayoutExampleValue:
          type: string
        content:
          type: string
        otpSettings:
          $ref: '#/components/schemas/CM.Platform.Channels.Models.ChannelTypes.WhatsApp.ApiWhatsAppTemplateLanguageFooterOtpSettings'
    CM.Platform.Channels.Models.ChannelTypes.WhatsApp.ApiWhatsAppTemplateLanguageInteractiveSettingsResponse:
      type: object
      properties:
        buttons:
          type: array
          items:
            $ref: '#/components/schemas/CM.Platform.Channels.Models.ChannelTypes.WhatsApp.ApiWhatsAppTemplateLanguageInteractiveButtonResponse'
        isGeneratedLayout:
          type: boolean
    CM.Platform.Channels.Models.ChannelTypes.WhatsApp.ApiWhatsAppTemplateLanguageCarouselLayoutResponse:
      type: object
      properties:
        carouselSettings:
          $ref: '#/components/schemas/CM.Platform.Channels.Models.ChannelTypes.WhatsApp.ApiWhatsAppTemplateLanguageCarouselSettingsResponse'
        cards:
          type: array
          items:
            $ref: '#/components/schemas/CM.Platform.Channels.Models.ChannelTypes.WhatsApp.ApiWhatsAppTemplateLanguageCarouselCardResponse'
        isGeneratedLayout:
          type: boolean
        generatedLayoutExampleValue:
          type: string
    CM.Platform.Channels.Models.ChannelTypes.WhatsApp.ApiWhatsAppTemplateLanguageLimitedTimeOfferLayoutResponse:
      type: object
      properties:
        isGeneratedLayout:
          type: boolean
        generatedLayoutExampleValue:
          type: string
        content:
          type: string
        hasExpiration:
          type: boolean
    CM.Platform.Channels.Models.ChannelTypes.WhatsApp.ApiWhatsAppTemplateLanguageMetaCallbackHistory:
      required:
      - languageId
      - events
      type: object
      properties:
        languageId:
          format: uuid
          type: string
          example: 00000000-0000-0000-0000-000000000000
        events:
          type: object
          additionalProperties:
            type: array
            items:
              $ref: '#/components/schemas/CM.Platform.Channels.Models.External.MetaCallbacks.ApiMetaCallbackWhatsAppTemplateLanguageUpdate'
    CM.Platform.Channels.Models.ChannelTypes.WhatsApp.ApiWhatsAppTemplateLanguageFooterOtpSettings:
      type: object
      properties:
        copyCodeExpirationMinutes:
          format: int32
          type: integer
    CM.Platform.Channels.Models.ChannelTypes.WhatsApp.ApiWhatsAppTemplateLanguageInteractiveButtonResponse:
      type: object
      properties:
        isGeneratedLayout:
          type: boolean
        generatedLayoutExampleValue:
          type: string
        generatedLayoutButtonText:
          type: string
        buttonText:
          type: string
        url:
          type: string
        phoneNumber:
          type: string
        otp:
          $ref: '#/components/schemas/CM.Platform.Channels.Models.ChannelTypes.WhatsApp.ApiWhatsAppTemplateLanguageInteractiveButtonOtpRequest'
        id:
          format: uuid
          type: string
          example: 00000000-0000-0000-0000-000000000000
        type:
          enum:
          - PHONENUMBER
          - URL
          - QUICK_REPLY
          - OTP_COPY
          - OTP_ONE_TAP
          - CODE_COPY
          type: string
        urlType:
          enum:
          - STATIC
          - DYNAMIC
          type: string
    CM.Platform.Channels.Models.ChannelTypes.WhatsApp.ApiWhatsAppTemplateLanguageCarouselSettingsResponse:
      type: object
      properties:
        header:
          $ref: '#/components/schemas/CM.Platform.Channels.Models.ChannelTypes.WhatsApp.ApiWhatsAppTemplateLanguageCarouselCardHeader'
        buttonSettings:
          type: array
          items:
            $ref: '#/components/schemas/CM.Platform.Channels.Models.ChannelTypes.WhatsApp.ApiWhatsAppTemplateInteractiveSettingsButtonResponse'
    CM.Platform.Channels.Models.ChannelTypes.WhatsApp.ApiWhatsAppTemplateLanguageCarouselCardResponse:
      type: object
      properties:
        buttons:
          type: array
          items:
            $ref: '#/components/schemas/CM.Platform.Channels.Models.ChannelTypes.WhatsApp.ApiWhatsAppTemplateLanguageInteractiveButtonResponse'
        header:
          $ref: '#/components/schemas/CM.Platform.Channels.Models.ChannelTypes.WhatsApp.ApiWhatsAppTemplateLanguageCarouselCardHeader'
        body:
          $ref: '#/components/schemas/CM.Platform.Channels.Models.ChannelTypes.WhatsApp.ApiWhatsAppTemplateLanguageBodyLayoutRequest'
    CM.Platform.Channels.Models.External.MetaCallbacks.ApiMetaCallbackWhatsAppTemplateLanguageUpdate:
      type: object
      properties:
        message_template_id:
          format: int64
          type: integer
        message_template_name:
          type: string
        message_template_language:
          type: string
        previous_category:
          type: string
        new_category:
          type: string
        reason:
          type: string
        previous_quality_score:
          type: string
        new_quality_score:
          type: string
        disable_info:
          $ref: '#/components/schemas/CM.Platform.Channels.Models.External.MetaCallbacks.ApiMetaCallbackWhatsAppTemplateLanguageUpdateDisableInfo'
        other_info:
          $ref: '#/components/schemas/CM.Platform.Channels.Models.External.MetaCallbacks.ApiMetaCallbackWhatsAppTemplateLanguageUpdateOtherInfo'
        event:
          type: string
        requester:
          type: string
    CM.Platform.Channels.Models.ChannelTypes.WhatsApp.ApiWhatsAppTemplateLanguageInteractiveButtonOtpRequest:
      type: object
      properties:
        oneTap:
          $ref: '#/components/schemas/CM.Platform.Channels.Models.ChannelTypes.WhatsApp.ApiWhatsAppTemplateLanguageInteractiveButtonOtpOneTap'
    CM.Platform.Channels.Models.ChannelTypes.WhatsApp.ApiWhatsAppTemplateLanguageCarouselCardHeader:
      type: object
      properties:
        format:
          enum:
          - IMAGE
          - VIDEO
          type: string
    CM.Platform.Channels.Models.ChannelTypes.WhatsApp.ApiWhatsAppTemplateInteractiveSettingsButtonResponse:
      type: object
      properties:
        isGeneratedLayout:
          type: boolean
        generatedLayoutExampleValue:
          type: string
        generatedLayoutButtonText:
          type: string
        id:
          format: uuid
          type: string
          example: 00000000-0000-0000-0000-000000000000
        type:
          enum:
          - PHONENUMBER
          - URL
          - QUICK_REPLY
          - OTP_COPY
          - OTP_ONE_TAP
          - CODE_COPY
          type: string
        urlType:
          enum:
          - STATIC
          - DYNAMIC
          type: string
    CM.Platform.Channels.Models.ChannelTypes.WhatsApp.ApiWhatsAppTemplateLanguageBodyLayoutRequest:
      type: object
      properties:
        content:
          type: string
    CM.Platform.Channels.Models.External.MetaCallbacks.ApiMetaCallbackWhatsAppTemplateLanguageUpdateDisableInfo:
      type: object
      properties:
        disable_date:
          type: string
    CM.Platform.Channels.Models.External.MetaCallbacks.ApiMetaCallbackWhatsAppTemplateLanguageUpdateOtherInfo:
      type: object
      properties:
        title:
          type: string
        description:
          type: string
    CM.Platform.Channels.Models.ChannelTypes.WhatsApp.ApiWhatsAppTemplateLanguageInteractiveButtonOtpOneTap:
      type: object
      properties:
        autofillText:
          type: string
        supportedApps:
          type: array
          items:
            $ref: '#/components/schemas/CM.Platform.Channels.Models.ChannelTypes.WhatsApp.ApiWhatsAppTemplateLanguageInteractiveButtonOtpOneTapSupportedApps'
    CM.Platform.Channels.Models.ChannelTypes.WhatsApp.ApiWhatsAppTemplateLanguageInteractiveButtonOtpOneTapSupportedApps:
      type: object
      properties:
        packageName:
          type: string
        signatureHash:
          type: string
    CM.Platform.Channels.Models.ChannelTypes.WhatsApp.ApiWhatsAppTemplateAdmin:
      required:
      - id
      - accountId
      - channelRequestId
      - channelId
      - channelCategoryId
      - businessAccountId
      - templateCategoryId
      - enabledLanguages
      - isActive
      - isIncomplete
      - isPending
      - isValidationRequested
      - createdOnUtc
      type: object
      properties:
        id:
          format: uuid
          type: string
          example: 00000000-0000-0000-0000-000000000000
        accountId:
          format: uuid
          type: string
          example: 00000000-0000-0000-0000-000000000000
        channelRequestId:
          format: uuid
          type: string
          example: 00000000-0000-0000-0000-000000000000
        channelId:
          format: uuid
          type: string
          example: 00000000-0000-0000-0000-000000000000
        channelCategoryId:
          format: uuid
          type: string
          example: 00000000-0000-0000-0000-000000000000
        businessAccountId:
          format: uuid
          type: string
          example: 00000000-0000-0000-0000-000000000000
        facebookBusinessAccountId:
          type: string
        facebookNamespaceId:
          type: string
        name:
          type: string
        templateCategoryId:
          format: uuid
          type: string
          example: 00000000-0000-0000-0000-000000000000
        category:
          type: string
        generatedLayout:
          enum:
          - AUTHENTICATION_OTP_COPY
          - AUTHENTICATION_OTP_ONE_TAP
          - MARKETING_CAROUSEL
          - MARKETING_COUPONS
          - MARKETING_LIMITED_TIME_OFFER
          - UTILITY_CAROUSEL
          type: string
        facebookName:
          type: string
        enabledLanguages:
          type: array
          items:
            format: uuid
            type: string
            example: 00000000-0000-0000-0000-000000000000
        assistedMode:
          type: boolean
        interactiveSettings:
          $ref: '#/components/schemas/CM.Platform.Channels.Models.ChannelTypes.WhatsApp.ApiWhatsAppTemplateInteractiveSettingsResponse'
        headerSettings:
          $ref: '#/components/schemas/CM.Platform.Channels.Models.ChannelTypes.WhatsApp.ApiWhatsAppTemplateHeaderSettingsResponse'
        rejectionReason:
          type: string
        settings:
          $ref: '#/components/schemas/CM.Platform.Channels.Models.ChannelTypes.WhatsApp.ApiWhatsAppTemplateSettingsResponse'
        languagesStatus:
          $ref: '#/components/schemas/CM.Platform.Channels.Models.ChannelTypes.WhatsApp.ApiWhatsAppTemplateLanguageStatus'
        languages:
          type: object
          additionalProperties:
            $ref: '#/components/schemas/CM.Platform.Channels.Models.ChannelTypes.WhatsApp.ApiWhatsAppTemplateLanguageResponse'
        isActive:
          type: boolean
        isIncomplete:
          type: boolean
        isPending:
          type: boolean
        isValidationRequested:
          type: boolean
        rejectedOnUtc:
          format: date-time
          type: string
        cancelledOnUtc:
          format: date-time
          type: string
        deletedOnUtc:
          format: date-time
          type: string
        fulfilledOnUtc:
          format: date-time
          type: string
        updatedOnUtc:
          format: date-time
          type: string
        createdOnUtc:
          format: date-time
          type: string
        metaCallbackHistory:
          $ref: '#/components/schemas/CM.Platform.Channels.Models.ChannelTypes.WhatsApp.ApiWhatsAppTemplateMetaCallbackHistory'
        entityStatus:
          enum:
          - ACTIVE
          - PENDING
          - ELIGIBLE
          - NOT_VALIDATED
          - CUSTOMER_ACTION_REQUIRED
          - EXPIRED
          - REJECTED
          - CANCELLED
          - DELETED
          type: string
    CM.Platform.Channels.Models.ChannelTypes.WhatsApp.ApiWhatsAppTemplateInteractiveSettingsResponse:
      type: object
      properties:
        buttonGrouping:
          type: object
          properties:
            QUICK_REPLY:
              type: array
              items:
                $ref: '#/components/schemas/CM.Platform.Channels.Models.ChannelTypes.WhatsApp.ApiWhatsAppTemplateInteractiveSettingsButtonResponse'
            CALL_TO_ACTION:
              type: array
              items:
                $ref: '#/components/schemas/CM.Platform.Channels.Models.ChannelTypes.WhatsApp.ApiWhatsAppTemplateInteractiveSettingsButtonResponse'
            OTHER:
              type: array
              items:
                $ref: '#/components/schemas/CM.Platform.Channels.Models.ChannelTypes.WhatsApp.ApiWhatsAppTemplateInteractiveSettingsButtonResponse'
        isGeneratedLayout:
          type: boolean
    CM.Platform.Channels.Models.ChannelTypes.WhatsApp.ApiWhatsAppTemplateMetaCallbackHistory:
      required:
      - templateId
      - events
      type: object
      properties:
        templateId:
          format: uuid
          type: string
          example: 00000000-0000-0000-0000-000000000000
        events:
          type: object
          additionalProperties:
            type: array
            items:
              $ref: '#/components/schemas/CM.Platform.Channels.Models.External.MetaCallbacks.ApiMetaCallbackWhatsAppTemplateLanguageUpdate'
    CM.Platform.Channels.Models.ChannelTypes.WhatsApp.ApiWhatsAppTemplateAdminUpdateRequest:
      type: object
      properties:
        facebookName:
          type: string
    CM.Platform.Channels.Models.ChannelTypes.WhatsApp.ApiWhatsAppTemplateLanguageAdmin:
      required:
      - id
      - languageId
      - templateId
      - category
      - name
      - header
      - body
      - content
      - footer
      - isActive
      - isIncomplete
      - isPending
      - isValidationRequested
      - createdOnUtc
      type: object
      properties:
        id:
          format: uuid
          type: string
          example: 00000000-0000-0000-0000-000000000000
        languageId:
          format: uuid
          type: string
          example: 00000000-0000-0000-0000-000000000000
        templateId:
          format: uuid
          type: string
          example: 00000000-0000-0000-0000-000000000000
        facebookValidationRequestID:
          type: string
        accountId:
          format: uuid
          type: string
          example: 00000000-0000-0000-0000-000000000000
        templateName:
          type: string
        facebookTemplateName:
          type: string
        category:
          $ref: '#/components/schemas/CM.Platform.Channels.Models.ChannelTypes.WhatsApp.ApiWhatsAppTemplateLanguageCategory'
        name:
          type: string
        header:
          $ref: '#/components/schemas/CM.Platform.Channels.Models.ChannelTypes.WhatsApp.ApiWhatsAppTemplateLanguageHeaderLayoutResponse'
        headerContent:
          type: string
        body:
          $ref: '#/components/schemas/CM.Platform.Channels.Models.ChannelTypes.WhatsApp.ApiWhatsAppTemplateLanguageBodyLayoutResponse'
        content:
          type: string
        footer:
          $ref: '#/components/schemas/CM.Platform.Channels.Models.ChannelTypes.WhatsApp.ApiWhatsAppTemplateLanguageFooterLayoutResponse'
        footerContent:
          type: string
        interactiveSettings:
          $ref: '#/components/schemas/CM.Platform.Channels.Models.ChannelTypes.WhatsApp.ApiWhatsAppTemplateLanguageInteractiveSettingsResponse'
        carouselLayoutSettings:
          $ref: '#/components/schemas/CM.Platform.Channels.Models.ChannelTypes.WhatsApp.ApiWhatsAppTemplateLanguageCarouselLayoutResponse'
        limitedTimeOffer:
          $ref: '#/components/schemas/CM.Platform.Channels.Models.ChannelTypes.WhatsApp.ApiWhatsAppTemplateLanguageLimitedTimeOfferLayoutResponse'
        messageSendTimeToLiveSeconds:
          format: int32
          type: integer
        rejectionReason:
          type: string
        isActive:
          type: boolean
        isIncomplete:
          type: boolean
        isPending:
          type: boolean
        isValidationRequested:
          type: boolean
        cancelledOnUtc:
          format: date-time
          type: string
        rejectedOnUtc:
          format: date-time
          type: string
        fulfilledOnUtc:
          format: date-time
          type: string
        updatedOnUtc:
          format: date-time
          type: string
        createdOnUtc:
          format: date-time
          type: string
        metaCallbackHistory:
          $ref: '#/components/schemas/CM.Platform.Channels.Models.ChannelTypes.WhatsApp.ApiWhatsAppTemplateLanguageMetaCallbackHistory'
        entityStatus:
          enum:
          - ACTIVE
          - PENDING
          - ELIGIBLE
          - NOT_VALIDATED
          - CUSTOMER_ACTION_REQUIRED
          - EXPIRED
          - REJECTED
          - CANCELLED
          - DELETED
          type: string
    CM.Platform.Channels.Models.ChannelTypes.WhatsApp.WhatsAppTemplateLanguageInvalidFieldsAdmin:
      required:
      - accountId
      - templateId
      - languageId
      - languageContent
      - missingFields
      type: object
      properties:
        accountId:
          format: uuid
          type: string
          example: 00000000-0000-0000-0000-000000000000
        templateId:
          format: uuid
          type: string
          example: 00000000-0000-0000-0000-000000000000
        languageId:
          format: uuid
          type: string
          example: 00000000-0000-0000-0000-000000000000
        languageContent:
          type: string
        missingFields:
          type: array
          items:
            $ref: '#/components/schemas/CM.Platform.Channels.Models.ChannelTypes.WhatsApp.MissingField'
    CM.Platform.Channels.Models.ChannelTypes.WhatsApp.MissingField:
      type: object
      properties:
        parseable:
          format: int32
          type: integer
        invalid:
          type: string
    CM.Platform.Channels.Models.Channels.ApiAdminCapabilities:
      type: object
      properties:
        read:
          type: boolean
        updateAll:
          type: boolean
        updateSms:
          type: boolean
        updateWhatsApp:
          type: boolean
        updateWhatsAppFull:
          type: boolean
        updateRcs:
          type: boolean
        updateAbc:
          type: boolean
        updateVSms:
          type: boolean
        updateVoice:
          type: boolean
        updatePayments:
          type: boolean
        updateTwitter:
          type: boolean
        updateFacebook:
          type: boolean
        updateInstagram:
          type: boolean
        updateMobilePush:
          type: boolean
        updateLine:
          type: boolean
        updateGooglesBusinessMessages:
          type: boolean
        updateViber:
          type: boolean
        updateWhatsAppPartnerSolution:
          type: boolean
        godMode:
          type: boolean
    CM.Platform.Channels.Models.Channels.ApiAdminAccessRequestResponse:
      required:
      - capabilities
      - isPending
      - requestedOnUtc
      type: object
      properties:
        capabilities:
          $ref: '#/components/schemas/CM.Platform.Channels.Models.Channels.ApiAdminCapabilities'
        pendingCapabilities:
          type: array
          items:
            enum:
            - read
            - updateAll
            - updateSms
            - updateWhatsApp
            - updateRcs
            - updateAbc
            - updateVSms
            - updateVoice
            - updatePayments
            - updateTwitter
            - updateFacebook
            - updateInstagram
            - updateMobilePush
            - updateLine
            - updateWhatsAppFull
            - updateGooglesBusinessMessages
            - updateViber
            - updateWhatsAppPartnerSolution
            - godMode
            type: string
        requestReason:
          type: string
        isPending:
          type: boolean
        updatedOnUtc:
          format: date-time
          type: string
        rejectedOnUtc:
          format: date-time
          type: string
        rejectionReason:
          type: string
        fulfilledOnUtc:
          format: date-time
          type: string
        requestedOnUtc:
          format: date-time
          type: string
    CM.Platform.Channels.Models.Channels.ApiAdminAccessRequestGodResponse:
      required:
      - id
      - ssoAccountId
      - capabilities
      - requestedCapabilities
      - isPending
      - requestedOnUtc
      type: object
      properties:
        id:
          format: uuid
          type: string
          example: 00000000-0000-0000-0000-000000000000
        ssoAccountId:
          format: uuid
          type: string
          example: 00000000-0000-0000-0000-000000000000
        capabilities:
          $ref: '#/components/schemas/CM.Platform.Channels.Models.Channels.ApiAdminCapabilities'
        pendingCapabilities:
          type: array
          items:
            enum:
            - read
            - updateAll
            - updateSms
            - updateWhatsApp
            - updateRcs
            - updateAbc
            - updateVSms
            - updateVoice
            - updatePayments
            - updateTwitter
            - updateFacebook
            - updateInstagram
            - updateMobilePush
            - updateLine
            - updateWhatsAppFull
            - updateGooglesBusinessMessages
            - updateViber
            - updateWhatsAppPartnerSolution
            - godMode
            type: string
        requestReason:
          type: string
        requestedCapabilities:
          $ref: '#/components/schemas/CM.Platform.Channels.Models.Channels.ApiAdminCapabilities'
        isPending:
          type: boolean
        updatedOnUtc:
          format: date-time
          type: string
        rejectedOnUtc:
          format: date-time
          type: string
        rejectionReason:
          type: string
        fulfilledOnUtc:
          format: date-time
          type: string
        requestedOnUtc:
          format: date-time
          type: string
    CM.Platform.Channels.Models.Channels.ApiChannelAdminBase:
      required:
      - id
      - accountId
      - channelID
      - channelCategory
      - channelUrl
      - isPending
      - createdOnUtc
      - channelTypeIconClass
      - channelTypePrettyName
      - channelCategoryIconClass
      - channelCategoryPrettyName
      - requestState
      type: object
      properties:
        id:
          format: uuid
          type: string
          example: 00000000-0000-0000-0000-000000000000
        channelRequestId:
          format: uuid
          type: string
          example: 00000000-0000-0000-0000-000000000000
        channelTypeId:
          format: uuid
          type: string
          example: 00000000-0000-0000-0000-000000000000
        channelCategoryId:
          format: uuid
          type: string
          example: 00000000-0000-0000-0000-000000000000
        accountId:
          format: uuid
          type: string
          example: 00000000-0000-0000-0000-000000000000
        channelID:
          type: string
        channelCategory:
          type: string
        channelUrl:
          type: string
        customRequestFormId:
          format: uuid
          type: string
          example: 00000000-0000-0000-0000-000000000000
        customRequestFormIsPending:
          type: boolean
        isPending:
          type: boolean
        createdOnUtc:
          format: date-time
          type: string
        channelTypeIconClass:
          type: string
        channelTypePrettyName:
          type: string
        channelCategoryIconClass:
          type: string
        channelCategoryPrettyName:
          type: string
        isSandbox:
          type: boolean
        entityStatus:
          enum:
          - ACTIVE
          - PENDING
          - ELIGIBLE
          - NOT_VALIDATED
          - CUSTOMER_ACTION_REQUIRED
          - EXPIRED
          - REJECTED
          - CANCELLED
          - DELETED
          type: string
        requestState:
          $ref: '#/components/schemas/CM.Platform.Channels.Models.Channels.ApiRequestState'
        orderStatus:
          enum:
          - SELFSERVICE_CREATED
          - SELFSERVICE_FAILED
          - SELFSERVICE_PROVISIONED
          - SELFSERVICE_SUSPENDED
          - VALIDATE
          - RESERVE
          - PROVISION
          - CANCEL
          - FINALIZE
          - TERMINATE
          - SUBSCRIPTION_STOPPED
          type: string
    CM.Platform.Channels.Models.Channels.ApiRequestState:
      type: object
      properties:
        completeness:
          format: int32
          type: integer
        nextStage:
          $ref: '#/components/schemas/CM.Platform.Channels.Models.Channels.ApiRequestNextStage'
        progression:
          $ref: '#/components/schemas/CM.Platform.Channels.Models.Channels.ApiRequestProgression'
        hasPendingOrder:
          type: boolean
        hasEligibleOrder:
          type: boolean
        hasMissingOrder:
          type: boolean
    CM.Platform.Channels.Models.Channels.ApiRequestNextStage:
      type: object
      properties:
        type:
          enum:
          - UNKNOWN
          - PROCESSING
          - ACTION_REQUIRED
          type: string
        descriptionKey:
          type: string
    CM.Platform.Channels.Models.Channels.ApiRequestProgression:
      type: object
      properties:
        stages:
          type: array
          items:
            type: string
        current:
          type: string
    CM.Platform.Channels.Models.Channels.ApiChannelAdmin:
      required:
      - id
      - accountId
      - channelID
      - channelCategory
      - channelUrl
      - isPending
      - createdOnUtc
      - channelTypeIconClass
      - channelTypePrettyName
      - channelCategoryIconClass
      - channelCategoryPrettyName
      - requestState
      - orderStatusExtended
      type: object
      properties:
        id:
          format: uuid
          type: string
          example: 00000000-0000-0000-0000-000000000000
        channelRequestId:
          format: uuid
          type: string
          example: 00000000-0000-0000-0000-000000000000
        channelTypeId:
          format: uuid
          type: string
          example: 00000000-0000-0000-0000-000000000000
        channelCategoryId:
          format: uuid
          type: string
          example: 00000000-0000-0000-0000-000000000000
        accountId:
          format: uuid
          type: string
          example: 00000000-0000-0000-0000-000000000000
        channelScenarioID:
          format: int32
          type: integer
        channelID:
          type: string
        channelCategory:
          type: string
        channelUrl:
          type: string
        customRequestFormId:
          format: uuid
          type: string
          example: 00000000-0000-0000-0000-000000000000
        customRequestFormIsPending:
          type: boolean
        isPending:
          type: boolean
        deletedOnUtc:
          format: date-time
          type: string
        createdOnUtc:
          format: date-time
          type: string
        channelTypeIconClass:
          type: string
        channelTypePrettyName:
          type: string
        channelCategoryIconClass:
          type: string
        channelCategoryPrettyName:
          type: string
        entityId:
          type: string
        isSandbox:
          type: boolean
        entityStatus:
          enum:
          - ACTIVE
          - PENDING
          - ELIGIBLE
          - NOT_VALIDATED
          - CUSTOMER_ACTION_REQUIRED
          - EXPIRED
          - REJECTED
          - CANCELLED
          - DELETED
          type: string
        requestState:
          $ref: '#/components/schemas/CM.Platform.Channels.Models.Channels.ApiRequestState'
        orderStatus:
          enum:
          - SELFSERVICE_CREATED
          - SELFSERVICE_FAILED
          - SELFSERVICE_PROVISIONED
          - SELFSERVICE_SUSPENDED
          - VALIDATE
          - RESERVE
          - PROVISION
          - CANCEL
          - FINALIZE
          - TERMINATE
          - SUBSCRIPTION_STOPPED
          type: string
        orderStatusExtended:
          $ref: '#/components/schemas/CM.Platform.Channels.Models.Orders.ApiOrderStatus'
    CM.Platform.Channels.Models.Channels.ApiChannelGroup:
      required:
      - id
      - accountId
      - channels
      - createdOnUtc
      type: object
      properties:
        id:
          format: uuid
          type: string
          example: 00000000-0000-0000-0000-000000000000
        accountId:
          format: uuid
          type: string
          example: 00000000-0000-0000-0000-000000000000
        channelCategoryId:
          format: uuid
          type: string
          example: 00000000-0000-0000-0000-000000000000
        channelLimit:
          format: int32
          type: integer
        isSandbox:
          type: boolean
        channels:
          type: array
          items:
            $ref: '#/components/schemas/CM.Platform.Channels.Models.Channels.ApiChannelBase'
        createdOnUtc:
          format: date-time
          type: string
        updatedOnUtc:
          format: date-time
          type: string
        expiresOnUtc:
          format: date-time
          type: string
        deletedOnUtc:
          format: date-time
          type: string
    CM.Platform.Channels.Models.Channels.ApiChannelBase:
      required:
      - id
      - channelID
      - channelUrl
      - isPending
      - createdOnUtc
      - requestState
      type: object
      properties:
        id:
          format: uuid
          type: string
          example: 00000000-0000-0000-0000-000000000000
        channelRequestId:
          format: uuid
          type: string
          example: 00000000-0000-0000-0000-000000000000
        channelTypeId:
          format: uuid
          type: string
          example: 00000000-0000-0000-0000-000000000000
        channelCategoryId:
          format: uuid
          type: string
          example: 00000000-0000-0000-0000-000000000000
        channelID:
          type: string
        channelUrl:
          type: string
        customRequestFormId:
          format: uuid
          type: string
          example: 00000000-0000-0000-0000-000000000000
        customRequestFormIsPending:
          type: boolean
        isPending:
          type: boolean
        createdOnUtc:
          format: date-time
          type: string
        requestState:
          $ref: '#/components/schemas/CM.Platform.Channels.Models.Channels.ApiRequestState'
    CM.Platform.Channels.Models.Channels.ApiChannelTypeRequestAdminBase:
      required:
      - id
      - channelTypeId
      - isPending
      - isActive
      - isGenerated
      - createdOnUtc
      - channelTypeIconClass
      - channelTypePrettyName
      - requestState
      type: object
      properties:
        id:
          format: uuid
          type: string
          example: 00000000-0000-0000-0000-000000000000
        accountId:
          format: uuid
          type: string
          example: 00000000-0000-0000-0000-000000000000
        channelTypeId:
          format: uuid
          type: string
          example: 00000000-0000-0000-0000-000000000000
        isPending:
          type: boolean
        isActive:
          type: boolean
        isGenerated:
          type: boolean
        fulfilledOnUtc:
          format: date-time
          type: string
        cancelledOnUtc:
          format: date-time
          type: string
        createdOnUtc:
          format: date-time
          type: string
        channelTypeIconClass:
          type: string
        channelTypePrettyName:
          type: string
        entityStatus:
          enum:
          - ACTIVE
          - PENDING
          - ELIGIBLE
          - NOT_VALIDATED
          - CUSTOMER_ACTION_REQUIRED
          - EXPIRED
          - REJECTED
          - CANCELLED
          - DELETED
          type: string
        requestState:
          $ref: '#/components/schemas/CM.Platform.Channels.Models.Channels.ApiRequestState'
        orderStatus:
          enum:
          - SELFSERVICE_CREATED
          - SELFSERVICE_FAILED
          - SELFSERVICE_PROVISIONED
          - SELFSERVICE_SUSPENDED
          - VALIDATE
          - RESERVE
          - PROVISION
          - CANCEL
          - FINALIZE
          - TERMINATE
          - SUBSCRIPTION_STOPPED
          type: string
    CM.Platform.Channels.Models.Channels.ApiChannelTypeRequestAdmin:
      required:
      - id
      - channelTypeId
      - isPending
      - isActive
      - isGenerated
      - createdOnUtc
      - channelTypeIconClass
      - channelTypePrettyName
      - requestState
      - orderStatusExtended
      type: object
      properties:
        id:
          format: uuid
          type: string
          example: 00000000-0000-0000-0000-000000000000
        accountId:
          format: uuid
          type: string
          example: 00000000-0000-0000-0000-000000000000
        channelTypeId:
          format: uuid
          type: string
          example: 00000000-0000-0000-0000-000000000000
        isPending:
          type: boolean
        isActive:
          type: boolean
        isGenerated:
          type: boolean
        fulfilledOnUtc:
          format: date-time
          type: string
        cancelledOnUtc:
          format: date-time
          type: string
        createdOnUtc:
          format: date-time
          type: string
        channelTypeIconClass:
          type: string
        channelTypePrettyName:
          type: string
        entityId:
          type: string
        entityCategoryId:
          format: uuid
          type: string
          example: 00000000-0000-0000-0000-000000000000
        entityStatus:
          enum:
          - ACTIVE
          - PENDING
          - ELIGIBLE
          - NOT_VALIDATED
          - CUSTOMER_ACTION_REQUIRED
          - EXPIRED
          - REJECTED
          - CANCELLED
          - DELETED
          type: string
        requestState:
          $ref: '#/components/schemas/CM.Platform.Channels.Models.Channels.ApiRequestState'
        orderStatus:
          enum:
          - SELFSERVICE_CREATED
          - SELFSERVICE_FAILED
          - SELFSERVICE_PROVISIONED
          - SELFSERVICE_SUSPENDED
          - VALIDATE
          - RESERVE
          - PROVISION
          - CANCEL
          - FINALIZE
          - TERMINATE
          - SUBSCRIPTION_STOPPED
          type: string
        orderStatusExtended:
          $ref: '#/components/schemas/CM.Platform.Channels.Models.Orders.ApiOrderStatus'
    CM.Platform.Channels.Models.ChannelTypes.Sms.ApiPhoneNumberAdminResponse:
      required:
      - id
      - suppliers
      - numberType
      - number
      - isAutoAssignable
      - isShortcode
      - keywordCount
      type: object
      properties:
        id:
          type: string
        accountId:
          format: uuid
          type: string
          example: 00000000-0000-0000-0000-000000000000
        suppliers:
          type: array
          items:
            $ref: '#/components/schemas/CM.Platform.Channels.Models.ChannelTypes.Sms.ApiPhoneNumberSupplierRequest'
        scenarioId:
          format: int32
          type: integer
        numberType:
          $ref: '#/components/schemas/CM.Platform.Channels.Models.ChannelTypes.Sms.ApiNumberTypeAdminResponse'
        number:
          type: string
        description:
          type: string
        requiredCapability:
          type: string
        customRequestFormId:
          format: uuid
          type: string
          example: 00000000-0000-0000-0000-000000000000
        customRequestFormIsPending:
          type: boolean
        isAutoAssignable:
          type: boolean
        isShared:
          type: boolean
        isShortcode:
          type: boolean
        ownedSinceUtc:
          format: date-time
          type: string
        archivedSinceUtc:
          format: date-time
          type: string
        createdOnUtc:
          format: date-time
          type: string
        keywordCount:
          format: int32
          type: integer
        events:
          type: array
          items:
            $ref: '#/components/schemas/CM.Platform.Channels.Models.EventLogging.ApiPhoneNumberEvent'
        taxOnGames:
          type: boolean
        taxOnGamesScenarioSettings:
          $ref: '#/components/schemas/CM.Platform.Channels.Models.Channels.ApiAdminScenarioTaxOnGamesSettings'
    CM.Platform.Channels.Models.ChannelTypes.Sms.ApiPhoneNumberSupplierRequest:
      required:
      - phoneNumberId
      - supplierId
      type: object
      properties:
        phoneNumberId:
          type: string
        supplierId:
          format: uuid
          type: string
          example: 00000000-0000-0000-0000-000000000000
        restrictions:
          $ref: '#/components/schemas/CM.Platform.Channels.Models.ChannelTypes.Sms.ApiPhoneNumberSupplierRestrictions'
        cost:
          $ref: '#/components/schemas/CM.Platform.Channels.Models.ChannelTypes.Sms.ApiPhoneNumberSupplierCost'
        revenue:
          $ref: '#/components/schemas/CM.Platform.Channels.Models.ChannelTypes.Sms.ApiPhoneNumberSupplierRevenue'
        currency:
          type: string
        noticePeriodDays:
          format: int32
          type: integer
    CM.Platform.Channels.Models.ChannelTypes.Sms.ApiNumberTypeAdminResponse:
      required:
      - id
      - purpose
      - country
      - category
      - noticePeriodDays
      - keywordNoticePeriodDays
      - numberRequestProcessingDays
      - numbersAssigned
      - numbersTotal
      - requiredCapability
      - isSaleable
      - createdOnUtc
      type: object
      properties:
        id:
          format: uuid
          type: string
          example: 00000000-0000-0000-0000-000000000000
        purpose:
          type: array
          items:
            type: string
        country:
          type: string
        category:
          type: string
        description:
          type: string
        pricePlanProductId:
          format: uuid
          type: string
          example: 00000000-0000-0000-0000-000000000000
        customRequestFormId:
          format: uuid
          type: string
          example: 00000000-0000-0000-0000-000000000000
        pricePlanProduct:
          $ref: '#/components/schemas/CM.Platform.Channels.Models.Pricing.ApiPricePlanProductAdmin'
        internalNote:
          type: string
        noticePeriodDays:
          format: int32
          type: integer
        keywordNoticePeriodDays:
          format: int32
          type: integer
        numberRequestProcessingDays:
          format: int32
          type: integer
        numbersAssigned:
          format: int32
          type: integer
        numbersTotal:
          format: int32
          type: integer
        requiredCapability:
          type: string
        isSaleable:
          type: boolean
        createdOnUtc:
          format: date-time
          type: string
    CM.Platform.Channels.Models.EventLogging.ApiPhoneNumberEvent:
      required:
      - id
      - phoneNumberId
      - accountId
      - eventValue
      - createdOnUtc
      type: object
      properties:
        id:
          format: uuid
          type: string
          example: 00000000-0000-0000-0000-000000000000
        phoneNumberId:
          type: string
        accountId:
          format: uuid
          type: string
          example: 00000000-0000-0000-0000-000000000000
        ssoAccountId:
          format: uuid
          type: string
          example: 00000000-0000-0000-0000-000000000000
        eventValue:
          type: string
        eventMetaData:
          $ref: '#/components/schemas/CM.Platform.Channels.Models.EventLogging.ApiPhoneNumberEventMetaData'
        createdOnUtc:
          format: date-time
          type: string
    CM.Platform.Channels.Models.Channels.ApiAdminScenarioTaxOnGamesSettings:
      type: object
      properties:
        isEnabled:
          type: boolean
        customgrouping:
          type: string
        customgrouping2:
          type: string
        isLocked:
          type: boolean
    CM.Platform.Channels.Models.ChannelTypes.Sms.ApiPhoneNumberSupplierRestrictions:
      type: object
      properties:
        notes:
          type: string
    CM.Platform.Channels.Models.ChannelTypes.Sms.ApiPhoneNumberSupplierCost:
      type: object
      properties:
        setup:
          format: double
          type: number
        monthly:
          format: double
          type: number
        mt:
          format: double
          type: number
        mo:
          format: double
          type: number
    CM.Platform.Channels.Models.ChannelTypes.Sms.ApiPhoneNumberSupplierRevenue:
      type: object
      properties:
        share:
          format: double
          type: number
    CM.Platform.Channels.Models.Pricing.ApiPricePlanProductAdmin:
      required:
      - id
      - channelTypeId
      - channelCategoryId
      - pricePlansProductName
      - productDefaultPrices
      type: object
      properties:
        id:
          format: uuid
          type: string
          example: 00000000-0000-0000-0000-000000000000
        channelTypeId:
          format: uuid
          type: string
          example: 00000000-0000-0000-0000-000000000000
        channelCategoryId:
          format: uuid
          type: string
          example: 00000000-0000-0000-0000-000000000000
        pricePlansProductId:
          format: int32
          type: integer
        pricePlansProductName:
          type: string
        productDefaultPrices:
          type: array
          items:
            $ref: '#/components/schemas/CM.Platform.Channels.Models.Pricing.ApiProductPricingDefaultAdmin'
    CM.Platform.Channels.Models.EventLogging.ApiPhoneNumberEventMetaData:
      required:
      - from
      - to
      type: object
      properties:
        from:
          type: object
        to:
          type: object
        testId:
          type: string
    CM.Platform.Channels.Models.Pricing.ApiProductPricingDefaultAdmin:
      required:
      - id
      - pricePlanProductDimensions
      - isFallback
      - currencyIsoCode
      - supportsMonthlySubscription
      - monthlyPricePlanId
      - supportsYearlySubscription
      - yearlyPricePlanId
      - isCountryFallback
      type: object
      properties:
        id:
          format: uuid
          type: string
          example: 00000000-0000-0000-0000-000000000000
        pricePlanProductDimensions:
          $ref: '#/components/schemas/CM.Platform.Channels.Models.Pricing.PricePlansDimensions'
        isFallback:
          type: boolean
        currencyIsoCode:
          type: string
        supportsMonthlySubscription:
          type: boolean
        monthlyPrice:
          format: double
          type: number
        monthlySetupFee:
          format: double
          type: number
        monthlyPricePlanId:
          format: int32
          type: integer
        monthlyPricingActiveSinceUtc:
          format: date-time
          type: string
        supportsYearlySubscription:
          type: boolean
        yearlyPrice:
          format: double
          type: number
        yearlySetupFee:
          format: double
          type: number
        yearlyPricePlanId:
          format: int32
          type: integer
        yearlyPricingActiveSinceUtc:
          format: date-time
          type: string
        isOverride:
          type: boolean
        isCountryFallback:
          type: boolean
    CM.Platform.Channels.Models.Pricing.PricePlansDimensions:
      required:
      - country
      - currency
      type: object
      properties:
        country:
          type: string
        currency:
          type: string
        customDimensionsDictionary:
          type: string
    CM.Platform.Channels.Models.ChannelTypes.Sms.ApiPhoneNumberAdminImportRequest:
      required:
      - accountId
      - scenarioId
      - suppliers
      - numberTypeId
      - number
      - isAutoAssignable
      - ownedSinceUtc
      type: object
      properties:
        accountId:
          format: uuid
          type: string
          example: 00000000-0000-0000-0000-000000000000
        scenarioId:
          format: int32
          type: integer
        suppliers:
          type: array
          items:
            $ref: '#/components/schemas/CM.Platform.Channels.Models.ChannelTypes.Sms.ApiPhoneNumberSupplierRequest'
        numberTypeId:
          format: uuid
          type: string
          example: 00000000-0000-0000-0000-000000000000
        number:
          type: string
        description:
          type: string
        isShared:
          type: boolean
        isAutoAssignable:
          type: boolean
        ownedSinceUtc:
          format: date-time
          type: string
        taxOnGames:
          type: boolean
        taxOnGamesScenarioSettings:
          $ref: '#/components/schemas/CM.Platform.Channels.Models.Channels.ApiAdminScenarioTaxOnGamesSettings'
    CM.Platform.Channels.Models.ChannelTypes.Sms.ApiKeywordClaimAdminImportRequest:
      required:
      - id
      - scenarioId
      - phoneNumberId
      - country
      - keyword
      - subscriptionPeriodicity
      - price
      - isPending
      type: object
      properties:
        id:
          type: string
        channelId:
          format: uuid
          type: string
          example: 00000000-0000-0000-0000-000000000000
        scenarioId:
          format: int32
          type: integer
        accountId:
          format: uuid
          type: string
          example: 00000000-0000-0000-0000-000000000000
        phoneNumberId:
          type: string
        country:
          type: string
        keyword:
          type: string
        subscriptionPeriodicity:
          enum:
          - MONTHLY
          - YEARLY
          - NONE
          type: string
        price:
          $ref: '#/components/schemas/CM.Platform.Channels.Models.Pricing.ApiSubscriptionPrice'
        noticePeriodDays:
          format: double
          type: number
        reasonForRejection:
          type: string
        taxOnGamesScenarioSettings:
          $ref: '#/components/schemas/CM.Platform.Channels.Models.Channels.ApiAdminScenarioTaxOnGamesSettings'
        isPending:
          type: boolean
        claimedOnUtc:
          format: date-time
          type: string
        claimedUntilUtc:
          format: date-time
          type: string
        entityStatus:
          enum:
          - ACTIVE
          - PENDING
          - ELIGIBLE
          - NOT_VALIDATED
          - CUSTOMER_ACTION_REQUIRED
          - EXPIRED
          - REJECTED
          - CANCELLED
          - DELETED
          type: string
        channelState:
          $ref: '#/components/schemas/CM.Platform.Channels.Models.Channels.ApiChannelState'
    CM.Platform.Channels.Models.Pricing.ApiSubscriptionPrice:
      required:
      - currency
      - price
      - setupFee
      - isCountryFallback
      type: object
      properties:
        currency:
          type: string
        price:
          format: double
          type: number
        setupFee:
          format: double
          type: number
        isOverride:
          type: boolean
        isEuroCurrencyFallback:
          type: boolean
        isCountryFallback:
          type: boolean
        pricePlanId:
          format: int32
          type: integer
        periodicity:
          enum:
          - MONTHLY
          - YEARLY
          - NONE
          type: string
    CM.Platform.Channels.Models.Channels.ApiChannelState:
      required:
      - isPending
      - requestState
      type: object
      properties:
        customRequestFormIsPending:
          type: boolean
        isPending:
          type: boolean
        requestState:
          $ref: '#/components/schemas/CM.Platform.Channels.Models.Channels.ApiRequestState'
    CM.Platform.Channels.Models.ChannelTypes.Sms.ApiKeywordClaimAdminResponse:
      required:
      - id
      - phoneNumberId
      - country
      - keyword
      - productPricing
      - subscriptionPeriodicity
      - price
      - isActive
      - isPending
      - createdOnUtc
      type: object
      properties:
        id:
          type: string
        channelId:
          format: uuid
          type: string
          example: 00000000-0000-0000-0000-000000000000
        scenarioId:
          format: int32
          type: integer
        accountId:
          format: uuid
          type: string
          example: 00000000-0000-0000-0000-000000000000
        phoneNumberId:
          type: string
        country:
          type: string
        keyword:
          type: string
        productPricing:
          $ref: '#/components/schemas/CM.Platform.Channels.Models.Pricing.ApiProductPricing'
        subscriptionPeriodicity:
          enum:
          - MONTHLY
          - YEARLY
          - NONE
          type: string
        price:
          $ref: '#/components/schemas/CM.Platform.Channels.Models.Pricing.ApiSubscriptionPrice'
        isActive:
          type: boolean
        noticePeriodDays:
          format: double
          type: number
        events:
          type: array
          items:
            $ref: '#/components/schemas/CM.Platform.Channels.Models.EventLogging.ApiKeywordClaimEvent'
        reasonForRejection:
          type: string
        taxOnGamesScenarioSettings:
          $ref: '#/components/schemas/CM.Platform.Channels.Models.Channels.ApiAdminScenarioTaxOnGamesSettings'
        isPending:
          type: boolean
        claimedOnUtc:
          format: date-time
          type: string
        claimedUntilUtc:
          format: date-time
          type: string
        createdOnUtc:
          format: date-time
          type: string
        entityStatus:
          enum:
          - ACTIVE
          - PENDING
          - ELIGIBLE
          - NOT_VALIDATED
          - CUSTOMER_ACTION_REQUIRED
          - EXPIRED
          - REJECTED
          - CANCELLED
          - DELETED
          type: string
        channelState:
          $ref: '#/components/schemas/CM.Platform.Channels.Models.Channels.ApiChannelState'
    CM.Platform.Channels.Models.Pricing.ApiProductPricing:
      required:
      - currencyIsoCode
      - supportsMonthlySubscription
      - monthlyPricePlanId
      - supportsYearlySubscription
      - yearlyPricePlanId
      - isCountryFallback
      type: object
      properties:
        currencyIsoCode:
          type: string
        supportsMonthlySubscription:
          type: boolean
        monthlyPrice:
          format: double
          type: number
        monthlySetupFee:
          format: double
          type: number
        monthlyPricePlanId:
          format: int32
          type: integer
        monthlyPricingActiveSinceUtc:
          format: date-time
          type: string
        supportsYearlySubscription:
          type: boolean
        yearlyPrice:
          format: double
          type: number
        yearlySetupFee:
          format: double
          type: number
        yearlyPricePlanId:
          format: int32
          type: integer
        yearlyPricingActiveSinceUtc:
          format: date-time
          type: string
        isOverride:
          type: boolean
        isCountryFallback:
          type: boolean
    CM.Platform.Channels.Models.EventLogging.ApiKeywordClaimEvent:
      required:
      - id
      - keywordClaimId
      - accountId
      - eventValue
      - createdOnUtc
      type: object
      properties:
        id:
          format: uuid
          type: string
          example: 00000000-0000-0000-0000-000000000000
        keywordClaimId:
          type: string
        accountId:
          format: uuid
          type: string
          example: 00000000-0000-0000-0000-000000000000
        ssoAccountId:
          format: uuid
          type: string
          example: 00000000-0000-0000-0000-000000000000
        eventValue:
          type: string
        eventMetaData:
          $ref: '#/components/schemas/CM.Platform.Channels.Models.EventLogging.ApiChannelsEventMetaData'
        createdOnUtc:
          format: date-time
          type: string
    CM.Platform.Channels.Models.EventLogging.ApiChannelsEventMetaData:
      required:
      - from
      - to
      type: object
      properties:
        from:
          type: object
        to:
          type: object
    CM.Platform.Channels.Models.Orders.ApiOrderImportResult:
      type: object
      properties:
        orderId:
          format: uuid
          type: string
          example: 00000000-0000-0000-0000-000000000000
        exceptionMessage:
          type: string
        orderRaw:
          type: string
    CM.Platform.Channels.Models.Channels.ApiAdminManualAssignment:
      type: object
      properties:
        accountId:
          format: uuid
          type: string
          example: 00000000-0000-0000-0000-000000000000
        channelCategoryId:
          format: uuid
          type: string
          example: 00000000-0000-0000-0000-000000000000
        entityId:
          type: string
        config:
          $ref: '#/components/schemas/CM.Platform.Channels.Models.Channels.ApiAdminManualAssignmentConfig'
    CM.Platform.Channels.Models.Channels.ApiAdminManualAssignmentConfig:
      type: object
      properties:
        generateOrder:
          type: boolean
        unsignedOrder:
          type: boolean
        ignoreAccountState:
          type: boolean
        periodicity:
          enum:
          - MONTHLY
          - YEARLY
          - NONE
          type: string
    CM.Platform.Channels.Models.ChannelTypes.WhatsApp.ApiWhatsAppProfileIncomingBspMigrationInitiationRequest:
      required:
      - phoneNumberCountryCode
      - phoneNumber
      type: object
      properties:
        phoneNumberCountryCode:
          type: string
        phoneNumber:
          type: string
    CM.Platform.Channels.Models.Channels.ApiChannelAdminNotificationResponse:
      required:
      - id
      - channelCategoryId
      - type
      - value
      - createdOnUtc
      type: object
      properties:
        id:
          format: uuid
          type: string
          example: 00000000-0000-0000-0000-000000000000
        channelCategoryId:
          format: uuid
          type: string
          example: 00000000-0000-0000-0000-000000000000
        type:
          enum:
          - email
          type: string
        value:
          type: string
        createdOnUtc:
          format: date-time
          type: string
    CM.Platform.Channels.Models.Channels.ApiChannelAdminNotificationRequest:
      required:
      - channelCategoryId
      - type
      - value
      type: object
      properties:
        channelCategoryId:
          format: uuid
          type: string
          example: 00000000-0000-0000-0000-000000000000
        type:
          enum:
          - email
          type: string
        value:
          type: string
    CM.Platform.Channels.Models.Pricing.ApiProductPricingCacheUpdateStatus:
      required:
      - isUpdatingAllCountries
      - isUpdatingCountryCache
      - countries
      type: object
      properties:
        isUpdatingAllCountries:
          type: boolean
        isUpdatingCountryCache:
          type: boolean
        countries:
          type: array
          items:
            $ref: '#/components/schemas/CM.Platform.Channels.Models.Pricing.ApiProductPricingCacheUpdateCountryStatus'
    CM.Platform.Channels.Models.Pricing.ApiProductPricingCacheUpdateCountryStatus:
      required:
      - countryIsoCode
      - currencyPriceCount
      type: object
      properties:
        countryIsoCode:
          type: string
        currencyPriceCount:
          format: int32
          type: integer
    CM.Platform.Channels.Models.Pricing.ApiChannelsCurrency:
      type: object
      properties:
        id:
          type: string
        name:
          type: string
        iso4217_Code:
          type: string
        iso4217_Numeric:
          type: string
        symbol:
          type: string
        decimalDigits:
          format: int32
          type: integer
        remarks:
          type: string
    CM.Platform.Channels.Models.Pricing.ApiProductPricingGap:
      required:
      - id
      - pricePlansProductName
      - missingCountries
      - missingCurrencies
      type: object
      properties:
        id:
          format: uuid
          type: string
          example: 00000000-0000-0000-0000-000000000000
        pricePlansProductId:
          format: int32
          type: integer
        pricePlansProductName:
          type: string
        missingCountries:
          type: array
          items:
            type: string
        missingCurrencies:
          type: array
          items:
            $ref: '#/components/schemas/CM.Platform.Channels.Models.Pricing.ApiProductPricingGapMissingCurrencies'
    CM.Platform.Channels.Models.Pricing.ApiProductPricingGapMissingCurrencies:
      required:
      - country
      - missingCurrencies
      type: object
      properties:
        country:
          type: string
        missingCurrencies:
          type: array
          items:
            type: string
    CM.Platform.Channels.Models.RequestForms.ApiCustomRequestForm:
      type: object
      properties:
        id:
          format: uuid
          type: string
          example: 00000000-0000-0000-0000-000000000000
        channelCategoryId:
          format: uuid
          type: string
          example: 00000000-0000-0000-0000-000000000000
        formElements:
          type: array
          items:
            $ref: '#/components/schemas/CM.Platform.Channels.Models.RequestForms.ApiRequestFormElement'
    CM.Platform.Channels.Models.RequestForms.ApiRequestFormElement:
      type: object
      properties:
        id:
          format: uuid
          type: string
          example: 00000000-0000-0000-0000-000000000000
        inputKey:
          type: string
        inputDescriptionKey:
          type: string
        inputPosition:
          type: string
        inputProperties:
          $ref: '#/components/schemas/CM.Platform.Channels.Models.RequestForms.ApiRequestFormElementProperties'
        inputType:
          type: string
        isRequired:
          type: boolean
        isAdminElement:
          type: boolean
    CM.Platform.Channels.Models.RequestForms.ApiRequestFormElementProperties:
      type: object
      properties:
        cssClass:
          type: string
        cssGridClass:
          type: string
        cssStyle:
          type: string
        fileSizeMax:
          format: int32
          type: integer
        fileType:
          type: string
        lengthMax:
          format: int32
          type: integer
        lengthMin:
          format: int32
          type: integer
        regex:
          type: string
        resolutionMax:
          type: string
        resolutionMin:
          type: string
        selectable:
          type: array
          items:
            type: string
        showAs:
          type: string
        showInputDescriptionKey:
          type: boolean
    CM.Platform.Channels.Models.RequestForms.ApiCustomRequestFormAdminEntityAdministration:
      type: object
      properties:
        id:
          type: string
        channelIds:
          type: array
          items:
            format: uuid
            type: string
            example: 00000000-0000-0000-0000-000000000000
        input:
          type: array
          items:
            $ref: '#/components/schemas/CM.Platform.Channels.Models.RequestForms.ApiCustomRequestFormInputAdminResponse'
    CM.Platform.Channels.Models.RequestForms.ApiCustomRequestFormInputAdminResponse:
      type: object
      properties:
        id:
          format: uuid
          type: string
          example: 00000000-0000-0000-0000-000000000000
        channelId:
          format: uuid
          type: string
          example: 00000000-0000-0000-0000-000000000000
        administrativeEntityId:
          type: string
        formElementId:
          format: uuid
          type: string
          example: 00000000-0000-0000-0000-000000000000
        inputValue:
          type: string
        createdOnUtc:
          format: date-time
          type: string
    CM.Platform.Channels.Models.RequestForms.ApiCustomRequestFormInputAdministration:
      type: object
      properties:
        adminEntity:
          $ref: '#/components/schemas/CM.Platform.Channels.Models.RequestForms.ApiCustomRequestFormAdminEntityAdministration'
        channels:
          type: array
          items:
            $ref: '#/components/schemas/CM.Platform.Channels.Models.RequestForms.ApiCustomRequestFormCustomerChannelAdministration'
        requestForm:
          $ref: '#/components/schemas/CM.Platform.Channels.Models.RequestForms.ApiCustomRequestForm'
    CM.Platform.Channels.Models.RequestForms.ApiCustomRequestFormCustomerChannelAdministration:
      type: object
      properties:
        id:
          format: uuid
          type: string
          example: 00000000-0000-0000-0000-000000000000
        accountId:
          format: uuid
          type: string
          example: 00000000-0000-0000-0000-000000000000
        isValidated:
          type: boolean
        input:
          type: array
          items:
            $ref: '#/components/schemas/CM.Platform.Channels.Models.RequestForms.ApiCustomRequestFormInputAdminResponse'
    CM.Platform.Channels.Models.RequestForms.ApiRequestFormInputRequest:
      type: object
      properties:
        formElementId:
          format: uuid
          type: string
          example: 00000000-0000-0000-0000-000000000000
        inputValue:
          type: string
    CM.Platform.Channels.Models.RequestForms.ApiCustomRequestFormBackFill:
      type: object
      properties:
        adminEntityId:
          type: string
        adminEntityFormIdFrom:
          format: uuid
          type: string
          example: 00000000-0000-0000-0000-000000000000
        adminEntityFormIdTo:
          format: uuid
          type: string
          example: 00000000-0000-0000-0000-000000000000
        updatedChannels:
          type: array
          items:
            $ref: '#/components/schemas/CM.Platform.Channels.Models.RequestForms.ApiCustomRequestFormChannelBackFill'
    CM.Platform.Channels.Models.RequestForms.ApiCustomRequestFormChannelBackFill:
      type: object
      properties:
        channel:
          $ref: '#/components/schemas/CM.Platform.Channels.Models.Channels.ApiChannelBase'
        channelFormIdFrom:
          format: uuid
          type: string
          example: 00000000-0000-0000-0000-000000000000
        channelFormIdTo:
          format: uuid
          type: string
          example: 00000000-0000-0000-0000-000000000000
    CM.Platform.Channels.Models.Channels.ApiAdminScenarioMTReplySettingsResponse:
      required:
      - callbackId
      - from
      - message
      type: object
      properties:
        callbackId:
          format: int32
          type: integer
        from:
          type: string
        message:
          type: string
        tariff:
          format: int32
          type: integer
        customgrouping:
          type: string
        customgrouping2:
          type: string
        customgrouping3:
          type: string
    CM.Platform.Channels.Models.Channels.ApiAdminScenarioMTReplySettingsRequest:
      required:
      - from
      - message
      type: object
      properties:
        from:
          type: string
        message:
          type: string
        tariff:
          format: int32
          type: integer
        customgrouping:
          type: string
        customgrouping2:
          type: string
        customgrouping3:
          type: string
    CM.Platform.Channels.Models.Organizations.ApiOrganizationConfigurationBase:
      required:
      - crmId
      - name
      - createdOnUtc
      type: object
      properties:
        crmId:
          format: int32
          type: integer
        name:
          type: string
        createdOnUtc:
          format: date-time
          type: string
    CM.Platform.Channels.Models.Organizations.ApiOrganizationConfigurationRequest:
      required:
      - crmId
      type: object
      properties:
        crmId:
          format: int32
          type: integer
        productTokenSsoId:
          format: uuid
          type: string
          example: 00000000-0000-0000-0000-000000000000
        contactName:
          type: string
        contactEmailAddress:
          type: string
        unsignedOrders:
          type: boolean
    CM.Platform.Channels.Models.Organizations.ApiOrganizationConfigurationAdmin:
      required:
      - id
      - crmId
      - name
      - contactName
      - contactEmailAddress
      - accountProvisioningItems
      - accountProvisioningConfiguration
      - unsignedOrders
      - createdOnUtc
      type: object
      properties:
        id:
          format: uuid
          type: string
          example: 00000000-0000-0000-0000-000000000000
        productTokenSsoId:
          format: uuid
          type: string
          example: 00000000-0000-0000-0000-000000000000
        crmId:
          format: int32
          type: integer
        name:
          type: string
        contactName:
          type: string
        contactEmailAddress:
          type: string
        countryId:
          type: string
        currencyId:
          type: string
        languageId:
          type: string
        accountProvisioningItems:
          type: array
          items:
            type: string
        accountProvisioningConfiguration:
          type: array
          items:
            $ref: '#/components/schemas/CM.Platform.Channels.Models.Organizations.ApiOrganizationAccountProvisioningConfigurationAdmin'
        unsignedOrders:
          type: boolean
        updatedOnUtc:
          format: date-time
          type: string
        createdOnUtc:
          format: date-time
          type: string
    CM.Platform.Channels.Models.Organizations.ApiOrganizationAccountProvisioningConfigurationAdmin:
      required:
      - id
      - description
      - orderLineTemplate
      - createdOnUtc
      type: object
      properties:
        id:
          format: uuid
          type: string
          example: 00000000-0000-0000-0000-000000000000
        description:
          type: string
        orderLineTemplate:
          $ref: '#/components/schemas/CM.Platform.Channels.Models.Orders.ApiOrderLineTemplateAdminBase'
        updatedOnUtc:
          format: date-time
          type: string
        createdOnUtc:
          format: date-time
          type: string
    CM.Platform.Channels.Models.Orders.ApiOrderLineTemplateAdminBase:
      required:
      - id
      - description
      - itemOrdersName
      type: object
      properties:
        id:
          format: uuid
          type: string
          example: 00000000-0000-0000-0000-000000000000
        description:
          type: string
        itemOrdersName:
          type: string
        orderableItemDimensionBase:
          $ref: '#/components/schemas/CM.Platform.Channels.Models.Orders.ApiOrderLineTemplateOrderableItemDimensionAdminBase'
        orderableItemFieldValues:
          type: array
          items:
            $ref: '#/components/schemas/CM.Platform.Channels.Models.Orders.ApiOrderLineTemplateOrderableItemFieldValue'
    CM.Platform.Channels.Models.Orders.ApiOrderLineTemplateOrderableItemDimensionAdminBase:
      required:
      - id
      - key
      - value
      type: object
      properties:
        id:
          format: uuid
          type: string
          example: 00000000-0000-0000-0000-000000000000
        key:
          type: string
        value:
          type: string
    CM.Platform.Channels.Models.Orders.ApiOrderLineTemplateOrderableItemFieldValue:
      required:
      - id
      - value
      type: object
      properties:
        id:
          format: uuid
          type: string
          example: 00000000-0000-0000-0000-000000000000
        value:
          type: string
    CM.Platform.Channels.Models.Organizations.ApiOrganizationConfigurationRequestBase:
      type: object
      properties:
        productTokenSsoId:
          format: uuid
          type: string
          example: 00000000-0000-0000-0000-000000000000
        contactName:
          type: string
        contactEmailAddress:
          type: string
        unsignedOrders:
          type: boolean
    CM.Platform.Channels.Models.ChannelTypes.WhatsAppPartnerSolution.ApiWhatsAppPartnerSolutionAdmin:
      required:
      - id
      - createdOnUtc
      - usesCloudApi
      - usesCMBusinessMessagingApi
      type: object
      properties:
        id:
          format: uuid
          type: string
          example: 00000000-0000-0000-0000-000000000000
        createdOnUtc:
          format: date-time
          type: string
        updatedOnUtc:
          format: date-time
          type: string
        solutionId:
          type: string
        solutionName:
          type: string
        cmBusinessId:
          type: string
        techPartnerBusinessId:
          type: string
        techPartnerBusinessName:
          type: string
        status:
          type: string
        usesCloudApi:
          type: boolean
        usesCMBusinessMessagingApi:
          type: boolean
        OrganizationConfiguration:
          $ref: '#/components/schemas/CM.Platform.Channels.Models.Organizations.ApiOrganizationConfigurationAdmin'
        partnerBusinessAccountsCount:
          format: int32
          type: integer
        channelRequestId:
          format: uuid
          type: string
          example: 00000000-0000-0000-0000-000000000000
        accountId:
          format: uuid
          type: string
          example: 00000000-0000-0000-0000-000000000000
    CM.Platform.Channels.Models.ChannelTypes.WhatsAppPartnerSolution.ApiWhatsAppPartnerSolutionBusinessAccountAdmin:
      required:
      - id
      - businessAccountId
      - ownerBusinessAccountId
      - solutionId
      - createdOnUtc
      type: object
      properties:
        id:
          format: uuid
          type: string
          example: 00000000-0000-0000-0000-000000000000
        businessAccountId:
          type: string
        businessAccountName:
          type: string
        ownerBusinessAccountId:
          type: string
        ownerBusinessAccountName:
          type: string
        solutionId:
          type: string
        createdOnUtc:
          format: date-time
          type: string
        updatedOnUtc:
          format: date-time
          type: string
    CM.Platform.Channels.Models.Orders.ApiOrderLineTemplateAdmin:
      required:
      - id
      - description
      - itemOrdersName
      - orderlineData
      - orderableItem
      - crmOrganizations
      - createdOnUtc
      type: object
      properties:
        id:
          format: uuid
          type: string
          example: 00000000-0000-0000-0000-000000000000
        description:
          type: string
        itemOrdersName:
          type: string
        orderableItemDimensionBase:
          $ref: '#/components/schemas/CM.Platform.Channels.Models.Orders.ApiOrderLineTemplateOrderableItemDimensionAdminBase'
        orderableItemFieldValues:
          type: array
          items:
            $ref: '#/components/schemas/CM.Platform.Channels.Models.Orders.ApiOrderLineTemplateOrderableItemFieldValue'
        orderlineData:
          type: string
        orderableItem:
          $ref: '#/components/schemas/CM.Platform.Channels.Models.Orders.ApiOrderLineTemplateOrderableItem'
        orderableItemDimension:
          $ref: '#/components/schemas/CM.Platform.Channels.Models.Orders.ApiOrderLineTemplateOrderableItemDimensionAdmin'
        orderableItemFields:
          type: array
          items:
            $ref: '#/components/schemas/CM.Platform.Channels.Models.Orders.ApiOrderLineTemplateOrderableItemFieldAdmin'
        crmOrganizations:
          type: array
          items:
            format: int32
            type: integer
        updatedOnUtc:
          format: date-time
          type: string
        createdOnUtc:
          format: date-time
          type: string
    CM.Platform.Channels.Models.Orders.ApiOrderLineTemplateOrderableItem:
      required:
      - id
      - name
      type: object
      properties:
        id:
          format: uuid
          type: string
          example: 00000000-0000-0000-0000-000000000000
        name:
          type: string
    CM.Platform.Channels.Models.Orders.ApiOrderLineTemplateOrderableItemDimensionAdmin:
      required:
      - id
      - key
      - value
      - enumValue
      - createdOnUtc
      type: object
      properties:
        id:
          format: uuid
          type: string
          example: 00000000-0000-0000-0000-000000000000
        key:
          type: string
        value:
          type: string
        enumValue:
          type: string
        updatedOnUtc:
          format: date-time
          type: string
        createdOnUtc:
          format: date-time
          type: string
    CM.Platform.Channels.Models.Orders.ApiOrderLineTemplateOrderableItemFieldAdmin:
      required:
      - id
      - orderableItemId
      - ordersName
      - name
      - enumValue
      - values
      - createdOnUtc
      type: object
      properties:
        id:
          format: uuid
          type: string
          example: 00000000-0000-0000-0000-000000000000
        orderableItemId:
          format: uuid
          type: string
          example: 00000000-0000-0000-0000-000000000000
        ordersName:
          type: string
        name:
          type: string
        enumValue:
          type: string
        values:
          type: array
          items:
            $ref: '#/components/schemas/CM.Platform.Channels.Models.Orders.ApiOrderLineTemplateOrderableItemFieldValue'
        updatedOnUtc:
          format: date-time
          type: string
        createdOnUtc:
          format: date-time
          type: string
    CM.Platform.Channels.Models.Orders.ApiOrderLineTemplateOrderableItemAdminBase:
      required:
      - id
      - ordersId
      - ordersName
      - name
      - enumValue
      - createdOnUtc
      type: object
      properties:
        id:
          format: uuid
          type: string
          example: 00000000-0000-0000-0000-000000000000
        ordersId:
          format: uuid
          type: string
          example: 00000000-0000-0000-0000-000000000000
        ordersName:
          type: string
        name:
          type: string
        enumValue:
          type: string
        updatedOnUtc:
          format: date-time
          type: string
        createdOnUtc:
          format: date-time
          type: string
    CM.Platform.Channels.Models.Orders.ApiOrderLineTemplateOrderableItemAdmin:
      required:
      - id
      - ordersId
      - ordersName
      - name
      - enumValue
      - createdOnUtc
      type: object
      properties:
        id:
          format: uuid
          type: string
          example: 00000000-0000-0000-0000-000000000000
        ordersId:
          format: uuid
          type: string
          example: 00000000-0000-0000-0000-000000000000
        ordersName:
          type: string
        name:
          type: string
        enumValue:
          type: string
        dimensions:
          type: array
          items:
            $ref: '#/components/schemas/CM.Platform.Channels.Models.Orders.ApiOrderLineTemplateOrderableItemDimensionAdmin'
        fields:
          type: array
          items:
            $ref: '#/components/schemas/CM.Platform.Channels.Models.Orders.ApiOrderLineTemplateOrderableItemFieldAdmin'
        updatedOnUtc:
          format: date-time
          type: string
        createdOnUtc:
          format: date-time
          type: string
    CM.Platform.Channels.Models.Orders.ApiOrderLineTemplateOrderableItemFieldAdminBase:
      required:
      - id
      - ordersName
      - name
      type: object
      properties:
        id:
          format: uuid
          type: string
          example: 00000000-0000-0000-0000-000000000000
        ordersName:
          type: string
        name:
          type: string
    CM.Platform.Channels.Models.Orders.ApiOrderLineTemplateOrderableItemFieldValueAdmin:
      required:
      - id
      - value
      - templateId
      - fieldId
      - createdOnUtc
      type: object
      properties:
        id:
          format: uuid
          type: string
          example: 00000000-0000-0000-0000-000000000000
        value:
          type: string
        templateId:
          format: uuid
          type: string
          example: 00000000-0000-0000-0000-000000000000
        fieldId:
          format: uuid
          type: string
          example: 00000000-0000-0000-0000-000000000000
        updatedOnUtc:
          format: date-time
          type: string
        createdOnUtc:
          format: date-time
          type: string
    CM.Platform.Channels.Models.ChannelTypes.Abc.ApiAbcAccountAdminBase:
      required:
      - id
      - channelRequestId
      - accountId
      - isPending
      - createdOnUtc
      type: object
      properties:
        id:
          format: uuid
          type: string
          example: 00000000-0000-0000-0000-000000000000
        channelRequestId:
          format: uuid
          type: string
          example: 00000000-0000-0000-0000-000000000000
        channelId:
          format: uuid
          type: string
          example: 00000000-0000-0000-0000-000000000000
        accountId:
          format: uuid
          type: string
          example: 00000000-0000-0000-0000-000000000000
        country:
          type: string
        orderStatus:
          enum:
          - SELFSERVICE_CREATED
          - SELFSERVICE_FAILED
          - SELFSERVICE_PROVISIONED
          - SELFSERVICE_SUSPENDED
          - VALIDATE
          - RESERVE
          - PROVISION
          - CANCEL
          - FINALIZE
          - TERMINATE
          - SUBSCRIPTION_STOPPED
          type: string
        isPending:
          type: boolean
        fulfilledOnUtc:
          format: date-time
          type: string
        cancelledOnUtc:
          format: date-time
          type: string
        createdOnUtc:
          format: date-time
          type: string
        entityStatus:
          enum:
          - ACTIVE
          - PENDING
          - ELIGIBLE
          - NOT_VALIDATED
          - CUSTOMER_ACTION_REQUIRED
          - EXPIRED
          - REJECTED
          - CANCELLED
          - DELETED
          type: string
    CM.Platform.Channels.Models.ChannelTypes.Abc.ApiAbcAccountAdmin:
      required:
      - id
      - channelRequestId
      - accountId
      - channelCategoryID
      - orderStatusExtended
      - isPending
      - createdOnUtc
      type: object
      properties:
        id:
          format: uuid
          type: string
          example: 00000000-0000-0000-0000-000000000000
        channelRequestId:
          format: uuid
          type: string
          example: 00000000-0000-0000-0000-000000000000
        channelId:
          format: uuid
          type: string
          example: 00000000-0000-0000-0000-000000000000
        accountId:
          format: uuid
          type: string
          example: 00000000-0000-0000-0000-000000000000
        channelTypeId:
          format: uuid
          type: string
          example: 00000000-0000-0000-0000-000000000000
        channelCategoryID:
          format: uuid
          type: string
          example: 00000000-0000-0000-0000-000000000000
        appleAccountId:
          type: string
        customerSettings:
          $ref: '#/components/schemas/CM.Platform.Channels.Models.ChannelTypes.Abc.ApiAbcCustomerSettings'
        country:
          type: string
        orderStatusExtended:
          $ref: '#/components/schemas/CM.Platform.Channels.Models.Orders.ApiOrderStatus'
        orderStatus:
          enum:
          - SELFSERVICE_CREATED
          - SELFSERVICE_FAILED
          - SELFSERVICE_PROVISIONED
          - SELFSERVICE_SUSPENDED
          - VALIDATE
          - RESERVE
          - PROVISION
          - CANCEL
          - FINALIZE
          - TERMINATE
          - SUBSCRIPTION_STOPPED
          type: string
        formInput:
          type: array
          items:
            $ref: '#/components/schemas/CM.Platform.Channels.Models.RequestForms.ApiChannelRequestFormInputResponse'
        isPending:
          type: boolean
        fulfilledOnUtc:
          format: date-time
          type: string
        cancelledOnUtc:
          format: date-time
          type: string
        createdOnUtc:
          format: date-time
          type: string
        entityStatus:
          enum:
          - ACTIVE
          - PENDING
          - ELIGIBLE
          - NOT_VALIDATED
          - CUSTOMER_ACTION_REQUIRED
          - EXPIRED
          - REJECTED
          - CANCELLED
          - DELETED
          type: string
    CM.Platform.Channels.Models.ChannelTypes.Abc.ApiAbcCustomerSettings:
      type: object
      properties:
        defaultImage:
          $ref: '#/components/schemas/CM.Platform.Channels.Models.ChannelTypes.Abc.ApiAbcDefaultImage'
    CM.Platform.Channels.Models.ChannelTypes.Abc.ApiAbcDefaultImage:
      type: object
      properties:
        name:
          type: string
        uri:
          type: string
        type:
          type: string
    CM.Platform.Channels.Models.ChannelTypes.Facebook.ApiFacebookAccountAdminBase:
      required:
      - id
      - accountId
      - channelRequestId
      - isPending
      - createdOnUtc
      type: object
      properties:
        id:
          format: uuid
          type: string
          example: 00000000-0000-0000-0000-000000000000
        accountId:
          format: uuid
          type: string
          example: 00000000-0000-0000-0000-000000000000
        channelRequestId:
          format: uuid
          type: string
          example: 00000000-0000-0000-0000-000000000000
        isPending:
          type: boolean
        cancelledOnUtc:
          format: date-time
          type: string
        fulfilledOnUtc:
          format: date-time
          type: string
        createdOnUtc:
          format: date-time
          type: string
        entityStatus:
          enum:
          - ACTIVE
          - PENDING
          - ELIGIBLE
          - NOT_VALIDATED
          - CUSTOMER_ACTION_REQUIRED
          - EXPIRED
          - REJECTED
          - CANCELLED
          - DELETED
          type: string
        orderStatus:
          enum:
          - SELFSERVICE_CREATED
          - SELFSERVICE_FAILED
          - SELFSERVICE_PROVISIONED
          - SELFSERVICE_SUSPENDED
          - VALIDATE
          - RESERVE
          - PROVISION
          - CANCEL
          - FINALIZE
          - TERMINATE
          - SUBSCRIPTION_STOPPED
          type: string
    CM.Platform.Channels.Models.ChannelTypes.Facebook.ApiFacebookAccountAdmin:
      required:
      - id
      - accountId
      - channelRequestId
      - channelCategoryID
      - isPending
      - createdOnUtc
      - orderStatusExtended
      type: object
      properties:
        id:
          format: uuid
          type: string
          example: 00000000-0000-0000-0000-000000000000
        accountId:
          format: uuid
          type: string
          example: 00000000-0000-0000-0000-000000000000
        channelRequestId:
          format: uuid
          type: string
          example: 00000000-0000-0000-0000-000000000000
        channelTypeId:
          format: uuid
          type: string
          example: 00000000-0000-0000-0000-000000000000
        channelCategoryID:
          format: uuid
          type: string
          example: 00000000-0000-0000-0000-000000000000
        isPending:
          type: boolean
        cancelledOnUtc:
          format: date-time
          type: string
        fulfilledOnUtc:
          format: date-time
          type: string
        createdOnUtc:
          format: date-time
          type: string
        entityStatus:
          enum:
          - ACTIVE
          - PENDING
          - ELIGIBLE
          - NOT_VALIDATED
          - CUSTOMER_ACTION_REQUIRED
          - EXPIRED
          - REJECTED
          - CANCELLED
          - DELETED
          type: string
        orderStatusExtended:
          $ref: '#/components/schemas/CM.Platform.Channels.Models.Orders.ApiOrderStatus'
        orderStatus:
          enum:
          - SELFSERVICE_CREATED
          - SELFSERVICE_FAILED
          - SELFSERVICE_PROVISIONED
          - SELFSERVICE_SUSPENDED
          - VALIDATE
          - RESERVE
          - PROVISION
          - CANCEL
          - FINALIZE
          - TERMINATE
          - SUBSCRIPTION_STOPPED
          type: string
        formInput:
          type: array
          items:
            $ref: '#/components/schemas/CM.Platform.Channels.Models.RequestForms.ApiChannelRequestFormInputResponse'
    CM.Platform.Channels.Models.ChannelTypes.Facebook.ApiFacebookConnectionAdmin:
      required:
      - id
      - accountId
      - channelRequestId
      - channelCategoryID
      - facebookAccountID
      - type
      - facebookConnectionId
      - name
      - isActive
      - isPending
      - isExpired
      - createdOnUtc
      type: object
      properties:
        id:
          format: uuid
          type: string
          example: 00000000-0000-0000-0000-000000000000
        channelId:
          format: uuid
          type: string
          example: 00000000-0000-0000-0000-000000000000
        accountId:
          format: uuid
          type: string
          example: 00000000-0000-0000-0000-000000000000
        channelRequestId:
          format: uuid
          type: string
          example: 00000000-0000-0000-0000-000000000000
        channelCategoryID:
          format: uuid
          type: string
          example: 00000000-0000-0000-0000-000000000000
        facebookAccountID:
          format: uuid
          type: string
          example: 00000000-0000-0000-0000-000000000000
        owner:
          type: string
        type:
          enum:
          - PAGE
          type: string
        facebookConnectionId:
          type: string
        name:
          type: string
        facebookUrl:
          type: string
        isActive:
          type: boolean
        isPending:
          type: boolean
        isExpired:
          type: boolean
        fulfilledOnUtc:
          format: date-time
          type: string
        createdOnUtc:
          format: date-time
          type: string
        rejectedOnUtc:
          format: date-time
          type: string
        cancelledOnUtc:
          format: date-time
          type: string
        deletedOnUtc:
          format: date-time
          type: string
        entityStatus:
          enum:
          - ACTIVE
          - PENDING
          - ELIGIBLE
          - NOT_VALIDATED
          - CUSTOMER_ACTION_REQUIRED
          - EXPIRED
          - REJECTED
          - CANCELLED
          - DELETED
          type: string
        rejectionReason:
          type: string
        expirationReason:
          type: string
    CM.Platform.Channels.Models.ChannelTypes.GooglesBusinessMessages.ApiGooglesBusinessMessagesAgentAdminBase:
      required:
      - id
      - accountId
      - name
      - isPending
      - isActive
      - messageConfigurationCompleted
      - entrypointConfigurationCompleted
      - agentManualVerificationFlowRequired
      - channelTypeId
      - channelCategoryId
      - createdOnUtc
      type: object
      properties:
        id:
          format: uuid
          type: string
          example: 00000000-0000-0000-0000-000000000000
        accountId:
          format: uuid
          type: string
          example: 00000000-0000-0000-0000-000000000000
        name:
          type: string
        isPending:
          type: boolean
        isActive:
          type: boolean
        gbmBrandId:
          format: uuid
          type: string
          example: 00000000-0000-0000-0000-000000000000
        gbmAccountId:
          format: uuid
          type: string
          example: 00000000-0000-0000-0000-000000000000
        googleBusinessCommunicationsId:
          format: uuid
          type: string
          example: 00000000-0000-0000-0000-000000000000
        googleBusinessCommunicationsVerificationStatus:
          type: string
        googleBusinessCommunicationsLaunchStatus:
          type: array
          items:
            $ref: '#/components/schemas/CM.Platform.Channels.Models.ChannelTypes.GooglesBusinessMessages.ApiGooglesBusinessMessagesAgentLaunchStatus'
        messageConfigurationCompleted:
          type: boolean
        entrypointConfigurationCompleted:
          type: boolean
        agentManualVerificationFlowRequired:
          type: boolean
        rejectionReason:
          type: string
        channelTypeId:
          format: uuid
          type: string
          example: 00000000-0000-0000-0000-000000000000
        channelCategoryId:
          format: uuid
          type: string
          example: 00000000-0000-0000-0000-000000000000
        channelId:
          format: uuid
          type: string
          example: 00000000-0000-0000-0000-000000000000
        agentId:
          type: string
        entityStatus:
          enum:
          - ACTIVE
          - PENDING
          - ELIGIBLE
          - NOT_VALIDATED
          - CUSTOMER_ACTION_REQUIRED
          - EXPIRED
          - REJECTED
          - CANCELLED
          - DELETED
          type: string
        cancelledOnUtc:
          format: date-time
          type: string
        deletedOnUtc:
          format: date-time
          type: string
        rejectedOnUtc:
          format: date-time
          type: string
        updatedOnUtc:
          format: date-time
          type: string
        fulfilledOnUtc:
          format: date-time
          type: string
        createdOnUtc:
          format: date-time
          type: string
    CM.Platform.Channels.Models.ChannelTypes.GooglesBusinessMessages.ApiGooglesBusinessMessagesAgentLaunchStatus:
      type: object
      properties:
        entryPoint:
          enum:
          - NON_LOCAL
          - LOCATION
          type: string
        launchState:
          enum:
          - LAUNCH_STATE_UNSPECIFIED
          - LAUNCH_STATE_UNLAUNCHED
          - LAUNCH_STATE_PENDING
          - LAUNCH_STATE_LAUNCHED
          - LAUNCH_STATE_REJECTED
          - LAUNCH_STATE_SUSPENDED
          - LAUNCH_STATE_PENDING_UNLAUNCH
          - LAUNCH_STATE_INVALID_IN_GMB
          type: string
    CM.Platform.Channels.Models.ChannelTypes.GooglesBusinessMessages.ApiGooglesBusinessMessagesAgentAdmin:
      required:
      - id
      - accountId
      - name
      - isPending
      - isActive
      - messageConfigurationCompleted
      - entrypointConfigurationCompleted
      - agentManualVerificationFlowRequired
      - channelTypeId
      - channelCategoryId
      - channelRequestId
      - formInput
      - createdOnUtc
      type: object
      properties:
        id:
          format: uuid
          type: string
          example: 00000000-0000-0000-0000-000000000000
        accountId:
          format: uuid
          type: string
          example: 00000000-0000-0000-0000-000000000000
        name:
          type: string
        isPending:
          type: boolean
        isActive:
          type: boolean
        gbmBrandId:
          format: uuid
          type: string
          example: 00000000-0000-0000-0000-000000000000
        gbmAccountId:
          format: uuid
          type: string
          example: 00000000-0000-0000-0000-000000000000
        googleBusinessCommunicationsId:
          format: uuid
          type: string
          example: 00000000-0000-0000-0000-000000000000
        googleBusinessCommunicationsVerificationStatus:
          type: string
        googleBusinessCommunicationsLaunchStatus:
          type: array
          items:
            $ref: '#/components/schemas/CM.Platform.Channels.Models.ChannelTypes.GooglesBusinessMessages.ApiGooglesBusinessMessagesAgentLaunchStatus'
        messageConfigurationCompleted:
          type: boolean
        entrypointConfigurationCompleted:
          type: boolean
        agentManualVerificationFlowRequired:
          type: boolean
        rejectionReason:
          type: string
        channelTypeId:
          format: uuid
          type: string
          example: 00000000-0000-0000-0000-000000000000
        channelCategoryId:
          format: uuid
          type: string
          example: 00000000-0000-0000-0000-000000000000
        channelRequestId:
          format: uuid
          type: string
          example: 00000000-0000-0000-0000-000000000000
        formInput:
          type: array
          items:
            $ref: '#/components/schemas/CM.Platform.Channels.Models.RequestForms.ApiChannelRequestFormInputResponse'
        isImported:
          type: boolean
        channelId:
          format: uuid
          type: string
          example: 00000000-0000-0000-0000-000000000000
        agentId:
          type: string
        entityStatus:
          enum:
          - ACTIVE
          - PENDING
          - ELIGIBLE
          - NOT_VALIDATED
          - CUSTOMER_ACTION_REQUIRED
          - EXPIRED
          - REJECTED
          - CANCELLED
          - DELETED
          type: string
        cancelledOnUtc:
          format: date-time
          type: string
        deletedOnUtc:
          format: date-time
          type: string
        rejectedOnUtc:
          format: date-time
          type: string
        updatedOnUtc:
          format: date-time
          type: string
        fulfilledOnUtc:
          format: date-time
          type: string
        createdOnUtc:
          format: date-time
          type: string
    CM.Platform.Channels.Models.ChannelTypes.GooglesBusinessMessages.ApiGooglesBusinessMessagesBrandAdminBase:
      required:
      - id
      - accountId
      - name
      - isPending
      - isActive
      - channelTypeId
      - channelCategoryId
      - createdOnUtc
      type: object
      properties:
        id:
          format: uuid
          type: string
          example: 00000000-0000-0000-0000-000000000000
        accountId:
          format: uuid
          type: string
          example: 00000000-0000-0000-0000-000000000000
        name:
          type: string
        isPending:
          type: boolean
        isActive:
          type: boolean
        gbmAccountId:
          format: uuid
          type: string
          example: 00000000-0000-0000-0000-000000000000
        googleBusinessCommunicationsId:
          format: uuid
          type: string
          example: 00000000-0000-0000-0000-000000000000
        rejectionReason:
          type: string
        channelTypeId:
          format: uuid
          type: string
          example: 00000000-0000-0000-0000-000000000000
        channelCategoryId:
          format: uuid
          type: string
          example: 00000000-0000-0000-0000-000000000000
        entityStatus:
          enum:
          - ACTIVE
          - PENDING
          - ELIGIBLE
          - NOT_VALIDATED
          - CUSTOMER_ACTION_REQUIRED
          - EXPIRED
          - REJECTED
          - CANCELLED
          - DELETED
          type: string
        cancelledOnUtc:
          format: date-time
          type: string
        deletedOnUtc:
          format: date-time
          type: string
        rejectedOnUtc:
          format: date-time
          type: string
        updatedOnUtc:
          format: date-time
          type: string
        fulfilledOnUtc:
          format: date-time
          type: string
        createdOnUtc:
          format: date-time
          type: string
    CM.Platform.Channels.Models.ChannelTypes.GooglesBusinessMessages.ApiGooglesBusinessMessagesBrandAdmin:
      required:
      - id
      - accountId
      - name
      - isPending
      - isActive
      - channelTypeId
      - channelCategoryId
      - channelRequestId
      - formInput
      - createdOnUtc
      type: object
      properties:
        id:
          format: uuid
          type: string
          example: 00000000-0000-0000-0000-000000000000
        accountId:
          format: uuid
          type: string
          example: 00000000-0000-0000-0000-000000000000
        name:
          type: string
        isPending:
          type: boolean
        isActive:
          type: boolean
        gbmAccountId:
          format: uuid
          type: string
          example: 00000000-0000-0000-0000-000000000000
        googleBusinessCommunicationsId:
          format: uuid
          type: string
          example: 00000000-0000-0000-0000-000000000000
        rejectionReason:
          type: string
        channelTypeId:
          format: uuid
          type: string
          example: 00000000-0000-0000-0000-000000000000
        channelCategoryId:
          format: uuid
          type: string
          example: 00000000-0000-0000-0000-000000000000
        channelRequestId:
          format: uuid
          type: string
          example: 00000000-0000-0000-0000-000000000000
        formInput:
          type: array
          items:
            $ref: '#/components/schemas/CM.Platform.Channels.Models.RequestForms.ApiChannelRequestFormInputResponse'
        isImported:
          type: boolean
        channelId:
          format: uuid
          type: string
          example: 00000000-0000-0000-0000-000000000000
        entityStatus:
          enum:
          - ACTIVE
          - PENDING
          - ELIGIBLE
          - NOT_VALIDATED
          - CUSTOMER_ACTION_REQUIRED
          - EXPIRED
          - REJECTED
          - CANCELLED
          - DELETED
          type: string
        cancelledOnUtc:
          format: date-time
          type: string
        deletedOnUtc:
          format: date-time
          type: string
        rejectedOnUtc:
          format: date-time
          type: string
        updatedOnUtc:
          format: date-time
          type: string
        fulfilledOnUtc:
          format: date-time
          type: string
        createdOnUtc:
          format: date-time
          type: string
    CM.Platform.Channels.Models.ChannelTypes.GooglesBusinessMessages.ApiGooglesBusinessMessagesAccountAdminBase:
      required:
      - id
      - accountId
      - isPending
      - channelCategoryId
      - createdOnUtc
      type: object
      properties:
        id:
          format: uuid
          type: string
          example: 00000000-0000-0000-0000-000000000000
        accountId:
          format: uuid
          type: string
          example: 00000000-0000-0000-0000-000000000000
        isPending:
          type: boolean
        channelRequestId:
          format: uuid
          type: string
          example: 00000000-0000-0000-0000-000000000000
        channelCategoryId:
          format: uuid
          type: string
          example: 00000000-0000-0000-0000-000000000000
        entityStatus:
          enum:
          - ACTIVE
          - PENDING
          - ELIGIBLE
          - NOT_VALIDATED
          - CUSTOMER_ACTION_REQUIRED
          - EXPIRED
          - REJECTED
          - CANCELLED
          - DELETED
          type: string
        orderStatus:
          enum:
          - SELFSERVICE_CREATED
          - SELFSERVICE_FAILED
          - SELFSERVICE_PROVISIONED
          - SELFSERVICE_SUSPENDED
          - VALIDATE
          - RESERVE
          - PROVISION
          - CANCEL
          - FINALIZE
          - TERMINATE
          - SUBSCRIPTION_STOPPED
          type: string
        cancelledOnUtc:
          format: date-time
          type: string
        fulfilledOnUtc:
          format: date-time
          type: string
        createdOnUtc:
          format: date-time
          type: string
    CM.Platform.Channels.Models.ChannelTypes.GooglesBusinessMessages.ApiGooglesBusinessMessagesAccountAdmin:
      required:
      - id
      - accountId
      - isPending
      - channelCategoryId
      - channelCategoryID
      - orderStatusExtended
      - createdOnUtc
      type: object
      properties:
        id:
          format: uuid
          type: string
          example: 00000000-0000-0000-0000-000000000000
        accountId:
          format: uuid
          type: string
          example: 00000000-0000-0000-0000-000000000000
        isPending:
          type: boolean
        channelRequestId:
          format: uuid
          type: string
          example: 00000000-0000-0000-0000-000000000000
        channelCategoryId:
          format: uuid
          type: string
          example: 00000000-0000-0000-0000-000000000000
        rejectionReason:
          type: string
        formInput:
          type: array
          items:
            $ref: '#/components/schemas/CM.Platform.Channels.Models.RequestForms.ApiChannelRequestFormInputResponse'
        isImported:
          type: boolean
        importableGbcBrandIds:
          type: array
          items:
            format: uuid
            type: string
            example: 00000000-0000-0000-0000-000000000000
        channelTypeId:
          format: uuid
          type: string
          example: 00000000-0000-0000-0000-000000000000
        channelCategoryID:
          format: uuid
          type: string
          example: 00000000-0000-0000-0000-000000000000
        entityStatus:
          enum:
          - ACTIVE
          - PENDING
          - ELIGIBLE
          - NOT_VALIDATED
          - CUSTOMER_ACTION_REQUIRED
          - EXPIRED
          - REJECTED
          - CANCELLED
          - DELETED
          type: string
        orderStatusExtended:
          $ref: '#/components/schemas/CM.Platform.Channels.Models.Orders.ApiOrderStatus'
        orderStatus:
          enum:
          - SELFSERVICE_CREATED
          - SELFSERVICE_FAILED
          - SELFSERVICE_PROVISIONED
          - SELFSERVICE_SUSPENDED
          - VALIDATE
          - RESERVE
          - PROVISION
          - CANCEL
          - FINALIZE
          - TERMINATE
          - SUBSCRIPTION_STOPPED
          type: string
        cancelledOnUtc:
          format: date-time
          type: string
        fulfilledOnUtc:
          format: date-time
          type: string
        createdOnUtc:
          format: date-time
          type: string
    CM.Platform.Channels.Models.ChannelTypes.Instagram.ApiInstagramAccountAdminBase:
      required:
      - id
      - accountId
      - channelRequestId
      - isPending
      - createdOnUtc
      type: object
      properties:
        id:
          format: uuid
          type: string
          example: 00000000-0000-0000-0000-000000000000
        accountId:
          format: uuid
          type: string
          example: 00000000-0000-0000-0000-000000000000
        channelRequestId:
          format: uuid
          type: string
          example: 00000000-0000-0000-0000-000000000000
        isPending:
          type: boolean
        cancelledOnUtc:
          format: date-time
          type: string
        fulfilledOnUtc:
          format: date-time
          type: string
        createdOnUtc:
          format: date-time
          type: string
        entityStatus:
          enum:
          - ACTIVE
          - PENDING
          - ELIGIBLE
          - NOT_VALIDATED
          - CUSTOMER_ACTION_REQUIRED
          - EXPIRED
          - REJECTED
          - CANCELLED
          - DELETED
          type: string
        orderStatus:
          enum:
          - SELFSERVICE_CREATED
          - SELFSERVICE_FAILED
          - SELFSERVICE_PROVISIONED
          - SELFSERVICE_SUSPENDED
          - VALIDATE
          - RESERVE
          - PROVISION
          - CANCEL
          - FINALIZE
          - TERMINATE
          - SUBSCRIPTION_STOPPED
          type: string
    CM.Platform.Channels.Models.ChannelTypes.Instagram.ApiInstagramAccountAdmin:
      required:
      - id
      - accountId
      - channelRequestId
      - channelCategoryID
      - isPending
      - createdOnUtc
      - orderStatusExtended
      type: object
      properties:
        id:
          format: uuid
          type: string
          example: 00000000-0000-0000-0000-000000000000
        accountId:
          format: uuid
          type: string
          example: 00000000-0000-0000-0000-000000000000
        channelRequestId:
          format: uuid
          type: string
          example: 00000000-0000-0000-0000-000000000000
        channelTypeId:
          format: uuid
          type: string
          example: 00000000-0000-0000-0000-000000000000
        channelCategoryID:
          format: uuid
          type: string
          example: 00000000-0000-0000-0000-000000000000
        isPending:
          type: boolean
        cancelledOnUtc:
          format: date-time
          type: string
        fulfilledOnUtc:
          format: date-time
          type: string
        createdOnUtc:
          format: date-time
          type: string
        entityStatus:
          enum:
          - ACTIVE
          - PENDING
          - ELIGIBLE
          - NOT_VALIDATED
          - CUSTOMER_ACTION_REQUIRED
          - EXPIRED
          - REJECTED
          - CANCELLED
          - DELETED
          type: string
        orderStatusExtended:
          $ref: '#/components/schemas/CM.Platform.Channels.Models.Orders.ApiOrderStatus'
        orderStatus:
          enum:
          - SELFSERVICE_CREATED
          - SELFSERVICE_FAILED
          - SELFSERVICE_PROVISIONED
          - SELFSERVICE_SUSPENDED
          - VALIDATE
          - RESERVE
          - PROVISION
          - CANCEL
          - FINALIZE
          - TERMINATE
          - SUBSCRIPTION_STOPPED
          type: string
        formInput:
          type: array
          items:
            $ref: '#/components/schemas/CM.Platform.Channels.Models.RequestForms.ApiChannelRequestFormInputResponse'
    CM.Platform.Channels.Models.ChannelTypes.Instagram.ApiInstagramConnectionAdmin:
      required:
      - id
      - accountId
      - channelRequestId
      - channelCategoryID
      - instagramAccountID
      - type
      - instagramConnectionId
      - username
      - name
      - isActive
      - isPending
      - isExpired
      - createdOnUtc
      type: object
      properties:
        id:
          format: uuid
          type: string
          example: 00000000-0000-0000-0000-000000000000
        channelId:
          format: uuid
          type: string
          example: 00000000-0000-0000-0000-000000000000
        accountId:
          format: uuid
          type: string
          example: 00000000-0000-0000-0000-000000000000
        channelRequestId:
          format: uuid
          type: string
          example: 00000000-0000-0000-0000-000000000000
        channelCategoryID:
          format: uuid
          type: string
          example: 00000000-0000-0000-0000-000000000000
        instagramAccountID:
          format: uuid
          type: string
          example: 00000000-0000-0000-0000-000000000000
        owner:
          type: string
        type:
          enum:
          - ACCOUNT
          type: string
        instagramConnectionId:
          type: string
        username:
          type: string
        name:
          type: string
        instagramUrl:
          type: string
        isActive:
          type: boolean
        isPending:
          type: boolean
        isExpired:
          type: boolean
        fulfilledOnUtc:
          format: date-time
          type: string
        createdOnUtc:
          format: date-time
          type: string
        rejectedOnUtc:
          format: date-time
          type: string
        cancelledOnUtc:
          format: date-time
          type: string
        deletedOnUtc:
          format: date-time
          type: string
        entityStatus:
          enum:
          - ACTIVE
          - PENDING
          - ELIGIBLE
          - NOT_VALIDATED
          - CUSTOMER_ACTION_REQUIRED
          - EXPIRED
          - REJECTED
          - CANCELLED
          - DELETED
          type: string
        rejectionReason:
          type: string
        expirationReason:
          type: string
    CM.Platform.Channels.Models.ChannelTypes.Line.ApiLineAccountAdminBase:
      required:
      - id
      - accountId
      - channelRequestId
      - isPending
      - createdOnUtc
      type: object
      properties:
        id:
          format: uuid
          type: string
          example: 00000000-0000-0000-0000-000000000000
        accountId:
          format: uuid
          type: string
          example: 00000000-0000-0000-0000-000000000000
        channelRequestId:
          format: uuid
          type: string
          example: 00000000-0000-0000-0000-000000000000
        isPending:
          type: boolean
        cancelledOnUtc:
          format: date-time
          type: string
        fulfilledOnUtc:
          format: date-time
          type: string
        createdOnUtc:
          format: date-time
          type: string
        entityStatus:
          enum:
          - ACTIVE
          - PENDING
          - ELIGIBLE
          - NOT_VALIDATED
          - CUSTOMER_ACTION_REQUIRED
          - EXPIRED
          - REJECTED
          - CANCELLED
          - DELETED
          type: string
        orderStatus:
          enum:
          - SELFSERVICE_CREATED
          - SELFSERVICE_FAILED
          - SELFSERVICE_PROVISIONED
          - SELFSERVICE_SUSPENDED
          - VALIDATE
          - RESERVE
          - PROVISION
          - CANCEL
          - FINALIZE
          - TERMINATE
          - SUBSCRIPTION_STOPPED
          type: string
    CM.Platform.Channels.Models.ChannelTypes.Line.ApiLineAccountAdmin:
      required:
      - id
      - accountId
      - channelRequestId
      - channelCategoryID
      - isPending
      - createdOnUtc
      - orderStatusExtended
      type: object
      properties:
        id:
          format: uuid
          type: string
          example: 00000000-0000-0000-0000-000000000000
        accountId:
          format: uuid
          type: string
          example: 00000000-0000-0000-0000-000000000000
        channelRequestId:
          format: uuid
          type: string
          example: 00000000-0000-0000-0000-000000000000
        channelTypeId:
          format: uuid
          type: string
          example: 00000000-0000-0000-0000-000000000000
        channelCategoryID:
          format: uuid
          type: string
          example: 00000000-0000-0000-0000-000000000000
        isPending:
          type: boolean
        cancelledOnUtc:
          format: date-time
          type: string
        fulfilledOnUtc:
          format: date-time
          type: string
        createdOnUtc:
          format: date-time
          type: string
        entityStatus:
          enum:
          - ACTIVE
          - PENDING
          - ELIGIBLE
          - NOT_VALIDATED
          - CUSTOMER_ACTION_REQUIRED
          - EXPIRED
          - REJECTED
          - CANCELLED
          - DELETED
          type: string
        orderStatusExtended:
          $ref: '#/components/schemas/CM.Platform.Channels.Models.Orders.ApiOrderStatus'
        orderStatus:
          enum:
          - SELFSERVICE_CREATED
          - SELFSERVICE_FAILED
          - SELFSERVICE_PROVISIONED
          - SELFSERVICE_SUSPENDED
          - VALIDATE
          - RESERVE
          - PROVISION
          - CANCEL
          - FINALIZE
          - TERMINATE
          - SUBSCRIPTION_STOPPED
          type: string
        formInput:
          type: array
          items:
            $ref: '#/components/schemas/CM.Platform.Channels.Models.RequestForms.ApiChannelRequestFormInputResponse'
    CM.Platform.Channels.Models.ChannelTypes.Line.ApiLineNotifyServiceAdmin:
      required:
      - id
      - accountId
      - channelRequestId
      - channelCategoryID
      - gmoStoreId
      - isActive
      - isPending
      - approvedOnUtc
      - createdOnUtc
      type: object
      properties:
        id:
          format: uuid
          type: string
          example: 00000000-0000-0000-0000-000000000000
        channelId:
          format: uuid
          type: string
          example: 00000000-0000-0000-0000-000000000000
        accountId:
          format: uuid
          type: string
          example: 00000000-0000-0000-0000-000000000000
        notifyServiceID:
          format: int32
          type: integer
        channelRequestId:
          format: uuid
          type: string
          example: 00000000-0000-0000-0000-000000000000
        channelCategoryID:
          format: uuid
          type: string
          example: 00000000-0000-0000-0000-000000000000
        owner:
          type: string
        notifyServiceName:
          type: string
        gmoStoreId:
          format: int32
          type: integer
        isActive:
          type: boolean
        entityStatus:
          enum:
          - ACTIVE
          - PENDING
          - ELIGIBLE
          - NOT_VALIDATED
          - CUSTOMER_ACTION_REQUIRED
          - EXPIRED
          - REJECTED
          - CANCELLED
          - DELETED
          type: string
        isPending:
          type: boolean
        approvedOnUtc:
          format: date-time
          type: string
        createdOnUtc:
          format: date-time
          type: string
        rejectedOnUtc:
          format: date-time
          type: string
        cancelledOnUtc:
          format: date-time
          type: string
        deletedOnUtc:
          format: date-time
          type: string
        rejectionReason:
          type: string
    CM.Platform.Channels.Models.ChannelTypes.MobilePush.ApiMobilePushApplicationAdmin:
      required:
      - id
      - accountId
      - channelRequestId
      - channelCategoryID
      - isActive
      - isPending
      - requiresSettings
      - createdOnUtc
      type: object
      properties:
        id:
          format: uuid
          type: string
          example: 00000000-0000-0000-0000-000000000000
        channelId:
          format: uuid
          type: string
          example: 00000000-0000-0000-0000-000000000000
        accountId:
          format: uuid
          type: string
          example: 00000000-0000-0000-0000-000000000000
        applicationID:
          type: string
        channelRequestId:
          format: uuid
          type: string
          example: 00000000-0000-0000-0000-000000000000
        channelCategoryID:
          format: uuid
          type: string
          example: 00000000-0000-0000-0000-000000000000
        isIosExpired:
          type: boolean
          readOnly: true
        owner:
          type: string
        isIosActivated:
          type: boolean
        isAndroidActivated:
          type: boolean
        applicationOtpSender:
          type: string
        applicationName:
          type: string
        androidSettings:
          type: string
        isActive:
          type: boolean
        entityStatus:
          enum:
          - ACTIVE
          - PENDING
          - ELIGIBLE
          - NOT_VALIDATED
          - CUSTOMER_ACTION_REQUIRED
          - EXPIRED
          - REJECTED
          - CANCELLED
          - DELETED
          type: string
        iosSettings:
          $ref: '#/components/schemas/CM.Platform.Channels.Models.ChannelTypes.MobilePush.ApiMobilePushIosApplication'
        isPending:
          type: boolean
        requiresSettings:
          type: boolean
          readOnly: true
        fulfilledOnUtc:
          format: date-time
          type: string
        createdOnUtc:
          format: date-time
          type: string
        rejectedOnUtc:
          format: date-time
          type: string
        cancelledOnUtc:
          format: date-time
          type: string
        deletedOnUtc:
          format: date-time
          type: string
        iosExpiresOnUtc:
          format: date-time
          type: string
        rejectionReason:
          type: string
    CM.Platform.Channels.Models.ChannelTypes.MobilePush.ApiMobilePushIosApplication:
      type: object
      properties:
        privateKey:
          type: string
        certificate:
          type: string
        password:
          type: string
        expiresOnUtc:
          format: date-time
          type: string
    CM.Platform.Channels.Models.ChannelTypes.MobilePush.ApiMobilePushAccountAdminBase:
      required:
      - id
      - accountId
      - channelRequestId
      - isPending
      - createdOnUtc
      type: object
      properties:
        id:
          format: uuid
          type: string
          example: 00000000-0000-0000-0000-000000000000
        accountId:
          format: uuid
          type: string
          example: 00000000-0000-0000-0000-000000000000
        channelRequestId:
          format: uuid
          type: string
          example: 00000000-0000-0000-0000-000000000000
        isPending:
          type: boolean
        cancelledOnUtc:
          format: date-time
          type: string
        fulfilledOnUtc:
          format: date-time
          type: string
        createdOnUtc:
          format: date-time
          type: string
        entityStatus:
          enum:
          - ACTIVE
          - PENDING
          - ELIGIBLE
          - NOT_VALIDATED
          - CUSTOMER_ACTION_REQUIRED
          - EXPIRED
          - REJECTED
          - CANCELLED
          - DELETED
          type: string
        orderStatus:
          enum:
          - SELFSERVICE_CREATED
          - SELFSERVICE_FAILED
          - SELFSERVICE_PROVISIONED
          - SELFSERVICE_SUSPENDED
          - VALIDATE
          - RESERVE
          - PROVISION
          - CANCEL
          - FINALIZE
          - TERMINATE
          - SUBSCRIPTION_STOPPED
          type: string
    CM.Platform.Channels.Models.ChannelTypes.MobilePush.ApiMobilePushAccountAdmin:
      required:
      - id
      - accountId
      - channelRequestId
      - channelCategoryID
      - isPending
      - createdOnUtc
      - orderStatusExtended
      type: object
      properties:
        id:
          format: uuid
          type: string
          example: 00000000-0000-0000-0000-000000000000
        accountId:
          format: uuid
          type: string
          example: 00000000-0000-0000-0000-000000000000
        channelRequestId:
          format: uuid
          type: string
          example: 00000000-0000-0000-0000-000000000000
        channelTypeId:
          format: uuid
          type: string
          example: 00000000-0000-0000-0000-000000000000
        channelCategoryID:
          format: uuid
          type: string
          example: 00000000-0000-0000-0000-000000000000
        isPending:
          type: boolean
        cancelledOnUtc:
          format: date-time
          type: string
        fulfilledOnUtc:
          format: date-time
          type: string
        createdOnUtc:
          format: date-time
          type: string
        entityStatus:
          enum:
          - ACTIVE
          - PENDING
          - ELIGIBLE
          - NOT_VALIDATED
          - CUSTOMER_ACTION_REQUIRED
          - EXPIRED
          - REJECTED
          - CANCELLED
          - DELETED
          type: string
        orderStatusExtended:
          $ref: '#/components/schemas/CM.Platform.Channels.Models.Orders.ApiOrderStatus'
        orderStatus:
          enum:
          - SELFSERVICE_CREATED
          - SELFSERVICE_FAILED
          - SELFSERVICE_PROVISIONED
          - SELFSERVICE_SUSPENDED
          - VALIDATE
          - RESERVE
          - PROVISION
          - CANCEL
          - FINALIZE
          - TERMINATE
          - SUBSCRIPTION_STOPPED
          type: string
        formInput:
          type: array
          items:
            $ref: '#/components/schemas/CM.Platform.Channels.Models.RequestForms.ApiChannelRequestFormInputResponse'
    CM.Platform.Channels.Models.ChannelTypes.Rcs.ApiRcsAccountAdminBase:
      required:
      - id
      - accountId
      - channelRequestId
      - isPending
      - createdOnUtc
      type: object
      properties:
        id:
          format: uuid
          type: string
          example: 00000000-0000-0000-0000-000000000000
        accountId:
          format: uuid
          type: string
          example: 00000000-0000-0000-0000-000000000000
        channelRequestId:
          format: uuid
          type: string
          example: 00000000-0000-0000-0000-000000000000
        isPending:
          type: boolean
        cancelledOnUtc:
          format: date-time
          type: string
        fulfilledOnUtc:
          format: date-time
          type: string
        createdOnUtc:
          format: date-time
          type: string
        entityStatus:
          enum:
          - ACTIVE
          - PENDING
          - ELIGIBLE
          - NOT_VALIDATED
          - CUSTOMER_ACTION_REQUIRED
          - EXPIRED
          - REJECTED
          - CANCELLED
          - DELETED
          type: string
        orderStatus:
          enum:
          - SELFSERVICE_CREATED
          - SELFSERVICE_FAILED
          - SELFSERVICE_PROVISIONED
          - SELFSERVICE_SUSPENDED
          - VALIDATE
          - RESERVE
          - PROVISION
          - CANCEL
          - FINALIZE
          - TERMINATE
          - SUBSCRIPTION_STOPPED
          type: string
    CM.Platform.Channels.Models.ChannelTypes.Rcs.ApiRcsAccountAdmin:
      required:
      - id
      - accountId
      - channelRequestId
      - channelCategoryID
      - isPending
      - createdOnUtc
      - orderStatusExtended
      type: object
      properties:
        id:
          format: uuid
          type: string
          example: 00000000-0000-0000-0000-000000000000
        accountId:
          format: uuid
          type: string
          example: 00000000-0000-0000-0000-000000000000
        channelRequestId:
          format: uuid
          type: string
          example: 00000000-0000-0000-0000-000000000000
        channelTypeId:
          format: uuid
          type: string
          example: 00000000-0000-0000-0000-000000000000
        channelCategoryID:
          format: uuid
          type: string
          example: 00000000-0000-0000-0000-000000000000
        isPending:
          type: boolean
        cancelledOnUtc:
          format: date-time
          type: string
        fulfilledOnUtc:
          format: date-time
          type: string
        createdOnUtc:
          format: date-time
          type: string
        entityStatus:
          enum:
          - ACTIVE
          - PENDING
          - ELIGIBLE
          - NOT_VALIDATED
          - CUSTOMER_ACTION_REQUIRED
          - EXPIRED
          - REJECTED
          - CANCELLED
          - DELETED
          type: string
        orderStatusExtended:
          $ref: '#/components/schemas/CM.Platform.Channels.Models.Orders.ApiOrderStatus'
        orderStatus:
          enum:
          - SELFSERVICE_CREATED
          - SELFSERVICE_FAILED
          - SELFSERVICE_PROVISIONED
          - SELFSERVICE_SUSPENDED
          - VALIDATE
          - RESERVE
          - PROVISION
          - CANCEL
          - FINALIZE
          - TERMINATE
          - SUBSCRIPTION_STOPPED
          type: string
        formInput:
          type: array
          items:
            $ref: '#/components/schemas/CM.Platform.Channels.Models.RequestForms.ApiChannelRequestFormInputResponse'
    CM.Platform.Channels.Models.ChannelTypes.Rcs.ApiRcsProfileAdmin:
      required:
      - id
      - channelRequestId
      - accountId
      - channelCategoryId
      - isActive
      - isPending
      - createdOnUtc
      type: object
      properties:
        id:
          format: uuid
          type: string
          example: 00000000-0000-0000-0000-000000000000
        channelRequestId:
          format: uuid
          type: string
          example: 00000000-0000-0000-0000-000000000000
        channelId:
          format: uuid
          type: string
          example: 00000000-0000-0000-0000-000000000000
        accountId:
          format: uuid
          type: string
          example: 00000000-0000-0000-0000-000000000000
        channelCategoryId:
          format: uuid
          type: string
          example: 00000000-0000-0000-0000-000000000000
        rcsAccountId:
          format: uuid
          type: string
          example: 00000000-0000-0000-0000-000000000000
        name:
          type: string
        heroImage:
          type: string
        logoImage:
          type: string
        isActive:
          type: boolean
        isPending:
          type: boolean
        fulfilledOnUtc:
          format: date-time
          type: string
        createdOnUtc:
          format: date-time
          type: string
        rejectionReason:
          type: string
        rejectedOnUtc:
          format: date-time
          type: string
        cancelledOnUtc:
          format: date-time
          type: string
        entityStatus:
          enum:
          - ACTIVE
          - PENDING
          - ELIGIBLE
          - NOT_VALIDATED
          - CUSTOMER_ACTION_REQUIRED
          - EXPIRED
          - REJECTED
          - CANCELLED
          - DELETED
          type: string
    CM.Platform.Channels.Models.ChannelTypes.Sms.ApiKeywordClaimRequest:
      required:
      - phoneNumberId
      - keyword
      type: object
      properties:
        phoneNumberId:
          type: string
        keyword:
          type: string
    CM.Platform.Channels.Models.ChannelTypes.Sms.ApiKeywordClaimAdminRequest:
      required:
      - id
      - phoneNumberId
      - country
      - keyword
      - subscriptionPeriodicity
      - price
      - isPending
      type: object
      properties:
        id:
          type: string
        channelId:
          format: uuid
          type: string
          example: 00000000-0000-0000-0000-000000000000
        accountId:
          format: uuid
          type: string
          example: 00000000-0000-0000-0000-000000000000
        phoneNumberId:
          type: string
        country:
          type: string
        keyword:
          type: string
        subscriptionPeriodicity:
          enum:
          - MONTHLY
          - YEARLY
          - NONE
          type: string
        price:
          $ref: '#/components/schemas/CM.Platform.Channels.Models.Pricing.ApiSubscriptionPrice'
        noticePeriodDays:
          format: double
          type: number
        reasonForRejection:
          type: string
        taxOnGamesScenarioSettings:
          $ref: '#/components/schemas/CM.Platform.Channels.Models.Channels.ApiAdminScenarioTaxOnGamesSettings'
        isPending:
          type: boolean
        claimedOnUtc:
          format: date-time
          type: string
        claimedUntilUtc:
          format: date-time
          type: string
        entityStatus:
          enum:
          - ACTIVE
          - PENDING
          - ELIGIBLE
          - NOT_VALIDATED
          - CUSTOMER_ACTION_REQUIRED
          - EXPIRED
          - REJECTED
          - CANCELLED
          - DELETED
          type: string
        channelState:
          $ref: '#/components/schemas/CM.Platform.Channels.Models.Channels.ApiChannelState'
    CM.Platform.Channels.Models.ChannelTypes.Sms.ApiNumberTypeAdminRequest:
      required:
      - purpose
      - country
      - category
      - noticePeriodDays
      - keywordNoticePeriodDays
      - numberRequestProcessingDays
      - requiredCapability
      - isSaleable
      type: object
      properties:
        purpose:
          type: array
          items:
            type: string
        country:
          type: string
        category:
          type: string
        description:
          type: string
        pricePlanProductId:
          format: uuid
          type: string
          example: 00000000-0000-0000-0000-000000000000
        internalNote:
          type: string
        noticePeriodDays:
          format: int32
          type: integer
        keywordNoticePeriodDays:
          format: int32
          type: integer
        numberRequestProcessingDays:
          format: int32
          type: integer
        requiredCapability:
          type: string
        isSaleable:
          type: boolean
    CM.Platform.Channels.Models.ChannelTypes.Sms.ApiNumberRequestResponseAdminBase:
      required:
      - id
      - accountId
      - numberType
      - subscriptionPeriodicity
      - price
      - isPending
      - isActive
      - createdOnUtc
      type: object
      properties:
        id:
          format: uuid
          type: string
          example: 00000000-0000-0000-0000-000000000000
        channelId:
          format: uuid
          type: string
          example: 00000000-0000-0000-0000-000000000000
        accountId:
          format: uuid
          type: string
          example: 00000000-0000-0000-0000-000000000000
        phoneNumberId:
          type: string
        phoneNumber:
          type: string
        orderStatus:
          enum:
          - SELFSERVICE_CREATED
          - SELFSERVICE_FAILED
          - SELFSERVICE_PROVISIONED
          - SELFSERVICE_SUSPENDED
          - VALIDATE
          - RESERVE
          - PROVISION
          - CANCEL
          - FINALIZE
          - TERMINATE
          - SUBSCRIPTION_STOPPED
          type: string
        orderReservationRequestId:
          format: uuid
          type: string
          example: 00000000-0000-0000-0000-000000000000
        numberType:
          $ref: '#/components/schemas/CM.Platform.Channels.Models.ChannelTypes.Sms.ApiNumberTypeResponse'
        subscriptionPeriodicity:
          enum:
          - MONTHLY
          - YEARLY
          - NONE
          type: string
        price:
          $ref: '#/components/schemas/CM.Platform.Channels.Models.Pricing.ApiSubscriptionPrice'
        isPending:
          type: boolean
        isActive:
          type: boolean
        cancelledOnUtc:
          format: date-time
          type: string
        fulfilledOnUtc:
          format: date-time
          type: string
        createdOnUtc:
          format: date-time
          type: string
        reasonForRejection:
          type: string
        entityStatus:
          enum:
          - ACTIVE
          - PENDING
          - ELIGIBLE
          - NOT_VALIDATED
          - CUSTOMER_ACTION_REQUIRED
          - EXPIRED
          - REJECTED
          - CANCELLED
          - DELETED
          type: string
        channelState:
          $ref: '#/components/schemas/CM.Platform.Channels.Models.Channels.ApiChannelState'
    CM.Platform.Channels.Models.ChannelTypes.Sms.ApiNumberTypeResponse:
      required:
      - id
      - purpose
      - country
      - category
      - noticePeriodDays
      - keywordNoticePeriodDays
      - numberRequestProcessingDays
      - requiredCapability
      type: object
      properties:
        id:
          format: uuid
          type: string
          example: 00000000-0000-0000-0000-000000000000
        purpose:
          type: array
          items:
            type: string
        country:
          type: string
        category:
          type: string
        description:
          type: string
        productPricing:
          $ref: '#/components/schemas/CM.Platform.Channels.Models.Pricing.ApiProductPricing'
        noticePeriodDays:
          format: int32
          type: integer
        keywordNoticePeriodDays:
          format: int32
          type: integer
        numberRequestProcessingDays:
          format: int32
          type: integer
        requiredCapability:
          type: string
    CM.Platform.Channels.Models.ChannelTypes.Sms.ApiNumberRequestResponse:
      required:
      - id
      - accountId
      - numberType
      - subscriptionPeriodicity
      - price
      - isPending
      - isActive
      - createdOnUtc
      type: object
      properties:
        id:
          format: uuid
          type: string
          example: 00000000-0000-0000-0000-000000000000
        channelId:
          format: uuid
          type: string
          example: 00000000-0000-0000-0000-000000000000
        accountId:
          format: uuid
          type: string
          example: 00000000-0000-0000-0000-000000000000
        phoneNumberId:
          type: string
        phoneNumber:
          type: string
        numberType:
          $ref: '#/components/schemas/CM.Platform.Channels.Models.ChannelTypes.Sms.ApiNumberTypeResponse'
        subscriptionPeriodicity:
          enum:
          - MONTHLY
          - YEARLY
          - NONE
          type: string
        price:
          $ref: '#/components/schemas/CM.Platform.Channels.Models.Pricing.ApiSubscriptionPrice'
        isPending:
          type: boolean
        isActive:
          type: boolean
        cancelledOnUtc:
          format: date-time
          type: string
        fulfilledOnUtc:
          format: date-time
          type: string
        createdOnUtc:
          format: date-time
          type: string
        reasonForRejection:
          type: string
        entityStatus:
          enum:
          - ACTIVE
          - PENDING
          - ELIGIBLE
          - NOT_VALIDATED
          - CUSTOMER_ACTION_REQUIRED
          - EXPIRED
          - REJECTED
          - CANCELLED
          - DELETED
          type: string
        channelState:
          $ref: '#/components/schemas/CM.Platform.Channels.Models.Channels.ApiChannelState'
    System.Web.Http.Routing.UrlHelper:
      type: object
      properties:
        Request:
          type: object
    CM.Platform.Channels.Models.ChannelTypes.Sms.ApiNumberRequestResponseAdmin:
      required:
      - id
      - accountId
      - numberType
      - subscriptionPeriodicity
      - price
      - isPending
      - isActive
      - createdOnUtc
      type: object
      properties:
        id:
          format: uuid
          type: string
          example: 00000000-0000-0000-0000-000000000000
        channelId:
          format: uuid
          type: string
          example: 00000000-0000-0000-0000-000000000000
        accountId:
          format: uuid
          type: string
          example: 00000000-0000-0000-0000-000000000000
        phoneNumberId:
          type: string
        phoneNumber:
          type: string
        orderStatusExtended:
          $ref: '#/components/schemas/CM.Platform.Channels.Models.Orders.ApiOrderStatus'
        orderStatus:
          enum:
          - SELFSERVICE_CREATED
          - SELFSERVICE_FAILED
          - SELFSERVICE_PROVISIONED
          - SELFSERVICE_SUSPENDED
          - VALIDATE
          - RESERVE
          - PROVISION
          - CANCEL
          - FINALIZE
          - TERMINATE
          - SUBSCRIPTION_STOPPED
          type: string
        orderReservationRequestId:
          format: uuid
          type: string
          example: 00000000-0000-0000-0000-000000000000
        numberType:
          $ref: '#/components/schemas/CM.Platform.Channels.Models.ChannelTypes.Sms.ApiNumberTypeResponse'
        subscriptionPeriodicity:
          enum:
          - MONTHLY
          - YEARLY
          - NONE
          type: string
        price:
          $ref: '#/components/schemas/CM.Platform.Channels.Models.Pricing.ApiSubscriptionPrice'
        isPending:
          type: boolean
        isActive:
          type: boolean
        cancelledOnUtc:
          format: date-time
          type: string
        fulfilledOnUtc:
          format: date-time
          type: string
        createdOnUtc:
          format: date-time
          type: string
        reasonForRejection:
          type: string
        entityStatus:
          enum:
          - ACTIVE
          - PENDING
          - ELIGIBLE
          - NOT_VALIDATED
          - CUSTOMER_ACTION_REQUIRED
          - EXPIRED
          - REJECTED
          - CANCELLED
          - DELETED
          type: string
        channelState:
          $ref: '#/components/schemas/CM.Platform.Channels.Models.Channels.ApiChannelState'
    CM.Platform.Channels.Models.ChannelTypes.Sms.ApiNumberRequest:
      type: object
      properties: {}
    CM.Platform.Channels.Models.ChannelTypes.Sms.ApiPhoneNumberAdminRequest:
      required:
      - suppliers
      - number
      - isAutoAssignable
      type: object
      properties:
        suppliers:
          type: array
          items:
            $ref: '#/components/schemas/CM.Platform.Channels.Models.ChannelTypes.Sms.ApiPhoneNumberSupplierRequest'
        number:
          type: string
        description:
          type: string
        isAutoAssignable:
          type: boolean
        isShared:
          type: boolean
        taxOnGames:
          type: boolean
        taxOnGamesScenarioSettings:
          $ref: '#/components/schemas/CM.Platform.Channels.Models.Channels.ApiAdminScenarioTaxOnGamesSettings'
    CM.Platform.Channels.Models.ChannelTypes.Sms.ApiPhoneNumberAdminUpdateRequest:
      required:
      - isAutoAssignable
      type: object
      properties:
        description:
          type: string
        isAutoAssignable:
          type: boolean
        isShared:
          type: boolean
        taxOnGames:
          type: boolean
        taxOnGamesScenarioSettings:
          $ref: '#/components/schemas/CM.Platform.Channels.Models.Channels.ApiAdminScenarioTaxOnGamesSettings'
    CM.Platform.Channels.Models.ChannelTypes.Sms.ApiPhoneNumberSupplierResponse:
      required:
      - phoneNumberId
      - supplierId
      - updatedOnUtc
      - createdOnUtc
      type: object
      properties:
        phoneNumberId:
          type: string
        supplierId:
          format: uuid
          type: string
          example: 00000000-0000-0000-0000-000000000000
        restrictions:
          $ref: '#/components/schemas/CM.Platform.Channels.Models.ChannelTypes.Sms.ApiPhoneNumberSupplierRestrictions'
        cost:
          $ref: '#/components/schemas/CM.Platform.Channels.Models.ChannelTypes.Sms.ApiPhoneNumberSupplierCost'
        revenue:
          $ref: '#/components/schemas/CM.Platform.Channels.Models.ChannelTypes.Sms.ApiPhoneNumberSupplierRevenue'
        currency:
          type: string
        noticePeriodDays:
          format: int32
          type: integer
        updatedOnUtc:
          format: date-time
          type: string
        createdOnUtc:
          format: date-time
          type: string
    CM.Platform.Channels.Models.ChannelTypes.Sms.ApiPhoneNumberSupplierBase:
      type: object
      properties:
        restrictions:
          $ref: '#/components/schemas/CM.Platform.Channels.Models.ChannelTypes.Sms.ApiPhoneNumberSupplierRestrictions'
        cost:
          $ref: '#/components/schemas/CM.Platform.Channels.Models.ChannelTypes.Sms.ApiPhoneNumberSupplierCost'
        revenue:
          $ref: '#/components/schemas/CM.Platform.Channels.Models.ChannelTypes.Sms.ApiPhoneNumberSupplierRevenue'
        currency:
          type: string
        noticePeriodDays:
          format: int32
          type: integer
    CM.Platform.Channels.Models.ChannelTypes.Sms.ApiPhoneNumberRangeAdminRequest:
      required:
      - suppliers
      - numberRangeBegin
      - numberRangeEnd
      - isAutoAssignable
      type: object
      properties:
        suppliers:
          type: array
          items:
            $ref: '#/components/schemas/CM.Platform.Channels.Models.ChannelTypes.Sms.ApiPhoneNumberSupplierRequest'
        numberRangeBegin:
          type: string
        numberRangeEnd:
          type: string
        description:
          type: string
        isAutoAssignable:
          type: boolean
        isShared:
          type: boolean
        taxOnGames:
          type: boolean
        taxOnGamesScenarioSettings:
          $ref: '#/components/schemas/CM.Platform.Channels.Models.Channels.ApiAdminScenarioTaxOnGamesSettings'
    CM.Platform.Channels.Models.ChannelTypes.Sms.ApiPhoneNumberRangeAdminResponse:
      required:
      - createdOnUtc
      type: object
      properties:
        rangeBegin:
          type: string
        rangeEnd:
          type: string
        total:
          format: int32
          type: integer
        processed:
          format: int32
          type: integer
        added:
          type: array
          items:
            type: string
        failed:
          type: object
          additionalProperties:
            type: string
        finishedOnUtc:
          format: date-time
          type: string
        createdOnUtc:
          format: date-time
          type: string
    CM.Platform.Channels.Models.ChannelTypes.Sms.ApiPhoneNumberAssignabilityIssueAdmin:
      required:
      - phoneNumberId
      - exceptionMessage
      type: object
      properties:
        phoneNumberId:
          type: string
        exceptionMessage:
          type: string
    CM.Platform.Channels.Models.ChannelTypes.Sms.ApiTenDlcBrandAdmin:
      required:
      - id
      - accountId
      - channelCategoryID
      - isPending
      - isActive
      - createdOnUtc
      type: object
      properties:
        id:
          format: uuid
          type: string
          example: 00000000-0000-0000-0000-000000000000
        accountId:
          format: uuid
          type: string
          example: 00000000-0000-0000-0000-000000000000
        channelId:
          format: uuid
          type: string
          example: 00000000-0000-0000-0000-000000000000
        channelRequestId:
          format: uuid
          type: string
          example: 00000000-0000-0000-0000-000000000000
        channelCategoryID:
          format: uuid
          type: string
          example: 00000000-0000-0000-0000-000000000000
        campaignRegistryId:
          type: string
        campaignRegistryStatus:
          enum:
          - SELF_DECLARED
          - UNVERIFIED
          - VERIFIED
          - VETTED_VERIFIED
          type: string
        companyName:
          type: string
        campaignRegistryBrandRelationship:
          enum:
          - BASIC_ACCOUNT
          - SMALL_ACCOUNT
          - MEDIUM_ACCOUNT
          - LARGE_ACCOUNT
          - KEY_ACCOUNT
          type: string
        isPending:
          type: boolean
        isActive:
          type: boolean
        vettingScore:
          format: int32
          type: integer
        fulfilledOnUtc:
          format: date-time
          type: string
        deletedOnUtc:
          format: date-time
          type: string
        rejectedOnUtc:
          format: date-time
          type: string
        updatedOnUtc:
          format: date-time
          type: string
        rejectionReason:
          type: string
        cancelledOnUtc:
          format: date-time
          type: string
        availableBrandVettingCount:
          format: int32
          type: integer
        linkedOrderReservationId:
          format: uuid
          type: string
          example: 00000000-0000-0000-0000-000000000000
        linkableOrderReservationIds:
          type: array
          items:
            format: uuid
            type: string
            example: 00000000-0000-0000-0000-000000000000
        createdOnUtc:
          format: date-time
          type: string
        entityStatus:
          enum:
          - ACTIVE
          - PENDING
          - ELIGIBLE
          - NOT_VALIDATED
          - CUSTOMER_ACTION_REQUIRED
          - EXPIRED
          - REJECTED
          - CANCELLED
          - DELETED
          type: string
    CM.Platform.Channels.Models.ChannelTypes.Sms.ApiTenDlcBrandVettingStatus:
      type: object
      properties:
        vettingScore:
          format: int32
          maximum: 100
          minimum: 0
          type: integer
        vettingClass:
          type: string
        vettingStatus:
          type: string
        reasons:
          type: array
          items:
            type: string
        vettedDateUtc:
          format: date-time
          type: string
        createDateUtc:
          format: date-time
          type: string
    CM.Platform.Channels.Models.ChannelTypes.Sms.ApiTenDlcCampaignAdmin:
      required:
      - id
      - accountId
      - channelId
      - channelCategoryID
      - brandId
      - description
      - isPending
      - isActive
      - createdOnUtc
      type: object
      properties:
        id:
          format: uuid
          type: string
          example: 00000000-0000-0000-0000-000000000000
        accountId:
          format: uuid
          type: string
          example: 00000000-0000-0000-0000-000000000000
        channelId:
          format: uuid
          type: string
          example: 00000000-0000-0000-0000-000000000000
        channelRequestId:
          format: uuid
          type: string
          example: 00000000-0000-0000-0000-000000000000
        channelCategoryID:
          format: uuid
          type: string
          example: 00000000-0000-0000-0000-000000000000
        brandId:
          format: uuid
          type: string
          example: 00000000-0000-0000-0000-000000000000
        campaignRegistryId:
          type: string
        campaignRegistryStatus:
          enum:
          - APPROVED
          - REJECTED
          - EXPIRED
          type: string
        name:
          type: string
        description:
          type: string
        linkedOrderReservationId:
          format: uuid
          type: string
          example: 00000000-0000-0000-0000-000000000000
        linkableOrderReservationIds:
          type: array
          items:
            format: uuid
            type: string
            example: 00000000-0000-0000-0000-000000000000
        phoneNumberRequestId:
          format: uuid
          type: string
          example: 00000000-0000-0000-0000-000000000000
        rejectionReason:
          type: string
        isPending:
          type: boolean
        isActive:
          type: boolean
        fulfilledOnUtc:
          format: date-time
          type: string
        rejectedOnUtc:
          format: date-time
          type: string
        expiredOnUtc:
          format: date-time
          type: string
        updatedOnUtc:
          format: date-time
          type: string
        deletedOnUtc:
          format: date-time
          type: string
        approvedOnUtc:
          format: date-time
          type: string
        cancelledOnUtc:
          format: date-time
          type: string
        createdOnUtc:
          format: date-time
          type: string
        entityStatus:
          enum:
          - ACTIVE
          - PENDING
          - ELIGIBLE
          - NOT_VALIDATED
          - CUSTOMER_ACTION_REQUIRED
          - EXPIRED
          - REJECTED
          - CANCELLED
          - DELETED
          type: string
    CM.Platform.Channels.Models.ChannelTypes.Sms.ApiNumberRequestBase:
      required:
      - id
      - accountId
      - numberType
      - subscriptionPeriodicity
      - isPending
      - isActive
      - createdOnUtc
      type: object
      properties:
        id:
          format: uuid
          type: string
          example: 00000000-0000-0000-0000-000000000000
        channelId:
          format: uuid
          type: string
          example: 00000000-0000-0000-0000-000000000000
        accountId:
          format: uuid
          type: string
          example: 00000000-0000-0000-0000-000000000000
        phoneNumberId:
          type: string
        phoneNumber:
          type: string
        numberType:
          $ref: '#/components/schemas/CM.Platform.Channels.Models.ChannelTypes.Sms.ApiNumberTypeResponse'
        subscriptionPeriodicity:
          enum:
          - MONTHLY
          - YEARLY
          - NONE
          type: string
        isPending:
          type: boolean
        isActive:
          type: boolean
        cancelledOnUtc:
          format: date-time
          type: string
        fulfilledOnUtc:
          format: date-time
          type: string
        createdOnUtc:
          format: date-time
          type: string
        entityStatus:
          enum:
          - ACTIVE
          - PENDING
          - ELIGIBLE
          - NOT_VALIDATED
          - CUSTOMER_ACTION_REQUIRED
          - EXPIRED
          - REJECTED
          - CANCELLED
          - DELETED
          type: string
        channelState:
          $ref: '#/components/schemas/CM.Platform.Channels.Models.Channels.ApiChannelState'
    CM.Platform.Channels.Models.ChannelTypes.Sms.ApiTenDlcCampaignSharingSettings:
      type: object
      properties:
        sharedByMe:
          $ref: '#/components/schemas/CM.Platform.Channels.Models.ChannelTypes.Sms.ApiTenDlcCampaignSharing'
        sharedWithMe:
          $ref: '#/components/schemas/CM.Platform.Channels.Models.ChannelTypes.Sms.ApiTenDlcCampaignSharing'
    CM.Platform.Channels.Models.ChannelTypes.Sms.ApiTenDlcCampaignSharing:
      type: object
      properties:
        downstreamCnpId:
          type: string
        upstreamCnpId:
          type: string
        sharingStatus:
          type: string
        explanation:
          type: string
        sharedDate:
          format: date-time
          type: string
        statusDate:
          format: date-time
          type: string
    CM.Platform.Channels.Models.ChannelTypes.Sms.ApiSupplierResponse:
      required:
      - id
      - country
      - name
      - createdOnUtc
      type: object
      properties:
        id:
          format: uuid
          type: string
          example: 00000000-0000-0000-0000-000000000000
        textCoreSupplierId:
          format: int32
          type: integer
        country:
          type: string
        description:
          type: string
        name:
          type: string
        organizationId:
          type: string
        restrictions:
          type: array
          items:
            type: string
        type:
          type: string
        numbers:
          type: array
          items:
            $ref: '#/components/schemas/CM.Platform.Channels.Models.ChannelTypes.Sms.ApiPhoneNumberSupplierBaseNumberResponse'
        createdOnUtc:
          format: date-time
          type: string
    CM.Platform.Channels.Models.ChannelTypes.Sms.ApiPhoneNumberSupplierBaseNumberResponse:
      required:
      - phoneNumberId
      type: object
      properties:
        phoneNumberId:
          type: string
        restrictions:
          $ref: '#/components/schemas/CM.Platform.Channels.Models.ChannelTypes.Sms.ApiPhoneNumberSupplierRestrictions'
        cost:
          $ref: '#/components/schemas/CM.Platform.Channels.Models.ChannelTypes.Sms.ApiPhoneNumberSupplierCost'
        revenue:
          $ref: '#/components/schemas/CM.Platform.Channels.Models.ChannelTypes.Sms.ApiPhoneNumberSupplierRevenue'
        currency:
          type: string
        noticePeriodDays:
          format: int32
          type: integer
    CM.Platform.Channels.Models.ChannelTypes.Sms.ApiSupplierRequest:
      required:
      - country
      - name
      type: object
      properties:
        textCoreSupplierId:
          format: int32
          type: integer
        country:
          type: string
        description:
          type: string
        name:
          type: string
        organizationId:
          type: string
        restrictions:
          type: array
          items:
            type: string
        type:
          type: string
    CM.Platform.Channels.ExternalModels.ApiClients.TextCore.SmsPrices.ApiSmsPricesSupplierProductsResponse:
      type: object
      properties:
        data:
          type: array
          items:
            $ref: '#/components/schemas/CM.Platform.Channels.ExternalModels.ApiClients.TextCore.SmsPrices.ApiSupplierProduct'
        responseId:
          type: string
        errors:
          type: array
          items:
            type: string
    CM.Platform.Channels.ExternalModels.ApiClients.TextCore.SmsPrices.ApiSupplierProduct:
      type: object
      properties:
        id:
          format: int32
          type: integer
        name:
          type: string
        description:
          type: string
        cmCompany:
          format: int32
          type: integer
        relation:
          format: int32
          type: integer
        classification:
          format: int32
          type: integer
        setCostTo0IfFailed:
          type: boolean
        organizationID:
          format: int32
          type: integer
        hops:
          format: int32
          type: integer
        reputation:
          format: int32
          type: integer
        comments:
          type: string
    CM.Platform.Channels.Models.ChannelTypes.Twitter.ApiTwitterAccountAdminBase:
      required:
      - id
      - accountId
      - userId
      - screenName
      - isActive
      - isPending
      - isApproved
      - createdOnUtc
      type: object
      properties:
        id:
          format: uuid
          type: string
          example: 00000000-0000-0000-0000-000000000000
        channelId:
          format: uuid
          type: string
          example: 00000000-0000-0000-0000-000000000000
        accountId:
          format: uuid
          type: string
          example: 00000000-0000-0000-0000-000000000000
        channelRequestId:
          format: uuid
          type: string
          example: 00000000-0000-0000-0000-000000000000
        userId:
          type: string
        screenName:
          type: string
        isActive:
          type: boolean
        isPending:
          type: boolean
        isApproved:
          type: boolean
        orderStatus:
          enum:
          - SELFSERVICE_CREATED
          - SELFSERVICE_FAILED
          - SELFSERVICE_PROVISIONED
          - SELFSERVICE_SUSPENDED
          - VALIDATE
          - RESERVE
          - PROVISION
          - CANCEL
          - FINALIZE
          - TERMINATE
          - SUBSCRIPTION_STOPPED
          type: string
        fulfilledOnUtc:
          format: date-time
          type: string
        createdOnUtc:
          format: date-time
          type: string
        rejectionReason:
          type: string
        rejectedOnUtc:
          format: date-time
          type: string
        cancelledOnUtc:
          format: date-time
          type: string
        accountBanner:
          type: string
        deletedOnUtc:
          format: date-time
          type: string
        entityStatus:
          enum:
          - ACTIVE
          - PENDING
          - ELIGIBLE
          - NOT_VALIDATED
          - CUSTOMER_ACTION_REQUIRED
          - EXPIRED
          - REJECTED
          - CANCELLED
          - DELETED
          type: string
        accountImage:
          type: string
        location:
          type: string
        description:
          type: string
        name:
          type: string
    CM.Platform.Channels.Models.ApiSettings.ApiSmssAccountHttp:
      required:
      - isActive
      - smssAccount
      - configChanged
      - id
      - serviceId
      - name
      - connectionClassification
      - service
      - priority
      type: object
      properties:
        isActive:
          type: boolean
        smssAccount:
          format: int32
          type: integer
        configChanged:
          type: string
        smssAccountName:
          type: string
        id:
          format: int32
          type: integer
        serviceId:
          format: int32
          type: integer
        name:
          type: string
        mainServiceUrl:
          type: string
        connectionClassification:
          format: int32
          type: integer
        service:
          format: int32
          type: integer
        priority:
          format: int32
          type: integer
    CM.Platform.Channels.Models.ApiSettings.ApiKey:
      required:
      - apiKey
      - createdOn
      - isActive
      type: object
      properties:
        apiKey:
          type: string
        createdOn:
          format: date-time
          type: string
        isActive:
          type: boolean
    System.Void:
      type: object
      properties: {}
    CM.Platform.Channels.Models.EventLogging.ApiBusinessMessagingEntityEvent:
      required:
      - id
      - eventType
      - createdOnUtc
      type: object
      properties:
        id:
          format: uuid
          type: string
          example: 00000000-0000-0000-0000-000000000000
        entityId:
          type: string
        entityType:
          enum:
          - MT_RECIPIENT_COUNTRY_FILTER
          - SR_CONFIGURATION
          - IP_RESTRICTION_CONFIGURATION
          - RATE_LIMITING_CONFIGURATION
          type: string
        ssoAccountId:
          format: uuid
          type: string
          example: 00000000-0000-0000-0000-000000000000
        eventType:
          type: string
        eventSubType:
          type: string
        eventMetaData:
          $ref: '#/components/schemas/CM.Platform.Channels.Models.EventLogging.ApiChannelsEventMetaData'
        createdOnUtc:
          format: date-time
          type: string
    CM.Platform.Channels.Models.ApiSettings.ApiIPRestrictionConfigurationResponse:
      type: object
      properties:
        ipv4Addresses:
          type: array
          items:
            type: string
    CM.Platform.Channels.Models.ApiSettings.ApiIPRestrictionConfigurationRequest:
      type: object
      properties:
        ipv4Addresses:
          type: array
          items:
            type: string
    CM.Platform.Channels.Models.ApiSettings.ApiIPRestrictionSuggestionsResponse:
      type: object
      properties:
        ipv4Addresses:
          type: array
          items:
            type: string
    CM.Platform.Channels.Models.ApiSettings.ApiMTRecipientCountry:
      required:
      - iso3166
      - name
      type: object
      properties:
        iso3166:
          type: string
        name:
          type: string
    CM.Platform.Channels.Models.ApiSettings.ApiMTRecipientCountryFilterConfigurationResponse:
      required:
      - id
      - countries
      - type
      type: object
      properties:
        id:
          type: string
        countries:
          type: array
          items:
            $ref: '#/components/schemas/CM.Platform.Channels.Models.ApiSettings.ApiMTRecipientCountry'
        type:
          enum:
          - None
          - Allow
          - Deny
          type: string
    CM.Platform.Channels.Models.ApiSettings.ApiMTRecipientCountryFilterConfigurationRequest:
      required:
      - countries
      - type
      type: object
      properties:
        countries:
          type: array
          items:
            $ref: '#/components/schemas/CM.Platform.Channels.Models.ApiSettings.ApiMTRecipientCountry'
        type:
          enum:
          - None
          - Allow
          - Deny
          type: string
    CM.Platform.Channels.Library.Core.ApiClients.TextCore.MessagingConfiguration.ApiMTRecipientCountryFilterResponse:
      type: object
      properties:
        id:
          type: string
        errors:
          type: array
          items:
            type: string
        data:
          $ref: '#/components/schemas/CM.Platform.Channels.Library.Core.ApiClients.TextCore.MessagingConfiguration.ApiMTRecipientCountryFilter'
    CM.Platform.Channels.Library.Core.ApiClients.TextCore.MessagingConfiguration.ApiMTRecipientCountryFilter:
      type: object
      properties:
        type:
          type: string
        countries:
          type: array
          items:
            type: string
    CM.Platform.Channels.Models.ApiSettings.ApiRateLimitingConfigurationResponse:
      type: object
      properties:
        accountLimit:
          $ref: '#/components/schemas/CM.Platform.Channels.Models.ApiSettings.ApiRateLimitingMTSendingLimitResponse'
        recipientLimit:
          $ref: '#/components/schemas/CM.Platform.Channels.Models.ApiSettings.ApiRateLimitingMTSendingLimitResponse'
    CM.Platform.Channels.Models.ApiSettings.ApiRateLimitingMTSendingLimitResponse:
      type: object
      properties:
        limit:
          format: int32
          type: integer
        timeUnit:
          enum:
          - MINUTE
          - HOUR
          - DAY
          - WEEK
          - MONTH
          type: string
    CM.Platform.Channels.Models.ApiSettings.ApiRateLimitingConfigurationRequest:
      type: object
      properties:
        accountLimit:
          $ref: '#/components/schemas/CM.Platform.Channels.Models.ApiSettings.ApiRateLimitingMTSendingLimitRequest'
        recipientLimit:
          $ref: '#/components/schemas/CM.Platform.Channels.Models.ApiSettings.ApiRateLimitingMTSendingLimitRequest'
    CM.Platform.Channels.Models.ApiSettings.ApiRateLimitingMTSendingLimitRequest:
      type: object
      properties:
        limit:
          format: int32
          type: integer
        timeUnit:
          enum:
          - MINUTE
          - HOUR
          - DAY
          - WEEK
          - MONTH
          type: string
    CM.Platform.Channels.Models.ApiSettings.ApiRateLimitAcceptedTimeUnits:
      type: object
      properties:
        type:
          enum:
          - MESSAGING_ACCOUNT
          - RECIPIENT
          type: string
        options:
          type: array
          items:
            $ref: '#/components/schemas/CM.Platform.Channels.Models.ApiSettings.ApiRateLimitValidTimeUnitOption'
    CM.Platform.Channels.Models.ApiSettings.ApiRateLimitValidTimeUnitOption:
      type: object
      properties:
        timeUnit:
          enum:
          - MINUTE
          - HOUR
          - DAY
          - WEEK
          - MONTH
          type: string
        minimumLimit:
          format: int32
          type: integer
    CM.Platform.Channels.Models.ApiSettings.ApiSmssAccountSmpp:
      required:
      - systemId
      - password
      - isActive
      - windowSize
      - configChanged
      - mtWindowSize
      - id
      - moSrWindowSize
      - name
      - maximumThroughputPerSecond
      - connectionClassification
      - encoding
      - service
      - proprietaryExtensionSet
      - priority
      - maxBinds
      - deliveryReceiptFormat
      - addSubAndDlvrdToDeliveryReport
      - moMapping
      - serviceConfig
      type: object
      properties:
        systemId:
          type: string
        password:
          type: string
        isActive:
          type: boolean
        windowSize:
          format: int32
          type: integer
        configChanged:
          type: string
        mtWindowSize:
          format: int32
          type: integer
        id:
          format: int32
          type: integer
        moSrWindowSize:
          format: int32
          type: integer
        name:
          type: string
        maximumThroughputPerSecond:
          format: int32
          type: integer
        connectionClassification:
          format: int32
          type: integer
        encoding:
          type: string
        service:
          format: int32
          type: integer
        proprietaryExtensionSet:
          format: int32
          type: integer
        priority:
          format: int32
          type: integer
        maxBinds:
          format: int32
          type: integer
        deliveryReceiptFormat:
          format: int32
          type: integer
        addSubAndDlvrdToDeliveryReport:
          format: int32
          type: integer
        moMapping:
          format: int32
          type: integer
        serviceConfig:
          $ref: '#/components/schemas/CM.Platform.Channels.Models.ApiSettings.ApiSmssAccountSmppService'
    CM.Platform.Channels.Models.ApiSettings.ApiSmssAccountSmppService:
      required:
      - id
      - platformLocation
      - platformName
      - serviceName
      - endpointUrl
      type: object
      properties:
        id:
          format: int32
          type: integer
        platformLocation:
          format: int32
          type: integer
        platformName:
          type: string
        serviceName:
          type: string
        endpointUrl:
          type: string
    CM.Platform.Channels.Models.ApiSettings.ApiStatusReportsConfigurationResponse:
      required:
      - method
      - encodingReplaceValue
      - url
      - data
      type: object
      properties:
        method:
          type: string
        encodingReplaceValue:
          type: string
        url:
          type: string
        data:
          type: string
        httpHeaders:
          type: object
          additionalProperties:
            type: string
        amountOfRetries:
          format: int32
          type: integer
        retryIntervalInSeconds:
          format: int32
          type: integer
        outOfRetriesProcedure:
          type: string
        oauthSettingId:
          format: int32
          type: integer
    CM.Platform.Channels.Models.ApiSettings.ApiStatusReportsConfigurationRequest:
      required:
      - method
      - encodingReplaceValue
      - url
      - data
      type: object
      properties:
        method:
          type: string
        encodingReplaceValue:
          type: string
        url:
          type: string
        data:
          type: string
        httpHeaders:
          type: object
          additionalProperties:
            type: string
        amountOfRetries:
          format: int32
          type: integer
        retryIntervalInSeconds:
          format: int32
          type: integer
        outOfRetriesProcedure:
          type: string
        oauthSettingId:
          format: int32
          type: integer
    CM.Platform.Channels.Models.ChannelTypes.Abc.ApiAbcAccount:
      required:
      - id
      - channelRequestId
      - accountId
      - isPending
      - createdOnUtc
      type: object
      properties:
        id:
          format: uuid
          type: string
          example: 00000000-0000-0000-0000-000000000000
        channelRequestId:
          format: uuid
          type: string
          example: 00000000-0000-0000-0000-000000000000
        channelId:
          format: uuid
          type: string
          example: 00000000-0000-0000-0000-000000000000
        accountId:
          format: uuid
          type: string
          example: 00000000-0000-0000-0000-000000000000
        isPending:
          type: boolean
        fulfilledOnUtc:
          format: date-time
          type: string
        cancelledOnUtc:
          format: date-time
          type: string
        createdOnUtc:
          format: date-time
          type: string
        entityStatus:
          enum:
          - ACTIVE
          - PENDING
          - ELIGIBLE
          - NOT_VALIDATED
          - CUSTOMER_ACTION_REQUIRED
          - EXPIRED
          - REJECTED
          - CANCELLED
          - DELETED
          type: string
    CM.Platform.Channels.Models.Channels.ChannelConfiguration.ApiChannelConfigurations:
      type: object
      properties:
        channelGroup:
          $ref: '#/components/schemas/CM.Platform.Channels.Models.Channels.ApiChannelGroupBase'
        inbound:
          $ref: '#/components/schemas/CM.Platform.Channels.Models.Channels.ChannelConfiguration.ApiChannelConfigurationsInbound'
    CM.Platform.Channels.Models.Channels.ApiChannelGroupBase:
      required:
      - id
      - channels
      type: object
      properties:
        id:
          format: uuid
          type: string
          example: 00000000-0000-0000-0000-000000000000
        channels:
          type: array
          items:
            $ref: '#/components/schemas/CM.Platform.Channels.Models.Channels.ApiChannelBase'
    CM.Platform.Channels.Models.Channels.ChannelConfiguration.ApiChannelConfigurationsInbound:
      type: object
      properties:
        messagingLog:
          $ref: '#/components/schemas/CM.Platform.Channels.Models.Channels.ChannelConfiguration.ApiChannelMessagingLogConfigurationResponse'
        email:
          $ref: '#/components/schemas/CM.Platform.Channels.Models.Channels.ChannelConfiguration.ApiChannelEmailConfigurationResponse'
        webhook:
          $ref: '#/components/schemas/CM.Platform.Channels.Models.Channels.ChannelConfiguration.ApiChannelWebHookConfigurationResponse'
        eventWebhook:
          $ref: '#/components/schemas/CM.Platform.Channels.Models.Channels.ChannelConfiguration.ApiChannelEventWebHookConfigurationResponse'
        conversationalRouter:
          $ref: '#/components/schemas/CM.Platform.Channels.Models.Channels.ChannelConfiguration.ApiChannelConversationalRouterConfigurationResponse'
    CM.Platform.Channels.Models.Channels.ChannelConfiguration.ApiChannelMessagingLogConfigurationResponse:
      required:
      - id
      - enabled
      - updatedOnUtc
      - createdOnUtc
      type: object
      properties:
        id:
          format: uuid
          type: string
          example: 00000000-0000-0000-0000-000000000000
        enabled:
          type: boolean
        updatedOnUtc:
          format: date-time
          type: string
        createdOnUtc:
          format: date-time
          type: string
    CM.Platform.Channels.Models.Channels.ChannelConfiguration.ApiChannelEmailConfigurationResponse:
      required:
      - id
      - enabled
      - addresses
      - updatedOnUtc
      - createdOnUtc
      type: object
      properties:
        id:
          format: uuid
          type: string
          example: 00000000-0000-0000-0000-000000000000
        enabled:
          type: boolean
        addresses:
          type: array
          items:
            $ref: '#/components/schemas/CM.Platform.Channels.Models.Channels.ChannelConfiguration.ApiChannelEmailAddressResponse'
        updatedOnUtc:
          format: date-time
          type: string
        createdOnUtc:
          format: date-time
          type: string
    CM.Platform.Channels.Models.Channels.ChannelConfiguration.ApiChannelWebHookConfigurationResponse:
      required:
      - id
      - enabled
      - endpoints
      - updatedOnUtc
      - createdOnUtc
      type: object
      properties:
        id:
          format: uuid
          type: string
          example: 00000000-0000-0000-0000-000000000000
        enabled:
          type: boolean
        endpoints:
          type: array
          items:
            $ref: '#/components/schemas/CM.Platform.Channels.Models.Channels.ChannelConfiguration.ApiChannelWebHookEndpointResponse'
        updatedOnUtc:
          format: date-time
          type: string
        createdOnUtc:
          format: date-time
          type: string
    CM.Platform.Channels.Models.Channels.ChannelConfiguration.ApiChannelEventWebHookConfigurationResponse:
      required:
      - id
      - enabled
      - updatedOnUtc
      - createdOnUtc
      type: object
      properties:
        id:
          format: uuid
          type: string
          example: 00000000-0000-0000-0000-000000000000
        enabled:
          type: boolean
        endpoint:
          $ref: '#/components/schemas/CM.Platform.Channels.Models.Channels.ChannelConfiguration.ApiChannelEventWebHookEndpointResponse'
        updatedOnUtc:
          format: date-time
          type: string
        createdOnUtc:
          format: date-time
          type: string
    CM.Platform.Channels.Models.Channels.ChannelConfiguration.ApiChannelConversationalRouterConfigurationResponse:
      required:
      - id
      - enabled
      - endpoint
      - updatedOnUtc
      - createdOnUtc
      type: object
      properties:
        id:
          format: uuid
          type: string
          example: 00000000-0000-0000-0000-000000000000
        enabled:
          type: boolean
        endpoint:
          type: string
        updatedOnUtc:
          format: date-time
          type: string
        createdOnUtc:
          format: date-time
          type: string
    CM.Platform.Channels.Models.Channels.ChannelConfiguration.ApiChannelEmailAddressResponse:
      required:
      - id
      - address
      - updatedOnUtc
      - createdOnUtc
      type: object
      properties:
        id:
          format: uuid
          type: string
          example: 00000000-0000-0000-0000-000000000000
        address:
          type: string
        updatedOnUtc:
          format: date-time
          type: string
        createdOnUtc:
          format: date-time
          type: string
    CM.Platform.Channels.Models.Channels.ChannelConfiguration.ApiChannelWebHookEndpointResponse:
      required:
      - id
      - method
      - url
      - type
      - updatedOnUtc
      - createdOnUtc
      type: object
      properties:
        id:
          format: uuid
          type: string
          example: 00000000-0000-0000-0000-000000000000
        method:
          enum:
          - POST
          - GET
          - PUT
          - UNKNOWN
          type: string
        url:
          type: string
        type:
          enum:
          - Json
          - Xml
          - Custom
          type: string
        updatedOnUtc:
          format: date-time
          type: string
        createdOnUtc:
          format: date-time
          type: string
    CM.Platform.Channels.Models.Channels.ChannelConfiguration.ApiChannelEventWebHookEndpointResponse:
      required:
      - id
      - method
      - url
      - type
      - updatedOnUtc
      - createdOnUtc
      type: object
      properties:
        id:
          format: uuid
          type: string
          example: 00000000-0000-0000-0000-000000000000
        channelsOneId:
          format: uuid
          type: string
          example: 00000000-0000-0000-0000-000000000000
        method:
          enum:
          - POST
          type: string
        url:
          type: string
        type:
          enum:
          - Json
          type: string
        updatedOnUtc:
          format: date-time
          type: string
        createdOnUtc:
          format: date-time
          type: string
    CM.Platform.Channels.Models.Channels.ChannelConfiguration.ApiChannelConfigurationResponse:
      required:
      - id
      - enabled
      - updatedOnUtc
      - createdOnUtc
      type: object
      properties:
        id:
          format: uuid
          type: string
          example: 00000000-0000-0000-0000-000000000000
        enabled:
          type: boolean
        updatedOnUtc:
          format: date-time
          type: string
        createdOnUtc:
          format: date-time
          type: string
    CM.Platform.Channels.Models.Channels.ChannelConfiguration.ApiChannelEmailConfigurationRequest:
      required:
      - email
      type: object
      properties:
        email:
          $ref: '#/components/schemas/CM.Platform.Channels.Models.Channels.ChannelConfiguration.ApiChannelEmailAddressRequest'
    CM.Platform.Channels.Models.Channels.ChannelConfiguration.ApiChannelEmailAddressRequest:
      required:
      - address
      type: object
      properties:
        address:
          type: string
    CM.Platform.Channels.Models.Channels.ChannelConfiguration.ApiChannelWebHookConfigurationRequest:
      required:
      - endpoint
      type: object
      properties:
        endpoint:
          $ref: '#/components/schemas/CM.Platform.Channels.Models.Channels.ChannelConfiguration.ApiChannelWebHookEndpointRequest'
    CM.Platform.Channels.Models.Channels.ChannelConfiguration.ApiChannelWebHookEndpointRequest:
      required:
      - method
      - url
      - type
      type: object
      properties:
        method:
          enum:
          - POST
          - GET
          - PUT
          - UNKNOWN
          type: string
        url:
          type: string
        type:
          enum:
          - Json
          - Xml
          - Custom
          type: string
    CM.Platform.Channels.Models.Channels.ChannelConfiguration.ApiChannelEventWebHookConfigurationRequest:
      required:
      - endpoint
      type: object
      properties:
        endpoint:
          $ref: '#/components/schemas/CM.Platform.Channels.Models.Channels.ChannelConfiguration.ApiChannelEventWebHookEndpointRequest'
    CM.Platform.Channels.Models.Channels.ChannelConfiguration.ApiChannelEventWebHookEndpointRequest:
      required:
      - method
      - url
      - type
      type: object
      properties:
        method:
          enum:
          - POST
          type: string
        url:
          type: string
        type:
          enum:
          - Json
          type: string
    CM.Platform.Channels.Models.Channels.ChannelConfiguration.ApiChannelMessagingLogConfigurationRequest:
      type: object
      properties: {}
    CM.Platform.Channels.Models.Channels.ApiChannelAnalyticsBaseResponse:
      type: object
      properties:
        activeBundle:
          $ref: '#/components/schemas/CM.Platform.Channels.Models.Channels.ApiAnalyticsOttMessagesBundle'
        ottMetrics:
          type: array
          items:
            $ref: '#/components/schemas/CM.Platform.Channels.Models.Channels.ApiOttMetrics'
        ottMetricsRetrievalException:
          enum:
          - API_UNAVAILABLE
          - API_NO_RESULTS
          type: string
    CM.Platform.Channels.Models.Channels.ApiAnalyticsOttMessagesBundle:
      required:
      - bundleType
      - bundleSpecifics
      - effectiveOnUtc
      type: object
      properties:
        bundleType:
          enum:
          - MAU
          - CONVERSATIONS
          - MESSAGES
          type: string
        bundleSpecifics:
          $ref: '#/components/schemas/CM.Platform.Channels.Models.Internal.Analytics.ApiInternalAnalyticsOttMessagesBundleSpecifics'
        effectiveOnUtc:
          format: date-time
          type: string
    CM.Platform.Channels.Models.Channels.ApiOttMetrics:
      required:
      - type
      - typeName
      - typePrettyName
      - typeIconClass
      type: object
      properties:
        type:
          format: uuid
          type: string
          example: 00000000-0000-0000-0000-000000000000
        typeName:
          type: string
        typePrettyName:
          type: string
        typeIconClass:
          type: string
        requestId:
          format: uuid
          type: string
          example: 00000000-0000-0000-0000-000000000000
        amount:
          format: int32
          type: integer
    CM.Platform.Channels.Models.Internal.Analytics.ApiInternalAnalyticsOttMessagesBundleSpecifics:
      type: object
      properties:
        dimension:
          enum:
          - PAYASYOUGO
          - BUNDLE
          type: string
        dimensionValue:
          type: string
    CM.Platform.Channels.Models.Channels.ApiChannelOverview:
      required:
      - active
      - pending
      - unused
      type: object
      properties:
        active:
          type: array
          items:
            $ref: '#/components/schemas/CM.Platform.Channels.Models.Channels.ApiChannelOverviewType'
        pending:
          type: array
          items:
            $ref: '#/components/schemas/CM.Platform.Channels.Models.Channels.ApiChannelOverviewType'
        unused:
          type: array
          items:
            $ref: '#/components/schemas/CM.Platform.Channels.Models.Channels.ApiChannelOverviewType'
        isDemoAccount:
          type: boolean
        isOnTrial:
          type: boolean
    CM.Platform.Channels.Models.Channels.ApiChannelOverviewType:
      required:
      - type
      - typeName
      - typePrettyName
      - typeIconClass
      - sandboxIsAvailable
      type: object
      properties:
        type:
          format: uuid
          type: string
          example: 00000000-0000-0000-0000-000000000000
        typeName:
          type: string
        typePrettyName:
          type: string
        typeIconClass:
          type: string
        requestId:
          format: uuid
          type: string
          example: 00000000-0000-0000-0000-000000000000
        requestState:
          $ref: '#/components/schemas/CM.Platform.Channels.Models.Channels.ApiRequestState'
        sandboxIsAvailable:
          type: boolean
        categoryRequests:
          type: array
          items:
            $ref: '#/components/schemas/CM.Platform.Channels.Models.Channels.ApiChannelOverviewTypeRequestCategoryRequest'
    CM.Platform.Channels.Models.Channels.ApiChannelOverviewTypeRequestCategoryRequest:
      required:
      - categoryName
      - isPending
      - isSandbox
      type: object
      properties:
        categoryId:
          format: uuid
          type: string
          example: 00000000-0000-0000-0000-000000000000
        categoryName:
          type: string
        categoryIconClass:
          type: string
        isPending:
          type: boolean
        isSandbox:
          type: boolean
        requestState:
          $ref: '#/components/schemas/CM.Platform.Channels.Models.Channels.ApiRequestState'
    CM.Platform.Channels.Models.Channels.ApiConversationalProfile:
      type: object
      properties:
        channelTypePrettyName:
          type: string
        channelCategoryName:
          type: string
        channelTypeRequestId:
          format: uuid
          type: string
          example: 00000000-0000-0000-0000-000000000000
        channelCategoryRequestId:
          format: uuid
          type: string
          example: 00000000-0000-0000-0000-000000000000
        id:
          type: string
        senderIdConfig:
          $ref: '#/components/schemas/CM.Platform.Channels.Models.Channels.ApiConversationalProfileSenderIdConfig'
        name:
          type: string
        imageResourceUrl:
          type: string
        createdOnUtc:
          format: date-time
          type: string
    CM.Platform.Channels.Models.Channels.ApiConversationalProfileSenderIdConfig:
      type: object
      properties:
        senderId:
          type: string
        medium:
          type: string
        capabilities:
          type: array
          items:
            type: string
    CM.Platform.Channels.Models.Channels.ApiChannels:
      required:
      - available
      - sandbox
      - comingSoon
      - sandboxAvailable
      type: object
      properties:
        available:
          $ref: '#/components/schemas/CM.Platform.Channels.Models.Channels.ApiChannelsAvailable'
        sandbox:
          $ref: '#/components/schemas/CM.Platform.Channels.Models.Channels.ApiChannelsAvailable'
        comingSoon:
          type: array
          items:
            type: string
        sandboxAvailable:
          type: array
          items:
            type: string
        isDemoAccount:
          type: boolean
    CM.Platform.Channels.Models.Channels.ApiChannelsAvailable:
      type: object
      properties:
        sms:
          type: object
          additionalProperties:
            type: array
            items:
              $ref: '#/components/schemas/CM.Platform.Channels.Models.Channels.ApiChannelBase'
        whatsApp:
          type: object
          additionalProperties:
            type: array
            items:
              $ref: '#/components/schemas/CM.Platform.Channels.Models.Channels.ApiChannelBase'
        rcs:
          type: object
          additionalProperties:
            type: array
            items:
              $ref: '#/components/schemas/CM.Platform.Channels.Models.Channels.ApiChannelBase'
        abc:
          type: object
          additionalProperties:
            type: array
            items:
              $ref: '#/components/schemas/CM.Platform.Channels.Models.Channels.ApiChannelBase'
        voice:
          type: object
          additionalProperties:
            type: array
            items:
              $ref: '#/components/schemas/CM.Platform.Channels.Models.Channels.ApiChannelBase'
        vSms:
          type: object
          additionalProperties:
            type: array
            items:
              $ref: '#/components/schemas/CM.Platform.Channels.Models.Channels.ApiChannelBase'
        payments:
          type: object
          additionalProperties:
            type: array
            items:
              $ref: '#/components/schemas/CM.Platform.Channels.Models.Channels.ApiChannelBase'
        twitter:
          type: object
          additionalProperties:
            type: array
            items:
              $ref: '#/components/schemas/CM.Platform.Channels.Models.Channels.ApiChannelBase'
        viber:
          type: object
          additionalProperties:
            type: array
            items:
              $ref: '#/components/schemas/CM.Platform.Channels.Models.Channels.ApiChannelBase'
        facebook:
          type: object
          additionalProperties:
            type: array
            items:
              $ref: '#/components/schemas/CM.Platform.Channels.Models.Channels.ApiChannelBase'
        instagram:
          type: object
          additionalProperties:
            type: array
            items:
              $ref: '#/components/schemas/CM.Platform.Channels.Models.Channels.ApiChannelBase'
        mobilePush:
          type: object
          additionalProperties:
            type: array
            items:
              $ref: '#/components/schemas/CM.Platform.Channels.Models.Channels.ApiChannelBase'
        line:
          type: object
          additionalProperties:
            type: array
            items:
              $ref: '#/components/schemas/CM.Platform.Channels.Models.Channels.ApiChannelBase'
        googlesBusinessMessages:
          type: object
          additionalProperties:
            type: array
            items:
              $ref: '#/components/schemas/CM.Platform.Channels.Models.Channels.ApiChannelBase'
        whatsAppPartnerSolution:
          type: object
          additionalProperties:
            type: array
            items:
              $ref: '#/components/schemas/CM.Platform.Channels.Models.Channels.ApiChannelBase'
    CM.Platform.Channels.Models.Channels.ApiChannelTypeRequestBase:
      required:
      - id
      - channelTypeId
      - isPending
      - isActive
      - createdOnUtc
      - requestState
      type: object
      properties:
        id:
          format: uuid
          type: string
          example: 00000000-0000-0000-0000-000000000000
        channelTypeId:
          format: uuid
          type: string
          example: 00000000-0000-0000-0000-000000000000
        isPending:
          type: boolean
        isActive:
          type: boolean
        createdOnUtc:
          format: date-time
          type: string
        requestState:
          $ref: '#/components/schemas/CM.Platform.Channels.Models.Channels.ApiRequestState'
    CM.Platform.Channels.Models.Channels.ApiChannelTypeRequest:
      required:
      - id
      - channelTypeId
      - isPending
      - isActive
      - isGenerated
      - createdOnUtc
      - requestState
      type: object
      properties:
        id:
          format: uuid
          type: string
          example: 00000000-0000-0000-0000-000000000000
        channelTypeId:
          format: uuid
          type: string
          example: 00000000-0000-0000-0000-000000000000
        isPending:
          type: boolean
        isActive:
          type: boolean
        isGenerated:
          type: boolean
        fulfilledOnUtc:
          format: date-time
          type: string
        cancelledOnUtc:
          format: date-time
          type: string
        createdOnUtc:
          format: date-time
          type: string
        requestState:
          $ref: '#/components/schemas/CM.Platform.Channels.Models.Channels.ApiRequestState'
    CM.Platform.Channels.Models.Channels.ApiChannelTypeBaseResponse:
      required:
      - id
      - currency
      - startupCost
      - monthlyCost
      - channelRequestProcessingDays
      type: object
      properties:
        id:
          format: uuid
          type: string
          example: 00000000-0000-0000-0000-000000000000
        currency:
          type: string
        description:
          type: string
        prettyName:
          type: string
        iconClass:
          type: string
        startupCost:
          format: double
          type: number
        monthlyCost:
          format: double
          type: number
        channelRequestProcessingDays:
          format: int32
          type: integer
    CM.Platform.Channels.Models.Channels.ApiChannelTypeResponse:
      required:
      - id
      - currency
      - startupCost
      - monthlyCost
      - noticePeriodDays
      - channelRequestProcessingDays
      - categories
      type: object
      properties:
        id:
          format: uuid
          type: string
          example: 00000000-0000-0000-0000-000000000000
        currency:
          type: string
        description:
          type: string
        prettyName:
          type: string
        iconClass:
          type: string
        startupCost:
          format: double
          type: number
        monthlyCost:
          format: double
          type: number
        noticePeriodDays:
          format: int32
          type: integer
        channelRequestProcessingDays:
          format: int32
          type: integer
        requiredCapability:
          type: string
        categories:
          type: array
          items:
            $ref: '#/components/schemas/CM.Platform.Channels.Models.Channels.ApiChannelCategory'
    CM.Platform.Channels.Models.Channels.ApiChannelCategory:
      required:
      - id
      - name
      type: object
      properties:
        id:
          format: uuid
          type: string
          example: 00000000-0000-0000-0000-000000000000
        iconClass:
          type: string
        name:
          type: string
        channelLimit:
          format: int32
          type: integer
    CM.Platform.Channels.Models.RequestForms.ApiChannelRequestForm:
      type: object
      properties:
        channelType:
          $ref: '#/components/schemas/CM.Platform.Channels.Models.Channels.ApiChannelTypeBaseResponse'
        formElements:
          type: array
          items:
            $ref: '#/components/schemas/CM.Platform.Channels.Models.RequestForms.ApiRequestFormElement'
    CM.Platform.Channels.Models.RequestForms.ApiCustomRequestFormInputResponse:
      type: object
      properties:
        id:
          format: uuid
          type: string
          example: 00000000-0000-0000-0000-000000000000
        channelId:
          format: uuid
          type: string
          example: 00000000-0000-0000-0000-000000000000
        formElementId:
          format: uuid
          type: string
          example: 00000000-0000-0000-0000-000000000000
        inputValue:
          type: string
        createdOnUtc:
          format: date-time
          type: string
    CM.Platform.Channels.Models.External.MetaCallbacks.ApiMetaCallback:
      type: object
      properties:
        object:
          type: string
        entry:
          type: array
          items:
            $ref: '#/components/schemas/CM.Platform.Channels.Models.External.MetaCallbacks.ApiMetaCallbackUpdatedEntity'
    CM.Platform.Channels.Models.External.MetaCallbacks.ApiMetaCallbackUpdatedEntity:
      type: object
      properties:
        id:
          type: string
        time:
          format: int32
          type: integer
        changes:
          type: array
          items:
            $ref: '#/components/schemas/CM.Platform.Channels.Models.External.MetaCallbacks.ApiMetaCallbackEntityChange'
    CM.Platform.Channels.Models.External.MetaCallbacks.ApiMetaCallbackEntityChange:
      type: object
      properties:
        field:
          type: string
        value:
          type: object
    CM.Platform.Channels.Models.ChannelTypes.WhatsApp.ApiWhatsAppProfileImage:
      type: object
      properties:
        image:
          type: string
        imageUrl:
          type: string
    CM.Platform.Channels.Models.ChannelTypes.GooglesBusinessMessages.ApiGooglesBusinessMessagesAgentLogo:
      type: object
      properties:
        agentId:
          format: uuid
          type: string
          example: 00000000-0000-0000-0000-000000000000
        logoUrl:
          type: string
    CM.Platform.Channels.Models.ChannelTypes.Rcs.ApiRcsProfileImages:
      type: object
      properties:
        heroImage:
          $ref: '#/components/schemas/CM.Platform.Channels.Models.ChannelTypes.Rcs.ApiRcsProfileImagesImage'
        logoImage:
          $ref: '#/components/schemas/CM.Platform.Channels.Models.ChannelTypes.Rcs.ApiRcsProfileImagesImage'
    CM.Platform.Channels.Models.ChannelTypes.Rcs.ApiRcsProfileImagesImage:
      type: object
      properties:
        image:
          type: string
        imageUrl:
          type: string
    CM.Platform.Channels.Models.Webhook.ApiChannelsMetaCallbackWebhook:
      type: object
      properties:
        cmAccountId:
          format: uuid
          type: string
          example: 00000000-0000-0000-0000-000000000000
        receivedAtUtc:
          format: date-time
          type: string
        metaCallback:
          $ref: '#/components/schemas/CM.Platform.Channels.Models.External.MetaCallbacks.ApiMetaCallbackUpdatedEntity'
    CM.Platform.Channels.Models.External.CampaignRegistry.TCRWebhook:
      required:
      - eventType
      type: object
      properties:
        eventType:
          type: string
        actorId:
          type: string
        brandId:
          type: string
        brandName:
          type: string
        brandIdentityStatus:
          type: string
        brandReferenceId:
          type: string
        campaignId:
          type: string
        campaignReferenceId:
          type: string
        cnpId:
          type: string
        cspId:
          type: string
        cspName:
          type: string
        description:
          type: string
        dcaId:
          type: string
        dcaName:
          type: string
        evpId:
          type: string
        evpName:
          type: string
        mnoId:
          format: int32
          type: integer
        mnoName:
          type: string
        mock:
          type: boolean
        nudgeIntent:
          type: string
        recipientId:
          type: string
        suspendedBrandIdentifier:
          type: string
        suspensionCategory:
          type: string
        vettingId:
          type: string
    CM.Platform.Channels.Models.ChannelTypes.Facebook.ApiFacebookConnectionBase:
      required:
      - id
      - accountId
      - type
      - facebookConnectionId
      - name
      - isActive
      - isPending
      - isExpired
      - createdOnUtc
      type: object
      properties:
        id:
          format: uuid
          type: string
          example: 00000000-0000-0000-0000-000000000000
        accountId:
          format: uuid
          type: string
          example: 00000000-0000-0000-0000-000000000000
        type:
          enum:
          - PAGE
          type: string
        facebookConnectionId:
          type: string
        name:
          type: string
        facebookUrl:
          type: string
        isActive:
          type: boolean
        isPending:
          type: boolean
        isExpired:
          type: boolean
        createdOnUtc:
          format: date-time
          type: string
        rejectedOnUtc:
          format: date-time
          type: string
        cancelledOnUtc:
          format: date-time
          type: string
        deletedOnUtc:
          format: date-time
          type: string
        entityStatus:
          enum:
          - ACTIVE
          - PENDING
          - ELIGIBLE
          - NOT_VALIDATED
          - CUSTOMER_ACTION_REQUIRED
          - EXPIRED
          - REJECTED
          - CANCELLED
          - DELETED
          type: string
    CM.Platform.Channels.Models.ChannelTypes.Facebook.ApiFacebookConnection:
      required:
      - id
      - accountId
      - type
      - facebookConnectionId
      - name
      - isActive
      - isPending
      - isExpired
      - createdOnUtc
      type: object
      properties:
        id:
          format: uuid
          type: string
          example: 00000000-0000-0000-0000-000000000000
        channelId:
          format: uuid
          type: string
          example: 00000000-0000-0000-0000-000000000000
        accountId:
          format: uuid
          type: string
          example: 00000000-0000-0000-0000-000000000000
        type:
          enum:
          - PAGE
          type: string
        facebookConnectionId:
          type: string
        name:
          type: string
        facebookUrl:
          type: string
        isActive:
          type: boolean
        isPending:
          type: boolean
        isExpired:
          type: boolean
        fulfilledOnUtc:
          format: date-time
          type: string
        createdOnUtc:
          format: date-time
          type: string
        rejectedOnUtc:
          format: date-time
          type: string
        cancelledOnUtc:
          format: date-time
          type: string
        deletedOnUtc:
          format: date-time
          type: string
        entityStatus:
          enum:
          - ACTIVE
          - PENDING
          - ELIGIBLE
          - NOT_VALIDATED
          - CUSTOMER_ACTION_REQUIRED
          - EXPIRED
          - REJECTED
          - CANCELLED
          - DELETED
          type: string
        rejectionReason:
          type: string
        expirationReason:
          type: string
    CM.Platform.Channels.Models.ChannelTypes.Facebook.ApiFacebookAccount:
      required:
      - id
      - accountId
      - channelRequestId
      - isPending
      - createdOnUtc
      type: object
      properties:
        id:
          format: uuid
          type: string
          example: 00000000-0000-0000-0000-000000000000
        accountId:
          format: uuid
          type: string
          example: 00000000-0000-0000-0000-000000000000
        channelRequestId:
          format: uuid
          type: string
          example: 00000000-0000-0000-0000-000000000000
        isPending:
          type: boolean
        cancelledOnUtc:
          format: date-time
          type: string
        fulfilledOnUtc:
          format: date-time
          type: string
        createdOnUtc:
          format: date-time
          type: string
    CM.Platform.Channels.Models.ChannelTypes.GooglesBusinessMessages.ApiGooglesBusinessMessagesAgentBase:
      required:
      - id
      - accountId
      - name
      - isPending
      - isActive
      - createdOnUtc
      type: object
      properties:
        id:
          format: uuid
          type: string
          example: 00000000-0000-0000-0000-000000000000
        accountId:
          format: uuid
          type: string
          example: 00000000-0000-0000-0000-000000000000
        name:
          type: string
        isPending:
          type: boolean
        isActive:
          type: boolean
        gbmBrandId:
          format: uuid
          type: string
          example: 00000000-0000-0000-0000-000000000000
        entityStatus:
          enum:
          - ACTIVE
          - PENDING
          - ELIGIBLE
          - NOT_VALIDATED
          - CUSTOMER_ACTION_REQUIRED
          - EXPIRED
          - REJECTED
          - CANCELLED
          - DELETED
          type: string
        cancelledOnUtc:
          format: date-time
          type: string
        deletedOnUtc:
          format: date-time
          type: string
        rejectedOnUtc:
          format: date-time
          type: string
        updatedOnUtc:
          format: date-time
          type: string
        fulfilledOnUtc:
          format: date-time
          type: string
        createdOnUtc:
          format: date-time
          type: string
    CM.Platform.Channels.Models.ChannelTypes.GooglesBusinessMessages.ApiGooglesBusinessMessagesAgent:
      required:
      - id
      - accountId
      - name
      - isPending
      - isActive
      - messageConfigurationCompleted
      - entrypointConfigurationCompleted
      - agentManualVerificationFlowRequired
      - createdOnUtc
      type: object
      properties:
        id:
          format: uuid
          type: string
          example: 00000000-0000-0000-0000-000000000000
        accountId:
          format: uuid
          type: string
          example: 00000000-0000-0000-0000-000000000000
        name:
          type: string
        isPending:
          type: boolean
        isActive:
          type: boolean
        gbmBrandId:
          format: uuid
          type: string
          example: 00000000-0000-0000-0000-000000000000
        gbmAccountId:
          format: uuid
          type: string
          example: 00000000-0000-0000-0000-000000000000
        googleBusinessCommunicationsId:
          format: uuid
          type: string
          example: 00000000-0000-0000-0000-000000000000
        googleBusinessCommunicationsVerificationStatus:
          type: string
        googleBusinessCommunicationsLaunchStatus:
          type: array
          items:
            $ref: '#/components/schemas/CM.Platform.Channels.Models.ChannelTypes.GooglesBusinessMessages.ApiGooglesBusinessMessagesAgentLaunchStatus'
        messageConfigurationCompleted:
          type: boolean
        entrypointConfigurationCompleted:
          type: boolean
        agentManualVerificationFlowRequired:
          type: boolean
        rejectionReason:
          type: string
        channelId:
          format: uuid
          type: string
          example: 00000000-0000-0000-0000-000000000000
        agentId:
          type: string
        entityStatus:
          enum:
          - ACTIVE
          - PENDING
          - ELIGIBLE
          - NOT_VALIDATED
          - CUSTOMER_ACTION_REQUIRED
          - EXPIRED
          - REJECTED
          - CANCELLED
          - DELETED
          type: string
        cancelledOnUtc:
          format: date-time
          type: string
        deletedOnUtc:
          format: date-time
          type: string
        rejectedOnUtc:
          format: date-time
          type: string
        updatedOnUtc:
          format: date-time
          type: string
        fulfilledOnUtc:
          format: date-time
          type: string
        createdOnUtc:
          format: date-time
          type: string
    ? CM.Platform.Channels.ExternalModels.ApiClients.Google.GoogleBusinessCommunications.ApiGooglesBusinessMessagesAgentConfiguration
    : type: object
      properties:
        businessMessagesAgent:
          $ref: '#/components/schemas/Google.Apis.BusinessCommunications.v1.Data.GoogleCommunicationsBusinesscommunicationsV1BusinessMessagesAgent'
        verifiedSmsAgent:
          $ref: '#/components/schemas/Google.Apis.BusinessCommunications.v1.Data.GoogleCommunicationsBusinesscommunicationsV1VerifiedSmsAgent'
        name:
          type: string
        displayName:
          type: string
        ETag:
          type: string
    Google.Apis.BusinessCommunications.v1.Data.GoogleCommunicationsBusinesscommunicationsV1BusinessMessagesAgent:
      type: object
      properties:
        customAgentId:
          type: string
        additionalAgentInteractions:
          type: array
          items:
            $ref: '#/components/schemas/Google.Apis.BusinessCommunications.v1.Data.GoogleCommunicationsBusinesscommunicationsV1SupportedAgentInteraction'
        authorizationConfig:
          $ref: '#/components/schemas/Google.Apis.BusinessCommunications.v1.Data.GoogleCommunicationsBusinesscommunicationsV1BusinessMessagesAgentAuthorizationConfig'
        nonLocalConfig:
          $ref: '#/components/schemas/Google.Apis.BusinessCommunications.v1.Data.GoogleCommunicationsBusinesscommunicationsV1BusinessMessagesAgentNonLocalConfig'
        surveyConfig:
          $ref: '#/components/schemas/Google.Apis.BusinessCommunications.v1.Data.GoogleCommunicationsBusinesscommunicationsV1SurveyConfig'
        agentTestUrl:
          type: string
        phone:
          $ref: '#/components/schemas/Google.Apis.BusinessCommunications.v1.Data.GoogleCommunicationsBusinesscommunicationsV1Phone'
        entryPointConfigs:
          type: array
          items:
            $ref: '#/components/schemas/Google.Apis.BusinessCommunications.v1.Data.GoogleCommunicationsBusinesscommunicationsV1BusinessMessagesEntryPointConfig'
        logoUrl:
          type: string
        testUrls:
          type: array
          items:
            $ref: '#/components/schemas/Google.Apis.BusinessCommunications.v1.Data.GoogleCommunicationsBusinesscommunicationsV1TestUrl'
        conversationalSettings:
          type: object
          additionalProperties:
            $ref: '#/components/schemas/Google.Apis.BusinessCommunications.v1.Data.GoogleCommunicationsBusinesscommunicationsV1ConversationalSetting'
        defaultLocale:
          type: string
        primaryAgentInteraction:
          $ref: '#/components/schemas/Google.Apis.BusinessCommunications.v1.Data.GoogleCommunicationsBusinesscommunicationsV1SupportedAgentInteraction'
        ETag:
          type: string
    Google.Apis.BusinessCommunications.v1.Data.GoogleCommunicationsBusinesscommunicationsV1VerifiedSmsAgent:
      type: object
      properties:
        senders:
          type: array
          items:
            $ref: '#/components/schemas/Google.Apis.BusinessCommunications.v1.Data.GoogleCommunicationsBusinesscommunicationsV1VerifiedSmsAgentSender'
        logoUrl:
          type: string
        description:
          type: string
        ETag:
          type: string
    Google.Apis.BusinessCommunications.v1.Data.GoogleCommunicationsBusinesscommunicationsV1SupportedAgentInteraction:
      type: object
      properties:
        humanRepresentative:
          $ref: '#/components/schemas/Google.Apis.BusinessCommunications.v1.Data.GoogleCommunicationsBusinesscommunicationsV1HumanRepresentative'
        interactionType:
          type: string
        botRepresentative:
          $ref: '#/components/schemas/Google.Apis.BusinessCommunications.v1.Data.GoogleCommunicationsBusinesscommunicationsV1BotRepresentative'
        ETag:
          type: string
    ? Google.Apis.BusinessCommunications.v1.Data.GoogleCommunicationsBusinesscommunicationsV1BusinessMessagesAgentAuthorizationConfig
    : type: object
      properties:
        endpointUrl:
          type: string
        ETag:
          type: string
    Google.Apis.BusinessCommunications.v1.Data.GoogleCommunicationsBusinesscommunicationsV1BusinessMessagesAgentNonLocalConfig:
      type: object
      properties:
        callDeflectionPhoneNumbers:
          type: array
          items:
            $ref: '#/components/schemas/Google.Apis.BusinessCommunications.v1.Data.GoogleCommunicationsBusinesscommunicationsV1Phone'
        enabledDomains:
          type: array
          items:
            type: string
        phoneNumber:
          $ref: '#/components/schemas/Google.Apis.BusinessCommunications.v1.Data.GoogleCommunicationsBusinesscommunicationsV1Phone'
        contactOption:
          $ref: '#/components/schemas/Google.Apis.BusinessCommunications.v1.Data.GoogleCommunicationsBusinesscommunicationsV1BusinessMessagesAgentNonLocalConfigContactOption'
        regionCodes:
          type: array
          items:
            type: string
        ETag:
          type: string
    Google.Apis.BusinessCommunications.v1.Data.GoogleCommunicationsBusinesscommunicationsV1SurveyConfig:
      type: object
      properties:
        templateQuestionIds:
          type: array
          items:
            type: string
        customSurveys:
          type: object
          additionalProperties:
            $ref: '#/components/schemas/Google.Apis.BusinessCommunications.v1.Data.GoogleCommunicationsBusinesscommunicationsV1CustomSurveyConfig'
        ETag:
          type: string
    Google.Apis.BusinessCommunications.v1.Data.GoogleCommunicationsBusinesscommunicationsV1Phone:
      type: object
      properties:
        number:
          type: string
        ETag:
          type: string
    Google.Apis.BusinessCommunications.v1.Data.GoogleCommunicationsBusinesscommunicationsV1BusinessMessagesEntryPointConfig:
      type: object
      properties:
        allowedEntryPoint:
          type: string
        ETag:
          type: string
    Google.Apis.BusinessCommunications.v1.Data.GoogleCommunicationsBusinesscommunicationsV1TestUrl:
      type: object
      properties:
        surface:
          type: string
        url:
          type: string
        ETag:
          type: string
    Google.Apis.BusinessCommunications.v1.Data.GoogleCommunicationsBusinesscommunicationsV1ConversationalSetting:
      type: object
      properties:
        conversationStarters:
          type: array
          items:
            $ref: '#/components/schemas/Google.Apis.BusinessCommunications.v1.Data.GoogleCommunicationsBusinesscommunicationsV1ConversationStarters'
        welcomeMessage:
          $ref: '#/components/schemas/Google.Apis.BusinessCommunications.v1.Data.GoogleCommunicationsBusinesscommunicationsV1WelcomeMessage'
        privacyPolicy:
          $ref: '#/components/schemas/Google.Apis.BusinessCommunications.v1.Data.GoogleCommunicationsBusinesscommunicationsV1PrivacyPolicy'
        offlineMessage:
          $ref: '#/components/schemas/Google.Apis.BusinessCommunications.v1.Data.GoogleCommunicationsBusinesscommunicationsV1OfflineMessage'
        ETag:
          type: string
    Google.Apis.BusinessCommunications.v1.Data.GoogleCommunicationsBusinesscommunicationsV1VerifiedSmsAgentSender:
      type: object
      properties:
        senderId:
          type: string
        countryCode:
          type: string
        ETag:
          type: string
    Google.Apis.BusinessCommunications.v1.Data.GoogleCommunicationsBusinesscommunicationsV1HumanRepresentative:
      type: object
      properties:
        humanMessagingAvailability:
          $ref: '#/components/schemas/Google.Apis.BusinessCommunications.v1.Data.GoogleCommunicationsBusinesscommunicationsV1MessagingAvailability'
        ETag:
          type: string
    Google.Apis.BusinessCommunications.v1.Data.GoogleCommunicationsBusinesscommunicationsV1BotRepresentative:
      type: object
      properties:
        botMessagingAvailability:
          $ref: '#/components/schemas/Google.Apis.BusinessCommunications.v1.Data.GoogleCommunicationsBusinesscommunicationsV1MessagingAvailability'
        ETag:
          type: string
    ? Google.Apis.BusinessCommunications.v1.Data.GoogleCommunicationsBusinesscommunicationsV1BusinessMessagesAgentNonLocalConfigContactOption
    : type: object
      properties:
        url:
          type: string
        options:
          type: array
          items:
            type: string
        ETag:
          type: string
    Google.Apis.BusinessCommunications.v1.Data.GoogleCommunicationsBusinesscommunicationsV1CustomSurveyConfig:
      type: object
      properties:
        customQuestions:
          type: array
          items:
            $ref: '#/components/schemas/Google.Apis.BusinessCommunications.v1.Data.GoogleCommunicationsBusinesscommunicationsV1SurveyQuestion'
        ETag:
          type: string
    Google.Apis.BusinessCommunications.v1.Data.GoogleCommunicationsBusinesscommunicationsV1ConversationStarters:
      type: object
      properties:
        suggestion:
          $ref: '#/components/schemas/Google.Apis.BusinessCommunications.v1.Data.GoogleCommunicationsBusinesscommunicationsV1Suggestion'
        ETag:
          type: string
    Google.Apis.BusinessCommunications.v1.Data.GoogleCommunicationsBusinesscommunicationsV1WelcomeMessage:
      type: object
      properties:
        richText:
          type: string
        richCard:
          $ref: '#/components/schemas/Google.Apis.BusinessCommunications.v1.Data.GoogleCommunicationsBusinessmessagesV1RichCard'
        image:
          $ref: '#/components/schemas/Google.Apis.BusinessCommunications.v1.Data.GoogleCommunicationsBusinessmessagesV1Image'
        text:
          type: string
        ETag:
          type: string
    Google.Apis.BusinessCommunications.v1.Data.GoogleCommunicationsBusinesscommunicationsV1PrivacyPolicy:
      type: object
      properties:
        url:
          type: string
        ETag:
          type: string
    Google.Apis.BusinessCommunications.v1.Data.GoogleCommunicationsBusinesscommunicationsV1OfflineMessage:
      type: object
      properties:
        text:
          type: string
        ETag:
          type: string
    Google.Apis.BusinessCommunications.v1.Data.GoogleCommunicationsBusinesscommunicationsV1MessagingAvailability:
      type: object
      properties:
        hours:
          type: array
          items:
            $ref: '#/components/schemas/Google.Apis.BusinessCommunications.v1.Data.GoogleCommunicationsBusinesscommunicationsV1MessagingAvailabilityHours'
        ETag:
          type: string
    Google.Apis.BusinessCommunications.v1.Data.GoogleCommunicationsBusinesscommunicationsV1SurveyQuestion:
      type: object
      properties:
        questionContent:
          type: string
        questionType:
          type: string
        name:
          type: string
        responseOptions:
          type: array
          items:
            $ref: '#/components/schemas/Google.Apis.BusinessCommunications.v1.Data.GoogleCommunicationsBusinesscommunicationsV1SurveyResponse'
        ETag:
          type: string
    Google.Apis.BusinessCommunications.v1.Data.GoogleCommunicationsBusinesscommunicationsV1Suggestion:
      type: object
      properties:
        action:
          $ref: '#/components/schemas/Google.Apis.BusinessCommunications.v1.Data.GoogleCommunicationsBusinesscommunicationsV1SuggestedAction'
        reply:
          $ref: '#/components/schemas/Google.Apis.BusinessCommunications.v1.Data.GoogleCommunicationsBusinesscommunicationsV1SuggestedReply'
        ETag:
          type: string
    Google.Apis.BusinessCommunications.v1.Data.GoogleCommunicationsBusinessmessagesV1RichCard:
      type: object
      properties:
        carouselCard:
          $ref: '#/components/schemas/Google.Apis.BusinessCommunications.v1.Data.GoogleCommunicationsBusinessmessagesV1CarouselCard'
        standaloneCard:
          $ref: '#/components/schemas/Google.Apis.BusinessCommunications.v1.Data.GoogleCommunicationsBusinessmessagesV1StandaloneCard'
        ETag:
          type: string
    Google.Apis.BusinessCommunications.v1.Data.GoogleCommunicationsBusinessmessagesV1Image:
      type: object
      properties:
        contentInfo:
          $ref: '#/components/schemas/Google.Apis.BusinessCommunications.v1.Data.GoogleCommunicationsBusinessmessagesV1ContentInfo'
        ETag:
          type: string
    Google.Apis.BusinessCommunications.v1.Data.GoogleCommunicationsBusinesscommunicationsV1MessagingAvailabilityHours:
      type: object
      properties:
        timeZone:
          type: string
        startTime:
          $ref: '#/components/schemas/Google.Apis.BusinessCommunications.v1.Data.GoogleTypeTimeOfDay'
        startDay:
          type: string
        endDay:
          type: string
        endTime:
          $ref: '#/components/schemas/Google.Apis.BusinessCommunications.v1.Data.GoogleTypeTimeOfDay'
        ETag:
          type: string
    Google.Apis.BusinessCommunications.v1.Data.GoogleCommunicationsBusinesscommunicationsV1SurveyResponse:
      type: object
      properties:
        postbackData:
          type: string
        content:
          type: string
        ETag:
          type: string
    Google.Apis.BusinessCommunications.v1.Data.GoogleCommunicationsBusinesscommunicationsV1SuggestedAction:
      type: object
      properties:
        postbackData:
          type: string
        openUrlAction:
          $ref: '#/components/schemas/Google.Apis.BusinessCommunications.v1.Data.GoogleCommunicationsBusinesscommunicationsV1OpenUrlAction'
        text:
          type: string
        ETag:
          type: string
    Google.Apis.BusinessCommunications.v1.Data.GoogleCommunicationsBusinesscommunicationsV1SuggestedReply:
      type: object
      properties:
        postbackData:
          type: string
        text:
          type: string
        ETag:
          type: string
    Google.Apis.BusinessCommunications.v1.Data.GoogleCommunicationsBusinessmessagesV1CarouselCard:
      type: object
      properties:
        cardWidth:
          type: string
        cardContents:
          type: array
          items:
            $ref: '#/components/schemas/Google.Apis.BusinessCommunications.v1.Data.GoogleCommunicationsBusinessmessagesV1CardContent'
        ETag:
          type: string
    Google.Apis.BusinessCommunications.v1.Data.GoogleCommunicationsBusinessmessagesV1StandaloneCard:
      type: object
      properties:
        cardContent:
          $ref: '#/components/schemas/Google.Apis.BusinessCommunications.v1.Data.GoogleCommunicationsBusinessmessagesV1CardContent'
        ETag:
          type: string
    Google.Apis.BusinessCommunications.v1.Data.GoogleCommunicationsBusinessmessagesV1ContentInfo:
      type: object
      properties:
        thumbnailUrl:
          type: string
        altText:
          type: string
        fileUrl:
          type: string
        forceRefresh:
          type: boolean
        ETag:
          type: string
    Google.Apis.BusinessCommunications.v1.Data.GoogleTypeTimeOfDay:
      type: object
      properties:
        minutes:
          format: int32
          type: integer
        hours:
          format: int32
          type: integer
        nanos:
          format: int32
          type: integer
        seconds:
          format: int32
          type: integer
        ETag:
          type: string
    Google.Apis.BusinessCommunications.v1.Data.GoogleCommunicationsBusinesscommunicationsV1OpenUrlAction:
      type: object
      properties:
        url:
          type: string
        ETag:
          type: string
    Google.Apis.BusinessCommunications.v1.Data.GoogleCommunicationsBusinessmessagesV1CardContent:
      type: object
      properties:
        description:
          type: string
        media:
          $ref: '#/components/schemas/Google.Apis.BusinessCommunications.v1.Data.GoogleCommunicationsBusinessmessagesV1Media'
        title:
          type: string
        suggestions:
          type: array
          items:
            $ref: '#/components/schemas/Google.Apis.BusinessCommunications.v1.Data.GoogleCommunicationsBusinessmessagesV1Suggestion'
        ETag:
          type: string
    Google.Apis.BusinessCommunications.v1.Data.GoogleCommunicationsBusinessmessagesV1Media:
      type: object
      properties:
        contentInfo:
          $ref: '#/components/schemas/Google.Apis.BusinessCommunications.v1.Data.GoogleCommunicationsBusinessmessagesV1ContentInfo'
        height:
          type: string
        ETag:
          type: string
    Google.Apis.BusinessCommunications.v1.Data.GoogleCommunicationsBusinessmessagesV1Suggestion:
      type: object
      properties:
        liveAgentRequest:
          $ref: '#/components/schemas/Google.Apis.BusinessCommunications.v1.Data.GoogleCommunicationsBusinessmessagesV1LiveAgentRequest'
        reply:
          $ref: '#/components/schemas/Google.Apis.BusinessCommunications.v1.Data.GoogleCommunicationsBusinessmessagesV1SuggestedReply'
        authenticationRequest:
          $ref: '#/components/schemas/Google.Apis.BusinessCommunications.v1.Data.GoogleCommunicationsBusinessmessagesV1AuthenticationRequest'
        action:
          $ref: '#/components/schemas/Google.Apis.BusinessCommunications.v1.Data.GoogleCommunicationsBusinessmessagesV1SuggestedAction'
        ETag:
          type: string
    Google.Apis.BusinessCommunications.v1.Data.GoogleCommunicationsBusinessmessagesV1LiveAgentRequest:
      type: object
      properties:
        ETag:
          type: string
    Google.Apis.BusinessCommunications.v1.Data.GoogleCommunicationsBusinessmessagesV1SuggestedReply:
      type: object
      properties:
        text:
          type: string
        postbackData:
          type: string
        ETag:
          type: string
    Google.Apis.BusinessCommunications.v1.Data.GoogleCommunicationsBusinessmessagesV1AuthenticationRequest:
      type: object
      properties:
        oauth:
          $ref: '#/components/schemas/Google.Apis.BusinessCommunications.v1.Data.GoogleCommunicationsBusinessmessagesV1AuthenticationRequestOauth'
        ETag:
          type: string
    Google.Apis.BusinessCommunications.v1.Data.GoogleCommunicationsBusinessmessagesV1SuggestedAction:
      type: object
      properties:
        postbackData:
          type: string
        text:
          type: string
        openUrlAction:
          $ref: '#/components/schemas/Google.Apis.BusinessCommunications.v1.Data.GoogleCommunicationsBusinessmessagesV1OpenUrlAction'
        dialAction:
          $ref: '#/components/schemas/Google.Apis.BusinessCommunications.v1.Data.GoogleCommunicationsBusinessmessagesV1DialAction'
        ETag:
          type: string
    Google.Apis.BusinessCommunications.v1.Data.GoogleCommunicationsBusinessmessagesV1AuthenticationRequestOauth:
      type: object
      properties:
        codeChallenge:
          type: string
        codeChallengeMethod:
          type: string
        clientId:
          type: string
        scopes:
          type: array
          items:
            type: string
        ETag:
          type: string
    Google.Apis.BusinessCommunications.v1.Data.GoogleCommunicationsBusinessmessagesV1OpenUrlAction:
      type: object
      properties:
        url:
          type: string
        ETag:
          type: string
    Google.Apis.BusinessCommunications.v1.Data.GoogleCommunicationsBusinessmessagesV1DialAction:
      type: object
      properties:
        phoneNumber:
          type: string
        ETag:
          type: string
    CM.Platform.Channels.ExternalModels.ApiClients.Google.GoogleBusinessCommunications.ApiGooglesBusinessMessagesAgentTestUrl:
      type: object
      properties:
        surface:
          type: string
        url:
          type: string
        ETag:
          type: string
    CM.Platform.Channels.Models.ChannelTypes.GooglesBusinessMessages.LaunchFlow.ApiAgentLaunchSettingsRequest:
      type: object
      properties:
        entryPoint:
          enum:
          - NON_LOCAL
          - LOCATION
          type: string
        launched:
          type: boolean
    CM.Platform.Channels.Models.ChannelTypes.GooglesBusinessMessages.LaunchFlow.ApiAgentLaunchSettingsResponse:
      type: object
      properties:
        googleLaunchStatus:
          enum:
          - LAUNCH_STATE_UNSPECIFIED
          - LAUNCH_STATE_UNLAUNCHED
          - LAUNCH_STATE_PENDING
          - LAUNCH_STATE_LAUNCHED
          - LAUNCH_STATE_REJECTED
          - LAUNCH_STATE_SUSPENDED
          - LAUNCH_STATE_PENDING_UNLAUNCH
          - LAUNCH_STATE_INVALID_IN_GMB
          type: string
        entryPoint:
          enum:
          - NON_LOCAL
          - LOCATION
          type: string
        launched:
          type: boolean
    CM.Platform.Channels.Models.ChannelTypes.GooglesBusinessMessages.LaunchFlow.ApiAgentLocationLaunchSettingsRequest:
      type: object
      properties:
        launched:
          type: boolean
    CM.Platform.Channels.Models.ChannelTypes.GooglesBusinessMessages.LaunchFlow.ApiAgentLocationLaunchSettingsResponse:
      type: object
      properties:
        locationId:
          format: uuid
          type: string
          example: 00000000-0000-0000-0000-000000000000
        googleLaunchStatus:
          enum:
          - LAUNCH_STATE_UNSPECIFIED
          - LAUNCH_STATE_UNLAUNCHED
          - LAUNCH_STATE_PENDING
          - LAUNCH_STATE_LAUNCHED
          - LAUNCH_STATE_REJECTED
          - LAUNCH_STATE_SUSPENDED
          - LAUNCH_STATE_PENDING_UNLAUNCH
          - LAUNCH_STATE_INVALID_IN_GMB
          type: string
        launched:
          type: boolean
    CM.Platform.Channels.Models.ChannelTypes.GooglesBusinessMessages.LaunchFlow.ApiGooglesBusinessMessagesLocation:
      type: object
      properties:
        id:
          format: uuid
          type: string
          example: 00000000-0000-0000-0000-000000000000
        locationName:
          type: string
        placeId:
          type: string
        address:
          type: string
        googleMapsUrl:
          type: string
        verificationState:
          enum:
          - VERIFICATION_STATE_UNSPECIFIED
          - VERIFICATION_STATE_UNVERIFIED
          - VERIFICATION_STATE_PENDING
          - VERIFICATION_STATE_VERIFIED
          - VERIFICATION_STATE_SUSPENDED_IN_GMB
          type: string
        launchState:
          enum:
          - LAUNCH_STATE_UNSPECIFIED
          - LAUNCH_STATE_UNLAUNCHED
          - LAUNCH_STATE_PENDING
          - LAUNCH_STATE_LAUNCHED
          - LAUNCH_STATE_REJECTED
          - LAUNCH_STATE_SUSPENDED
          - LAUNCH_STATE_PENDING_UNLAUNCH
          - LAUNCH_STATE_INVALID_IN_GMB
          type: string
    CM.Platform.Channels.Models.ChannelTypes.GooglesBusinessMessages.LaunchFlow.ApiGooglesBusinessMessagesOAuthUserCredentials:
      type: object
      properties:
        credentials:
          $ref: '#/components/schemas/CM.Platform.Channels.Models.ChannelTypes.GooglesBusinessMessages.LaunchFlow.ApiGoogleOAuthAccessToken'
    CM.Platform.Channels.Models.ChannelTypes.GooglesBusinessMessages.LaunchFlow.ApiGoogleOAuthAccessToken:
      required:
      - accessToken
      - sessionId
      - issuedAtUtc
      - expiresAtUtc
      type: object
      properties:
        accessToken:
          type: string
        sessionId:
          type: string
        issuedAtUtc:
          format: date-time
          type: string
        expiresAtUtc:
          format: date-time
          type: string
    CM.Platform.Channels.Models.ChannelTypes.GooglesBusinessMessages.ApiGooglesBusinessMessagesBrandBase:
      required:
      - id
      - accountId
      - name
      - isPending
      - isActive
      - createdOnUtc
      type: object
      properties:
        id:
          format: uuid
          type: string
          example: 00000000-0000-0000-0000-000000000000
        accountId:
          format: uuid
          type: string
          example: 00000000-0000-0000-0000-000000000000
        name:
          type: string
        isPending:
          type: boolean
        isActive:
          type: boolean
        entityStatus:
          enum:
          - ACTIVE
          - PENDING
          - ELIGIBLE
          - NOT_VALIDATED
          - CUSTOMER_ACTION_REQUIRED
          - EXPIRED
          - REJECTED
          - CANCELLED
          - DELETED
          type: string
        cancelledOnUtc:
          format: date-time
          type: string
        deletedOnUtc:
          format: date-time
          type: string
        rejectedOnUtc:
          format: date-time
          type: string
        updatedOnUtc:
          format: date-time
          type: string
        fulfilledOnUtc:
          format: date-time
          type: string
        createdOnUtc:
          format: date-time
          type: string
    CM.Platform.Channels.Models.ChannelTypes.GooglesBusinessMessages.ApiGooglesBusinessMessagesBrand:
      required:
      - id
      - accountId
      - name
      - isPending
      - isActive
      - createdOnUtc
      type: object
      properties:
        id:
          format: uuid
          type: string
          example: 00000000-0000-0000-0000-000000000000
        accountId:
          format: uuid
          type: string
          example: 00000000-0000-0000-0000-000000000000
        name:
          type: string
        isPending:
          type: boolean
        isActive:
          type: boolean
        gbmAccountId:
          format: uuid
          type: string
          example: 00000000-0000-0000-0000-000000000000
        googleBusinessCommunicationsId:
          format: uuid
          type: string
          example: 00000000-0000-0000-0000-000000000000
        rejectionReason:
          type: string
        entityStatus:
          enum:
          - ACTIVE
          - PENDING
          - ELIGIBLE
          - NOT_VALIDATED
          - CUSTOMER_ACTION_REQUIRED
          - EXPIRED
          - REJECTED
          - CANCELLED
          - DELETED
          type: string
        cancelledOnUtc:
          format: date-time
          type: string
        deletedOnUtc:
          format: date-time
          type: string
        rejectedOnUtc:
          format: date-time
          type: string
        updatedOnUtc:
          format: date-time
          type: string
        fulfilledOnUtc:
          format: date-time
          type: string
        createdOnUtc:
          format: date-time
          type: string
    CM.Platform.Channels.Models.ChannelTypes.GooglesBusinessMessages.ApiGooglesBusinessMessagesAccount:
      required:
      - id
      - accountId
      - isPending
      - createdOnUtc
      type: object
      properties:
        id:
          format: uuid
          type: string
          example: 00000000-0000-0000-0000-000000000000
        accountId:
          format: uuid
          type: string
          example: 00000000-0000-0000-0000-000000000000
        isPending:
          type: boolean
        channelRequestId:
          format: uuid
          type: string
          example: 00000000-0000-0000-0000-000000000000
        entityStatus:
          enum:
          - ACTIVE
          - PENDING
          - ELIGIBLE
          - NOT_VALIDATED
          - CUSTOMER_ACTION_REQUIRED
          - EXPIRED
          - REJECTED
          - CANCELLED
          - DELETED
          type: string
        cancelledOnUtc:
          format: date-time
          type: string
        fulfilledOnUtc:
          format: date-time
          type: string
        createdOnUtc:
          format: date-time
          type: string
    CM.Platform.Channels.Models.ChannelTypes.GooglesBusinessMessages.LaunchFlow.ApiGoogleMyBusinessAccount:
      type: object
      properties:
        id:
          type: string
        accountName:
          type: string
        accountType:
          type: string
    CM.Platform.Channels.Models.ChannelTypes.GooglesBusinessMessages.LaunchFlow.ApiGoogleMyBusinessLocation:
      type: object
      properties:
        id:
          type: string
        locationName:
          type: string
        locationPlaceId:
          type: string
        addressLines:
          type: array
          items:
            type: string
        postalCode:
          type: string
        locality:
          type: string
        regionCode:
          type: string
        canBeAdded:
          type: boolean
    CM.Platform.Channels.Models.ChannelTypes.Instagram.ApiInstagramConnectionBase:
      required:
      - id
      - accountId
      - type
      - instagramConnectionId
      - username
      - name
      - isActive
      - isPending
      - isExpired
      - createdOnUtc
      type: object
      properties:
        id:
          format: uuid
          type: string
          example: 00000000-0000-0000-0000-000000000000
        accountId:
          format: uuid
          type: string
          example: 00000000-0000-0000-0000-000000000000
        type:
          enum:
          - ACCOUNT
          type: string
        instagramConnectionId:
          type: string
        username:
          type: string
        name:
          type: string
        instagramUrl:
          type: string
        isActive:
          type: boolean
        isPending:
          type: boolean
        isExpired:
          type: boolean
        createdOnUtc:
          format: date-time
          type: string
        rejectedOnUtc:
          format: date-time
          type: string
        cancelledOnUtc:
          format: date-time
          type: string
        deletedOnUtc:
          format: date-time
          type: string
        entityStatus:
          enum:
          - ACTIVE
          - PENDING
          - ELIGIBLE
          - NOT_VALIDATED
          - CUSTOMER_ACTION_REQUIRED
          - EXPIRED
          - REJECTED
          - CANCELLED
          - DELETED
          type: string
    CM.Platform.Channels.Models.ChannelTypes.Instagram.ApiInstagramConnection:
      required:
      - id
      - accountId
      - type
      - instagramConnectionId
      - username
      - name
      - isActive
      - isPending
      - isExpired
      - createdOnUtc
      type: object
      properties:
        id:
          format: uuid
          type: string
          example: 00000000-0000-0000-0000-000000000000
        channelId:
          format: uuid
          type: string
          example: 00000000-0000-0000-0000-000000000000
        accountId:
          format: uuid
          type: string
          example: 00000000-0000-0000-0000-000000000000
        type:
          enum:
          - ACCOUNT
          type: string
        instagramConnectionId:
          type: string
        username:
          type: string
        name:
          type: string
        instagramUrl:
          type: string
        isActive:
          type: boolean
        isPending:
          type: boolean
        isExpired:
          type: boolean
        fulfilledOnUtc:
          format: date-time
          type: string
        createdOnUtc:
          format: date-time
          type: string
        rejectedOnUtc:
          format: date-time
          type: string
        cancelledOnUtc:
          format: date-time
          type: string
        deletedOnUtc:
          format: date-time
          type: string
        entityStatus:
          enum:
          - ACTIVE
          - PENDING
          - ELIGIBLE
          - NOT_VALIDATED
          - CUSTOMER_ACTION_REQUIRED
          - EXPIRED
          - REJECTED
          - CANCELLED
          - DELETED
          type: string
        rejectionReason:
          type: string
        expirationReason:
          type: string
    CM.Platform.Channels.Models.ChannelTypes.Instagram.ApiInstagramAccount:
      required:
      - id
      - accountId
      - channelRequestId
      - isPending
      - createdOnUtc
      type: object
      properties:
        id:
          format: uuid
          type: string
          example: 00000000-0000-0000-0000-000000000000
        accountId:
          format: uuid
          type: string
          example: 00000000-0000-0000-0000-000000000000
        channelRequestId:
          format: uuid
          type: string
          example: 00000000-0000-0000-0000-000000000000
        isPending:
          type: boolean
        cancelledOnUtc:
          format: date-time
          type: string
        fulfilledOnUtc:
          format: date-time
          type: string
        createdOnUtc:
          format: date-time
          type: string
    CM.Platform.Channels.Models.Internal.Analytics.ApiInternalAnalyticsWhatsAppBusinessAccountAnalyticsResponse:
      required:
      - responseType
      type: object
      properties:
        facebookCurrency:
          type: string
        responseType:
          enum:
          - conversation_analytics
          - pricing_analytics
          type: string
        responseRaw:
          type: string
    CM.Platform.Channels.Models.Internal.Analytics.ApiInternalAnalyticsWhatsAppTemplateAnalyticsResponse:
      type: object
      properties:
        facebookCurrency:
          type: string
        responseRaw:
          type: string
    CM.Platform.Channels.Models.Internal.Meta.Facebook.ApiInternalFacebookConnection:
      required:
      - accountId
      - channelRequestId
      - facebookAccountId
      - id
      - type
      type: object
      properties:
        accountId:
          format: uuid
          type: string
          example: 00000000-0000-0000-0000-000000000000
        channelRequestId:
          format: uuid
          type: string
          example: 00000000-0000-0000-0000-000000000000
        facebookAccountId:
          format: uuid
          type: string
          example: 00000000-0000-0000-0000-000000000000
        id:
          format: uuid
          type: string
          example: 00000000-0000-0000-0000-000000000000
        type:
          enum:
          - PAGE
          type: string
        metaEntity:
          $ref: '#/components/schemas/CM.Platform.Channels.Models.Internal.Meta.ApiInternalMetaEntity'
    CM.Platform.Channels.Models.Internal.Meta.ApiInternalMetaEntity:
      required:
      - id
      type: object
      properties:
        id:
          type: string
        datasetId:
          type: string
        businessIntegrationAccessToken:
          type: string
    CM.Platform.Channels.Models.Internal.Meta.Instagram.ApiInternalInstagramConnection:
      required:
      - accountId
      - channelRequestId
      - instagramAccountId
      - id
      - type
      type: object
      properties:
        accountId:
          format: uuid
          type: string
          example: 00000000-0000-0000-0000-000000000000
        channelRequestId:
          format: uuid
          type: string
          example: 00000000-0000-0000-0000-000000000000
        instagramAccountId:
          format: uuid
          type: string
          example: 00000000-0000-0000-0000-000000000000
        id:
          format: uuid
          type: string
          example: 00000000-0000-0000-0000-000000000000
        type:
          enum:
          - ACCOUNT
          type: string
        metaEntity:
          $ref: '#/components/schemas/CM.Platform.Channels.Models.Internal.Meta.ApiInternalMetaEntity'
    CM.Platform.Channels.Models.Internal.Meta.WhatsApp.ApiInternalWhatsAppTemplate:
      required:
      - id
      - name
      - channelsUrl
      - channelRequestId
      - accountId
      type: object
      properties:
        id:
          format: uuid
          type: string
          example: 00000000-0000-0000-0000-000000000000
        name:
          type: string
        channelsUrl:
          type: string
        channelRequestId:
          format: uuid
          type: string
          example: 00000000-0000-0000-0000-000000000000
        accountId:
          format: uuid
          type: string
          example: 00000000-0000-0000-0000-000000000000
    CM.Platform.Channels.Models.Internal.Meta.WhatsApp.ApiInternalWhatsAppProfile:
      required:
      - accountId
      - channelRequestId
      - businessAccountId
      - id
      - number
      type: object
      properties:
        accountId:
          format: uuid
          type: string
          example: 00000000-0000-0000-0000-000000000000
        channelRequestId:
          format: uuid
          type: string
          example: 00000000-0000-0000-0000-000000000000
        businessAccountId:
          format: uuid
          type: string
          example: 00000000-0000-0000-0000-000000000000
        id:
          format: uuid
          type: string
          example: 00000000-0000-0000-0000-000000000000
        number:
          type: string
        metaBusinessAccount:
          $ref: '#/components/schemas/CM.Platform.Channels.Models.Internal.Meta.WhatsApp.ApiInternalWhatsAppMetaBusinessAccount'
    CM.Platform.Channels.Models.Internal.Meta.WhatsApp.ApiInternalWhatsAppMetaBusinessAccount:
      required:
      - id
      type: object
      properties:
        id:
          type: string
        templateNamespaceId:
          type: string
        datasetId:
          type: string
        businessIntegrationAccessToken:
          type: string
    CM.Platform.Channels.Models.Internal.Meta.WhatsApp.ApiInternalWhatsAppBusinessAccount:
      required:
      - accountId
      - channelRequestId
      - businessAccountId
      type: object
      properties:
        accountId:
          format: uuid
          type: string
          example: 00000000-0000-0000-0000-000000000000
        channelRequestId:
          format: uuid
          type: string
          example: 00000000-0000-0000-0000-000000000000
        businessAccountId:
          format: uuid
          type: string
          example: 00000000-0000-0000-0000-000000000000
        metaBusinessAccount:
          $ref: '#/components/schemas/CM.Platform.Channels.Models.Internal.Meta.WhatsApp.ApiInternalWhatsAppMetaBusinessAccount'
    CM.Platform.Channels.Models.Internal.Analytics.ApiInternalAnalyticsOttMessagesBundle:
      type: object
      properties:
        bundleType:
          enum:
          - MAU
          - CONVERSATIONS
          - MESSAGES
          type: string
        bundleSpecifics:
          $ref: '#/components/schemas/CM.Platform.Channels.Models.Internal.Analytics.ApiInternalAnalyticsOttMessagesBundleSpecifics'
        orderLineIntentionTypes:
          type: array
          items:
            type: string
        effectiveOnUtc:
          format: date-time
          type: string
        effectiveUntilUtc:
          format: date-time
          type: string
    CM.Platform.Channels.Models.Internal.Analytics.ApiInternalAnalyticsOttMessagesBundleAccount:
      type: object
      properties:
        accountId:
          format: uuid
          type: string
          example: 00000000-0000-0000-0000-000000000000
        currency:
          type: string
        organizationId:
          format: int32
          type: integer
        organizationCurrency:
          type: string
        activeBundle:
          $ref: '#/components/schemas/CM.Platform.Channels.Models.Internal.Analytics.ApiInternalAnalyticsOttMessagesBundle'
        bundles:
          type: array
          items:
            $ref: '#/components/schemas/CM.Platform.Channels.Models.Internal.Analytics.ApiInternalAnalyticsOrderLine'
    CM.Platform.Channels.Models.Internal.Analytics.ApiInternalAnalyticsOrderLine:
      type: object
      properties:
        orderProvisionedOnUtc:
          format: date-time
          type: string
        orderlineEffectiveUntilUtc:
          format: date-time
          type: string
        orderline:
          $ref: '#/components/schemas/CM.Platform.Channels.ExternalModels.ApiClients.Orders.ApiIncomingOrderLine'
    CM.Platform.Channels.ExternalModels.ApiClients.Orders.ApiIncomingOrderLine:
      type: object
      properties:
        ID:
          format: uuid
          type: string
          example: 00000000-0000-0000-0000-000000000000
        Superseding:
          format: uuid
          type: string
          example: 00000000-0000-0000-0000-000000000000
        OrderableItemID:
          format: uuid
          type: string
          example: 00000000-0000-0000-0000-000000000000
        OrderableItemReservedName:
          type: string
        OrderID:
          format: uuid
          type: string
          example: 00000000-0000-0000-0000-000000000000
        DisplayName:
          type: string
        FeeQuantity:
          format: int32
          type: integer
        Quantity:
          format: int32
          type: integer
        OrderlineFeeGroupPrice:
          type: array
          items:
            $ref: '#/components/schemas/CM.Platform.Channels.ExternalModels.ApiClients.Orders.ApiOrderlineFeeGroupPrice'
        OrderlineFeeGroupPrices:
          type: array
          items:
            $ref: '#/components/schemas/CM.Platform.Channels.ExternalModels.ApiClients.Orders.ApiOrderlineFeeGroupPrice'
        EffectiveOnUtc:
          format: date-time
          type: string
        PlanID:
          format: uuid
          type: string
          example: 00000000-0000-0000-0000-000000000000
        IntentionTypes:
          type: array
          items:
            $ref: '#/components/schemas/CM.Platform.Channels.ExternalModels.ApiClients.Orders.ApiIntentionType'
        OrderFieldValues:
          type: object
          additionalProperties:
            type: string
    CM.Platform.Channels.ExternalModels.ApiClients.Orders.ApiOrderlineFeeGroupPrice:
      type: object
      properties:
        ID:
          format: uuid
          type: string
          example: 00000000-0000-0000-0000-000000000000
        OrderlineID:
          format: uuid
          type: string
          example: 00000000-0000-0000-0000-000000000000
        SetupFee:
          format: double
          type: number
        PeriodicFee:
          format: double
          type: number
        PeriodicFeeDefault:
          format: double
          type: number
        SetupFeeDefault:
          format: double
          type: number
        Unit:
          format: int32
          type: integer
        OrderlineFeePriceDimensionGroups:
          type: object
          additionalProperties:
            type: string
    CM.Platform.Channels.ExternalModels.ApiClients.Orders.ApiIntentionType:
      type: object
      properties:
        ID:
          format: uuid
          type: string
          example: 00000000-0000-0000-0000-000000000000
        Name:
          type: string
        ReservedName:
          type: string
        RequiresProvisioning:
          type: boolean
    CM.Platform.Channels.Models.Internal.Analytics.ApiInternalAnalyticsMessagingPlatformSubscriptionAccount:
      type: object
      properties:
        accountId:
          format: uuid
          type: string
          example: 00000000-0000-0000-0000-000000000000
        activeProfileCount:
          format: int32
          type: integer
        activeSubscription:
          $ref: '#/components/schemas/CM.Platform.Channels.Models.Internal.Analytics.ApiInternalAnalyticsMessagingPlatformSubscription'
        subscriptions:
          type: array
          items:
            $ref: '#/components/schemas/CM.Platform.Channels.Models.Internal.Analytics.ApiInternalAnalyticsOrderLine'
        channelTypeProfiles:
          type: object
          additionalProperties:
            type: string
        channelCategoryProfiles:
          type: object
          additionalProperties:
            type: string
    CM.Platform.Channels.Models.Internal.Analytics.ApiInternalAnalyticsMessagingPlatformSubscription:
      type: object
      properties:
        subscriptionDimension:
          enum:
          - GO
          - BASIC
          - ADVANCED
          - PRO
          type: string
        orderLineIntentionTypes:
          type: array
          items:
            type: string
        effectiveOnUtc:
          format: date-time
          type: string
        effectiveUntilUtc:
          format: date-time
          type: string
    CM.Platform.Channels.Models.Internal.Analytics.ApiInternalAnalyticsMessagingPlatformSubscriptionAccountProfileCount:
      type: object
      properties:
        accountId:
          format: uuid
          type: string
          example: 00000000-0000-0000-0000-000000000000
        activeProfileCount:
          format: int32
          type: integer
    CM.Platform.Channels.Models.Internal.Analytics.ApiInternalAnalyticsMessagingPlatformSubscriptionAccountProfiles:
      type: object
      properties:
        accountId:
          format: uuid
          type: string
          example: 00000000-0000-0000-0000-000000000000
        activeProfileCount:
          format: int32
          type: integer
        channelTypeProfiles:
          type: object
          additionalProperties:
            type: string
        channelCategoryProfiles:
          type: object
          additionalProperties:
            type: string
    CM.Platform.Channels.Models.Internal.Numbers.ApiInternalNumber:
      required:
      - id
      - number
      - classification
      type: object
      properties:
        id:
          type: string
        number:
          type: string
        logicalAccountId:
          format: uuid
          type: string
          example: 00000000-0000-0000-0000-000000000000
        classification:
          enum:
          - UNKNOWN
          - HOSTED_SHORTCODE
          - DEDICATED_SHORTCODE
          - MOBILE_NUMBER_SIM_BOX
          - VIRTUAL_LONG_NUMBER
          - MACHINE_2_MACHINE
          - TOLL_FREE_NUMBER
          - LOCAL_LONG_NUMBER
          - SIM_HOSTING
          - SIM_CARD
          - TENDLC
          type: string
        campaignRegistryId:
          type: string
        messagingSupplierProductIds:
          type: array
          items:
            format: int32
            type: integer
    CM.Platform.Channels.Models.Internal.Numbers.ApiInternalNumberBase:
      required:
      - number
      type: object
      properties:
        number:
          type: string
        logicalAccountId:
          format: uuid
          type: string
          example: 00000000-0000-0000-0000-000000000000
    CM.Platform.Channels.Models.ChannelTypes.Sms.ApiKeywordClaimBase:
      required:
      - id
      - phoneNumberId
      - country
      - keyword
      - subscriptionPeriodicity
      - isPending
      type: object
      properties:
        id:
          type: string
        channelId:
          format: uuid
          type: string
          example: 00000000-0000-0000-0000-000000000000
        phoneNumberId:
          type: string
        country:
          type: string
        keyword:
          type: string
        subscriptionPeriodicity:
          enum:
          - MONTHLY
          - YEARLY
          - NONE
          type: string
        isPending:
          type: boolean
        claimedOnUtc:
          format: date-time
          type: string
        entityStatus:
          enum:
          - ACTIVE
          - PENDING
          - ELIGIBLE
          - NOT_VALIDATED
          - CUSTOMER_ACTION_REQUIRED
          - EXPIRED
          - REJECTED
          - CANCELLED
          - DELETED
          type: string
        channelState:
          $ref: '#/components/schemas/CM.Platform.Channels.Models.Channels.ApiChannelState'
    CM.Platform.Channels.Models.ChannelTypes.Sms.ApiKeywordClaimResponse:
      required:
      - id
      - phoneNumberId
      - country
      - keyword
      - subscriptionPeriodicity
      - price
      - isPending
      type: object
      properties:
        id:
          type: string
        channelId:
          format: uuid
          type: string
          example: 00000000-0000-0000-0000-000000000000
        phoneNumberId:
          type: string
        country:
          type: string
        keyword:
          type: string
        subscriptionPeriodicity:
          enum:
          - MONTHLY
          - YEARLY
          - NONE
          type: string
        price:
          $ref: '#/components/schemas/CM.Platform.Channels.Models.Pricing.ApiSubscriptionPrice'
        noticePeriodDays:
          format: double
          type: number
        reasonForRejection:
          type: string
        isPending:
          type: boolean
        claimedOnUtc:
          format: date-time
          type: string
        entityStatus:
          enum:
          - ACTIVE
          - PENDING
          - ELIGIBLE
          - NOT_VALIDATED
          - CUSTOMER_ACTION_REQUIRED
          - EXPIRED
          - REJECTED
          - CANCELLED
          - DELETED
          type: string
        channelState:
          $ref: '#/components/schemas/CM.Platform.Channels.Models.Channels.ApiChannelState'
    CM.Platform.Channels.Models.Channels.ApiChannelLeafletBaseResponse:
      required:
      - id
      type: object
      properties:
        id:
          format: uuid
          type: string
          example: 00000000-0000-0000-0000-000000000000
        channelTypeID:
          format: uuid
          type: string
          example: 00000000-0000-0000-0000-000000000000
        channelCategoryID:
          format: uuid
          type: string
          example: 00000000-0000-0000-0000-000000000000
        content:
          type: string
        isPreRelease:
          type: boolean
        createdOnUtc:
          format: date-time
          type: string
    CM.Platform.Channels.Models.ChannelTypes.Line.ApiLineAccount:
      required:
      - id
      - accountId
      - channelRequestId
      - isPending
      - createdOnUtc
      type: object
      properties:
        id:
          format: uuid
          type: string
          example: 00000000-0000-0000-0000-000000000000
        accountId:
          format: uuid
          type: string
          example: 00000000-0000-0000-0000-000000000000
        channelRequestId:
          format: uuid
          type: string
          example: 00000000-0000-0000-0000-000000000000
        isPending:
          type: boolean
        cancelledOnUtc:
          format: date-time
          type: string
        fulfilledOnUtc:
          format: date-time
          type: string
        createdOnUtc:
          format: date-time
          type: string
        entityStatus:
          enum:
          - ACTIVE
          - PENDING
          - ELIGIBLE
          - NOT_VALIDATED
          - CUSTOMER_ACTION_REQUIRED
          - EXPIRED
          - REJECTED
          - CANCELLED
          - DELETED
          type: string
    CM.Platform.Channels.Models.ChannelTypes.Line.ApiLineNotifyServiceBase:
      required:
      - id
      - accountId
      - gmoStoreId
      - isActive
      - isPending
      - approvedOnUtc
      - createdOnUtc
      type: object
      properties:
        id:
          format: uuid
          type: string
          example: 00000000-0000-0000-0000-000000000000
        accountId:
          format: uuid
          type: string
          example: 00000000-0000-0000-0000-000000000000
        notifyServiceID:
          format: int32
          type: integer
        notifyServiceName:
          type: string
        gmoStoreId:
          format: int32
          type: integer
        isActive:
          type: boolean
        entityStatus:
          enum:
          - ACTIVE
          - PENDING
          - ELIGIBLE
          - NOT_VALIDATED
          - CUSTOMER_ACTION_REQUIRED
          - EXPIRED
          - REJECTED
          - CANCELLED
          - DELETED
          type: string
        isPending:
          type: boolean
        approvedOnUtc:
          format: date-time
          type: string
        createdOnUtc:
          format: date-time
          type: string
        rejectedOnUtc:
          format: date-time
          type: string
        cancelledOnUtc:
          format: date-time
          type: string
        deletedOnUtc:
          format: date-time
          type: string
    CM.Platform.Channels.Models.ChannelTypes.Line.ApiLineNotifyServiceRequest:
      required:
      - gmoStoreId
      type: object
      properties:
        notifyServiceID:
          format: int32
          type: integer
        notifyServiceName:
          type: string
        gmoStoreId:
          format: int32
          type: integer
    CM.Platform.Channels.Models.ChannelTypes.Line.ApiLineNotifyService:
      required:
      - id
      - accountId
      - gmoStoreId
      - isActive
      - isPending
      - approvedOnUtc
      - createdOnUtc
      type: object
      properties:
        id:
          format: uuid
          type: string
          example: 00000000-0000-0000-0000-000000000000
        channelId:
          format: uuid
          type: string
          example: 00000000-0000-0000-0000-000000000000
        accountId:
          format: uuid
          type: string
          example: 00000000-0000-0000-0000-000000000000
        notifyServiceID:
          format: int32
          type: integer
        notifyServiceName:
          type: string
        gmoStoreId:
          format: int32
          type: integer
        isActive:
          type: boolean
        entityStatus:
          enum:
          - ACTIVE
          - PENDING
          - ELIGIBLE
          - NOT_VALIDATED
          - CUSTOMER_ACTION_REQUIRED
          - EXPIRED
          - REJECTED
          - CANCELLED
          - DELETED
          type: string
        isPending:
          type: boolean
        approvedOnUtc:
          format: date-time
          type: string
        createdOnUtc:
          format: date-time
          type: string
        rejectedOnUtc:
          format: date-time
          type: string
        cancelledOnUtc:
          format: date-time
          type: string
        deletedOnUtc:
          format: date-time
          type: string
        rejectionReason:
          type: string
    CM.Platform.Channels.Models.Maintenance.ApiMaintenanceWhatsAppSandboxCleanup:
      type: object
      properties:
        channelGroup:
          $ref: '#/components/schemas/CM.Platform.Channels.Models.Channels.ApiChannelGroup'
        sandboxNumbers:
          type: array
          items:
            type: string
    CM.Platform.Channels.Models.ChannelTypes.MobilePush.ApiMobilePushAndroidApplication:
      type: object
      properties:
        certificate:
          type: string
    CM.Platform.Channels.Models.ChannelTypes.MobilePush.ApiMobilePushApplication:
      required:
      - id
      - accountId
      - isActive
      - isPending
      - requiresSettings
      - createdOnUtc
      type: object
      properties:
        id:
          format: uuid
          type: string
          example: 00000000-0000-0000-0000-000000000000
        channelId:
          format: uuid
          type: string
          example: 00000000-0000-0000-0000-000000000000
        accountId:
          format: uuid
          type: string
          example: 00000000-0000-0000-0000-000000000000
        applicationID:
          type: string
        isIosExpired:
          type: boolean
          readOnly: true
        isIosActivated:
          type: boolean
        isAndroidActivated:
          type: boolean
        applicationOtpSender:
          type: string
        applicationName:
          type: string
        androidSettings:
          type: string
        isActive:
          type: boolean
        entityStatus:
          enum:
          - ACTIVE
          - PENDING
          - ELIGIBLE
          - NOT_VALIDATED
          - CUSTOMER_ACTION_REQUIRED
          - EXPIRED
          - REJECTED
          - CANCELLED
          - DELETED
          type: string
        iosSettings:
          $ref: '#/components/schemas/CM.Platform.Channels.Models.ChannelTypes.MobilePush.ApiMobilePushIosApplication'
        isPending:
          type: boolean
        requiresSettings:
          type: boolean
          readOnly: true
        fulfilledOnUtc:
          format: date-time
          type: string
        createdOnUtc:
          format: date-time
          type: string
        rejectedOnUtc:
          format: date-time
          type: string
        cancelledOnUtc:
          format: date-time
          type: string
        deletedOnUtc:
          format: date-time
          type: string
        iosExpiresOnUtc:
          format: date-time
          type: string
        rejectionReason:
          type: string
    CM.Platform.Channels.Models.ChannelTypes.MobilePush.ApiMobilePushApplicationBase:
      required:
      - id
      - accountId
      - isActive
      - isPending
      - requiresSettings
      - createdOnUtc
      type: object
      properties:
        id:
          format: uuid
          type: string
          example: 00000000-0000-0000-0000-000000000000
        accountId:
          format: uuid
          type: string
          example: 00000000-0000-0000-0000-000000000000
        applicationID:
          type: string
        isIosExpired:
          type: boolean
          readOnly: true
        isIosActivated:
          type: boolean
        isAndroidActivated:
          type: boolean
        applicationOtpSender:
          type: string
        applicationName:
          type: string
        androidSettings:
          type: string
        isActive:
          type: boolean
        entityStatus:
          enum:
          - ACTIVE
          - PENDING
          - ELIGIBLE
          - NOT_VALIDATED
          - CUSTOMER_ACTION_REQUIRED
          - EXPIRED
          - REJECTED
          - CANCELLED
          - DELETED
          type: string
        iosSettings:
          $ref: '#/components/schemas/CM.Platform.Channels.Models.ChannelTypes.MobilePush.ApiMobilePushIosApplication'
        isPending:
          type: boolean
        requiresSettings:
          type: boolean
          readOnly: true
        createdOnUtc:
          format: date-time
          type: string
        rejectedOnUtc:
          format: date-time
          type: string
        cancelledOnUtc:
          format: date-time
          type: string
        deletedOnUtc:
          format: date-time
          type: string
        iosExpiresOnUtc:
          format: date-time
          type: string
    CM.Platform.Channels.Models.ChannelTypes.MobilePush.ApiMobilePushApplicationRequest:
      type: object
      properties:
        applicationID:
          type: string
        applicationOtpSender:
          type: string
        applicationName:
          type: string
        androidSettings:
          type: string
        iosSettings:
          $ref: '#/components/schemas/CM.Platform.Channels.Models.ChannelTypes.MobilePush.ApiMobilePushIosApplication'
    CM.Platform.Channels.Models.ChannelTypes.MobilePush.ApiMobilePushAccount:
      required:
      - id
      - accountId
      - channelRequestId
      - isPending
      - createdOnUtc
      type: object
      properties:
        id:
          format: uuid
          type: string
          example: 00000000-0000-0000-0000-000000000000
        accountId:
          format: uuid
          type: string
          example: 00000000-0000-0000-0000-000000000000
        channelRequestId:
          format: uuid
          type: string
          example: 00000000-0000-0000-0000-000000000000
        isPending:
          type: boolean
        cancelledOnUtc:
          format: date-time
          type: string
        fulfilledOnUtc:
          format: date-time
          type: string
        createdOnUtc:
          format: date-time
          type: string
        entityStatus:
          enum:
          - ACTIVE
          - PENDING
          - ELIGIBLE
          - NOT_VALIDATED
          - CUSTOMER_ACTION_REQUIRED
          - EXPIRED
          - REJECTED
          - CANCELLED
          - DELETED
          type: string
    CM.Platform.Channels.ExternalModels.ApiClients.Orders.ApiIncomingOrder:
      type: object
      properties:
        ID:
          format: uuid
          type: string
          example: 00000000-0000-0000-0000-000000000000
        Currency:
          type: string
        Orderlines:
          type: array
          items:
            $ref: '#/components/schemas/CM.Platform.Channels.ExternalModels.ApiClients.Orders.ApiIncomingOrderLine'
        LogicalAccountGuid:
          format: uuid
          type: string
          example: 00000000-0000-0000-0000-000000000000
        IsTrial:
          type: boolean
    FluentValidation.Results.ValidationResult:
      type: object
      properties:
        IsValid:
          type: boolean
          readOnly: true
        Errors:
          type: array
          items:
            $ref: '#/components/schemas/FluentValidation.Results.ValidationFailure'
        RuleSetsExecuted:
          type: array
          items:
            type: string
    FluentValidation.Results.ValidationFailure:
      type: object
      properties:
        PropertyName:
          type: string
        ErrorMessage:
          type: string
        AttemptedValue:
          type: object
        CustomState:
          type: object
        Severity:
          enum:
          - Error
          - Warning
          - Info
          type: string
        ErrorCode:
          type: string
        FormattedMessagePlaceholderValues:
          type: object
          additionalProperties:
            type: object
    CM.Platform.Channels.Models.Organizations.ApiOrganizationConfiguration:
      required:
      - crmId
      - name
      - contactName
      - contactEmailAddress
      - accountProvisioningItems
      - createdOnUtc
      type: object
      properties:
        crmId:
          format: int32
          type: integer
        name:
          type: string
        contactName:
          type: string
        contactEmailAddress:
          type: string
        countryId:
          type: string
        currencyId:
          type: string
        languageId:
          type: string
        accountProvisioningItems:
          type: array
          items:
            type: string
        createdOnUtc:
          format: date-time
          type: string
    CM.Platform.Channels.Models.Organizations.ApiOrganizationAccount:
      required:
      - id
      type: object
      properties:
        id:
          format: uuid
          type: string
          example: 00000000-0000-0000-0000-000000000000
        name:
          type: string
        currencyId:
          type: string
        billingTypeID:
          type: string
    CM.Platform.Channels.Models.Organizations.ApiOrganizationAccountRequest:
      type: object
      properties:
        name:
          type: string
    CM.Platform.Channels.Models.ChannelTypes.Payments.ApiPaymentsCredentialsRequest:
      required:
      - name
      - isActive
      type: object
      properties:
        name:
          type: string
        type:
          enum:
          - CMPAYMENTS
          - WEBCHECKOUT
          - IDEALPLATFORM
          type: string
        cmPaymentsAttributes:
          $ref: '#/components/schemas/CM.Platform.Channels.Models.ChannelTypes.Payments.ApiCmPaymentsAttributes'
        webCheckoutAttributes:
          $ref: '#/components/schemas/CM.Platform.Channels.Models.ChannelTypes.Payments.ApiWebCheckoutAttributes'
        idealPlatformAttributes:
          $ref: '#/components/schemas/CM.Platform.Channels.Models.ChannelTypes.Payments.ApiIdealPlatformAttributes'
        isActive:
          type: boolean
    CM.Platform.Channels.Models.ChannelTypes.Payments.ApiCmPaymentsAttributes:
      required:
      - key
      - secret
      type: object
      properties:
        key:
          type: string
        secret:
          type: string
        isMock:
          type: boolean
    CM.Platform.Channels.Models.ChannelTypes.Payments.ApiWebCheckoutAttributes:
      required:
      - username
      - password
      - clientId
      - secret
      - settings
      type: object
      properties:
        username:
          type: string
        password:
          type: string
        clientId:
          type: string
        secret:
          type: string
        settings:
          $ref: '#/components/schemas/CM.Platform.Channels.Models.ChannelTypes.Payments.ApiWebCheckoutSettings'
        isMock:
          type: boolean
    CM.Platform.Channels.Models.ChannelTypes.Payments.ApiIdealPlatformAttributes:
      required:
      - accessToken
      type: object
      properties:
        accessToken:
          type: string
        isMock:
          type: boolean
    CM.Platform.Channels.Models.ChannelTypes.Payments.ApiWebCheckoutSettings:
      type: object
      properties:
        countries:
          type: array
          items:
            type: string
        languages:
          type: array
          items:
            type: string
        templates:
          type: array
          items:
            type: string
    CM.Platform.Channels.Models.ChannelTypes.Payments.ApiPaymentsCredentialsResponse:
      required:
      - id
      - name
      - isActive
      - createdOnUtc
      type: object
      properties:
        id:
          format: uuid
          type: string
          example: 00000000-0000-0000-0000-000000000000
        name:
          type: string
        type:
          enum:
          - CMPAYMENTS
          - WEBCHECKOUT
          - IDEALPLATFORM
          type: string
        attributes:
          $ref: '#/components/schemas/CM.Platform.Channels.Models.ChannelTypes.Payments.ApiPaymentsCredentialsAttributes'
        cmPaymentsAttributes:
          $ref: '#/components/schemas/CM.Platform.Channels.Models.ChannelTypes.Payments.ApiCmPaymentsAttributes'
        webCheckoutAttributes:
          $ref: '#/components/schemas/CM.Platform.Channels.Models.ChannelTypes.Payments.ApiWebCheckoutAttributes'
        idealPlatformAttributes:
          $ref: '#/components/schemas/CM.Platform.Channels.Models.ChannelTypes.Payments.ApiIdealPlatformAttributes'
        isActive:
          type: boolean
        updatedOnUtc:
          format: date-time
          type: string
        createdOnUtc:
          format: date-time
          type: string
        entityStatus:
          enum:
          - ACTIVE
          - PENDING
          - ELIGIBLE
          - NOT_VALIDATED
          - CUSTOMER_ACTION_REQUIRED
          - EXPIRED
          - REJECTED
          - CANCELLED
          - DELETED
          type: string
    CM.Platform.Channels.Models.ChannelTypes.Payments.ApiPaymentsCredentialsAttributes:
      type: object
      properties:
        isMock:
          type: boolean
    CM.Platform.Channels.Models.ChannelTypes.Sms.ApiPhoneNumberResponse:
      required:
      - id
      - numberType
      - number
      - isShared
      type: object
      properties:
        id:
          type: string
        accountId:
          format: uuid
          type: string
          example: 00000000-0000-0000-0000-000000000000
        numberType:
          $ref: '#/components/schemas/CM.Platform.Channels.Models.ChannelTypes.Sms.ApiNumberTypeResponse'
        number:
          type: string
        isShared:
          type: boolean
        ownedSinceUtc:
          format: date-time
          type: string
    CM.Platform.Channels.Models.ChannelTypes.Rcs.ApiRcsAccount:
      required:
      - id
      - accountId
      - channelRequestId
      - isPending
      - createdOnUtc
      type: object
      properties:
        id:
          format: uuid
          type: string
          example: 00000000-0000-0000-0000-000000000000
        accountId:
          format: uuid
          type: string
          example: 00000000-0000-0000-0000-000000000000
        channelRequestId:
          format: uuid
          type: string
          example: 00000000-0000-0000-0000-000000000000
        isPending:
          type: boolean
        cancelledOnUtc:
          format: date-time
          type: string
        fulfilledOnUtc:
          format: date-time
          type: string
        createdOnUtc:
          format: date-time
          type: string
    CM.Platform.Channels.Models.ChannelTypes.Rcs.ApiRcsProfileBase:
      required:
      - id
      - channelRequestId
      - accountId
      - isActive
      - isPending
      - createdOnUtc
      type: object
      properties:
        id:
          format: uuid
          type: string
          example: 00000000-0000-0000-0000-000000000000
        channelRequestId:
          format: uuid
          type: string
          example: 00000000-0000-0000-0000-000000000000
        accountId:
          format: uuid
          type: string
          example: 00000000-0000-0000-0000-000000000000
        name:
          type: string
        heroImage:
          type: string
        logoImage:
          type: string
        isActive:
          type: boolean
        isPending:
          type: boolean
        createdOnUtc:
          format: date-time
          type: string
        rejectedOnUtc:
          format: date-time
          type: string
        cancelledOnUtc:
          format: date-time
          type: string
        entityStatus:
          enum:
          - ACTIVE
          - PENDING
          - ELIGIBLE
          - NOT_VALIDATED
          - CUSTOMER_ACTION_REQUIRED
          - EXPIRED
          - REJECTED
          - CANCELLED
          - DELETED
          type: string
    CM.Platform.Channels.Models.ChannelTypes.Rcs.ApiRcsProfile:
      required:
      - id
      - channelRequestId
      - accountId
      - isActive
      - isPending
      - createdOnUtc
      type: object
      properties:
        id:
          format: uuid
          type: string
          example: 00000000-0000-0000-0000-000000000000
        channelRequestId:
          format: uuid
          type: string
          example: 00000000-0000-0000-0000-000000000000
        channelId:
          format: uuid
          type: string
          example: 00000000-0000-0000-0000-000000000000
        accountId:
          format: uuid
          type: string
          example: 00000000-0000-0000-0000-000000000000
        name:
          type: string
        heroImage:
          type: string
        logoImage:
          type: string
        isActive:
          type: boolean
        isPending:
          type: boolean
        fulfilledOnUtc:
          format: date-time
          type: string
        createdOnUtc:
          format: date-time
          type: string
        rejectionReason:
          type: string
        rejectedOnUtc:
          format: date-time
          type: string
        cancelledOnUtc:
          format: date-time
          type: string
        entityStatus:
          enum:
          - ACTIVE
          - PENDING
          - ELIGIBLE
          - NOT_VALIDATED
          - CUSTOMER_ACTION_REQUIRED
          - EXPIRED
          - REJECTED
          - CANCELLED
          - DELETED
          type: string
    CM.Platform.Channels.ExternalModels.ApiClients.TextCore.WebhookConfiguration.ScenarioV2:
      type: object
      properties:
        id:
          format: int32
          type: integer
        created:
          format: date-time
          type: string
        generatedbyapi:
          type: boolean
        country:
          type: string
        shortcode:
          type: string
        alias:
          type: string
        keyword:
          type: string
        thirdWord:
          type: string
        customer:
          format: int32
          type: integer
        reference:
          type: string
        usemosession:
          type: boolean
        active:
          type: boolean
        start:
          format: date-time
          type: string
        stop:
          format: date-time
          type: string
        mosessiononly:
          type: boolean
        customgrouping:
          type: string
        customgrouping2:
          type: string
        customgrouping3:
          type: string
        mccmnc:
          type: string
        serviceid:
          format: int32
          type: integer
        mtsessiononly:
          type: boolean
        islegislationscenario:
          type: boolean
        taxongames:
          type: boolean
        medium:
          type: string
        regularexpressions:
          type: array
          items:
            type: string
    CM.Platform.Channels.ExternalModels.ApiClients.TextCore.WebhookConfiguration.ScenarioV2Base:
      type: object
      properties:
        country:
          type: string
        shortcode:
          type: string
        alias:
          type: string
        keyword:
          type: string
        thirdWord:
          type: string
        customer:
          format: int32
          type: integer
        reference:
          type: string
        usemosession:
          type: boolean
        active:
          type: boolean
        start:
          format: date-time
          type: string
        stop:
          format: date-time
          type: string
        mosessiononly:
          type: boolean
        customgrouping:
          type: string
        customgrouping2:
          type: string
        customgrouping3:
          type: string
        mccmnc:
          type: string
        serviceid:
          format: int32
          type: integer
        mtsessiononly:
          type: boolean
        islegislationscenario:
          type: boolean
        taxongames:
          type: boolean
        medium:
          type: string
        regularexpressions:
          type: array
          items:
            type: string
    CM.Platform.Channels.ExternalModels.ApiClients.TextCore.WebhookConfiguration.MoHandlerV2:
      type: object
      properties:
        id:
          format: int32
          type: integer
        created:
          format: date-time
          type: string
        generatedbyapi:
          type: boolean
        customer:
          format: int32
          type: integer
        name:
          type: string
        description:
          type: string
        destination:
          type: string
        platformlocation:
          format: int32
          type: integer
        protocol:
          enum:
          - HTTP
          - SMPP
          type: string
        configuration:
          $ref: '#/components/schemas/CM.Platform.Channels.ExternalModels.ApiClients.TextCore.WebhookConfiguration.MoHandlerV2TemplatedConfig'
        customConfiguration:
          $ref: '#/components/schemas/CM.Platform.Channels.ExternalModels.ApiClients.TextCore.WebhookConfiguration.MoHandlerCustomConfig'
    CM.Platform.Channels.ExternalModels.ApiClients.TextCore.WebhookConfiguration.MoHandlerV2TemplatedConfig:
      type: object
      properties:
        motemplateid:
          format: int32
          type: integer
        url:
          type: string
        deleteonexception:
          type: boolean
        emailaddresses:
          type: array
          items:
            type: string
        amountofretries:
          format: int32
          type: integer
        retryintervalinseconds:
          format: int32
          type: integer
        httpHeaders:
          type: object
          additionalProperties:
            type: string
        oauthsettingsid:
          format: int32
          type: integer
        mtreplyconfig:
          $ref: '#/components/schemas/CM.Platform.Channels.ExternalModels.ApiClients.TextCore.WebhookConfiguration.MoHandlerV2TemplatedConfigMtReplyConfig'
    CM.Platform.Channels.ExternalModels.ApiClients.TextCore.WebhookConfiguration.MoHandlerCustomConfig:
      type: object
      properties:
        url:
          type: string
        method:
          type: string
        data:
          type: string
        encoding:
          type: string
        httpHeaders:
          type: object
          additionalProperties:
            type: string
    CM.Platform.Channels.ExternalModels.ApiClients.TextCore.WebhookConfiguration.MoHandlerV2TemplatedConfigMtReplyConfig:
      type: object
      properties:
        from:
          type: string
        message:
          type: string
        tariff:
          format: int32
          type: integer
        customGrouping:
          type: string
        customGrouping2:
          type: string
        customGrouping3:
          type: string
        allowedChannels:
          type: array
          items:
            type: string
    CM.Platform.Channels.Models.EventLogging.ApiChannelsScenarioEventAdmin:
      required:
      - id
      - scenarioId
      - eventType
      - entityState
      - createdOnUtc
      type: object
      properties:
        id:
          format: uuid
          type: string
          example: 00000000-0000-0000-0000-000000000000
        scenarioId:
          format: int32
          type: integer
        accountId:
          format: uuid
          type: string
          example: 00000000-0000-0000-0000-000000000000
        ssoAccountId:
          format: uuid
          type: string
          example: 00000000-0000-0000-0000-000000000000
        eventType:
          type: string
        eventSubType:
          type: string
        entityState:
          type: object
        eventMetaData:
          $ref: '#/components/schemas/CM.Platform.Channels.Models.EventLogging.ApiChannelsEventMetaData'
        createdOnUtc:
          format: date-time
          type: string
    CM.Platform.Channels.ExternalModels.ApiClients.TextCore.WebhookConfiguration.Country:
      type: object
      properties:
        id:
          format: int32
          type: integer
        iso3166code:
          type: string
        nameen:
          type: string
        namenl:
          type: string
        prefix:
          type: string
    CM.Platform.Channels.ExternalModels.ApiClients.TextCore.WebhookConfiguration.MoHandlerV2Base:
      type: object
      properties:
        customer:
          format: int32
          type: integer
        name:
          type: string
        description:
          type: string
        destination:
          type: string
        platformlocation:
          format: int32
          type: integer
        protocol:
          enum:
          - HTTP
          - SMPP
          type: string
        configuration:
          $ref: '#/components/schemas/CM.Platform.Channels.ExternalModels.ApiClients.TextCore.WebhookConfiguration.MoHandlerV2TemplatedConfig'
        customConfiguration:
          $ref: '#/components/schemas/CM.Platform.Channels.ExternalModels.ApiClients.TextCore.WebhookConfiguration.MoHandlerCustomConfig'
    CM.Platform.Channels.Models.EventLogging.ApiChannelsMoHandlerEventAdmin:
      required:
      - id
      - moHandlerId
      - eventType
      - entityState
      - createdOnUtc
      type: object
      properties:
        id:
          format: uuid
          type: string
          example: 00000000-0000-0000-0000-000000000000
        moHandlerId:
          format: int32
          type: integer
        accountId:
          format: uuid
          type: string
          example: 00000000-0000-0000-0000-000000000000
        ssoAccountId:
          format: uuid
          type: string
          example: 00000000-0000-0000-0000-000000000000
        eventType:
          type: string
        eventSubType:
          type: string
        entityState:
          type: object
        eventMetaData:
          $ref: '#/components/schemas/CM.Platform.Channels.Models.EventLogging.ApiChannelsEventMetaData'
        createdOnUtc:
          format: date-time
          type: string
    CM.Platform.Channels.ExternalModels.ApiClients.TextCore.WebhookConfiguration.MoHandlerV2MoTemplate:
      type: object
      properties:
        id:
          format: int32
          type: integer
        name:
          type: string
        data:
          type: string
        httpheaders:
          type: object
          additionalProperties:
            type: string
        type:
          type: string
        metadata:
          type: object
          additionalProperties:
            $ref: '#/components/schemas/CM.Platform.Channels.ExternalModels.ApiClients.TextCore.WebhookConfiguration.MoHandlerV2MoTemplatePropertyMetadata'
    CM.Platform.Channels.ExternalModels.ApiClients.TextCore.WebhookConfiguration.MoHandlerV2MoTemplatePropertyMetadata:
      type: object
      properties:
        value:
          type: string
        type:
          type: string
    CM.Platform.Channels.ExternalModels.ApiClients.TextCore.WebhookConfiguration.MoHandlerV2PlatformLocation:
      type: object
      properties:
        id:
          format: int32
          type: integer
        name:
          type: string
    CM.Platform.Channels.Models.ChannelTypes.Sms.ApiTenDlcBrandBase:
      required:
      - id
      - accountId
      - isPending
      - isActive
      - createdOnUtc
      type: object
      properties:
        id:
          format: uuid
          type: string
          example: 00000000-0000-0000-0000-000000000000
        accountId:
          format: uuid
          type: string
          example: 00000000-0000-0000-0000-000000000000
        campaignRegistryId:
          type: string
        campaignRegistryStatus:
          enum:
          - SELF_DECLARED
          - UNVERIFIED
          - VERIFIED
          - VETTED_VERIFIED
          type: string
        companyName:
          type: string
        campaignRegistryBrandRelationship:
          enum:
          - BASIC_ACCOUNT
          - SMALL_ACCOUNT
          - MEDIUM_ACCOUNT
          - LARGE_ACCOUNT
          - KEY_ACCOUNT
          type: string
        isPending:
          type: boolean
        isActive:
          type: boolean
        fulfilledOnUtc:
          format: date-time
          type: string
        deletedOnUtc:
          format: date-time
          type: string
        rejectedOnUtc:
          format: date-time
          type: string
        updatedOnUtc:
          format: date-time
          type: string
        createdOnUtc:
          format: date-time
          type: string
        entityStatus:
          enum:
          - ACTIVE
          - PENDING
          - ELIGIBLE
          - NOT_VALIDATED
          - CUSTOMER_ACTION_REQUIRED
          - EXPIRED
          - REJECTED
          - CANCELLED
          - DELETED
          type: string
    CM.Platform.Channels.Models.ChannelTypes.Sms.ApiTenDlcBrand:
      required:
      - id
      - accountId
      - isPending
      - isActive
      - createdOnUtc
      type: object
      properties:
        id:
          format: uuid
          type: string
          example: 00000000-0000-0000-0000-000000000000
        accountId:
          format: uuid
          type: string
          example: 00000000-0000-0000-0000-000000000000
        channelId:
          format: uuid
          type: string
          example: 00000000-0000-0000-0000-000000000000
        campaignRegistryId:
          type: string
        campaignRegistryStatus:
          enum:
          - SELF_DECLARED
          - UNVERIFIED
          - VERIFIED
          - VETTED_VERIFIED
          type: string
        companyName:
          type: string
        campaignRegistryBrandRelationship:
          enum:
          - BASIC_ACCOUNT
          - SMALL_ACCOUNT
          - MEDIUM_ACCOUNT
          - LARGE_ACCOUNT
          - KEY_ACCOUNT
          type: string
        isPending:
          type: boolean
        isActive:
          type: boolean
        vettingScore:
          format: int32
          type: integer
        fulfilledOnUtc:
          format: date-time
          type: string
        deletedOnUtc:
          format: date-time
          type: string
        rejectedOnUtc:
          format: date-time
          type: string
        updatedOnUtc:
          format: date-time
          type: string
        rejectionReason:
          type: string
        createdOnUtc:
          format: date-time
          type: string
        entityStatus:
          enum:
          - ACTIVE
          - PENDING
          - ELIGIBLE
          - NOT_VALIDATED
          - CUSTOMER_ACTION_REQUIRED
          - EXPIRED
          - REJECTED
          - CANCELLED
          - DELETED
          type: string
    CM.Platform.Channels.Models.RequestForms.ApiRequestFormInputResponse:
      type: object
      properties:
        id:
          format: uuid
          type: string
          example: 00000000-0000-0000-0000-000000000000
        formElementId:
          format: uuid
          type: string
          example: 00000000-0000-0000-0000-000000000000
        inputValue:
          type: string
        createdOnUtc:
          format: date-time
          type: string
    CM.Platform.Channels.Models.ChannelTypes.Sms.ApiTenDlcCampaignBase:
      required:
      - id
      - accountId
      - brandId
      - description
      - isPending
      - isActive
      - createdOnUtc
      type: object
      properties:
        id:
          format: uuid
          type: string
          example: 00000000-0000-0000-0000-000000000000
        accountId:
          format: uuid
          type: string
          example: 00000000-0000-0000-0000-000000000000
        brandId:
          format: uuid
          type: string
          example: 00000000-0000-0000-0000-000000000000
        campaignRegistryId:
          type: string
        campaignRegistryStatus:
          enum:
          - APPROVED
          - REJECTED
          - EXPIRED
          type: string
        name:
          type: string
        description:
          type: string
        phoneNumberRequestId:
          format: uuid
          type: string
          example: 00000000-0000-0000-0000-000000000000
        isPending:
          type: boolean
        isActive:
          type: boolean
        fulfilledOnUtc:
          format: date-time
          type: string
        rejectedOnUtc:
          format: date-time
          type: string
        expiredOnUtc:
          format: date-time
          type: string
        updatedOnUtc:
          format: date-time
          type: string
        deletedOnUtc:
          format: date-time
          type: string
        approvedOnUtc:
          format: date-time
          type: string
        createdOnUtc:
          format: date-time
          type: string
        entityStatus:
          enum:
          - ACTIVE
          - PENDING
          - ELIGIBLE
          - NOT_VALIDATED
          - CUSTOMER_ACTION_REQUIRED
          - EXPIRED
          - REJECTED
          - CANCELLED
          - DELETED
          type: string
    CM.Platform.Channels.Models.ChannelTypes.Sms.ApiTenDlcCampaign:
      required:
      - id
      - accountId
      - channelId
      - brandId
      - description
      - isPending
      - isActive
      - createdOnUtc
      type: object
      properties:
        id:
          format: uuid
          type: string
          example: 00000000-0000-0000-0000-000000000000
        accountId:
          format: uuid
          type: string
          example: 00000000-0000-0000-0000-000000000000
        channelId:
          format: uuid
          type: string
          example: 00000000-0000-0000-0000-000000000000
        brandId:
          format: uuid
          type: string
          example: 00000000-0000-0000-0000-000000000000
        campaignRegistryId:
          type: string
        campaignRegistryStatus:
          enum:
          - APPROVED
          - REJECTED
          - EXPIRED
          type: string
        name:
          type: string
        description:
          type: string
        phoneNumberRequestId:
          format: uuid
          type: string
          example: 00000000-0000-0000-0000-000000000000
        rejectionReason:
          type: string
        isPending:
          type: boolean
        isActive:
          type: boolean
        fulfilledOnUtc:
          format: date-time
          type: string
        rejectedOnUtc:
          format: date-time
          type: string
        expiredOnUtc:
          format: date-time
          type: string
        updatedOnUtc:
          format: date-time
          type: string
        deletedOnUtc:
          format: date-time
          type: string
        approvedOnUtc:
          format: date-time
          type: string
        createdOnUtc:
          format: date-time
          type: string
        entityStatus:
          enum:
          - ACTIVE
          - PENDING
          - ELIGIBLE
          - NOT_VALIDATED
          - CUSTOMER_ACTION_REQUIRED
          - EXPIRED
          - REJECTED
          - CANCELLED
          - DELETED
          type: string
    CM.Platform.Channels.Models.Channels.ApiTrialStatus:
      type: object
      properties:
        messagingTrialActive:
          type: boolean
        messagingNumberWhitelist:
          type: array
          items:
            type: string
    CM.Platform.Channels.Models.ChannelTypes.Twitter.ApiTwitterAccountBase:
      required:
      - id
      - accountId
      - userId
      - screenName
      - isActive
      - isPending
      - isApproved
      - createdOnUtc
      type: object
      properties:
        id:
          format: uuid
          type: string
          example: 00000000-0000-0000-0000-000000000000
        accountId:
          format: uuid
          type: string
          example: 00000000-0000-0000-0000-000000000000
        channelRequestId:
          format: uuid
          type: string
          example: 00000000-0000-0000-0000-000000000000
        userId:
          type: string
        screenName:
          type: string
        isActive:
          type: boolean
        isPending:
          type: boolean
        isApproved:
          type: boolean
        createdOnUtc:
          format: date-time
          type: string
        rejectedOnUtc:
          format: date-time
          type: string
        cancelledOnUtc:
          format: date-time
          type: string
        deletedOnUtc:
          format: date-time
          type: string
        entityStatus:
          enum:
          - ACTIVE
          - PENDING
          - ELIGIBLE
          - NOT_VALIDATED
          - CUSTOMER_ACTION_REQUIRED
          - EXPIRED
          - REJECTED
          - CANCELLED
          - DELETED
          type: string
    CM.Platform.Channels.Models.ChannelTypes.Twitter.ApiTwitterAccount:
      required:
      - id
      - accountId
      - userId
      - screenName
      - isActive
      - isPending
      - isApproved
      - createdOnUtc
      type: object
      properties:
        id:
          format: uuid
          type: string
          example: 00000000-0000-0000-0000-000000000000
        channelId:
          format: uuid
          type: string
          example: 00000000-0000-0000-0000-000000000000
        accountId:
          format: uuid
          type: string
          example: 00000000-0000-0000-0000-000000000000
        channelRequestId:
          format: uuid
          type: string
          example: 00000000-0000-0000-0000-000000000000
        userId:
          type: string
        screenName:
          type: string
        isActive:
          type: boolean
        isPending:
          type: boolean
        isApproved:
          type: boolean
        fulfilledOnUtc:
          format: date-time
          type: string
        createdOnUtc:
          format: date-time
          type: string
        rejectionReason:
          type: string
        rejectedOnUtc:
          format: date-time
          type: string
        cancelledOnUtc:
          format: date-time
          type: string
        accountBanner:
          type: string
        deletedOnUtc:
          format: date-time
          type: string
        entityStatus:
          enum:
          - ACTIVE
          - PENDING
          - ELIGIBLE
          - NOT_VALIDATED
          - CUSTOMER_ACTION_REQUIRED
          - EXPIRED
          - REJECTED
          - CANCELLED
          - DELETED
          type: string
        accountImage:
          type: string
        location:
          type: string
        description:
          type: string
        name:
          type: string
    CM.Platform.Channels.Models.ChannelTypes.Twitter.ApiTwitterAccountOAuth:
      required:
      - oAuthTokenSecret
      - twitterAuthenticationUrl
      type: object
      properties:
        oAuthTokenSecret:
          type: string
        twitterAuthenticationUrl:
          type: string
    CM.Platform.Channels.Models.ChannelTypes.vSms.ApiVSmsAccount:
      required:
      - id
      - accountId
      - channelRequestId
      - isPending
      - createdOnUtc
      type: object
      properties:
        id:
          format: uuid
          type: string
          example: 00000000-0000-0000-0000-000000000000
        accountId:
          format: uuid
          type: string
          example: 00000000-0000-0000-0000-000000000000
        channelRequestId:
          format: uuid
          type: string
          example: 00000000-0000-0000-0000-000000000000
        isPending:
          type: boolean
        cancelledOnUtc:
          format: date-time
          type: string
        fulfilledOnUtc:
          format: date-time
          type: string
        createdOnUtc:
          format: date-time
          type: string
    CM.Platform.Channels.Models.ChannelTypes.Viber.ApiViberAccount:
      required:
      - id
      - accountId
      - serviceId
      - phoneNumber
      - name
      - isActive
      - isPending
      - createdOnUtc
      type: object
      properties:
        id:
          format: uuid
          type: string
          example: 00000000-0000-0000-0000-000000000000
        accountId:
          format: uuid
          type: string
          example: 00000000-0000-0000-0000-000000000000
        channelRequestId:
          format: uuid
          type: string
          example: 00000000-0000-0000-0000-000000000000
        channelId:
          format: uuid
          type: string
          example: 00000000-0000-0000-0000-000000000000
        serviceId:
          type: string
        phoneNumber:
          type: string
        name:
          type: string
        isActive:
          type: boolean
        isPending:
          type: boolean
        fulfilledOnUtc:
          format: date-time
          type: string
        createdOnUtc:
          format: date-time
          type: string
        rejectionReason:
          type: string
        rejectedOnUtc:
          format: date-time
          type: string
        cancelledOnUtc:
          format: date-time
          type: string
        deletedOnUtc:
          format: date-time
          type: string
        entityStatus:
          enum:
          - ACTIVE
          - PENDING
          - ELIGIBLE
          - NOT_VALIDATED
          - CUSTOMER_ACTION_REQUIRED
          - EXPIRED
          - REJECTED
          - CANCELLED
          - DELETED
          type: string
    CM.Platform.Channels.Models.ChannelTypes.WhatsApp.ApiWhatsAppBusinessAccountMarketingLiteApiEligibility:
      required:
      - status
      type: object
      properties:
        status:
          enum:
          - UNKNOWN
          - NONE
          - PENDING_ONBOARDING_INITIATED
          - INELIGIBLE_ON_BEHALF_OF_WABA
          - INELIGIBLE_INACTIVE_OR_RESTRICTED
          - INELIGIBLE_COUNTRY_NOT_SUPPORTED
          - INELIGIBLE_USING_WHATSAPP_BUSINESS_APP
          - ELIGIBLE
          - PENDING_VALID_PAYMENT_METHOD
          - PENDING_INTERNAL_SETUP
          - ONBOARDED
          type: string
        metaBusinessInfo:
          $ref: '#/components/schemas/CM.Platform.Channels.Models.ChannelTypes.Meta.ApiMetaBusiness'
    CM.Platform.Channels.Models.ChannelTypes.Meta.ApiMetaBusiness:
      required:
      - id
      - metaBusinessId
      type: object
      properties:
        id:
          format: uuid
          type: string
          example: 00000000-0000-0000-0000-000000000000
        metaBusinessId:
          type: string
        marketingMessagesLiteApiOnboardingStatus:
          $ref: '#/components/schemas/CM.Platform.Channels.Models.ChannelTypes.Meta.ApiMetaBusinessMarketingLiteApiOnboardingStatus'
    CM.Platform.Channels.Models.ChannelTypes.Meta.ApiMetaBusinessMarketingLiteApiOnboardingStatus:
      required:
      - isOnboarded
      type: object
      properties:
        isOnboarded:
          type: boolean
        isOnboardingRequested:
          type: boolean
        onboardingRequestId:
          type: string
    CM.Platform.Channels.Models.ChannelTypes.WhatsApp.ApiWhatsAppBusinessAccountMarketingLiteApiNumberEligibility:
      required:
      - onboardedNumbers
      - eligibleNumbers
      - unknownNumbers
      type: object
      properties:
        onboardedNumbers:
          type: array
          items:
            type: string
        eligibleNumbers:
          type: array
          items:
            type: string
        unknownNumbers:
          type: array
          items:
            type: string
    CM.Platform.Channels.Models.ChannelTypes.WhatsApp.ApiWhatsAppBusinessAccountEmbeddedSignupSessionCodeResponse:
      required:
      - metaWhatsAppBusinessAccountId
      - metaBusinessIntegrationAccessToken
      type: object
      properties:
        metaWhatsAppBusinessAccountId:
          type: string
        metaBusinessIntegrationAccessToken:
          type: string
    CM.Platform.Channels.Models.ChannelTypes.WhatsApp.ApiWhatsAppBusinessAccount:
      required:
      - id
      - accountId
      - channelRequestId
      - isPending
      - createdOnUtc
      type: object
      properties:
        id:
          format: uuid
          type: string
          example: 00000000-0000-0000-0000-000000000000
        accountId:
          format: uuid
          type: string
          example: 00000000-0000-0000-0000-000000000000
        channelRequestId:
          format: uuid
          type: string
          example: 00000000-0000-0000-0000-000000000000
        isPending:
          type: boolean
        isFacebookEmbeddedSignUp:
          type: boolean
        facebookId:
          type: string
        cancelledOnUtc:
          format: date-time
          type: string
        fulfilledOnUtc:
          format: date-time
          type: string
        createdOnUtc:
          format: date-time
          type: string
        entityStatus:
          enum:
          - ACTIVE
          - PENDING
          - ELIGIBLE
          - NOT_VALIDATED
          - CUSTOMER_ACTION_REQUIRED
          - EXPIRED
          - REJECTED
          - CANCELLED
          - DELETED
          type: string
    CM.Platform.Channels.Models.ChannelTypes.WhatsApp.ApiWhatsAppSupportedLanguage:
      type: object
      properties:
        id:
          format: uuid
          type: string
          example: 00000000-0000-0000-0000-000000000000
        code:
          type: string
        name:
          type: string
    CM.Platform.Channels.Models.ChannelTypes.WhatsApp.ApiWhatsAppProfileConversationalComponents:
      type: object
      properties:
        enableWelcomeMessage:
          type: boolean
        prompts:
          type: array
          items:
            type: string
        commands:
          type: array
          items:
            $ref: '#/components/schemas/CM.Platform.Channels.Models.ChannelTypes.WhatsApp.ApiWhatsAppProfileConversationalComponentsCommand'
    CM.Platform.Channels.Models.ChannelTypes.WhatsApp.ApiWhatsAppProfileConversationalComponentsCommand:
      type: object
      properties:
        name:
          type: string
        description:
          type: string
    CM.Platform.Channels.Models.ChannelTypes.WhatsApp.ApiWhatsAppTemplateCategory:
      required:
      - id
      - name
      - isDeprecated
      - supportsBlankLayout
      type: object
      properties:
        id:
          format: uuid
          type: string
          example: 00000000-0000-0000-0000-000000000000
        name:
          type: string
        isDeprecated:
          type: boolean
        supportsBlankLayout:
          type: boolean
        generatedLayouts:
          type: array
          items:
            enum:
            - AUTHENTICATION_OTP_COPY
            - AUTHENTICATION_OTP_ONE_TAP
            - MARKETING_CAROUSEL
            - MARKETING_COUPONS
            - MARKETING_LIMITED_TIME_OFFER
            - UTILITY_CAROUSEL
            type: string
    CM.Platform.Channels.Models.ChannelTypes.WhatsApp.ApiWhatsAppTemplateBaseRequest:
      required:
      - enabledLanguages
      type: object
      properties:
        name:
          type: string
        enabledLanguages:
          type: array
          items:
            format: uuid
            type: string
            example: 00000000-0000-0000-0000-000000000000
        assistedMode:
          type: boolean
    CM.Platform.Channels.Models.ChannelTypes.WhatsApp.ApiWhatsAppTemplateResponse:
      required:
      - id
      - accountId
      - channelId
      - templateCategoryId
      - enabledLanguages
      - isActive
      - isIncomplete
      - isPending
      - isValidationRequested
      - createdOnUtc
      type: object
      properties:
        id:
          format: uuid
          type: string
          example: 00000000-0000-0000-0000-000000000000
        accountId:
          format: uuid
          type: string
          example: 00000000-0000-0000-0000-000000000000
        channelId:
          format: uuid
          type: string
          example: 00000000-0000-0000-0000-000000000000
        facebookNamespaceId:
          type: string
        name:
          type: string
        templateCategoryId:
          format: uuid
          type: string
          example: 00000000-0000-0000-0000-000000000000
        category:
          type: string
        generatedLayout:
          enum:
          - AUTHENTICATION_OTP_COPY
          - AUTHENTICATION_OTP_ONE_TAP
          - MARKETING_CAROUSEL
          - MARKETING_COUPONS
          - MARKETING_LIMITED_TIME_OFFER
          - UTILITY_CAROUSEL
          type: string
        facebookName:
          type: string
        enabledLanguages:
          type: array
          items:
            format: uuid
            type: string
            example: 00000000-0000-0000-0000-000000000000
        assistedMode:
          type: boolean
        interactiveSettings:
          $ref: '#/components/schemas/CM.Platform.Channels.Models.ChannelTypes.WhatsApp.ApiWhatsAppTemplateInteractiveSettingsResponse'
        headerSettings:
          $ref: '#/components/schemas/CM.Platform.Channels.Models.ChannelTypes.WhatsApp.ApiWhatsAppTemplateHeaderSettingsResponse'
        rejectionReason:
          type: string
        settings:
          $ref: '#/components/schemas/CM.Platform.Channels.Models.ChannelTypes.WhatsApp.ApiWhatsAppTemplateSettingsResponse'
        languagesStatus:
          $ref: '#/components/schemas/CM.Platform.Channels.Models.ChannelTypes.WhatsApp.ApiWhatsAppTemplateLanguageStatus'
        languages:
          type: object
          additionalProperties:
            $ref: '#/components/schemas/CM.Platform.Channels.Models.ChannelTypes.WhatsApp.ApiWhatsAppTemplateLanguageResponse'
        isActive:
          type: boolean
        isIncomplete:
          type: boolean
        isPending:
          type: boolean
        isValidationRequested:
          type: boolean
        rejectedOnUtc:
          format: date-time
          type: string
        cancelledOnUtc:
          format: date-time
          type: string
        deletedOnUtc:
          format: date-time
          type: string
        fulfilledOnUtc:
          format: date-time
          type: string
        updatedOnUtc:
          format: date-time
          type: string
        createdOnUtc:
          format: date-time
          type: string
        metaCallbackHistory:
          $ref: '#/components/schemas/CM.Platform.Channels.Models.ChannelTypes.WhatsApp.ApiWhatsAppTemplateMetaCallbackHistory'
        entityStatus:
          enum:
          - ACTIVE
          - PENDING
          - ELIGIBLE
          - NOT_VALIDATED
          - CUSTOMER_ACTION_REQUIRED
          - EXPIRED
          - REJECTED
          - CANCELLED
          - DELETED
          type: string
    CM.Platform.Channels.Models.ChannelTypes.WhatsApp.ApiWhatsAppTemplateUpdateRequest:
      required:
      - enabledLanguages
      type: object
      properties:
        name:
          type: string
        generatedLayout:
          enum:
          - AUTHENTICATION_OTP_COPY
          - AUTHENTICATION_OTP_ONE_TAP
          - MARKETING_CAROUSEL
          - MARKETING_COUPONS
          - MARKETING_LIMITED_TIME_OFFER
          - UTILITY_CAROUSEL
          type: string
        templateCategoryId:
          format: uuid
          type: string
          example: 00000000-0000-0000-0000-000000000000
        enabledLanguages:
          type: array
          items:
            format: uuid
            type: string
            example: 00000000-0000-0000-0000-000000000000
        assistedMode:
          type: boolean
        languages:
          type: object
          additionalProperties:
            $ref: '#/components/schemas/CM.Platform.Channels.Models.ChannelTypes.WhatsApp.ApiWhatsAppTemplateLanguageRequest'
    CM.Platform.Channels.Models.ChannelTypes.WhatsApp.ApiWhatsAppTemplateLanguageRequest:
      required:
      - header
      - body
      - content
      - footer
      type: object
      properties:
        header:
          $ref: '#/components/schemas/CM.Platform.Channels.Models.ChannelTypes.WhatsApp.ApiWhatsAppTemplateLanguageHeaderLayoutRequest'
        headerContent:
          type: string
        body:
          $ref: '#/components/schemas/CM.Platform.Channels.Models.ChannelTypes.WhatsApp.ApiWhatsAppTemplateLanguageBodyLayoutRequest'
        content:
          type: string
        footer:
          $ref: '#/components/schemas/CM.Platform.Channels.Models.ChannelTypes.WhatsApp.ApiWhatsAppTemplateLanguageFooterLayoutRequest'
        footerContent:
          type: string
        interactiveSettings:
          $ref: '#/components/schemas/CM.Platform.Channels.Models.ChannelTypes.WhatsApp.ApiWhatsAppTemplateLanguageInteractiveSettingsRequest'
        carouselLayoutSettings:
          $ref: '#/components/schemas/CM.Platform.Channels.Models.ChannelTypes.WhatsApp.ApiWhatsAppTemplateLanguageCarouselLayoutRequest'
        limitedTimeOffer:
          $ref: '#/components/schemas/CM.Platform.Channels.Models.ChannelTypes.WhatsApp.ApiWhatsAppTemplateLanguageLimitedTimeOfferLayoutRequest'
        messageSendTimeToLiveSeconds:
          format: int32
          type: integer
    CM.Platform.Channels.Models.ChannelTypes.WhatsApp.ApiWhatsAppTemplateLanguageHeaderLayoutRequest:
      type: object
      properties:
        content:
          type: string
    CM.Platform.Channels.Models.ChannelTypes.WhatsApp.ApiWhatsAppTemplateLanguageFooterLayoutRequest:
      type: object
      properties:
        content:
          type: string
        otpSettings:
          $ref: '#/components/schemas/CM.Platform.Channels.Models.ChannelTypes.WhatsApp.ApiWhatsAppTemplateLanguageFooterOtpSettings'
    CM.Platform.Channels.Models.ChannelTypes.WhatsApp.ApiWhatsAppTemplateLanguageInteractiveSettingsRequest:
      type: object
      properties:
        buttons:
          type: array
          items:
            $ref: '#/components/schemas/CM.Platform.Channels.Models.ChannelTypes.WhatsApp.ApiWhatsAppTemplateLanguageInteractiveButtonRequest'
    CM.Platform.Channels.Models.ChannelTypes.WhatsApp.ApiWhatsAppTemplateLanguageCarouselLayoutRequest:
      type: object
      properties:
        cards:
          type: array
          items:
            $ref: '#/components/schemas/CM.Platform.Channels.Models.ChannelTypes.WhatsApp.ApiWhatsAppTemplateLanguageCarouselCardRequest'
        carouselSettings:
          $ref: '#/components/schemas/CM.Platform.Channels.Models.ChannelTypes.WhatsApp.ApiWhatsAppTemplateLanguageCarouselSettingsRequest'
    CM.Platform.Channels.Models.ChannelTypes.WhatsApp.ApiWhatsAppTemplateLanguageLimitedTimeOfferLayoutRequest:
      type: object
      properties:
        content:
          type: string
        hasExpiration:
          type: boolean
    CM.Platform.Channels.Models.ChannelTypes.WhatsApp.ApiWhatsAppTemplateLanguageInteractiveButtonRequest:
      type: object
      properties:
        buttonText:
          type: string
        url:
          type: string
        phoneNumber:
          type: string
        otp:
          $ref: '#/components/schemas/CM.Platform.Channels.Models.ChannelTypes.WhatsApp.ApiWhatsAppTemplateLanguageInteractiveButtonOtpRequest'
        id:
          format: uuid
          type: string
          example: 00000000-0000-0000-0000-000000000000
        type:
          enum:
          - PHONENUMBER
          - URL
          - QUICK_REPLY
          - OTP_COPY
          - OTP_ONE_TAP
          - CODE_COPY
          type: string
        urlType:
          enum:
          - STATIC
          - DYNAMIC
          type: string
    CM.Platform.Channels.Models.ChannelTypes.WhatsApp.ApiWhatsAppTemplateLanguageCarouselCardRequest:
      type: object
      properties:
        buttons:
          type: array
          items:
            $ref: '#/components/schemas/CM.Platform.Channels.Models.ChannelTypes.WhatsApp.ApiWhatsAppTemplateLanguageInteractiveButtonRequest'
        header:
          $ref: '#/components/schemas/CM.Platform.Channels.Models.ChannelTypes.WhatsApp.ApiWhatsAppTemplateLanguageCarouselCardHeader'
        body:
          $ref: '#/components/schemas/CM.Platform.Channels.Models.ChannelTypes.WhatsApp.ApiWhatsAppTemplateLanguageBodyLayoutRequest'
    CM.Platform.Channels.Models.ChannelTypes.WhatsApp.ApiWhatsAppTemplateLanguageCarouselSettingsRequest:
      type: object
      properties:
        header:
          $ref: '#/components/schemas/CM.Platform.Channels.Models.ChannelTypes.WhatsApp.ApiWhatsAppTemplateLanguageCarouselCardHeader'
        buttonSettings:
          type: array
          items:
            $ref: '#/components/schemas/CM.Platform.Channels.Models.ChannelTypes.WhatsApp.ApiWhatsAppTemplateInteractiveSettingsButtonRequest'
    CM.Platform.Channels.Models.ChannelTypes.WhatsApp.ApiWhatsAppTemplateInteractiveSettingsButtonRequest:
      type: object
      properties:
        id:
          format: uuid
          type: string
          example: 00000000-0000-0000-0000-000000000000
        type:
          enum:
          - PHONENUMBER
          - URL
          - QUICK_REPLY
          - OTP_COPY
          - OTP_ONE_TAP
          - CODE_COPY
          type: string
        urlType:
          enum:
          - STATIC
          - DYNAMIC
          type: string
    CM.Platform.Channels.Models.ChannelTypes.WhatsApp.ApiWhatsAppTemplateHeaderSettingsRequest:
      type: object
      properties:
        format:
          enum:
          - none
          - text
          - image
          - document
          - video
          type: string
        replacementFields:
          type: array
          items:
            $ref: '#/components/schemas/CM.Platform.Channels.Models.ChannelTypes.WhatsApp.ApiWhatsAppTemplateReplacementField'
    CM.Platform.Channels.Models.ChannelTypes.WhatsApp.ApiWhatsAppTemplateInteractiveSettingsRequest:
      type: object
      properties:
        buttons:
          type: array
          items:
            $ref: '#/components/schemas/CM.Platform.Channels.Models.ChannelTypes.WhatsApp.ApiWhatsAppTemplateInteractiveSettingsButtonRequest'
    CM.Platform.Channels.Models.ChannelTypes.WhatsApp.ApiWhatsAppTemplateMetaAnalytics:
      type: object
      properties:
        responseRaw:
          type: string
    CM.Platform.Channels.Models.Channels.ApiChannelSupplierStatusBase:
      type: object
      properties:
        status:
          enum:
          - GREEN
          - RED
          - UNKNOWN
          type: string
        requiresAttention:
          type: boolean
          readOnly: true
        iconClass:
          type: string
        receivedAtUtc:
          format: date-time
          type: string
    CM.Platform.Channels.Models.Channels.ApiChannelSupplierStatus:
      type: object
      properties:
        status:
          enum:
          - GREEN
          - RED
          - UNKNOWN
          type: string
        requiresAttention:
          type: boolean
          readOnly: true
        iconClass:
          type: string
        supplierStatus:
          type: string
        eventId:
          format: uuid
          type: string
          example: 00000000-0000-0000-0000-000000000000
        receivedAtUtc:
          format: date-time
          type: string
    CM.Platform.Channels.Models.ChannelTypes.WhatsAppPartnerSolution.ApiWhatsAppPartnerSolution:
      required:
      - id
      - createdOnUtc
      - solutionId
      - usesCloudApi
      - usesCMBusinessMessagingApi
      type: object
      properties:
        id:
          format: uuid
          type: string
          example: 00000000-0000-0000-0000-000000000000
        createdOnUtc:
          format: date-time
          type: string
        updatedOnUtc:
          format: date-time
          type: string
        solutionId:
          type: string
        solutionName:
          type: string
        cmBusinessId:
          type: string
        techPartnerBusinessId:
          type: string
        techPartnerBusinessName:
          type: string
        status:
          type: string
        usesCloudApi:
          type: boolean
        usesCMBusinessMessagingApi:
          type: boolean
        partnerBusinessAccountsCount:
          format: int32
          type: integer
        channelRequestId:
          format: uuid
          type: string
          example: 00000000-0000-0000-0000-000000000000
        accountId:
          format: uuid
          type: string
          example: 00000000-0000-0000-0000-000000000000
    CM.Platform.Channels.Models.ChannelTypes.WhatsAppPartnerSolution.ApiWhatsAppPartnerSolutionBusinessAccount:
      required:
      - id
      - businessAccountId
      - ownerBusinessAccountId
      - solutionId
      - createdOnUtc
      type: object
      properties:
        id:
          format: uuid
          type: string
          example: 00000000-0000-0000-0000-000000000000
        businessAccountId:
          type: string
        businessAccountName:
          type: string
        ownerBusinessAccountId:
          type: string
        ownerBusinessAccountName:
          type: string
        solutionId:
          type: string
        createdOnUtc:
          format: date-time
          type: string
        updatedOnUtc:
          format: date-time
          type: string
