Admin / Customer Account API · Action Required

WhatsApp marketing consent
can now be read and written via the API

Whether a customer has opted in to WhatsApp marketing—previously not accessible via the API—can now be updated and retrieved from both the Admin API and the Customer Account API. A dedicated mutation and a dedicated field have been added.

On this page
  1. What's changing, in a nutshell (understand it in 30 seconds)
  2. API elements that were added
  3. Illustrated: reading and writing
  4. Which APIs can access it
  5. What the article does and doesn't state explicitly
  6. 5 points developers should keep in mind
  7. 3 use cases you can apply to your business
  8. A one-line summary you can use in a proposal

1What's changing, in a nutshell

A customer's WhatsApp marketing consent can now be updated and retrievedfrom both the Customer Account API and the Admin API.
Updates are made via the customerWhatsAppMarketingConsentUpdate mutation, and retrieval via the CustomerPhoneNumber field on whatsAppMarketingConsent . The target is the customer'sdefault phone number.

Before: not accessible via the API

There was no way to programmatically read or write the WhatsApp marketing consent status via the API.

Now: readable and writable via the API

Update it with the dedicated mutation, andCustomerPhoneNumber retrieve the current value via the dedicated field. Supported across both the Admin and Customer Account systems.

2API elements that were added

Mutation

customerWhatsAppMarketingConsentUpdate

A customer'sdefault phone numberA mutation for updating the WhatsApp marketing consent status for a customer's default phone number. It can be called from both the Admin API and the Customer Account API.

Field

CustomerPhoneNumber.whatsAppMarketingConsent

CustomerPhoneNumber A read field added to the object. Use it to retrieve the current WhatsApp marketing consent value.

The key point is that "write = mutation" and "read = field" now come as a matched pair. Because both retrieving and updating consent are covered by the API, you can build two-way synchronization with external CRMs and marketing tools.

3Illustrated: reading and writing

External system CRM / MA tools App / backend Update (mutation) Read(whatsAppMarketingConsent) Shopify API customerWhatsAppMarketingConsentUpdate CustomerPhoneNumber default phone # Customer's default phone number
The update targets the customer'sdefault phone number, specifically consent for it. The article does not describe behavior for customers with multiple numbers or how non-default numbers are handled.

4Which API can access it

OperationElement usedAdmin APICustomer Account API
Update consent customerWhatsAppMarketingConsentUpdate Supported Supported
Read consent CustomerPhoneNumber.whatsAppMarketingConsent Supported Supported
Target Customer's default phone number Common to both APIs

* The article points to the references for both the Admin API and the Customer Account API. The tags also include Webhook / Action Required / 2026-07 .

5What the article does and does not state

Stated

What the article says

WhatsApp marketing consent can be managed via both APIs
Updates use customerWhatsAppMarketingConsentUpdate
Reads use CustomerPhoneNumber.whatsAppMarketingConsent
The target is the default phone number
Tags: Action Required / Admin GraphQL API / Customer Account API / Webhook / 2026-07

Not stated

What the article does not say

The specific enum / data type of the consent value
Which Webhook topic fires (Webhook is in the tags, but there are no details in the body)
What specifically must be done for "Action Required"
Supported API versions, regions, and required scopes
Handling of multiple phone numbers or non-default numbers
These should be confirmed in the reference.

65 key points for developers

1. Read / Write are now available as a pair

Because the update mutation and read fields are provided together, you can implementtwo-way syncof consent state directly. The hassle of diffing when you only have one side disappears.

Admin CA

2. Both Admin and Customer Account paths

You can handle both bulk management from the back office (Admin) and the flow where customers toggle their own consent on their account page (Customer Account)togetherunder the same concept.

3. The target is the "default phone number"

Consent is tied to the customer's default phone number. Before implementing, settle in your design whether target customers have a default number and how to handle number changes.

4. Watch for the "Action Required" tag

The change is announced Action Required as such. Apps that already implement contact consent management should check the reference to see whether they need to support the WhatsApp channel.

Webhook ?

5. The Webhook tag's specifics aren't in the article — verify

The article tags include Webhook but the body doesn't mention specific topic names or payloads. If you want to capture consent changes in an event-driven way, check the availability, names, and scopes of the relevant Webhook topicsin the reference and sandbox first(don't implement based on the article alone).

7Three use cases you can apply to your work

CRM Shopify
USE CASE 1

Two-way sync of WhatsApp consent with an external CRM / MA tool

Challenge
WhatsApp delivery consent state is inconsistent between the external CRM and Shopify. Manual reconciliation leaves room for delivery mistakes and compliance risk.
Approach
Use the update mutation to reflect CRM-side changes into Shopify, and use thewhatsAppMarketingConsent field to pull Shopify-side values into the CRM, building a two-way sync.
Result
A single source of truth for consent state is maintained, preventing misdelivery to people who haven't consented. Automatic narrowing of delivery targets also becomes possible.
Technical note
The target is the default phone number. Check the consent value's type and enum in the reference before implementing the mapping.
USE CASE 2

Add a WhatsApp delivery opt-in UI to the customer account page

Challenge
Customers have no way to toggle whether they receive WhatsApp delivery themselves, resulting in support inquiries and manual updates.
Approach
Use the Customer Account API's update mutation to implement a "Receive via WhatsApp" toggle on the customer account page. Display the current value with the read field.
Result
Self-service reduces operational load while obtaining the person's explicit consent ensures delivery is legitimate.
Technical note
Check the Customer Account API's scopes and authentication flow. Also verify how much audit information, such as the consent timestamp, you can capture.
USE CASE 3

Mechanically extract "only those who have consented" in a pre-delivery batch

Challenge
Every time a WhatsApp campaign is sent, the list of consented customers is reviewed by hand, which takes time.
Action
On the Admin API, CustomerPhoneNumber.whatsAppMarketingConsent read it, and build a batch job that automatically extracts only consented customers as targets for delivery jobs.
Impact
Structurally excludes delivery to non-consented customers, ensuring compliance while reducing list-building effort.
Technical note
For large customer bases, pagination design is essential. If you want consent changes reflected instantly, check the reference for Webhook support.

8One-line summary for proposals

"WhatsApp marketing consent can now beread and writtenfrom both the Admin API and the Customer Account API.
Updates go through customerWhatsAppMarketingConsentUpdate, and retrieval through CustomerPhoneNumber.whatsAppMarketingConsent.
CRM two-way sync, customer self-consent UI, and pre-delivery consent filteringcan now be built in code (the target is the default phone number)."