# Check if a phone number is registered on MAX

> Check in bulk whether phone numbers have an account on MAX, a newer Russian messenger. Yes, no or unknown; unknowns are free.

Canonical: https://mobilevalidate.com/services/max-number-check · Last updated: 2026-09-25

![A phone with chat bubbles; one messaging-app check says registered, another is unknown.](https://mobilevalidate.com/images/messaging-app-registration-check.svg)

*Messaging-app checks answer registered, not registered or unknown, with the time we checked.*


The MAX check tells you whether phone numbers have an account on MAX, a newer Russian messenger. It runs in bulk jobs, answers `registered: true`, `false` or `null` (unknown) per number, and returns nothing beyond that: no name, photo or profile. It is most relevant for Russian mobile numbers.

## What does the MAX check tell you?

It answers whether a MAX account is associated with the number. MAX is a newer app, developed by the company behind the social network [VK](/services/vk-number-check). It brings chats, calls and other everyday services into one app, and accounts are registered with a phone number confirmed by a code.

- `registered: true`: a MAX account exists for the number.
- `registered: false`: a conclusive answer that there is none.
- `registered: null`: no conclusive answer; not charged.

Because the app is young and its user base is growing, answers for the same number can change faster than on long-established messengers. Read `checked_at` with every answer and keep `max_age` short if you rely on the result.

## Who uses it, and why?

- **Channel coverage for Russian customers.** Messenger use in Russia is spread across several apps, including [Telegram](/services/telegram-number-check), [WhatsApp](/services/whatsapp-number-check) and MAX. Businesses serving Russian customers check all three in one job to see which channel each opted-in customer can use. See [channel selection](/use-cases/channel-selection).
- **Contact-list hygiene.** For lists of Russian numbers collected with consent, messenger presence is one way to tell live mobile numbers from stale ones.
- **Tracking adoption in your own base.** Product teams may want aggregate figures on how many of their existing customers have moved to a new messenger before they support it.

## What do you get back?

Each job row carries `checks["max.registered"]`; the service has no extra attributes.

| Field | Type | Meaning |
|---|---|---|
| `registered` | boolean or null | `true` account exists, `false` none, `null` unknown |
| `status` | enum | `completed`, `pending`, `unknown`, `unsupported_country` or `failed` |
| `confidence` / `confidence_score` | enum / 0–1 | How sure the answer is |
| `checked_at` | timestamp | When the answer was obtained |
| `cached` / `age_seconds` / `billed` | boolean / integer / boolean | Cache and billing details |
| `reason` | string or null | Why the answer is not conclusive |

## How is it billed?

Per number, for conclusive answers only, at the bulk price. You're not charged for inconclusive results (unknown, unsupported country, timeout, invalid, duplicate). The free `POST /v1/jobs/estimate` shows the maximum cost first. See [pricing](/pricing).

Numbers your account checked recently can be answered from its cache at no charge. `max_age: 0` forces fresh, billed checks.

## What are the limits?

MAX runs in bulk jobs only. `POST /v1/lookup` answers `403 service_disabled` ("The check 'max.registered' is available in bulk jobs only (POST /v1/jobs).").

- Up to 50,000 numbers and e-mails per job, 20 checks per request, 100,000 number × check pairs per job.
- Numbers from every country are accepted. Russian numbers in national format (8 9xx …) need `default_country: "RU"`.
- Requests that look like sequential number ranges or generated e-mail lists are rejected.
- A daily number cap applies per account. Follow the job with `GET /v1/jobs/{id}?wait=30` or a [webhook](/docs/webhooks).

## How do I use it responsibly?

Check numbers of customers who gave them to you, for messages they expect. Our [acceptable use policy](/legal/acceptable-use) forbids unsolicited messaging, profiling individuals, and checking ranges of numbers to find out who uses a particular app. Russian data protection law has its own requirements for processing personal data of people in Russia, so make sure your processing is lawful. People can object to checks via the [opt-out form](/opt-out).

## Example request

Test jobs complete at once. `+447700900001` answers registered, `…002` not registered and `…003` unknown. See [test mode](/docs/test-mode).

```bash
curl https://api.mobilevalidate.com/v1/jobs \
  -H "Authorization: Bearer $MOBILEVALIDATE_API_KEY" \
  -H "Content-Type: application/json" \
  -H "Idempotency-Key: max-demo-001" \
  -d '{"numbers": ["+447700900001", "+447700900002", "+447700900003"], "checks": ["max"]}'
# then: GET /v1/jobs/{id}?wait=30 and GET /v1/jobs/{id}/results
```

Job (excerpt, test mode):

```json
{
  "object": "job",
  "id": "job_0VWF4kMMCloqoEvo1IlO",
  "status": "completed",
  "livemode": false,
  "checks": [
    "max.registered"
  ],
  "created_at": "2026-09-25T14:25:30.291Z",
  "completed_at": "2026-09-25T14:25:30.295Z",
  "progress": {
    "total": 3,
    "checks_total": 3,
    "done": 3,
    "conclusive": 2,
    "non_billable": 3
  },
  "retention_days": 30
}
```

First row from `GET /v1/jobs/{id}/results` (test mode):

```json
{
  "kind": "phone",
  "input": "+44770*****01",
  "e164": "+447700900001",
  "country": "GB",
  "number_status": "valid",
  "checks": {
    "max.registered": {
      "service": "max.registered",
      "status": "completed",
      "registered": true,
      "attributes": null,
      "confidence": "high",
      "confidence_score": 0.99,
      "checked_at": "2026-09-25T14:25:30.295Z",
      "cached": false,
      "age_seconds": 0,
      "billed": false,
      "reason": null,
      "poll_after_ms": null
    }
  },
  "test": true
}
```

## Frequently asked questions

### What is MAX?

MAX is a newer Russian messenger that combines chats, calls and access to other services. It is registered with a phone number.

### Which numbers is the MAX check useful for?

Mainly Russian numbers, because that is where the app is used. The check accepts numbers from any country, but outside Russia most answers will be not registered.

### Why is MAX bulk only?

MAX answers are gathered in batches, so the check runs in POST /v1/jobs. POST /v1/lookup refuses it with service_disabled.

### Does the check return names or profile information?

No. Only whether an account is associated with the number.

## Service code and modes

- Code: `max.registered` (input: phone number)
- Modes: bulk only · worldwide

## Price (live)

- Realtime: not available (bulk only)
- Bulk (POST /v1/jobs): $0.0015 per check ($1.50 per 1,000)
- You're not charged for inconclusive results (unknown, unsupported country, timeout, invalid, duplicate).

## Response fields (from the public catalog)

| Field | Type | Meaning |
|---|---|---|
| registered | boolean or null | true = found, false = not found, null = unknown (not charged) |
| status | enum | completed, pending, unknown, unsupported_country, failed |
| checked_at | timestamp | When the answer was obtained |

_Platform and brand names are used only to describe which service a check refers to. MobileValidate is not affiliated with, endorsed by or sponsored by any of these companies; all trademarks belong to their owners._
