Sign up and contact support to get 100 free checks.Sign up free
AvatarLookup workflow illustration for WhatsApp DP Checker for Multiple Numbers: Choosing Multi or Bulk
A visual overview of the workflow discussed in this AvatarLookup article.

How to analyze public WhatsApp display pictures for many numbers at once, from preparing the list to reading ordered results and bulk CSV output.

A WhatsApp DP checker for multiple numbers analyzes the public display picture behind each number in a list and returns the results together. In AvatarLookup there are two routes. The synchronous multi check accepts 1 to 100 WhatsApp numbers per API request and returns results in the same order, while the dashboard accepts up to 500 numbers and works through them one by one. For larger lists, the asynchronous WhatsApp bulk product takes a TXT or CSV file and returns one CSV per task. In both routes, a produced result tells you analysis happened, not that the account exists.

What a WhatsApp DP checker for multiple numbers should do

Search for this topic and most tools turn out to be number checkers: they report whether a number appears on WhatsApp and stop there. Others are browser extensions that drive WhatsApp Web through your own account, which raises questions about permissions and account safety. Very few explain what to do with the picture itself.

A display picture check in AvatarLookup is avatar analysis. For each number, the service looks at the public WhatsApp avatar and returns source-specific public-avatar fields plus appearance estimates such as picture type, so a contact-data team can see which records carry a portrait, a logo, an illustration or no public picture.

Visibility depends on the account owner. WhatsApp's privacy settings let each user show the profile photo to everyone, to contacts only, to contacts with exceptions, or to nobody. A check only reflects what is public at the time it runs, so a missing picture is a statement about public visibility, not about the account.

Choosing a route by list size

List situation Route How results arrive
A few numbers to review by hand Dashboard, single or multi On screen, number by number
Up to 500 numbers, analyst-driven Dashboard multi Processed one by one in the dashboard
1 to 100 numbers per call from code API multi (POST /api/v1/batch-check) One ordered JSON answer per request
A large export or a recurring file WhatsApp bulk task (POST /api/v1/bulk-tasks) One CSV per task after it completes

The multi check is the right fit when a workflow needs answers inside the same request, such as a review screen or a nightly job that processes a few thousand numbers in slices of 100. Every request must contain one service type, so do not mix WhatsApp numbers with email addresses in the same call.

Switch to the bulk product when the list is large enough that slicing it into many synchronous calls becomes awkward to schedule and retry. Bulk tasks have their own per-product limits, listed in the API documentation, so check the current values before planning a run.

Numbers from mainland China (+86), Hong Kong (+852) and Macau (+853) belong in realtime single checks rather than bulk files.

Preparing the number list

Clean input is the cheapest improvement to any multi-number check. Before sending anything:

  1. Normalize every number to international form with its country code, and strip spaces, brackets, dashes and extension notes.
  2. Remove duplicates after normalization, since the same number often appears in several formats.
  3. Keep your own record key next to each number so ordered results can be joined back without guesswork.
  4. Split by route: up to 100 numbers per API multi request, or a single file for a bulk task.

Bulk files have stricter rules. Use TXT or CSV with one number per line, written as country-coded digits without a plus sign or spaces. Select one country for the task; the list should be essentially that country. In a multipart bulk submission, the country field must come before the file field. Spreadsheet formats such as XLSX are not accepted, so export to CSV first.

Keep a copy of the exact file or request body you sent. When results look surprising, the input is the first place to look.

Reading ordered results without over-reading them

The API multi check returns results in the same order as the input, which makes joining straightforward: position one in the answer belongs to position one in your request. Join on position and then confirm against your stored list rather than re-parsing numbers from the answer.

Each item carries an indicator of whether a result was produced. When it is positive, analysis completed for that number and the avatar fields are present. It does not confirm that an account exists. When it is negative, the number was invalid, the check was undetermined, or the check failed. That is not a verdict that the account is missing or that it has no picture.

Keep three outcomes apart in your data model:

  • Avatar analyzed: a public picture was found and described.
  • No public avatar: the check completed and no public picture was available. This is a completed result and is billable.
  • No result: invalid input, undetermined, or failed. Re-check the input and decide whether to try again later.

Bulk tasks produce a WhatsApp-specific CSV. Read its header and map each column explicitly instead of reusing a mapping written for another product.

Running the bulk route step by step

The WhatsApp bulk product is asynchronous, so the workflow has four stages:

  1. Submit the prepared file and country to POST /api/v1/bulk-tasks. The response gives you a task you can poll.
  2. Poll GET /api/v1/bulk-tasks/{id} no more often than every 30 seconds. A slower interval is fine for large files; no fixed completion time is promised.
  3. Download the single CSV when the task succeeds. Download links last 12 hours; if one expires, query the same task again for a fresh link.
  4. Load and reconcile the CSV against your source list, recording the analysis date on every row.

Dashboard users follow the same idea without code: upload the file, wait for the task to finish, then download the CSV. Whichever route you use, store appearance outputs as algorithmic estimates and treat public-avatar data as a contact-data quality signal, not as identity verification.

FAQ

How can teams process a list of 5,000 numbers with the multi check?

Split the list into requests of up to 100 numbers, send them in sequence or with modest parallelism, and join each ordered answer back by position. Store a request reference and timestamp with every slice so failed slices can be resent alone. If the job grows or becomes a regular export, move it to the WhatsApp bulk product, which handles a single file and returns one CSV.

How often should a WhatsApp display picture be re-checked?

Pictures change and privacy settings change, so every result is a snapshot at check time. Re-check when a record is about to be used for a review, when the picture matters to a decision, or on a schedule that matches how quickly your contact data ages. Keep earlier results with their dates instead of overwriting them, so reviewers can see what changed and when.

Can email addresses be included in the same multi request?

No. Each API multi request carries one service type. Supported Gmail, Yandex and Mail.ru addresses use the email avatar route, so split mixed lists by identifier type first and send WhatsApp numbers and email addresses in separate requests. The same separation applies to bulk files, where each task belongs to one specific bulk product.

Learn More

Choose the product information that fits the next step in your workflow.

Sources