SAFTI · Advisor Emails & Phones
Pricing
from $3.39 / 1,000 advisor with emails
SAFTI · Advisor Emails & Phones
Export SAFTI advisors from the public finder: contacts, RSAC, areas, listings, socials, bios. Full France run or paste profile URLs. CRM-ready. Custom work: corentin@outreacher.fr
Pricing
from $3.39 / 1,000 advisor with emails
Rating
0.0
(0)
Developer
Corentin Robert
Maintained by CommunityActor stats
0
Bookmarked
10
Total users
2
Monthly active users
13 days ago
Last modified
Categories
Security
Limited permissionsShare
SAFTI France Advisors Scraper
Export SAFTI real estate advisors from the public finder at safti.fr/trouver-un-conseiller. You get export-ready rows: names, phones, RSAC, coverage areas, listings count, social links, and full presentation text — for CRM, prospecting, or territory mapping.
Built for: Lead lists · Territory mapping · CRM enrichment · Market research
Custom automation or integrations: corentin@outreacher.fr
What does it do?
| Mode | What you get | Best for |
|---|---|---|
| Full directory | Every advisor listed on the paginated finder, then one row per profile page | National or large-scale export |
| URLs | Only the profile pages you paste | Refreshing or enriching an existing list |
The site embeds structured data in the first HTML response (__NEXT_DATA__). This Actor uses HTTP only (no browser): listing pages for slugs, then profile pages for full text, RSAC, and social links.
Email: The public JSON does not include an email field. Rows set email to the usual pattern prenom.nom@safti.fr (accent-stripped, lowercase) and emailDerived: true so you can tell guessed addresses from any future scraped value. Always verify before sending mail.
How it works
- Full directory: Load page 1 of the finder to read the total advisor count and page size, build the page range, then fetch listing pages with a bounded worker pool (your Directory parallelism input, default 40). Each page contributes advisor slugs; duplicates are removed as you go.
- URLs: Parse
safti.fr/votre-conseiller-safti/{slug}/links into slugs (duplicates removed). - Profiles: Same pool pattern for profile URLs (Profile parallelism, default 55). Each slot runs fetch → parse embedded JSON →
pushDataso rows appear while other profiles still load. If the run window is almost over, leftover advisors are still written from the directory list (name, phone, city) so a 5-minute timeout no longer aborts a national export empty-handed. - Local only: After a successful run, write
output.csvnext to the project (UTF-8 BOM,;separator) for Excel.
Output fields
| Category | Fields |
|---|---|
| Identity | slug, displayName, firstName, lastName, subtitle / principalArea |
| Geography | city, postCode, ville, departement, otherAreas, locations |
| Contact | email, emailDerived, phones, profileUrl, photoUrl |
| Compliance / trust | rsac, nbProperties, googleMBRating, googleMBUrl |
| Social | facebook, linkedin, instagram, twitter |
| Copy | aboutFull (presentation text) |
| Provenance | profileEnriched — true when the profile page was opened (RSAC, bio, socials); false when the row is from the directory list only |
Use the Dataset view Advisors — Overview for a slim table; the default dataset contains full rows.
Sample output (one advisor)
{"slug": "sophie-charlon","profileUrl": "https://www.safti.fr/votre-conseiller-safti/sophie-charlon","displayName": "Sophie CHARLON","subtitle": "MONTELEGER (26760)","city": "MONTELEGER","postCode": "26760","email": "sophie.charlon@safti.fr","emailDerived": true,"phones": ["+33 6 87 36 90 96"],"rsac": "848 775 078 RSAC ROMANS","nbProperties": 2}
Run log and status
- Console / Apify log: Phase banners (
====), progress lines, counts, and duration — English only. - RUN_LOG: The same lines are written to the default key-value store as
RUN_LOG(text) so you can follow progress while the run is active. - Run page: On Apify Cloud, short status messages describe the current phase (listing, fetching profiles, done).
Quick start (Apify Console)
- Create a run and choose Full directory or URLs.
- For URLs, paste links such as
https://www.safti.fr/votre-conseiller-safti/sophie-charlon/. - Optional: set Max advisors (
0= all France). Allow about 15 minutes in Input → Run options if you want bios and RSAC on every row; directory contacts are saved even if time runs out. - Open Dataset for JSON/CSV export, or Key-value store → RUN_LOG for live text progress.
Input examples
Full directory (no cap):
{"mode": "list"}
Full directory — first 50 advisors after listing:
{"mode": "list","maxResults": 50}
URLs only:
{"mode": "urls","startUrls": [{ "url": "https://www.safti.fr/votre-conseiller-safti/sophie-charlon/" }]}
Optional filters: departments and offset
Both are optional. When omitted, the Actor behaves exactly as before.
departments(array of strings) — keep only advisors whose main area postal code starts with one of these French department codes, e.g.["75","69","2A","974"](Paris, Rhône, Corse-du-Sud, La Réunion).offset(integer, default0) — number of advisors to skip before saving rows. Combine withmaxResultsto page through the directory.
Paris and Lyon only, first 100 advisors:
{"mode": "list","departments": ["75", "69"],"maxResults": 100}
Next page: skip the first 50 advisors, take 50 more:
{"mode": "list","offset": 50,"maxResults": 50}
Local development
npm installnpm testapify run
- Local runs: defaults from
input.jsonare merged first; thenActor.getInput()overwrites (soapify run/ CLI input wins). - Apify Cloud:
input.jsonis ignored — only the run input from the Console or API is used (somode: "urls"is not overwritten by a leftover file in the image). - Dataset JSON files are written under
storage/datasets/default/. - After a run,
output.csvis written at the project root when not on Apify Cloud.
FAQ
How do I get advisors for one department only, or the next batch of results?
Set departments to the department codes you need (for example ["13"] or ["2A","2B"] for Corsica); matching uses the postal code of the advisor's main area. To get the next batch, set offset to the number of advisors already retrieved and keep maxResults as your page size.
Important
- Public data only — Use exported data in line with applicable law and your own compliance review.
- Free plan — Free Apify accounts get up to 20 advisors per run. Upgrade to export the full directory (billed per row).
- Availability — The site layout or embedded JSON shape can change; if a run returns empty rows, check the Actor version and open an issue with a sample URL.
Also available — French real estate advisors
Need several French networks in one CRM file? French Real Estate Agents · Multi-network.
| Actor | What you get |
|---|---|
| French Real Estate Agents · Multi-network | Several French brands in one CRM table |
| Optimhome Advisors | Optimhome — names, phones, emails, RSAC |
| IAD France Advisors | IAD mandataires — names, phones, emails |
| Keller Williams France | KW advisors — emails, phones |
| Sextant France | Sextant — emails, phones, GPS |
| Efficity Consultants | Efficity — emails, phones |
| megAgence | megAgence — phones and GPS |
| BSK Immobilier | BSK — emails, phones |
| Les Porteclés | Names and GPS |
Browse all: apify.com/corent1robert
Support
Contact corentin@outreacher.fr if you need a custom scraper, scheduling, or data delivery integration.