---
title: "Étape 1 : envoyer une demande d'enrichissement"
method: POST
path: "/enrichment/find"
tags: ["Enrichissement"]
---

# Étape 1 : envoyer une demande d'enrichissement

`POST /enrichment/find`

## Request

- Base URL: `https://api.basile.cc`
- URL: `https://api.basile.cc/enrichment/find`
- Auth: API key in header `Authorization`

Rend tout de suite un `id` (202) ; le résultat se lit avec `GET /enrichment/find/{id}`.
L'e-mail exige `domain` et/ou `company_name` (avec les deux : domaine puis société, dans la
même recherche, un seul prix) ; le numéro exige `linkedin_url`. Le montant est réservé quand
la recherche part, débité si elle trouve, rendu sinon. Une coordonnée déjà possédée est
resservie gratuitement. Même `request_id` (ou en-tête `Idempotency-Key`) = même demande,
rien relancé ni refacturé. Avec `"wait": true`, le serveur attend jusqu'à ~25 s le verdict.

## Headers

- `Idempotency-Key` string

## Request body

- EnrichmentFindRequest
  - `full_name` string: Nom complet (ou first_name + last_name, 60 caractères chacun). Obligatoire.
  - `first_name` string
  - `last_name` string
  - `domain` string: Domaine de la société (une URL ou une adresse e-mail sont réduites au domaine).
  - `company_name` string
  - `linkedin_url` string: Profil LinkedIn personnel (https://www.linkedin.com/in/…). Obligatoire pour le numéro.
  - `find` union: Ce qu'il faut trouver (défaut : email).
    - 'email' | 'phone' | 'both'
    - string[]
  - `request_id` string: Identifiant d'idempotence (recommandé).
  - `person_id` string: L'_id d'une personne de /people/find : ce qui est possédé est resservi, ce qui est trouvé est rangé sur la fiche.
  - `country_code` string: Pays de la société, code ISO à deux lettres.
  - `wait` boolean: Attendre le verdict côté serveur (~25 s au plus).

## Response `200`

Déjà terminé (déjà possédé, introuvable récent, ou wait:true).

- EnrichmentFindResponse
  - `success` boolean
  - `id` string
  - `status` 'pending' | 'completed'
  - `email` EnrichmentChannel
    - `status` 'pending' | 'found' | 'not_found' | 'failed' | 'skipped' | 'insufficient_balance'
    - `stage` 'queued' | 'searching': Pour pending : en file, ou recherche en cours.
    - `value` string: La coordonnée, si found.
    - `verified` boolean: E-mail vérifié.
    - `already_owned` boolean: Déjà possédée par le compte : 0 centime.
    - `reason` string: Pour skipped ou failed (ex. linkedin_url_required).
    - `charged_cents` integer
  - `phone` EnrichmentChannel
    - `status` 'pending' | 'found' | 'not_found' | 'failed' | 'skipped' | 'insufficient_balance'
    - `stage` 'queued' | 'searching': Pour pending : en file, ou recherche en cours.
    - `value` string: La coordonnée, si found.
    - `verified` boolean: E-mail vérifié.
    - `already_owned` boolean: Déjà possédée par le compte : 0 centime.
    - `reason` string: Pour skipped ou failed (ex. linkedin_url_required).
    - `charged_cents` integer
  - `charged_cents` integer: Total débité pour cette demande.
  - `balance_cents` integer: Solde restant.
  - `held_cents` integer: Réservé pour les recherches en cours.
  - `currency` string
  - `replayed` boolean: Demande rejouée par son request_id.
  - `retry_after_seconds` integer: Délai conseillé avant de relire (si pending).

## Other responses

- `202`: Acceptée : relire GET /enrichment/find/{id}.
- `400`: Entrée invalide (name_required, domain_or_company_required, linkedin_url_required, invalid_domain, invalid_linkedin_url, invalid_find, invalid_request_id, invalid_person_id…).
- `401`: Clé API absente ou invalide.
- `402`: Solde d'enrichissement insuffisant : rien n'est lancé.
- `403`: api_plan_required (ni crédits ni forfait API) ou email_verification_required.
- `409`: request_id_conflict : ce request_id a servi pour une autre demande.
- `429`: Plafond de sécurité (50 000 recherches en file par compte, ou 50 requêtes/s). Attendre Retry-After.

---

[API](https://skmtc.dev/basile/apis/basile-api.md) · [All operations](https://skmtc.dev/basile/apis/basile-api/llms.txt) · [OpenAPI document](https://skmtc.dev/basile/apis/basile-api/revisions/f260fbfcc5eb?raw)
