# Find lookalikes of your best customers

Give your best customers, get their lookalikes: the profile is deduced from the official registries and served as is, in the form of the list route's criteria, so you read the next pages yourself. Under 50 results it widens one step at a time and each step is stated; the area you give is never widened.

## What the route returns

Catalogue description, exactly as agents read it:

**Find French companies that look like your best customers: give 2 to 5 customer SIRENs (?exemples=), optionally a region or departement, and get the first page of 100 active legal persons matching the profile deduced from them (NAF codes, workforce brackets, legal forms, creation dates, area), customers excluded, with the exact total. Under 50 results the profile widens one step at a time, each step stated; it is served as criteria to read the next pages.**

## Expected identifier

exemples: 2 to 5 distinct SIRENs (9 digits, valid Luhn key), comma-separated; region or departement optional, one or the other.

> ⚠️ A wrongly formatted identifier in the **path** returns `400` and is **not billed** — but it costs you a round trip. It is the leading cause of failed calls on the foreign routes. A **search** parameter, by contrast, is cleaned up: unsupported characters are stripped and the usable query is served.

## Extract from a response rendered on test data

Dated snapshot from 2026-10-08, rendered by the route on test data (fictitious companies), with no purchase, truncated to one item per array and then cut for length. It is not live data. The full extract is served **free of charge** from [the samples surface](https://api.sirenic.eu/exemples/prospection-sosies.json), and the schema from the OpenAPI document.

```
{
 "profil": {
  "exemples_retenus": 2,
  "criteres": [
   {
    "champ": "identite.naf",
    "op": "in",
    "valeur": [
     "25.62B"
    ]
   },
   {
    "champ": "identite.tranche_effectifs",
    "op": "in",
    "valeur": [
     "11",
     "12"
    ]
   },
   {
    "champ": "identite.forme",
    "op": "in",
    "valeur": [
     "5710"
    ]
   },
   {
    "champ": "identite.date_creation",
    "op": "entre",
    "valeur": [
     "2010-05-10",
     "2018-09-20"
    ]
   },
   {
    "champ": "siege.departement",
    "op": "=",
    "valeur": "38"
   },
   {
    "champ": "identite.siren",
    "op": "hors",
    "valeur": [
     "000000018",
     "000000026"
    ]
   }
  ],
  "ecarts": [],
  "elargissements": []
 },
 "page": 1,
 "page_suivante": true,
 "nombre_resultats": 100,
 "resultats": [
  {
   "identite": {
    "siren": "000000034",
    "denomination": "SOCIETE FICTIVE SOSIE 3",
    "forme": "5710",
    "naf": "25.62B",
    "tranche_effectifs": "11",
    "etat": "A",
    "date_creation": "2011-04-04"
   },
   "siege": {
    "code_postal": "38000",
    "commune": "COMMUNE FICTIVE 38185",
    "departement": "38"
   },
   "finances": {
    "date_cloture": null,
    "ca": null,
    "resultat_net": null
   }
  }
 ],
 "listes_bornees": {
  "resultats": {
   "nombre_total": 102,
   "tronque": true
  }
 },
 "disclaimer": "Profil déduit des exemples, relu par /v1/entreprises/requete/lister pour les pages suivantes ; élargi d'un cran à la fois sous 50 résultats, chaque cran dit ; exemples exclus ; sans classement par ressemblance. / Profile deduced from the examples, read again b
…
```

## Price and billing

Price: **$0.02**. The authoritative amount is the one in the `402` quote returned by the route itself, not this text, which derives from the same grid but is still just a page.

An error response **cancels the payment**: a `400`, `404` or `503` is never billed. An upstream outage closes the route with a `503` rather than serving a degraded response.

## Calling the route

```
# 1. The quote, without paying anything: the route answers 402 with its amount
curl -i "https://api.sirenic.eu/v1/prospection/sosies?exemples=000000018,000000026"

# 2. The paid call: the x402 client settles the quote and replays the request
npx x402-fetch "https://api.sirenic.eu/v1/prospection/sosies?exemples=000000018,000000026"

# 3. Or over MCP, in Claude Code / Cursor / an agent
claude mcp add --transport http sirenic https://api.sirenic.eu/mcp

# Or as a local server (stdio), with your key or an x402 wallet
claude mcp add sirenic -e SIRENIC_API_KEY=srn_live_... -- npx -y sirenic-mcp
```

## What this route does not do

Every result matches the profile, with no ranking by likeness. An example that is missing, not a public legal person or ceased is set aside and stated by its rank; no sole trader in the profile or the results. Active legal persons by default.

## Neighbouring routes

- `/v1/entreprises/requete/lister`: $0.02
- `/v1/entreprises/requete/compter`: $0.002
- `/v1/prospection`: $0.02

## How you pay

Every route is paid **per call**, in USDC or EURC on the Base network, over the x402 protocol: no account to create, no API key, no subscription. The first call returns a `402` quote your client settles, then replays the call. A failed call is never billed.

Open today: 150 free calls a month with an account, on 109 of 125 routes (the price list says which), and pay-per-call over x402 (USDC or EURC), with no account except registry filings. Prepaid credits: card top-up is not open yet.

Paid responses are **Ed25519-signed**: you can later prove what was served to you, and when. The whole catalogue is free to read in the [OpenAPI document](https://api.sirenic.eu/openapi.json) and in [llms.txt](https://api.sirenic.eu/llms.txt).

**One call, end to end**

```
# x402 client (npm): the 402 quote is settled and the call replayed automatically
npx x402-fetch https://api.sirenic.eu/v1/entreprise/552032534

# Or over MCP, in Claude Code / Cursor
claude mcp add --transport http sirenic https://api.sirenic.eu/mcp

# Or as a local server (stdio), with your key or an x402 wallet
claude mcp add sirenic -e SIRENIC_API_KEY=srn_live_... -- npx -y sirenic-mcp
```

## Routes used and pricing

| Route | Price | Sample | What it returns |
| --- | --- | --- | --- |
| `/v1/prospection/sosies` | $0.02 | [free sample](https://api.sirenic.eu/exemples/prospection-sosies.json) | Find French companies that look like your best customers: give 2 to 5 customer SIRENs (?exemples=), optionally a region or departement, and get the first page of 100 active legal persons matching the profile deduced from them (NAF codes, workforce brackets, legal forms, creation dates, area), customers excluded, with the exact total. Under 50 results the profile widens one step at a time, each step stated; it is served as criteria to read the next pages. |

## Take it further

- [See a response on test data (free)](https://api.sirenic.eu/exemples/prospection-sosies.json)
- [Get the quote for /v1/prospection/sosies](https://api.sirenic.eu/v1/prospection/sosies?exemples=000000018,000000026)
- [Create an account: 150 free calls a month](https://api.sirenic.eu/compte?lang=en&utm_source=recherche&utm_campaign=referencement)

## Read next

- [Find prospects that look like your best customers](https://api.sirenic.eu/en/use-cases/find-prospects-that-look-like-your-best-customers)
- [Building a B2B prospecting list](https://api.sirenic.eu/en/use-cases/build-b2b-prospecting-list-from-official-french-registry)


---

[Home](https://api.sirenic.eu/en) · [Pricing](https://api.sirenic.eu/en/offres) · [Guides](https://api.sirenic.eu/en/articles) · [Routes](https://api.sirenic.eu/en/api) · [About](https://api.sirenic.eu/en/about) · [Legal notice](https://api.sirenic.eu/mentions-legales) · [Privacy](https://api.sirenic.eu/en/privacy)
