Facebook Page Contacts API and MCP — Email, Phone & Address
Send a Facebook page URL, name or ID and this source returns the contact block the page publishes: email, phone, websites, street address, linked Instagram, plus categories, followers, recommendation rating, price range, services and creation date.
- You send
- A Facebook page URL, page name or page ID, plus an optional language
- You get back
- Email, phone, websites, address and the page's profile fields
- Coverage
- Public Facebook pages, worldwide.
- Price
- 15 points per returned page — $15 per 1,000
- Billed per page actually returned. A page that cannot be found or is not public costs nothing.
Ways to get this data
Three approaches teams use today, and where each one runs into trouble.
| Approach | What it takes | Cost | Trade-off |
|---|---|---|---|
| Copying contacts by hand | Open each page's About tab, copy email and phone | Free, and slow | Error-prone at any real volume |
| A bought B2B contact list | A purchase and an import | Per-record or annual pricing | Small local businesses are thinly covered, and the list ages from the day you buy it |
| NeuralVerge | One request per page | $15 per 1,000, misses not billed | Only what the business chose to publish — no inferred or guessed contacts |
What you get back
Every field in the example response below.
| Field | Type | Description |
|---|---|---|
language | string | Locale the page data was read in, e.g. en-US. |
total_items | number | How many pages came back. |
items[].name | string | Page name as displayed. |
items[].category | string | Primary page category. |
items[].email | string | null | Public contact email. |
items[].phone | string | null | Public contact phone number. |
items[].address | string | null | Public street address. |
items[].address_url | string | null | Map link for the address. |
items[].websites | array | Websites and other links listed on the page. |
items[].instagram | array | Linked Instagram accounts. |
items[].followers | number | Follower count at read time. |
items[].rating | string | null | Recommendation summary, e.g. 94% recommend (201 reviews). |
items[].rating_overall | number | null | Share of reviewers who recommend the page. |
items[].rating_count | number | null | Number of recommendations. |
items[].price_range | string | null | Price range the business lists. |
items[].services | string | null | Services the business lists. |
items[].business_hours | string | null | Opening-hours status at read time. |
items[].creation_date | string | When the page was created. |
items[].ad_status | string | Whether the page is currently running ads. |
Example response
A real response, as returned.
{
"session_id": "0d85735b-0322-49ae-ae09-b80da8c0587d",
"kind": "facebook_page_contacts",
"url": "https://www.facebook.com/copperkettleyqr/",
"language": "en-US",
"partial": false,
"machine": {
"total_items": 1,
"items": [
{
"id": "100064027242849",
"name": "The Copper Kettle Restaurant | Regina SK",
"username": "copperkettleyqr",
"url": "https://www.facebook.com/copperkettleyqr/",
"category": "Pizza place",
"categories": ["Page", "Pizza place"],
"intro": "Longstanding local restaurant. Mediterranean specialties, signature gourmet pizzas (Best of YQR for",
"followers": 3317,
"followings": 434,
"rating": "94% recommend (201 reviews)",
"rating_overall": 94,
"rating_count": 201,
"email": "copperkettle.events@gmail.com",
"phone": "+1 306-525-3545",
"address": "1953 Scarth Street, Regina, SK, Canada, S4P 2H1",
"websites": [
"http://www.thecopperkettle.online/",
"https://www.instagram.com/copperkettleyqr"
],
"instagram": ["https://www.instagram.com/copperkettleyqr"],
"price_range": "$$",
"services": "Outdoor seating",
"business_hours": "Closed now",
"creation_date": "October 29, 2014",
"is_verified": false,
"ad_status": "This Page is currently running ads.",
"ad_library_id": "851606664870954",
"source_url": "https://www.facebook.com/copperkettleyqr/"
}
],
"errors": []
},
"total_points": 15
}How to run it
The same lookup works from the app, the API, or as a tool an agent can call mid-task.
This endpoint is synchronous: the call blocks until the lookup completes and returns the records directly. If a lookup hits its time budget before finishing, the response comes back with partial: true and whatever it collected so far — re-run with a smaller max_items for a complete result. url is required; language is optional (a locale code such as en-US, de-DE or ja-JP, default en-US).
curl -X POST https://api.neuralverge.ai/functions/v1/run-facebook-page-contacts \
-H "Authorization: Bearer YOUR_API_KEY" \
-H "Content-Type: application/json" \
-d '{ "url": "https://www.facebook.com/copperkettleyqr/", "language": "en-US" }'What teams use it for
Where this field shows up in an actual workflow.
Turn a list of business pages into email, phone and address rows.
Check the contacts in your CRM against what the business publishes today.
Use the street address to assign local businesses to territories.
Spot businesses running ads, or with low recommendation rates, as candidates for an offer.
Coverage, freshness and limits
What this source covers, how fresh it is, and where it stops.
Public Facebook pages, worldwide.
Read at request time.
This source returns what a business or organisation publishes on its own public page, stamped with the URL it was read from and a session id you can trace.
- —Only contacts the business published are returned; many pages list a phone but no email, or neither.
- —Emails are often generic inboxes (info@, events@), not a named decision-maker.
- —Opening hours come back as a status at read time, not a full weekly schedule.
Questions, answered
Yes — every Data Source endpoint, including this one, is synchronous: the lookup runs inside the request and the result comes back in the same response, no polling. If a lookup hits its time budget before finishing, the response comes back with partial: true and whatever records it collected so far — re-run with a smaller max_items to get a complete result instead of a partial one.
Related sources
Try facebook page contacts on your own data
One request format across every source in the catalog.