Skip to main content

WhatsApp Business Multi-Partner Solutions - Solution Accept API

Copy for LLM View as Markdown Version v23.0 API for accepting Multi-Partner Solution partnership invitations. This endpoint allows partner applications to accept invitations to participate in Multi-Partner Solutions.

Base URL

| https://graph.facebook.com |

Endpoints

| POST | ///accept |

POST ///accept

Accept an invitation to participate in a Multi-Partner Solution as a partner application. This endpoint transitions the partner’s status from NOTIFICATION_SENT to ACCEPTED, enabling the solution to progress toward ACTIVE status once all required partners accept. Use Cases: Accept partnership invitations for Multi-Partner Solutions Activate partner participation in existing solutions Confirm partner app’s commitment to solution terms and conditions Enable solution workflow progression from INITIATED to ACTIVE status Business Logic: Only invited partner apps can accept solution invitations Solution must be in INITIATED status to accept partnerships Partner status transitions from NOTIFICATION_SENT to ACCEPTED Solution may become ACTIVE once all required partners accept Acceptance creates formal partnership agreement between apps Rate Limiting: Standard Graph API rate limits apply. Use appropriate retry logic with exponential backoff. Validation: Partner app must have received a valid solution invitation Solution must exist and be accessible to the partner app Partner app must have proper permissions and capabilities Acceptance request must include valid partner app identification

Request Syntax

POST///accept Try it Select language cURLJavaScriptPython
curl --request POST \
  --url 'https://graph.facebook.com/{Version}/{Solution-ID}/accept' \
  --header 'Authorization: Bearer <Token>' \
  --header 'Content-Type: application/json' \
  --data '{
  "partner_app_id": "9876543210987654",
  "log_session_id": "session_12345_accept_solution"
}'
Select status code 200400401403404422429500
\{
  "successful_acceptance": {
    "summary": "Successful solution acceptance",
    "value": {
      "solution_id": "1234567890123456",
      "partner_status": "ACCEPTED",
      "success": true,
      "message": "Solution partnership accepted successfully",
      "update_time": "2024-01-15T10:30:00Z"
    }
  }
}
Header Parameters
User-Agentstring The user agent string identifying the client software making the request. Authorizationstring·required Bearer token for API authentication. This should be a valid access token obtained through the appropriate OAuth flow or system user token. Path Parameters
Versionstring·required Graph API version to use for this request. Determines the API behavior and available features. Solution-IDstring·required ID of the Multi-Partner Solution to accept. This ID is provided in the original invitation and can be found in partner notifications or solution management interfaces. Request BodyRequired
Content Type: application/json Schema: WhatsAppBusinessSolutionAcceptRequest Show child attributes
WhatsAppBusinessSolutionAcceptRequest
partner_app_idstring·required ID of the partner application accepting the solution invitation. This must match the app ID that received the original invitation.
log_session_idstring Optional session identifier for logging and debugging purposes. Used to track the acceptance flow across multiple API calls. Responses
Accept an invitation to participate in a Multi-Partner Solution as a partner application. This endpoint transitions the partner’s status from NOTIFICATION_SENT to ACCEPTED, enabling the solution to progress toward ACTIVE status once all required partners accept. Use Cases: Accept partnership invitations for Multi-Partner Solutions Activate partner participation in existing solutions Confirm partner app’s commitment to solution terms and conditions Enable solution workflow progression from INITIATED to ACTIVE status Business Logic: Only invited partner apps can accept solution invitations Solution must be in INITIATED status to accept partnerships Partner status transitions from NOTIFICATION_SENT to ACCEPTED Solution may become ACTIVE once all required partners accept Acceptance creates formal partnership agreement between apps Rate Limiting: Standard Graph API rate limits apply. Use appropriate retry logic with exponential backoff. Validation: Partner app must have received a valid solution invitation Solution must exist and be accessible to the partner app Partner app must have proper permissions and capabilities Acceptance request must include valid partner app identification 200 Multi-Partner Solution invitation accepted successfully. The partner’s status has been updated to ACCEPTED and the solution may progress toward ACTIVE status. Content Type: application/json Schema: WhatsAppBusinessSolutionAcceptResponse Show child attributes
WhatsAppBusinessSolutionAcceptResponse
solution_idstring·required ID of the Multi-Partner Solution that was accepted
partner_statusWhatsAppBusinessSolutionPartnerStatus Current status of the partner’s participation in the Multi-Partner Solution
successboolean·required Indicates whether the acceptance was successful
messagestring Human-readable confirmation message
update_timestring (date-time) Timestamp when the acceptance was processed 400 Bad Request - Invalid parameters or malformed request Content Type: application/json Schema: GraphAPIError Show child attributes
GraphAPIError
errorobject·required Show child attributes
messagestring·required Human-readable error message
typestring·required Error category type
codeinteger·required Numeric error code
error_subcodeinteger More specific error subcode when available
fbtrace_idstring Unique identifier for debugging and support requests with Meta
is_transientboolean Indicates whether this error is temporary and the request should be retried
error_user_titlestring User-friendly error title for display purposes
error_user_msgstring User-friendly error message for display purposes 401 Unauthorized - Invalid or missing access token Content Type: application/json Schema: GraphAPIError Show child attributes
GraphAPIError
errorobject·required Show child attributes
messagestring·required Human-readable error message
typestring·required Error category type
codeinteger·required Numeric error code
error_subcodeinteger More specific error subcode when available
fbtrace_idstring Unique identifier for debugging and support requests with Meta
is_transientboolean Indicates whether this error is temporary and the request should be retried
error_user_titlestring User-friendly error title for display purposes
error_user_msgstring User-friendly error message for display purposes 403 Forbidden - Insufficient permissions or not invited to solution Content Type: application/json Schema: GraphAPIError Show child attributes
GraphAPIError
errorobject·required Show child attributes
messagestring·required Human-readable error message
typestring·required Error category type
codeinteger·required Numeric error code
error_subcodeinteger More specific error subcode when available
fbtrace_idstring Unique identifier for debugging and support requests with Meta
is_transientboolean Indicates whether this error is temporary and the request should be retried
error_user_titlestring User-friendly error title for display purposes
error_user_msgstring User-friendly error message for display purposes 404 Not Found - Solution ID does not exist or is not accessible Content Type: application/json Schema: GraphAPIError Show child attributes
GraphAPIError
errorobject·required Show child attributes
messagestring·required Human-readable error message
typestring·required Error category type
codeinteger·required Numeric error code
error_subcodeinteger More specific error subcode when available
fbtrace_idstring Unique identifier for debugging and support requests with Meta
is_transientboolean Indicates whether this error is temporary and the request should be retried
error_user_titlestring User-friendly error title for display purposes
error_user_msgstring User-friendly error message for display purposes 422 Unprocessable Entity - Solution cannot be accepted in current state Content Type: application/json Schema: GraphAPIError Show child attributes
GraphAPIError
errorobject·required Show child attributes
messagestring·required Human-readable error message
typestring·required Error category type
codeinteger·required Numeric error code
error_subcodeinteger More specific error subcode when available
fbtrace_idstring Unique identifier for debugging and support requests with Meta
is_transientboolean Indicates whether this error is temporary and the request should be retried
error_user_titlestring User-friendly error title for display purposes
error_user_msgstring User-friendly error message for display purposes 429 Too Many Requests - Rate limit exceeded Content Type: application/json Schema: GraphAPIError Show child attributes
GraphAPIError
errorobject·required Show child attributes
messagestring·required Human-readable error message
typestring·required Error category type
codeinteger·required Numeric error code
error_subcodeinteger More specific error subcode when available
fbtrace_idstring Unique identifier for debugging and support requests with Meta
is_transientboolean Indicates whether this error is temporary and the request should be retried
error_user_titlestring User-friendly error title for display purposes
error_user_msgstring User-friendly error message for display purposes 500 Internal Server Error - Unexpected server error Content Type: application/json Schema: GraphAPIError Show child attributes
GraphAPIError
errorobject·required Show child attributes
messagestring·required Human-readable error message
typestring·required Error category type
codeinteger·required Numeric error code
error_subcodeinteger More specific error subcode when available
fbtrace_idstring Unique identifier for debugging and support requests with Meta
is_transientboolean Indicates whether this error is temporary and the request should be retried
error_user_titlestring User-friendly error title for display purposes
error_user_msgstring User-friendly error message for display purposes Select language cURLJavaScriptPython
curl --request POST \
  --url 'https://graph.facebook.com/{Version}/{Solution-ID}/accept' \
  --header 'Authorization: Bearer <Token>' \
  --header 'Content-Type: application/json' \
  --data '{
  "partner_app_id": "9876543210987654",
  "log_session_id": "session_12345_accept_solution"
}'
Select status code 200400401403404422429500
\{
  "successful_acceptance": {
    "summary": "Successful solution acceptance",
    "value": {
      "solution_id": "1234567890123456",
      "partner_status": "ACCEPTED",
      "success": true,
      "message": "Solution partnership accepted successfully",
      "update_time": "2024-01-15T10:30:00Z"
    }
  }
}

Authentication

| Scheme | Type | Location | | bearerAuth | HTTP Bearer | Header: Authorization |

Usage Examples

bearerAuth: Include Authorization: Bearer your-token-here in request headers

Global Authentication Requirements

All endpoints require: bearerAuth Did you find this page helpful? Thumbs up icon Thumbs down icon