French Real Estate Agents · Multi-Network CRM avatar

French Real Estate Agents · Multi-Network CRM

Pricing

$3.99 / 1,000 advisor with emails

Go to Apify Store
French Real Estate Agents · Multi-Network CRM

French Real Estate Agents · Multi-Network CRM

Pick one or more French realty brands — or BARNES luxury — and get advisors as one CRM table. Names, phones, emails when public, WhatsApp on BARNES. No login. Replaces the old per-brand Actors.

Pricing

$3.99 / 1,000 advisor with emails

Rating

0.0

(0)

Developer

Corentin Robert

Corentin Robert

Maintained by Community

Actor stats

1

Bookmarked

10

Total users

3

Monthly active users

5 days ago

Last modified

Share

Pick one or more French realty brands (or BARNES luxury offices). Get advisors as one CRM table: names, phones, profile links, emails when the site publishes them — WhatsApp on BARNES.

No login. No API key. No admin access on any of the brands.

Free plan: 20 advisors / run. Paid plans follow your PPE budget.

Need only BARNES (24 countries, WhatsApp-first)? Use the dedicated Barnes Luxury Agents Actor. Need IAD and BARNES in the same file? Stay on this hub — tick both brands, same columns.


Who is this for?

You are…Typical goalSuggested setup
Outbound / SDR on French networksNamed advisors + a phone or inboxeXp or IAD · How many 25, then 0
CRM / RevOpsOne schema for every franchiseAny brand · Outreach / CRM view
Luxury deskWhatsApp, not a generic agency inboxBARNES · France · one row per advisor
Agency comparing networks for a clientSame columns, several brandsKW + SAFTI · How many 25
Recruiter / network developerMap who sits whereSextant or megAgence · How many 0
ProptechStable sourceKey for upsertsAny brand · full directory

What you get by default: network, sourceKey, first / last / full name, job title when published, phone, email when the site shows it, profile or office URL, city / postcode when available.

Empty cells mean the public page does not show that field — not a broken run. megAgence and BARNES never publish a personal inbox. BARNES WhatsApp lands in phoneE164.


Quick start

  1. Open this Actor in Apify Console.
  2. Leave Brands = eXp France (or tick several) and How many advisors per brand = 25.
  3. Click Start.
  4. Open the Outreach / CRM dataset view — first name, last name, email, phone.

For BARNES: pick BARNES (WhatsApp, no personal email) and click Start — France, one row per advisor. Other countries or office URLs: JSON/API (barnesCountry, barnesAgencyUrls) or the dedicated BARNES Actor.

Ready-made examples

Open any example, click Try — each run is capped at 25 rows. Full list: Examples.

ExampleBest for
eXp France advisors for CRMFlagship network · emails + phones
IAD France advisorsIndependent mandataires
IAD Île-de-FranceGeo-filtered CRM
KW France (Keller Williams)KW directory
SAFTI France consultantsSAFTI mandataires
Sextant FranceSextant directory
Efficity consultantsEfficity + Immodvisor
BSK ImmobilierBSK profiles
megAgence phonesPhones only (no public email)
Espaces Atypiques teamsRows with a published email
BARNES France WhatsAppLuxury · WhatsApp
BARNES Switzerland CRMDACH luxury
BARNES United StatesUS luxury offices

Need only BARNES (PPE per advisor, 24-country picker)? Dedicated Actor: Barnes Luxury Agents (Store listing pending the daily publish cap).


Brands (tick several in one run)

Tick one or more brands. How many advisors per brand is a cap per brand, never per office (25 eXp + 25 IAD = 50 rows). 0 = each brand’s full public directory. Same CRM columns in every case.

BrandnetworkTypical contacts
eXp Franceexp_franceEmail often · phone usually
IAD Franceiad_franceEmail pattern (verify) · phone usually
KW Francekw_franceEmail often · phone usually
SAFTIsafti_franceEmail often · phone usually
Sextantsextant_franceEmail often · phone usually
megAgencemegagenceNo public email · phone usually
Efficityefficity_franceEmail often · phone usually
Espaces Atypiquesespaces_atypiquesEmail required to export · phone usually
BSK / LF immo / Les Porteclésbsk_immobilier / lf_immo / les_porteclesEmail on profile when published
BARNESbarnesNo personal email · WhatsApp ~50% · office phone

Standalone Store listings for these brands (except BARNES) are deprecated — use this hub. BARNES stays available as its own Actor if you only ever scrape that directory.


Typical fill rates (measured)

Cloud smoke, 20 Aug 2026, How many rows = 25 per brand (first pages of each directory — not a full catalogue). Run.

BrandnEmailPhoneWhatsApp
IAD21100%100%
KW0
SAFTI25100%100%
eXp25100%100%
BARNES (France)250%100% (office)72%
Espaces Atypiques25100%100%
Sextant0
Efficity2592%100%
megAgence250%100%
BSK25100%100%
LF immo25100%100%
Les Porteclés250%0%

KW and Sextant returned no rows on this run (site fetch failed). IAD saved 21/25 because 4 profile API calls failed. Espaces only exports advisors that already have an email. Exact % will move as each network edits public pages.

RSAC / licence-style fields are brand-specific (rsacOrCompliance). Lat/lng when the source map publishes them.


Input

FieldWhat it does
networksBrands to export (Console multi-select). One or several.
networkLegacy API: a single brand string. Ignored when networks is set.
maxResultsConsole: How many advisors per brand. 25 first look · 0 whole directory of each brand. Not per agency.
barnesCountryAPI-only. BARNES country (default France). all = 24 countries
barnesUniqAPI-only. One row per advisor (default) or every office listing
barnesAgencyUrlsAPI-only. Optional pasted BARNES office pages

API-only (not in Console): BARNES barnesCountry / barnesUniq / barnesAgencyUrls (Console BARNES run = France, one row per advisor), directoryMode + profileStartUrls (LF, Porteclés, SAFTI, BSK, KW, Efficity, Sextant), Espaces mode / startUrls / maxAgencies, IAD filterRegion / filterPostalCode / listing thresholds, concurrency, listConcurrency, proxyConfiguration. On the Apify platform, datacenter proxy is on by default.

Examples

{
"networks": ["exp_france"],
"maxResults": 25
}
{
"networks": ["iad_france", "kw_france", "safti_france"],
"maxResults": 25
}
{
"network": "barnes",
"maxResults": 25,
"barnesCountry": "france"
}
{
"network": "iad_france",
"maxResults": 0,
"filterRegion": ["Île-de-France"]
}

Output example

{
"network": "barnes",
"sourceKey": "barnes:wa:33616262198",
"firstName": "Valentine",
"lastName": "PAILLET",
"fullName": "Valentine PAILLET",
"jobTitle": "Manager",
"phone": "+33155619290",
"phoneE164": "+33616262198",
"city": "Neuilly-sur-seine",
"postalCode": "92200",
"mainArea": "BARNES Neuilly",
"profileUrl": "https://www.barnes-international.com/en/contact/france/barnes-neuilly.html",
"countryCode": "FR",
"extra": {
"whatsapp": "+33616262198",
"whatsappUrl": "https://api.whatsapp.com/send?phone=33616262198",
"languages": ["English", "French"],
"agencyName": "BARNES Neuilly"
}
}

email is omitted (or empty) when the brand does not publish it. On eXp / IAD / KW the same columns fill with a professional inbox when the site shows one.

Dataset views: Overview, Outreach / CRM.


How much does it cost to scrape French realty advisors?

You pay per saved advisor, according to the best contact on that row — not a flat fee per brand. Networks that publish emails (eXp, IAD, KW…) cost more per row than megAgence (phone, no inbox) or a name-only listing. BARNES WhatsApp uses the same rate as the dedicated BARNES Actor.

Empty directory pages are never billed. HTTP-only (no browser).

Event (Free)WhenPer rowPer 1,000
Advisor with emailPublished professional inbox$0.00399$3.99
Advisor with WhatsAppBARNES chat button (no personal email)$0.00749$7.49
Advisor with phonePhone or office line, no email / WhatsApp$0.00199$1.99
Advisor name onlyProfile / office, no usable contact$0.00099$0.99

Apify subscription tiers pay less (Bronze → Diamond). Typical mixes:

Scenario (Free, ~1,000 rows)Why it costs thatApprox.
25-row Try (most brands)First lookwell under $0.15
1,000 eXp / IAD / KW (emails often)Mostly the email event~$3–4
1,000 megAgencePhones, never a personal inbox~$2
1,000 BARNES unique (~half WhatsApp)WhatsApp + office-line mix~$4.50–5.50
Espaces AtypiquesOnly rows with email are savedemail rate on every billed row

Is scraping these directories free?

The public sites are free to browse. On Apify you pay the events above for saved rows only. A missing email is not a broken run — that row is billed at the phone or name-only rate.


This Actor only reads pages each brand already publishes without an account. Names, phones, emails and WhatsApp numbers are personal data. Your use must comply with GDPR and French prospecting rules (lawful basis, retention, opt-out). This is not legal advice.

You are responsible for how you store and contact people in the export. This tool does not bypass logins or paywalls.


Also available

Need only Optimhome (not in this hub)? Optimhome Advisors · Names, Phones & Emails.

Need only IAD on a dedicated listing? IAD France Advisors.

Barnes Luxury Agents · WhatsApp Directory — same BARNES public directory, WhatsApp-first pricing, country picker on a dedicated Console.

RGE France — certified artisans + named gérants.

eXp France and Espaces Atypiques also run in this hub (exp_france, espaces_atypiques). Standalone Store Actors remain available for a single-brand export.


How it works

  1. You pick one or more brands.
  2. The Actor reads each brand’s public directory in turn (list, map, sitemap or office pages).
  3. Rows are mapped to the same columns (network, sourceKey, names, contacts).
  4. Dataset fills while the run is still going (you do not wait for the last page to see the first rows).

Limitations

  • Several brands in one run are crawled one after another (not in parallel), so a long mix + How many 0 can hit the run timeout.
  • eXp is read from the public advisor directory (not a private API).
  • BARNES has no personal email. WhatsApp is the public channel.
  • LinkedIn AI enrichment from older KW / Sextant Actors is not in this hub.
  • maxResults = 0 runs until the directory (or timeout) is done.
  • Standalone brand Actors (IAD, eXp, …) point here. Do not start a new Actor per brand unless you only want BARNES.

Local development

cd fr-realty-agents-hub
npm install
npm test
apify run

CLI / --input-file overwrites overlapping keys from repo input.json. BARNES smoke: apify run --input-file=./input.barnes.smoke.json.


Internals (maintainers)

Espaces Atypiques parsers: src/lib/espacesAtypiquesLib/ (re-copy from espaces-atypiques-agents-scraper). BARNES: src/lib/barnes/ (re-copy from barnes-international-agents). Deprecated Store URLs → network values are in git history / CHANGELOG 1.7.


Support

Contact corentin@outreacher.fr if you need another network, a CRM push, or a white-label run.