WhatsApp Cloud API - WhatsApp Business QR Code API
Copy for LLM View as Markdown Version v23.0 API for managing individual WhatsApp Business Account message QR codes by their unique identifier. Provides endpoints for retrieving and deleting specific message QR codes. Message QR codes generate WhatsApp deep links with pre-filled messages that customers can use to start conversations. Each QR code has a unique 14-character identifier. Requirements: WhatsApp Business Account with whatsapp_business_management permission, verified phone number, valid system user access token, and valid QR code identifier.Base URL
| https://graph.facebook.com |Endpoints
| GET | ///message_qrdls/ | | DELETE | ///message_qrdls/ |GET ///message_qrdls/
Retrieve details for a specific QR code by its unique identifier. Supports field selection and QR image generation. Response returns QR code in data array for consistency.Request Syntax
GET///message_qrdls/ Try it Select language cURLJavaScriptPythonUser-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. Phone-Number-IDstring·required The WhatsApp Business Account phone number ID that owns the QR code. This ID is provided when you add a phone number to your WhatsApp Business Account. QR-Code-IDstring·required The unique 14-character identifier of the QR code to retrieve. This is the code value returned when the QR code was created. Query Parameters
fieldsstring Comma-separated list of fields to include in the response. Available fields: code: QR code identifier (always included) prefilled_message: Pre-filled message text (always included) deep_link_url: WhatsApp deep link URL (always included) creation_time: Unix timestamp when QR code was created (first-party apps only) qr_image_url.format(FORMAT): QR code image URL where FORMAT is SVG or PNG Example: “code,prefilled_message,qr_image_url.format(SVG)” Responses
Retrieve details for a specific QR code by its unique identifier. Supports field selection and QR image generation. Response returns QR code in data array for consistency. 200 Successfully retrieved the message QR code details Content Type: application/json Schema: QrCodeResponse Show child attributes
QrCodeResponse
dataarray of QrCodeDetails·required Array containing the single QR code object (maintains consistency with collection endpoint) Show child attributes
data[]QrCodeDetails Complete details of a message QR code Show child attributes
codestring·required Unique 14-character QR code identifier
prefilled_messagestring·required Pre-filled message text that appears in customer chat
deep_link_urlstring (uri)·required WhatsApp deep link URL for direct conversation initiation
creation_timeinteger Unix timestamp when QR code was created (first-party apps only)
qr_image_urlstring (uri) QR code image download URL (when format specified in fields) 400 Bad Request - Invalid QR code ID format or parameters 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 access denied 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 - Phone number ID or QR code does not exist 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
DELETE ///message_qrdls/
Permanently delete a specific QR code. Once deleted, the QR code and deep link become invalid. Deletion cannot be undone and affects any existing marketing materials using the QR code.Request Syntax
DELETE///message_qrdls/ Try it Select language cURLJavaScriptPythonUser-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. Phone-Number-IDstring·required The WhatsApp Business Account phone number ID that owns the QR code to be deleted. This ID is provided when you add a phone number to your WhatsApp Business Account. QR-Code-IDstring·required The unique 14-character identifier of the QR code to delete. This is the code value returned when the QR code was created. Responses
Permanently delete a specific QR code. Once deleted, the QR code and deep link become invalid. Deletion cannot be undone and affects any existing marketing materials using the QR code. 200 Successfully deleted the message QR code Content Type: application/json Schema: DeleteQrCodeResponse Show child attributes
DeleteQrCodeResponse
successboolean·required Indicates whether the QR code was successfully deleted 400 Bad Request - Invalid QR code ID format 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 access denied 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 - Phone number ID or QR code does not exist 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

