WhatsApp WhatsApp Business Solution Management API

Operations for managing WhatsApp Business Multi-Partner Solutions including lifecycle management, status transitions, and partnership workflows.

Operations 1

POST /{Version}/{Solution-ID}/accept_deactivation_request Accept WhatsApp Business Solution Deactivation Request #

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/whatsapp:whatsapp-whatsapp-business-solution-management-api"
All apis
curl "https://apis.io/api/v1/apis?limit=25"

Calls without X-API-Key need no key. Calls with it need a paid plan — get a key.

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

whatsapp-whatsapp-business-solution-management-api-openapi.yml Raw ↑
openapi: 3.2.0
info:
  title: Meta Graph API - Application Connected Client Businesses…
  version: v23.0
  description: 'API for retrieving connected client businesses associated with a Meta application.


    This endpoint allows applications to retrieve information about businesses that have

    established client connections through the application. This is essential for managing

    business relationships and understanding client business configurations.'
  contact:
    name: Meta Business Platform Team
    url: https://developers.facebook.com/support
  license:
    name: Meta Platform Terms
    url: https://developers.facebook.com/terms
  termsOfService: https://developers.facebook.com/terms
servers:
- url: https://graph.facebook.com
  description: Production Graph API server
- url: https://graph.facebook.com
- url: https://graph.facebook.com
  description: WhatsApp Business Cloud API
- url: https://graph.facebook.com
  description: Meta Graph API production server
tags:
- name: WhatsApp Business Solution Management
  description: 'Operations for managing WhatsApp Business Multi-Partner Solutions including

    lifecycle management, status transitions, and partnership workflows.'
paths:
  /{Version}/{Solution-ID}/accept_deactivation_request:
    post:
      summary: Accept WhatsApp Business Solution Deactivation Request
      description: 'Accepts a pending deactivation request for a WhatsApp Business Multi-Partner Solution.


        This endpoint completes the partner approval workflow by accepting a deactivation request

        that was previously initiated by another solution partner. Upon successful acceptance,

        the solution status transitions from ACTIVE to DEACTIVATED, and the pending request

        status changes from PENDING_DEACTIVATION to NONE.


        **Important Business Logic:**


        - Solution must be in ACTIVE status with PENDING_DEACTIVATION pending status


        - All outstanding payments and invoices must be settled before acceptance


        - Active marketing campaigns must be concluded or transferred


        - Webhook notifications will be sent to all solution partners upon completion


        - Solution resources and permissions will be cleaned up according to policy'
      operationId: acceptWhatsAppBusinessSolutionDeactivationRequest
      tags:
      - WhatsApp Business Solution Management
      parameters:
      - $ref: '#/components/parameters/UserAgent'
      - $ref: '#/components/parameters/Authorization'
      - name: Version
        in: path
        required: true
        description: Graph API version
        schema:
          type: string
          pattern: ^v[0-9]+\.[0-9]+$
          example: v23.0
      - name: Solution-ID
        in: path
        required: true
        description: Unique identifier for the WhatsApp Business Solution
        schema:
          type: string
          example: '12345678901234567'
      - name: fields
        in: query
        required: false
        description: 'Comma-separated list of fields to return in the response.



          **Available Fields:** id, name, status, status_for_pending_request, owner_permissions



          **Default Fields:** name, status, status_for_pending_request

          '
        schema:
          type: string
          example: id,name,status,status_for_pending_request
      requestBody:
        description: Empty request body - no parameters required for this endpoint
        content:
          application/json:
            schema:
              type: object
              example: {}
      responses:
        '200':
          description: 'Deactivation request accepted successfully. Solution status updated to DEACTIVATED.

            '
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/WhatsAppBusinessSolution'
              example:
                id: '12345678901234567'
                name: Sample Business Solution Partnership
                status: DEACTIVATED
                status_for_pending_request: NONE
                owner_permissions:
                - MANAGE
                - DEVELOP
        '400':
          description: 'Bad Request - Invalid request parameters or malformed solution ID format.

            '
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/GraphAPIError'
              example:
                error:
                  message: Invalid solution ID format provided
                  type: GraphAPIException
                  code: 100
                  error_subcode: 33
                  fbtrace_id: FAKE_TRACE_ID_12345
                  is_transient: false
                  error_user_title: Invalid Request
                  error_user_msg: The solution ID format is not valid. Please check your request parameters.
        '401':
          description: 'Unauthorized - Invalid, missing, or expired access token.

            '
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/GraphAPIError'
              example:
                error:
                  message: Invalid OAuth access token
                  type: OAuthException
                  code: 190
                  error_subcode: 463
                  fbtrace_id: FAKE_TRACE_ID_67890
                  is_transient: false
                  error_user_title: Authentication Required
                  error_user_msg: Please provide a valid access token to access this resource.
        '403':
          description: 'Forbidden - Insufficient permissions or app not authorized for this solution.

            '
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/GraphAPIError'
              example:
                error:
                  message: App does not have permission to access this solution
                  type: GraphMethodException
                  code: 10
                  error_subcode: 2018218
                  fbtrace_id: FAKE_TRACE_ID_11111
                  is_transient: false
                  error_user_title: Permission Denied
                  error_user_msg: Your app does not have the required permissions to perform this action on the solution.
        '404':
          description: 'Not Found - Solution ID does not exist or is not accessible to the requesting app.

            '
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/GraphAPIError'
              example:
                error:
                  message: Solution not found or not accessible
                  type: GraphMethodException
                  code: 803
                  error_subcode: 1675030
                  fbtrace_id: FAKE_TRACE_ID_22222
                  is_transient: false
                  error_user_title: Resource Not Found
                  error_user_msg: The requested solution could not be found or you do not have access to it.
        '422':
          description: 'Unprocessable Entity - Valid parameters but business logic prevents processing (e.g., wrong solution state, outstanding payments).

            '
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/GraphAPIError'
              example:
                error:
                  message: Solution is not in a valid state to accept deactivation requests
                  type: GraphMethodException
                  code: 100
                  error_subcode: 2207013
                  fbtrace_id: FAKE_TRACE_ID_33333
                  is_transient: false
                  error_user_title: Request Cannot Be Processed
                  error_user_msg: The solution must be in ACTIVE status with a pending deactivation request to accept deactivation.
        '429':
          description: 'Too Many Requests - Rate limit exceeded. Use exponential backoff for retries.

            '
          headers:
            Retry-After:
              description: Number of seconds to wait before retrying
              schema:
                type: integer
                example: 60
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/GraphAPIError'
              example:
                error:
                  message: Application request limit reached
                  type: OAuthException
                  code: 4
                  error_subcode: 2446079
                  fbtrace_id: FAKE_TRACE_ID_44444
                  is_transient: true
                  error_user_title: Rate Limit Exceeded
                  error_user_msg: Too many requests have been made. Please wait and try again later.
        '500':
          description: 'Internal Server Error - Unexpected server error. Retry with exponential backoff if is_transient is true.

            '
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/GraphAPIError'
              example:
                error:
                  message: An unexpected error occurred while processing your request
                  type: GraphAPIException
                  code: 2
                  error_subcode: 1349174
                  fbtrace_id: FAKE_TRACE_ID_55555
                  is_transient: true
                  error_user_title: Service Temporarily Unavailable
                  error_user_msg: We're experiencing technical difficulties. Please try again in a few moments.
      security:
      - bearerAuth: []
components:
  schemas:
    WhatsAppBusinessSolution:
      type: object
      description: Multi-Partner Solution details and configuration
      required:
      - id
      - name
      - status
      - status_for_pending_request
      properties:
        id:
          type: string
          description: Unique identifier for the Multi-Partner Solution
          example: '1234567890123456'
        name:
          type: string
          description: Human-readable name of the Multi-Partner Solution
          minLength: 2
          maxLength: 75
          example: E-commerce Integration Solution
        status:
          $ref: '#/components/schemas/WhatsAppBusinessSolutionStatus'
        status_for_pending_request:
          $ref: '#/components/schemas/WhatsAppBusinessSolutionPendingStatus'
        owner_app:
          $ref: '#/components/schemas/ApplicationNode'
        owner_permissions:
          type: array
          description: List of WhatsApp Business Account permissions granted to the solution owner
          items:
            $ref: '#/components/schemas/WhatsAppBusinessAccountPermissionTask'
          example:
          - MANAGE
          - DEVELOP
          - MANAGE_TEMPLATES
    GraphAPIError:
      type: object
      description: Standard Graph API error response
      required:
      - error
      properties:
        error:
          type: object
          required:
          - message
          - type
          - code
          properties:
            message:
              type: string
              description: Human-readable error message
              example: Invalid parameter
            type:
              type: string
              description: Error category type
              example: OAuthException
            code:
              type: integer
              description: Numeric error code
              example: 100
            error_subcode:
              type: integer
              description: More specific error subcode when available
              example: 33
            fbtrace_id:
              type: string
              description: Unique identifier for debugging and support requests with Meta
              example: AXsgnV2Cm3ZMGF3dF_cfYIn
            is_transient:
              type: boolean
              description: Indicates whether this error is temporary and the request should be retried
              example: false
            error_user_title:
              type: string
              description: User-friendly error title for display purposes
              example: Permission Denied
            error_user_msg:
              type: string
              description: User-friendly error message for display purposes
              example: Your app doesn't have permission to access this resource
    WhatsAppBusinessAccountPermissionTask:
      type: string
      description: Granular permission tasks for WhatsApp Business Account access
      enum:
      - MANAGE
      - DEVELOP
      - MANAGE_TEMPLATES
      - MANAGE_PHONE
      - VIEW_COST
      - MANAGE_EXTENSIONS
      - VIEW_PHONE_ASSETS
      - MANAGE_PHONE_ASSETS
      - VIEW_TEMPLATES
      - VIEW_INSIGHTS
      - RECEIVE_INCOMING_MESSAGES
      - MANAGE_BILLING
      - MANAGE_USERS
      - MESSAGING
      - FULL_CONTROL
      example: MANAGE
    WhatsAppBusinessSolutionPendingStatus:
      type: string
      description: Status of any pending solution status transition requests
      enum:
      - PENDING_ACTIVATION
      - PENDING_DEACTIVATION
      - NONE
      example: NONE
    ApplicationNode:
      type: object
      description: Meta application that owns the Multi-Partner Solution
      properties:
        id:
          type: string
          description: Unique identifier for the Meta application
          example: '9876543210987654'
        name:
          type: string
          description: Name of the Meta application
          example: Solution Partner App
    WhatsAppBusinessSolutionStatus:
      type: string
      description: Current effective status of the Multi-Partner Solution
      enum:
      - DRAFT
      - INITIATED
      - ACTIVE
      - REJECTED
      - DEACTIVATED
      example: ACTIVE
  parameters:
    Authorization:
      name: Authorization
      in: header
      description: 'Bearer token for API authentication. This should be a valid access token obtained through the appropriate OAuth flow or system user token.

        '
      required: true
      schema:
        type: string
        pattern: ^Bearer\s+[A-Za-z0-9\-_.]+.*$
        example: Bearer EAABwzLixnjYBOzYmNMJJGfHq9DgNh...
    UserAgent:
      name: User-Agent
      in: header
      description: The user agent string identifying the client software making the request.
      required: false
      schema:
        type: string
        default: Meta-Business-Messaging-OpenAPI/1.0.0;spec=2025-10-21
        pattern: ^[a-zA-Z0-9\-_]+\/[0-9]+\.[0-9]+\.[0-9]+(;[a-zA-Z0-9\-=\.]+)?(\s+[a-zA-Z0-9\-_]+\/[0-9\-\.]+)?$
        example: Meta-Business-Messaging-OpenAPI/1.0.0;spec=2025-10-21
  securitySchemes:
    bearerAuth:
      type: http
      scheme: bearer
      bearerFormat: JWT
      description: 'System user access token with whatsapp_business_management permission. Format: Bearer YOUR_SYSTEM_USER_ACCESS_TOKEN

        '