Every endpoint, with a real example.
The request, a trimmed response, the credits it costs and what you get. Examples
use acme.fr; replace it with your target company.
Company qualification
4 credits (1 cached)Turn any company website into a structured profile: what it sells, to whom, and in which market.
- Industry, target audience and market classification
- A one-sentence value proposition
- Cached 7 days per normalised URL (cheaper on hits)
Request
curl -X POST https://tools.epsimo.org/qualify \
-H "x-token: $API_KEY" \
-H "Content-Type: application/json" \
-d '{"url":"https://acme.fr"}'Response (trimmed)
{
"value_proposition": "ACME builds cloud invoicing software for small businesses.",
"industry": "Software",
"target_audience": "business owners",
"market": "B2B",
"status": 200,
"error_message": null
}/qualify ·
try it · full schema ·
get a key
One-call enrichment
8 credits (3 cached)Registry record, qualification and email domain in a single request — plus the contact when you send a first and last name.
- Sections fail independently (`errors`), so a partial result is still usable
- Company sections cached 7 days; `refresh: true` recomputes
- Not billed when nothing was found (`status: 502`)
Request
curl -X POST https://tools.epsimo.org/enrich \
-H "x-token: $API_KEY" \
-H "Content-Type: application/json" \
-d '{"url":"https://acme.fr","first_name":"Jean","last_name":"Dupont"}'Response (trimmed)
{
"url": "https://acme.fr",
"registry": {"nom_complet": "ACME", "siren": "123456789", "...": "..."},
"qualification": {"industry": "Software", "market": "B2B", "...": "..."},
"email_domain": {"domain": "acme.fr", "provider": "OVHcloud", "...": "..."},
"contact": {"email": "jean.dupont@acme.fr", "confidence": "high", "...": "..."},
"errors": {},
"cached": false,
"source": {"registry": "API Recherche d'Entreprises (DINUM), Licence Ouverte 2.0"},
"status": 200,
"error_message": null
}/enrich ·
try it · full schema ·
get a key
Professional email discovery
2 creditsFind the most likely professional address of a person at a company, with the pattern it came from and a confidence score.
- Addresses are inferred from published patterns — mailboxes are never probed
- Ranked candidates, generic addresses and MX/SPF/DMARC checks
- Suppression list respected (domain or hashed person)
Request
curl -X POST https://tools.epsimo.org/email-verify \
-H "x-token: $API_KEY" \
-H "Content-Type: application/json" \
-d '{"url":"https://acme.fr","first_name":"Jean","last_name":"Dupont"}'Response (trimmed)
{
"domain_used": "acme.fr",
"email": "jean.dupont@acme.fr",
"confidence": "high",
"pattern": "{f}.{l}",
"verification": "pattern_inferred",
"candidates": [
{"email": "jean.dupont@acme.fr", "pattern": "{f}.{l}", "score": 0.908},
{"email": "jdupont@acme.fr", "pattern": "{fi}{l}", "score": 0.027}
],
"domain_checks": {"mx": ["mx1.mail.ovh.net"], "provider": "OVHcloud",
"spf": true, "dmarc": true, "disposable": false},
"generic_emails": ["contact@acme.fr"],
"cached": false,
"status": "valid"
}/email-verify ·
try it · full schema ·
get a key
French company search
1 creditQuery 10M+ French companies by name, activity, size, headcount, revenue or directors, with the official registry as the source.
- NAF/APE, section, size, headcount bracket, revenue and legal-category filters
- Search directors and elected officials
- Paginated (max 25 per page); `minimal: true` for lean responses
Request
curl -X POST https://tools.epsimo.org/entreprise \
-H "x-token: $API_KEY" \
-H "Content-Type: application/json" \
-d '{"q":"invoicing","departement":"69","per_page":10}'Response (trimmed)
{
"results": [
{"nom_complet": "ACME", "siren": "123456789",
"siege": {"code_postal": "69001", "libelle_commune": "Lyon"}}
],
"total_results": 128,
"page": 1,
"per_page": 10,
"total_pages": 13,
"source": "API Recherche d'Entreprises (DINUM), Licence Ouverte 2.0"
}/entreprise ·
try it · full schema ·
get a key
Companies around a point
1 creditEvery company within a radius of a GPS point, with the same filters and pagination as the text search.
- Radius up to 50 km
- Activity and size filters
- Ideal for territory mapping and field sales
Request
curl -X POST https://tools.epsimo.org/entreprise/geo \
-H "x-token: $API_KEY" \
-H "Content-Type: application/json" \
-d '{"lat":45.7640,"long":4.8357,"radius":2}'Response (trimmed)
{
"results": [
{"nom_complet": "ACME", "siren": "123456789",
"siege": {"code_postal": "69001"}}
],
"total_results": 42,
"page": 1,
"per_page": 10,
"total_pages": 5,
"source": "API Recherche d'Entreprises (DINUM), Licence Ouverte 2.0"
}/entreprise/geo ·
try it · full schema ·
get a key
Page text extraction
2 creditsGet the readable text of any page, with a headless-browser fallback for JavaScript-rendered or protected sites.
- Direct fetch first, browser fallback only when needed
- `method` tells you which path was used
- Personal emails in the text are redacted
Request
curl -X POST https://tools.epsimo.org/scrape \
-H "x-token: $API_KEY" \
-H "Content-Type: application/json" \
-d '{"url":"https://acme.fr"}'Response (trimmed)
{
"text": "ACME builds cloud invoicing software for small businesses...",
"length": 743,
"method": "direct",
"elapsed_s": 0.8,
"status": 200,
"error_message": null
}/scrape ·
try it · full schema ·
get a key
Ask a company website
3 creditsAsk a question and get a short answer grounded in the page text — no scraping or prompting on your side.
- Answers from the scraped page, not from the model's memory
- Good for pricing, positioning, product and ICP questions
- Falls back to the browser when the page needs JavaScript
Request
curl -X POST https://tools.epsimo.org/question \
-H "x-token: $API_KEY" \
-H "Content-Type: application/json" \
-d '{"url":"https://acme.fr","question":"What does the company sell?"}'Response (trimmed)
{
"answer": "ACME sells cloud invoicing software to small businesses.",
"status": 200,
"error_message": null
}/question ·
try it · full schema ·
get a key
Balance and usage
freeCheck what is left before a batch: free and purchased credits, the monthly quota and per-route consumption.
- Free of charge
- Current UTC month, per route
- Same call the customer area uses
Request
curl https://tools.epsimo.org/usage \ -H "x-token: $API_KEY"
Response (trimmed)
{
"principal": "ab_live_1a2b3c4d",
"month": "2026-10",
"free_balance": 100,
"purchased_balance": 1000,
"monthly_quota": 10000,
"credits_consumed": 12,
"routes": {
"qualify": {"requests": 2, "credits": 8},
"email_verify": {"requests": 2, "credits": 4}
},
"status": 200,
"error_message": null
}/usage ·
try it · full schema ·
get a key
Ready to try it?
100 free credits every month. No card required.
- 1,000 credits: 40 EUR
- 10,000 credits: 400 EUR
- 5,000 credits: 200 EUR