The Facebook Number Checker API is a bulk, asynchronous, file-based API used to check Facebook account registration by phone number or email address. Upload an input file, poll the returned task ID, then download the exported results. This repository contains runnable examples in Python, Node.js, Go, Java, C#, PHP, browser JavaScript, and Shell.
- Base URL:
https://api.checknumber.ai - Auth:
X-API-Keyrequest header - Full API docs: https://docs.checknumber.ai/facebook-bulk-number-checker
- Get an API key: https://platform.checknumber.ai
Note
This is a bulk, file-based, asynchronous API. It does not perform a single real-time lookup in one request/response cycle.
- How do I check if a phone number is registered on Facebook?
- How do I process Facebook checks in bulk?
- What request parameters does the API take?
- What does the task response look like?
- How do I check if an email is registered on Facebook?
- What does the Facebook number checker API cost?
- Facebook number checker API vs alternatives
- Code examples
- Status codes
- FAQ
- Support & legal
Send a POST request to https://api.checknumber.ai/v1/tasks with the API key, numbers.txt, and task_type=facebook. The response contains a task_id used to retrieve task status and the final result_url.
curl --location 'https://api.checknumber.ai/v1/tasks' \
--header 'X-API-Key: YOUR_API_KEY' \
--form 'file=@"./numbers.txt"' \
--form 'task_type="facebook"'Each line in numbers.txt is one phone number in E.164 format, such as +14155552671.
- Submit the input file to
POST /v1/tasks. - Poll
POST /v1/gettaskswith the returnedtask_idwhile status moves frompendingtoprocessing. - Download the file at
result_urlwhen status becomesexported.
curl --location 'https://api.checknumber.ai/v1/gettasks' \
--header 'X-API-Key: YOUR_API_KEY' \
--form 'task_id="YOUR_TASK_ID"'See examples/ for complete submit → poll → download implementations.
Submit task — POST /v1/tasks
| Parameter | Type | Description |
|---|---|---|
file |
file | Text file containing one E.164 phone number per line for the main task type. Email variants use emails.txt. |
task_type |
string | One of: facebook, facebook_email. |
Check status — POST /v1/gettasks
| Parameter | Type | Description |
|---|---|---|
task_id |
string | Task ID returned by task creation. |
Main task result fields — task_type=facebook
| Field | Description | Example |
|---|---|---|
Number |
Phone number in E.164 format | +41798284651 |
facebook |
Whether number has active Facebook account | yes, no, ban |
{
"created_at": "2026-07-13T08:24:56Z",
"updated_at": "2026-07-13T08:25:43Z",
"task_id": "example-task-id",
"user_id": "example-user-id",
"status": "exported",
"total": 1000,
"success": 998,
"failure": 2,
"result_url": "https://example.invalid/results.xlsx"
}All variants use this task envelope. Only task_type, input content, and exported result columns vary.
Checks Facebook registration using a file containing one email address per line. Use task_type=facebook_email; the submit, poll, and download workflow is otherwise unchanged.
curl --location 'https://api.checknumber.ai/v1/tasks' \
--header 'X-API-Key: YOUR_API_KEY' \
--form 'file=@"./emails.txt"' \
--form 'task_type="facebook_email"'Input: one email address per line (for example, user@example.com).
Result fields (copied from the canonical documentation):
| Field | Description | Example |
|---|---|---|
Email |
Email address | user@example.com |
facebook |
Whether email is registered with Facebook | yes, no |
Rates vary by task type and are billed against the account balance. See the current terms at https://checknumber.ai/pricing and query the remaining balance with GET https://api.checknumber.ai/v1/balance.
| Capability | CheckNumber API | Generic carrier lookup | Manual checking |
|---|---|---|---|
| Checks the documented Facebook signal | Yes | No | May be possible |
| Bulk file upload | Yes | Varies | No |
| Asynchronous processing | Yes | Varies | No |
| Downloadable structured results | Yes | Varies | No |
This compares general approaches, not named vendors. Capabilities vary by provider and account access.
| Language | Example |
|---|---|
| Python | examples/python |
| Node.js | examples/nodejs |
| Go | examples/go |
| Java | examples/java |
| C# | examples/csharp |
| PHP | examples/php |
| JavaScript (browser) | examples/javascript |
| Shell (curl) | examples/shell |
Set the API key before running a server-side example:
export CHECKNUMBER_API_KEY="YOUR_API_KEY"| Status | Billing | Description |
|---|---|---|
200 |
charge |
Request successful; task created or status retrieved. |
400 |
free |
Invalid parameters or file format. |
500 |
free |
Internal server error; retry later. |
Is this a single-number real-time lookup?
No. Submit a file, poll for completion, and download the result file.
Which task types are available in this repository?
task_type=facebook— Facebook Phone Number Checker; Checks Facebook registration using a file of E.164 phone numbers. Input: numbers.txt.task_type=facebook_email— Facebook Email Checker; Checks Facebook registration using a file containing one email address per line. Input: emails.txt.
Which input format should I use?
Phone-based checks require one E.164 number per line. Email variants require one email address per line.
How do I check my balance?
Call GET https://api.checknumber.ai/v1/balance with the X-API-Key header.
- Documentation: https://docs.checknumber.ai/facebook-bulk-number-checker
- Dashboard and API keys: https://platform.checknumber.ai
- License: MIT for the sample code
Process only data you are authorized to use and comply with applicable privacy laws and platform terms. CheckNumber is not affiliated with or endorsed by Facebook.
Last updated: 2026-07-13 · Maintained by CheckNumber. Canonical docs: https://docs.checknumber.ai/facebook-bulk-number-checker