Product guidance
Beyond Webhooks: Synchronous WhatsApp Number Verification
Learn how to replace complex WhatsApp call webhook integration with a synchronous REST API for real-time account-presence signals and CRM routing workflows.

Replace complex event-driven webhook architectures with a synchronous REST API to retrieve WhatsApp account-presence signals in real time.
When evaluating a whatsapp call webhook integration for number verification, you do not need to implement complex event-driven infrastructure to check WhatsApp account status. By using a synchronous REST API, you can submit an E.164 formatted phone number and receive the registration, avatar, or business account status in the exact same HTTP response. This synchronous approach removes the need for polling, asynchronous state management, or dedicated webhook listeners, providing immediate data to inform your CRM enrichment or routing workflows.
The Complexity of Event-Driven Verification
Event-driven architectures are common in messaging platforms, but relying on a whatsapp call webhook integration for simple number verification introduces significant overhead. Webhooks require dedicated infrastructure to listen for incoming payloads, process events, and acknowledge receipt to the originating server. For development teams, this means maintaining public-facing endpoints, managing asynchronous state, and handling potential delivery retries or payload parsing errors. When the goal is simply to confirm an account-presence signal before routing a record, event-driven models often introduce unnecessary latency and maintenance burdens. Instead of waiting for an asynchronous callback to confirm if a number is registered, teams can streamline their architecture by requesting the exact status they need and receiving it immediately.
The Synchronous Advantage
A synchronous API model provides a more efficient alternative to managing webhook listeners. With WA Lookup, results are synchronous, meaning the verification data is returned in the same HTTP response as the initial request. This model completely removes the need for webhook endpoints, continuous polling, or asynchronous state management. WA Lookup consolidates its verification checks into a single synchronous endpoint. By adjusting the requested service type, developers can retrieve different levels of account-presence signals without altering their network architecture. The platform supports three distinct checks through this single endpoint:
ws: Confirms whether a submitted phone number is registered on WhatsApp.ws_avatar: Checks WhatsApp registration and adds avatar availability, including an avatar URL when the upstream service supplies one.ws_business: Checks WhatsApp registration and indicates whether the account uses WhatsApp Business. Because the request and response occur within a single connection, teams can integrate these checks directly into sequential data pipelines or lead-scoring logic without pausing for external events.
Implementing WhatsApp Verification via REST API
Integrating a synchronous check requires a straightforward HTTP request rather than a complex event listener. The public API guidance describes a POST request to the /api/v1/check endpoint. Authentication is handled by including an X-API-Key header.
The documented request contract requires a JSON body containing two fields: a service_type value (ws, ws_avatar, or ws_business) and an identifier. The identifier must be a phone number submitted in the E.164 format (for example, +14155552671).
Upon a successful request, the API returns a JSON response containing the requested account fields. Every check response carries standard fields, including id, identifier, registered, transaction_id, status, service_type, and charged_amount_micros. Depending on the selected service type, the response will also include the specific boolean fields for avatar or business status. This predictable, same-response structure helps developers parse the account-presence signal immediately and pass the data to downstream applications.
To support ongoing management, the WA Lookup dashboard provides tools for API key management, balance tracking, check history, product-level reporting, recent checks, balance spend, and 7-day trends.
Best Practices for Data Enrichment and Routing
Contextualizing verification data within a broader business workflow helps teams prioritize outreach and manage records efficiently. Using a synchronous API to check registration status can be one input alongside other checks to clean lead lists before initiating outreach campaigns.
When enriching CRM records, teams can use the ws_avatar or ws_business service types to inform internal routing rules. For example, identifying a WhatsApp Business account might route a record to a B2B sales queue, while an avatar URL can provide additional context for customer support teams.
It is important to understand the boundaries of an account-presence signal. A registered result reports the WhatsApp status fields available at the exact time of the check. It does not check online status, last seen timestamps, message history, contact consent, or whether the number can be contacted. The signal simply supports internal review and routing decisions based on platform presence.
From an operational perspective, WA Lookup operates on a pay-per-check billing model. Failed or undetermined checks are refunded automatically, meaning that workflows only consume balance for successful status retrievals. New accounts can also claim a $0.10 trial balance to test registration, avatar, and Business account checks within their own pipelines.
FAQ
Do I need to set up a webhook to use the WA Lookup API?
No. WA Lookup results are synchronous, meaning they are returned in the same HTTP response as your request. You do not need to configure webhook endpoints, event listeners, or polling mechanisms to receive the verification data.
What is the difference between the ws, ws_avatar, and ws_business service types?
All three use the same synchronous endpoint but return different fields. The ws service type returns only the registration status. The ws_avatar type adds an avatar boolean and an avatar URL (when the upstream service supplies one). The ws_business type adds a boolean indicating if the account uses WhatsApp Business.
How are failed or undetermined checks handled in the billing model?
WA Lookup uses a pay-per-check billing model. If a check fails or returns an undetermined result, the cost is refunded automatically to your account balance.
Does a 'registered' status mean I have consent to contact the user?
No. A registered result only provides an account-presence signal at the time of the check. It does not check contact consent, online status, message history, or whether the number can be contacted.