Sinch WhatsApp Solutions API

The WhatsApp solutions endpoint offers a way for you to manage your WhatsApp solutions.

Operations 4

GET /v1/projects/{projectId}/whatsapp/solutions List all solutions in project #
POST /v1/projects/{projectId}/whatsapp/solutions Create solution for project #
GET /v1/projects/{projectId}/whatsapp/solutions/{solutionId} Get solution for project #
POST /v1/projects/{projectId}/whatsapp/solutions/{solutionId}/assign Assign solution to project #

Documentation

📖
Documentation
https://developers.sinch.com/docs/conversation
📖
APIReference
https://developers.sinch.com/docs/conversation/api-reference/template
📖
Documentation
https://developers.sinch.com/docs/est
📖
APIReference
https://developers.sinch.com/docs/est/api-reference/est
📖
Documentation
https://developers.sinch.com/docs/fax
📖
APIReference
https://developers.sinch.com/docs/fax/api-reference/fax
📖
Documentation
https://developers.sinch.com/docs/number-lookup-api-v2
📖
APIReference
https://developers.sinch.com/docs/number-lookup-api-v2/api-reference/number-lookup-v2
📖
Documentation
https://developers.sinch.com/docs/numbers
📖
APIReference
https://developers.sinch.com/docs/numbers/api-reference/imported-hosting
📖
APIReference
https://developers.sinch.com/docs/numbers/api-reference/numbers
📖
APIReference
https://developers.sinch.com/docs/numbers/api-reference/porting
📖
Documentation
https://developers.sinch.com/docs/provisioning-api
📖
APIReference
https://developers.sinch.com/docs/provisioning-api/api-reference/provisioning-api-1
📖
Documentation
https://developers.sinch.com/docs/verification
📖
APIReference
https://developers.sinch.com/docs/verification/api-reference/verification
📖
Documentation
https://developers.sinch.com/docs/voice-2.0
📖
APIReference
https://developers.sinch.com/docs/voice-2.0/api-reference/voice
📖
Documentation
https://developers.sinch.com/docs/10dlc-registration
📖
APIReference
https://developers.sinch.com/docs/10dlc-registration/api-reference/10dlc-registration
📖
Documentation
https://developers.sinch.com/docs/accesskeys
📖
APIReference
https://developers.sinch.com/docs/accesskeys/api-reference/oldaccesskeys
📖
APIReference
https://developers.sinch.com/docs/accesskeys/api-reference/accesskeys
📖
Documentation
https://developers.sinch.com/docs/campaigns
📖
APIReference
https://developers.sinch.com/docs/campaigns/api-reference/campaigns
📖
Documentation
https://developers.sinch.com/docs/chatlayer-analytics
📖
APIReference
https://developers.sinch.com/docs/chatlayer-analytics/api-reference/chatlayer-analytics
📖
Documentation
https://developers.sinch.com/docs/compliance-center
📖
APIReference
https://developers.sinch.com/docs/compliance-center/api-reference/compliance-brands
📖
Documentation
https://developers.sinch.com/docs/subprojects
📖
APIReference
https://developers.sinch.com/docs/subprojects/api-reference/subprojects

Specifications

Schemas & Data

📊
JSONSchema
https://raw.githubusercontent.com/api-evangelist/sinch/refs/heads/main/json-schema/sinch-v2-template-schema.json
📊
JSONSchema
https://raw.githubusercontent.com/api-evangelist/sinch/refs/heads/main/json-schema/sinch-v2-list-translations-response-schema.json
📊
JSONSchema
https://raw.githubusercontent.com/api-evangelist/sinch/refs/heads/main/json-schema/sinch-v2-list-templates-response-schema.json
📊
JSONSchema
https://raw.githubusercontent.com/api-evangelist/sinch/refs/heads/main/json-schema/sinch-call-schema.json
📊
JSONSchema
https://raw.githubusercontent.com/api-evangelist/sinch/refs/heads/main/json-schema/sinch-sip-trunk-schema.json
📊
JSONSchema
https://raw.githubusercontent.com/api-evangelist/sinch/refs/heads/main/json-schema/sinch-sip-endpoint-schema.json
📊
JSONSchema
https://raw.githubusercontent.com/api-evangelist/sinch/refs/heads/main/json-schema/sinch-ip-range-schema.json
📊
JSONSchema
https://raw.githubusercontent.com/api-evangelist/sinch/refs/heads/main/json-schema/sinch-access-control-list-schema.json
📊
JSONSchema
https://raw.githubusercontent.com/api-evangelist/sinch/refs/heads/main/json-schema/sinch-number-schema.json
📊
JSONSchema
https://raw.githubusercontent.com/api-evangelist/sinch/refs/heads/main/json-schema/sinch-fax-schema.json
📊
JSONSchema
https://raw.githubusercontent.com/api-evangelist/sinch/refs/heads/main/json-schema/sinch-service-schema.json
📊
JSONSchema
https://raw.githubusercontent.com/api-evangelist/sinch/refs/heads/main/json-schema/sinch-template-by-name-response-schema.json
📊
JSONSchema
https://raw.githubusercontent.com/api-evangelist/sinch/refs/heads/main/json-schema/sinch-update-template-request-schema.json
📊
JSONSchema
https://raw.githubusercontent.com/api-evangelist/sinch/refs/heads/main/json-schema/sinch-service-phone-number-schema.json
📊
JSONSchema
https://raw.githubusercontent.com/api-evangelist/sinch/refs/heads/main/json-schema/sinch-cover-page-schema.json
📊
JSONSchema
https://raw.githubusercontent.com/api-evangelist/sinch/refs/heads/main/json-schema/sinch-number-lookup-response-schema.json
📊
JSONSchema
https://raw.githubusercontent.com/api-evangelist/sinch/refs/heads/main/json-schema/sinch-number-lookup-request-schema.json
📊
JSONSchema
https://raw.githubusercontent.com/api-evangelist/sinch/refs/heads/main/json-schema/sinch-hosting-order-schema.json
📊
JSONSchema
https://raw.githubusercontent.com/api-evangelist/sinch/refs/heads/main/json-schema/sinch-qualified-number-schema.json
📊
JSONSchema
https://raw.githubusercontent.com/api-evangelist/sinch/refs/heads/main/json-schema/sinch-text-enable-numbers-request-schema.json
📊
JSONSchema
https://raw.githubusercontent.com/api-evangelist/sinch/refs/heads/main/json-schema/sinch-hosting-order-number-schema.json
📊
JSONSchema
https://raw.githubusercontent.com/api-evangelist/sinch/refs/heads/main/json-schema/sinch-imported-number-schema.json
📊
JSONSchema
https://raw.githubusercontent.com/api-evangelist/sinch/refs/heads/main/json-schema/sinch-list-imported-numbers-response-schema.json
📊
JSONSchema
https://raw.githubusercontent.com/api-evangelist/sinch/refs/heads/main/json-schema/sinch-active-number-response-schema.json
📊
JSONSchema
https://raw.githubusercontent.com/api-evangelist/sinch/refs/heads/main/json-schema/sinch-rent-any-number-request-schema.json
📊
JSONSchema
https://raw.githubusercontent.com/api-evangelist/sinch/refs/heads/main/json-schema/sinch-validate-address-response-schema.json
📊
JSONSchema
https://raw.githubusercontent.com/api-evangelist/sinch/refs/heads/main/json-schema/sinch-number-order-schema.json
📊
JSONSchema
https://raw.githubusercontent.com/api-evangelist/sinch/refs/heads/main/json-schema/sinch-create-number-order-request-schema.json
📊
JSONSchema
https://raw.githubusercontent.com/api-evangelist/sinch/refs/heads/main/json-schema/sinch-registration-schema.json
📊
JSONSchema
https://raw.githubusercontent.com/api-evangelist/sinch/refs/heads/main/json-schema/sinch-order-list-item-schema.json
📊
JSONSchema
https://raw.githubusercontent.com/api-evangelist/sinch/refs/heads/main/json-schema/sinch-defaults-configuration-schema.json
📊
JSONSchema
https://raw.githubusercontent.com/api-evangelist/sinch/refs/heads/main/json-schema/sinch-pagination-schema.json
📊
JSONSchema
https://raw.githubusercontent.com/api-evangelist/sinch/refs/heads/main/json-schema/sinch-voice-configuration-schema.json
📊
JSONSchema
https://raw.githubusercontent.com/api-evangelist/sinch/refs/heads/main/json-schema/sinch-order-document-base-schema.json
📊
JSONSchema
https://raw.githubusercontent.com/api-evangelist/sinch/refs/heads/main/json-schema/sinch-port-in-order-group-schema.json
📊
JSONSchema
https://raw.githubusercontent.com/api-evangelist/sinch/refs/heads/main/json-schema/sinch-whatsapp-account-dto-schema.json
📊
JSONSchema
https://raw.githubusercontent.com/api-evangelist/sinch/refs/heads/main/json-schema/sinch-whatsapp-sender-dto-schema.json
📊
JSONSchema
https://raw.githubusercontent.com/api-evangelist/sinch/refs/heads/main/json-schema/sinch-whatsapp-template-dto-schema.json
📊
JSONSchema
https://raw.githubusercontent.com/api-evangelist/sinch/refs/heads/main/json-schema/sinch-whatsapp-partial-template-dto-schema.json
📊
JSONSchema
https://raw.githubusercontent.com/api-evangelist/sinch/refs/heads/main/json-schema/sinch-webhook-webhook-input-dto-schema.json
📊
JSONSchema
https://raw.githubusercontent.com/api-evangelist/sinch/refs/heads/main/json-schema/sinch-webhook-update-webhook-input-dto-schema.json
📊
JSONSchema
https://raw.githubusercontent.com/api-evangelist/sinch/refs/heads/main/json-schema/sinch-verification-report-request-schema.json
📊
JSONSchema
https://raw.githubusercontent.com/api-evangelist/sinch/refs/heads/main/json-schema/sinch-batch-summary-schema.json
📊
JSONSchema
https://raw.githubusercontent.com/api-evangelist/sinch/refs/heads/main/json-schema/sinch-session-schema.json
📊
JSONSchema
https://raw.githubusercontent.com/api-evangelist/sinch/refs/heads/main/json-schema/sinch-call-request-schema.json
📊
JSONSchema
https://raw.githubusercontent.com/api-evangelist/sinch/refs/heads/main/json-schema/sinch-service-response-schema.json
📊
JSONSchema
https://raw.githubusercontent.com/api-evangelist/sinch/refs/heads/main/json-schema/sinch-validate-svaml-response-schema.json
📊
JSONSchema
https://raw.githubusercontent.com/api-evangelist/sinch/refs/heads/main/json-schema/sinch-create-tcr-campaign-request-schema.json
📊
JSONSchema
https://raw.githubusercontent.com/api-evangelist/sinch/refs/heads/main/json-schema/sinch-access-key-schema.json
📊
JSONSchema
https://raw.githubusercontent.com/api-evangelist/sinch/refs/heads/main/json-schema/sinch-create-access-key-response-schema.json
📊
JSONSchema
https://raw.githubusercontent.com/api-evangelist/sinch/refs/heads/main/json-schema/sinch-list-access-keys-response-schema.json
📊
JSONSchema
https://raw.githubusercontent.com/api-evangelist/sinch/refs/heads/main/json-schema/sinch-create-access-key-schema.json
📊
JSONSchema
https://raw.githubusercontent.com/api-evangelist/sinch/refs/heads/main/json-schema/sinch-update-access-key-schema.json
📊
JSONSchema
https://raw.githubusercontent.com/api-evangelist/sinch/refs/heads/main/json-schema/sinch-campaign-schema.json
📊
JSONSchema
https://raw.githubusercontent.com/api-evangelist/sinch/refs/heads/main/json-schema/sinch-carrier-order-schema.json
📊
JSONSchema
https://raw.githubusercontent.com/api-evangelist/sinch/refs/heads/main/json-schema/sinch-note-schema.json
📊
JSONSchema
https://raw.githubusercontent.com/api-evangelist/sinch/refs/heads/main/json-schema/sinch-list-campaign-response-schema.json
📊
JSONSchema
https://raw.githubusercontent.com/api-evangelist/sinch/refs/heads/main/json-schema/sinch-campaign-attachment-schema.json
📊
JSONSchema
https://raw.githubusercontent.com/api-evangelist/sinch/refs/heads/main/json-schema/sinch-create-campaign-request-schema.json
📊
JSONSchema
https://raw.githubusercontent.com/api-evangelist/sinch/refs/heads/main/json-schema/sinch-get-flow-step-details-response-schema.json
📊
JSONSchema
https://raw.githubusercontent.com/api-evangelist/sinch/refs/heads/main/json-schema/sinch-get-conversation-flow-response-schema.json
📊
JSONSchema
https://raw.githubusercontent.com/api-evangelist/sinch/refs/heads/main/json-schema/sinch-funnel-step-schema.json
📊
JSONSchema
https://raw.githubusercontent.com/api-evangelist/sinch/refs/heads/main/json-schema/sinch-funnel-step-filter-schema.json
📊
JSONSchema
https://raw.githubusercontent.com/api-evangelist/sinch/refs/heads/main/json-schema/sinch-get-intents-response-schema.json
📊
JSONSchema
https://raw.githubusercontent.com/api-evangelist/sinch/refs/heads/main/json-schema/sinch-list-event-definitions-response-schema.json
📊
JSONSchema
https://raw.githubusercontent.com/api-evangelist/sinch/refs/heads/main/json-schema/sinch-brand-order-schema.json
📊
JSONSchema
https://raw.githubusercontent.com/api-evangelist/sinch/refs/heads/main/json-schema/sinch-brand-schema.json
📊
JSONSchema
https://raw.githubusercontent.com/api-evangelist/sinch/refs/heads/main/json-schema/sinch-attachment-schema.json
📊
JSONSchema
https://raw.githubusercontent.com/api-evangelist/sinch/refs/heads/main/json-schema/sinch-import-brand-request-schema.json
📊
JSONSchema
https://raw.githubusercontent.com/api-evangelist/sinch/refs/heads/main/json-schema/sinch-create-brand-request-schema.json
📊
JSONSchema
https://raw.githubusercontent.com/api-evangelist/sinch/refs/heads/main/json-schema/sinch-callback-config-response-schema.json
📊
JSONSchema
https://raw.githubusercontent.com/api-evangelist/sinch/refs/heads/main/json-schema/sinch-subproject-schema.json
📊
JSONSchema
https://raw.githubusercontent.com/api-evangelist/sinch/refs/heads/main/json-schema/sinch-list-subprojects-response-schema.json

Work with this as data

Every API here is available over the APIs.io API and to AI agents over MCP.

MCP server

One button, every client — Claude, Cursor, VS Code and the rest.

https://apis.io/mcp

Tools for apis

7 MCP tools reach this
  • find_apisBrowse and filter every API in the catalog.
  • get_api_artifactsOne API's artifacts, grouped by type.
  • get_openapiThe primary OpenAPI for this API.
  • find_similar_apisAPIs that look like this one.
  • apis_io_searchSTART HERE — APIs, providers and tags for one query, each with its total.
  • resolveTurn a domain, URL or GitHub org into the provider it belongs to.
  • find_cohortsEvery scored population of providers in the catalog.
All 92 tools →

Call it yourself

curl for this page
This API
curl "https://apis.io/api/v1/apis/sinch:sinch-whatsapp-solutions-api"
All apis
curl "https://apis.io/api/v1/apis?limit=25"

Discovery needs no key. Ratings and market analysis are Pro.

Get an API key

Free tier, no form to fill in. Signing in shares your email address with us — we store it to create your key and to recognise you if you sign in with another provider. See our Privacy Policy and Terms.

A second provider on the same verified email joins the account you already have.

OpenAPI Specification

sinch-whatsapp-solutions-api-openapi.yml Raw ↑
openapi: 3.2.0
info:
  title: Provisioning WhatsApp Solutions API
  description: The WhatsApp solutions endpoint offers a way for you to manage your WhatsApp solutions.
  version: 1.2.117
servers:
- url: https://provisioning.api.sinch.com
  description: Production server
security:
- BasicAuth: []
  BearerAuth: []
  OAuth2Production: []
tags:
- name: WhatsApp Solutions
  description: The WhatsApp solutions endpoint offers a way for you to manage your WhatsApp solutions.
paths:
  /v1/projects/{projectId}/whatsapp/solutions:
    get:
      description: Returns a list of solutions for the specified project.
      operationId: WhatsappSolutionsController_listSolutions_v1
      parameters:
      - name: projectId
        required: true
        in: path
        description: The unique ID of the project. You can find this on the <a href="https://dashboard.sinch.com/">Sinch Dashboard</a>.
        schema:
          type: string
      responses:
        '200':
          description: List of solutions
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/WhatsappSolutionListDto'
              examples:
                response:
                  summary: List response
                  description: "\n    Response with solutions.\n    "
                  value:
                    solutions:
                    - id: '123'
                      details:
                        name: Test name
                      ownerApp:
                        id: 456
                        name: Test owner app name
                      partnerApp:
                        id: 789
                        name: Test partner app name
                      assigned: false
                    - id: '123'
                      details:
                        name: Test name
                      ownerApp:
                        id: 456
                        name: Test owner app name
                      partnerApp:
                        id: 789
                        name: Test partner app name
                      assigned: true
                    - id: '123'
                      details:
                        name: Test name
                      ownerApp:
                        id: 456
                        name: Test owner app name
                      partnerApp:
                        id: 789
                        name: Test partner app name
                      assigned: false
        '401':
          description: Unauthorized
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/WhatsappPapiErrorDto'
              examples:
                unauthorized_error-0:
                  summary: UnauthorizedErrorError
                  value:
                    errorCode: unauthorized_error
                    message: Unauthorized error.
                    resolution: Verify that projectId is correct.
        '404':
          description: NotFound
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/WhatsappPapiErrorDto'
              examples:
                project_not_found-0:
                  summary: ProjectNotFoundError
                  value:
                    errorCode: project_not_found
                    message: Project not found.
                    resolution: Verify that the projectId is correct.
        '500':
          description: InternalServerError
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/WhatsappPapiErrorDto'
              examples:
                internal_error-0:
                  summary: InternalErrorError
                  value:
                    errorCode: internal_error
                    message: Internal server error.
                    resolution: Please wait and try again, if the error persist please contact support.
      summary: List all solutions in project
      tags:
      - WhatsApp Solutions
      x-badges:
      - name: GA
        position: after
        color: green
    post:
      description: Returns all solutions for a project.
      operationId: WhatsappSolutionsController_createSolution_v1
      parameters:
      - name: projectId
        required: true
        in: path
        description: The unique ID of the project. You can find this on the <a href="https://dashboard.sinch.com/">Sinch Dashboard</a>.
        schema:
          type: string
      requestBody:
        required: true
        description: Solution data
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/WhatsappSolutionInputDto'
            examples:
              input:
                summary: Body request for solution
                description: "\n    Example body request to create a solution.\n    "
                value:
                  accessToken: 3cca3b57-e388-4aaa-abe3-ecb1c0c8265f
                  businessManager: SINCH_UK
                  details:
                    name: Test name
      responses:
        '201':
          description: Solutions
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/WhatsappCreateSolutionListDto'
              examples:
                response:
                  summary: Create response
                  description: "\n    Response when successfully creating a solution.\n    "
                  value:
                    solutions:
                    - id: '123'
                      details:
                        name: Test name
                      ownerApp:
                        id: 456
                        name: Test owner app name
                      partnerApp:
                        id: 789
                        name: Test partner app name
                      assigned: false
                    - id: '123'
                      details:
                        name: Test name
                      ownerApp:
                        id: 456
                        name: Test owner app name
                      partnerApp:
                        id: 789
                        name: Test partner app name
                      assigned: false
                    - id: '123'
                      details:
                        name: Test name
                      ownerApp:
                        id: 456
                        name: Test owner app name
                      partnerApp:
                        id: 789
                        name: Test partner app name
                      assigned: false
                    failedSolutions: []
        '401':
          description: Unauthorized
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/WhatsappPapiErrorDto'
              examples:
                unauthorized_error-0:
                  summary: UnauthorizedErrorError
                  value:
                    errorCode: unauthorized_error
                    message: Unauthorized error.
                    resolution: Verify that projectId is correct.
        '404':
          description: NotFound
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/WhatsappPapiErrorDto'
              examples:
                project_not_found-0:
                  summary: ProjectNotFoundError
                  value:
                    errorCode: project_not_found
                    message: Project not found.
                    resolution: Verify that the projectId is correct.
        '500':
          description: InternalServerError
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/WhatsappPapiErrorDto'
              examples:
                internal_error-0:
                  summary: InternalErrorError
                  value:
                    errorCode: internal_error
                    message: Internal server error.
                    resolution: Please wait and try again, if the error persist please contact support.
      summary: Create solution for project
      tags:
      - WhatsApp Solutions
      x-badges:
      - name: GA
        position: after
        color: green
  /v1/projects/{projectId}/whatsapp/solutions/{solutionId}:
    get:
      description: Returns a solution for a project.
      operationId: WhatsappSolutionsController_getSolution_v1
      parameters:
      - name: projectId
        required: true
        in: path
        description: The unique ID of the project. You can find this on the <a href="https://dashboard.sinch.com/">Sinch Dashboard</a>.
        schema:
          type: string
      - name: solutionId
        required: true
        in: path
        description: The unique ID of the solution.
        schema:
          type: string
      responses:
        '200':
          description: Solution
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/WhatsappSolutionDto'
              examples:
                assignedResponse:
                  summary: Get assigned solution response
                  description: "\n    Response with assigned solution.\n    "
                  value:
                    id: '123'
                    details:
                      name: Test name
                    ownerApp:
                      id: 456
                      name: Test owner app name
                    partnerApp:
                      id: 789
                      name: Test partner app name
                    assigned: true
                notAssignedResponse:
                  summary: Get unassigned solution response
                  description: "\n    Response with unassigned solution.\n    "
                  value:
                    id: '123'
                    details:
                      name: Test name
                    ownerApp:
                      id: 456
                      name: Test owner app name
                    partnerApp:
                      id: 789
                      name: Test partner app name
                    assigned: false
        '401':
          description: Unauthorized
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/WhatsappPapiErrorDto'
              examples:
                unauthorized_error-0:
                  summary: UnauthorizedErrorError
                  value:
                    errorCode: unauthorized_error
                    message: Unauthorized error.
                    resolution: Verify that projectId is correct.
        '404':
          description: NotFound
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/WhatsappPapiErrorDto'
              examples:
                project_not_found-0:
                  summary: ProjectNotFoundError
                  value:
                    errorCode: project_not_found
                    message: Project not found.
                    resolution: Verify that the projectId is correct.
                solution_not_found-1:
                  summary: SolutionNotFoundError
                  value:
                    errorCode: solution_not_found
                    message: Solution not found.
                    resolution: Verify that the parameters are correct.
        '500':
          description: InternalServerError
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/WhatsappPapiErrorDto'
              examples:
                internal_error-0:
                  summary: InternalErrorError
                  value:
                    errorCode: internal_error
                    message: Internal server error.
                    resolution: Please wait and try again, if the error persist please contact support.
      summary: Get solution for project
      tags:
      - WhatsApp Solutions
      x-badges:
      - name: GA
        position: after
        color: green
  /v1/projects/{projectId}/whatsapp/solutions/{solutionId}/assign:
    post:
      description: Assign solution to project, to enable Embedded Signup onboarding.
      operationId: WhatsappSolutionsController_assignSolution_v1
      parameters:
      - name: projectId
        required: true
        in: path
        description: The unique ID of the project. You can find this on the <a href="https://dashboard.sinch.com/">Sinch Dashboard</a>.
        schema:
          type: string
      - name: solutionId
        required: true
        in: path
        description: The unique ID of the solution.
        schema:
          type: string
      responses:
        '204':
          description: Solution assigned
        '401':
          description: Unauthorized
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/WhatsappPapiErrorDto'
              examples:
                unauthorized_error-0:
                  summary: UnauthorizedErrorError
                  value:
                    errorCode: unauthorized_error
                    message: Unauthorized error.
                    resolution: Verify that projectId is correct.
        '404':
          description: NotFound
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/WhatsappPapiErrorDto'
              examples:
                project_not_found-0:
                  summary: ProjectNotFoundError
                  value:
                    errorCode: project_not_found
                    message: Project not found.
                    resolution: Verify that the projectId is correct.
                solution_not_found-1:
                  summary: SolutionNotFoundError
                  value:
                    errorCode: solution_not_found
                    message: Solution not found.
                    resolution: Verify that the parameters are correct.
        '409':
          description: Conflict
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/WhatsappPapiErrorDto'
              examples:
                solution_cannot_be_reassigned-0:
                  summary: SolutionCannotBeReassignedError
                  value:
                    errorCode: solution_cannot_be_reassigned
                    message: Project is already onboarded, can't reassign solution
                    resolution: Verify that the parameters are correct.
        '500':
          description: InternalServerError
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/WhatsappPapiErrorDto'
              examples:
                internal_error-0:
                  summary: InternalErrorError
                  value:
                    errorCode: internal_error
                    message: Internal server error.
                    resolution: Please wait and try again, if the error persist please contact support.
      summary: Assign solution to project
      tags:
      - WhatsApp Solutions
      x-badges:
      - name: GA
        position: after
        color: green
components:
  schemas:
    WhatsappInputBusinessManagersPublicDocumentationEnum:
      type: string
      enum:
      - SINCH_BR
      - SINCH_MX
      - SINCH_UK
      description: Business manager.
    WhatsappFailedSolutionDto:
      type: object
      properties:
        partnerAppId:
          type: string
          readOnly: true
          description: The unique ID of the Tech Provider Meta App.
          uniqueItems: false
        errorCode:
          x-enumDescriptions:
            ACTIVATION_FAILED: The background execution layout failed during the software solution initialization phase.
            CREATION_FAILED: The infrastructure provisioning engine failed during the primary solution instantiation loop.
            UNRECOGNIZED: The value returned by an upstream system is not recognized by this API version.
          readOnly: true
          description: Error code allows to programmatically handle errors.
          uniqueItems: false
          allOf:
          - $ref: '#/components/schemas/WhatsappFailedSolutionErrorsEnum'
        errorMessage:
          type: string
          readOnly: true
          description: Human readable message.
          uniqueItems: false
      required:
      - partnerAppId
      - errorCode
    WhatsappSolutionInputDto:
      type: object
      properties:
        details:
          description: Solution details and information.
          uniqueItems: false
          allOf:
          - $ref: '#/components/schemas/WhatsappSolutionDetailsInputDto'
        accessToken:
          type: string
          description: The accessToken received from the authResponse, returned when completing the embedded solution flow.
          uniqueItems: false
        businessManager:
          x-enumDescriptions:
            SINCH_BR: Instructs the interface layer to reference public onboarding documentation for the Brazil Meta Business Manager asset.
            SINCH_MX: Instructs the interface layer to reference public onboarding documentation for the Mexico Meta Business Manager asset.
            SINCH_UK: Instructs the interface layer to reference public onboarding documentation for the United Kingdom Meta Business Manager asset.
          description: Business manager.
          uniqueItems: false
          allOf:
          - $ref: '#/components/schemas/WhatsappInputBusinessManagersPublicDocumentationEnum'
      required:
      - details
      - accessToken
      - businessManager
    WhatsappPapiErrorDto:
      type: object
      properties:
        errorCode:
          type: string
          description: Error code identifying the type of error.
          uniqueItems: false
        message:
          type: string
          description: Human-readable error message.
          uniqueItems: false
        resolution:
          type: string
          description: Suggested resolution for the error.
          uniqueItems: false
        additionalInformation:
          type: object
          additionalProperties:
            oneOf:
            - type: array
              items:
                type: string
          description: Additional context about the error.
          uniqueItems: false
      required:
      - errorCode
      - message
      - resolution
    WhatsappSolutionDto:
      type: object
      properties:
        id:
          type: string
          readOnly: true
          description: The unique ID of the solution
          uniqueItems: false
        details:
          description: Solution details and information.
          uniqueItems: false
          allOf:
          - $ref: '#/components/schemas/WhatsappSolutionDetailsDto'
        partnerApp:
          readOnly: true
          description: The Meta App of the Tech Provider.
          uniqueItems: false
          allOf:
          - $ref: '#/components/schemas/WhatsappSolutionMetaAppDto'
        ownerApp:
          readOnly: true
          description: The Meta App of the Solution Partner (e.g. Sinch).
          uniqueItems: false
          allOf:
          - $ref: '#/components/schemas/WhatsappSolutionMetaAppDto'
        assigned:
          type: boolean
          readOnly: true
          description: If project has been assigned to this solution.
          uniqueItems: false
      required:
      - id
      - details
      - assigned
    WhatsappSolutionDetailsDto:
      type: object
      properties:
        name:
          type: string
          description: The name of the solution.
          uniqueItems: false
      required:
      - name
    WhatsappSolutionDetailsInputDto:
      type: object
      properties:
        name:
          type: string
          description: The name of the solution.
          uniqueItems: false
      required:
      - name
    WhatsappSolutionMetaAppDto:
      type: object
      properties:
        id:
          type: number
          readOnly: true
          description: The unique ID of the Meta App.
          uniqueItems: false
        name:
          type: string
          readOnly: true
          description: The name of the Meta App.
          uniqueItems: false
      required:
      - id
      - name
    WhatsappSolutionListDto:
      type: object
      properties:
        solutions:
          type: array
          items:
            $ref: '#/components/schemas/WhatsappSolutionDto'
          description: List of solutions.
          uniqueItems: false
      required:
      - solutions
    WhatsappCreateSolutionListDto:
      type: object
      properties:
        solutions:
          type: array
          items:
            $ref: '#/components/schemas/WhatsappSolutionDto'
          description: List of solutions.
          uniqueItems: false
        failedSolutions:
          type: array
          items:
            $ref: '#/components/schemas/WhatsappFailedSolutionDto'
          description: List of failed solutions.
          uniqueItems: false
      required:
      - solutions
      - failedSolutions
    WhatsappFailedSolutionErrorsEnum:
      type: string
      enum:
      - ACTIVATION_FAILED
      - CREATION_FAILED
      - UNRECOGNIZED
      description: Error code allows to programmatically handle errors.
  securitySchemes:
    BasicAuth:
      type: http
      scheme: basic
    BearerAuth:
      type: http
      scheme: bearer
      bearerFormat: JWT
    OAuth2Production:
      type: oauth2
      description: OAuth2 authorization for production
      flows:
        clientCredentials:
          tokenUrl: https://auth.sinch.com/oauth2/token
          scopes:
            '-': '-'
x-tagGroup-upscale:
  name: Upscale
  tags:
  - Upscale Admin Feature Flag
  - Upscale Admin Log Operation
  - Upscale Admin Migrations
  - Upscale Admin Sms
  - Upscale Admin Upscales
  - Internal
  - Upscale Sms
  - Upscale Upscales
x-tagGroup-notification:
  name: Notification
  tags:
  - Notification Admin Feature Flag
  - Notification Admin Log Operation
  - Internal
x-tagGroups:
- name: Webhook
  tags:
  - Webhooks
- name: WhatsApp
  tags:
  - WhatsApp Accounts
  - WhatsApp
  - WhatsApp Flows
  - WhatsApp Senders
  - WhatsApp Solutions
  - WhatsApp Templates
- name: Bundles
  tags:
  - Bundles
- name: KakaoTalk
  tags:
  - KakaoTalk Categories
  - KakaoTalk Senders
  - KakaoTalk Templates
- name: Conversation
  tags:
  - Conversation
- name: RCS
  tags:
  - RCS Accounts
  - RCS Questionnaire
  - RCS Senders
- name: SMS
  tags:
  - SMS Apps