Cinq réponses, toutes calculées.
Les fichiers de l’INSEE sont publics et gratuits : ce n’est pas eux que vous payez, c’est le travail fait dessus — le même que celui de l’application SOUCHE, avec les mêmes formules.
La fiche d’un nom
/v1/nom/{nom}Rang et rareté, naissances par décennie, dix départements de plus forte implantation avec leur part et leur rapport de vraisemblance, foyer probable et sa confiance, graphies voisines, signature graphique, type de nom et étymologie citée — ou null quand aucune source ne le dit.
La carte d’une époque
/v1/nom/{nom}/carte?epoque=1891-1940Répartition départementale des naissances sur la période choisie : effectifs, parts, rapports avec intervalle de Wilson à 95 %, indice de concentration, foyer de la période.
L’évolution
/v1/nom/{nom}/evolutionNaissances par décennie 1891-2000 rapportées aux naissances françaises, tendance annuelle et son R², personnes décédées 1970-2026 par décennie de naissance.
La recherche floue
/v1/recherche?q=dupond&flou=1Vingt graphies candidates au plus, avec un score de similarité et l’indication « même son » (clé phonétique française) : Dupond, Dupon, Dupont…
Les noms d’un département
/v1/departement/{code}/noms?top=50Les noms les plus portés et les plus caractéristiques d’un département, 1891-2000, classés sur la borne basse de leur intervalle.
L’état du service
/v1/statutSans clé : disponibilité, version de l’API, millésime des données et seuils appliqués.
Six métiers, une même question.
D’où vient ce nom, où le chercher, et avec quelle confiance ? Des chiffres sur des groupes de porteurs — jamais sur une personne.
Payer ce qu’on consomme, pas davantage.
Prix hors taxes, par mois, payables d’avance. Chaque requête authentifiée compte, y compris celles qui répondent « nom absent ». Le quota se renouvelle le 1er du mois.
Chargement des offres…
Une clé, des requêtes GET.
JSON en UTF-8, noms de champs en français. L’API se consomme de serveur à serveur : elle n’envoie aucun en-tête CORS, gardez votre clé côté serveur.
Authentification
Créez une clé dans l’espace client : elle commence par sk_souche_ et n’est affichée qu’une fois — seule son empreinte est conservée chez nous. Envoyez-la dans l’en-tête Authorization (ou, à défaut, X-Api-Key). Une clé révoquée cesse de fonctionner immédiatement.
export SOUCHE_CLE="sk_souche_…" curl -H "Authorization: Bearer $SOUCHE_CLE" https://arborescence.studio/souche-api/v1/nom/martin # ou bien curl -H "X-Api-Key: $SOUCHE_CLE" https://arborescence.studio/souche-api/v1/nom/martin
Chaque réponse porte source (producteur, jeux de données, licence, millésime, mention à reproduire) et calcule_par. Un effectif de moins de 5 personnes est rendu "< 5" (chaîne), et ce qu’on pourrait en déduire (part, rapport) vaut null.
GET/souche-api/v1/nom/{nom}
Fiche résumée. La saisie est normalisée (majuscules, sans accents) ; si le nom n’est pas trouvé tel quel, on essaie sans particule, tirets remplacés, espaces retirées — note_recherche le dit. Nom absent des deux fichiers : 404 nom_absent.
| Champ | Contenu |
|---|---|
| effectifs | naissances 1891-2000 (Fichier des noms) et personnes décédées 1970-2026 |
| rang, rarete | rang national, fréquence pour 100 000 naissances, classe de rareté et sa règle |
| naissances_par_decennie | 11 décennies, de 1891-1900 à 1991-2000 |
| departements_principaux | 10 départements : effectif, part du nom, rapport de vraisemblance, intervalle de Wilson 95 % |
| foyer_probable | barycentre pondéré des naissances les plus anciennes, département proche, demi-rayon, concentration H, confiance et sa règle |
| variantes | 12 graphies voisines : similarité de Jaro-Winkler, même clé phonétique |
| signature_graphique | ressemblance de graphie par grands ensembles, avec l’exactitude mesurée du modèle |
| type_et_etymologie | lexique SOUCHE (type, sens, étymon, certitude, source citée) et extraits de Larchey 1880, Moisy 1875, pages de Dauzat 1925 — null si aucune source ne traite le nom |
{
"nom": "DUPONT", "nom_affiche": "Dupont",
"rarete": { "classe": "très courant", "pour_100000_naissances": 94.22, "une_naissance_sur": 1061 },
"departements_principaux": [
{ "code": "59", "nom": "Nord", "effectif": 9734, "part": 0.1409, "rapport": 2.33, "intervalle_95": [2.288, 2.374] },
{ "code": "62", "nom": "Pas-de-Calais", "effectif": 5694, "part": 0.0824, "rapport": 2.37, "intervalle_95": [2.312, 2.43] },
…
],
"foyer_probable": {
"lat": 48.031, "lon": 2.056, "departement_proche": { "code": "45", "nom": "Loiret", "distance_km": 25.2 },
"demi_rayon_km": 274.2, "concentration_H": 0.838, "lecture_H": "diffus", "confiance": "bonne"
},
"variantes": [ { "nom": "DUPON", "similarite": 0.9667, "meme_son": true }, … ],
"type_et_etymologie": { "lexique": {
"type": "lieu-dit", "sens": "« du pont » : nom d'habitation urbaine près d'un pont ; …", "certitude": "attesté",
"source": "Dauzat 1925, p. 89 (l. 4168) : « … surtout à elle que se rattachent Dupont … » ; Larchey 1880, p. 124 …" },
"dauzat_1925_cite": { "pages": [89] }, "larchey_1880": null, "moisy_1875": null },
"source": { … }, "calcule_par": "SOUCHE — Arborescence"
}GET/souche-api/v1/nom/{nom}/carte?epoque=1891-1940
Tous les départements où le nom est né sur la période, triés par effectif. La période est arrondie aux décennies de l’INSEE (1891-1900 … 1991-2000). Sans epoque : 1891-2000, et un second témoin, temoin_deces, tiré du département de naissance des personnes décédées.
| Paramètre | Valeur |
|---|---|
| epoque | facultatif, AAAA-AAAA entre 1891 et 2000 ; sinon 400 epoque_invalide |
{
"nom": "DUPONT", "epoque": "1891-1940",
"departements": [ { "code": "59", "nom": "Nord", "effectif": 3543, "part": 0.143, "rapport": 2.621, "intervalle_95": [2.542, 2.701] }, … ],
"effectif_localise": 24769, "sans_departement": 23,
"indice_de_concentration": { "H": 0.823, "lecture": "diffus", "H_national": 0.9405 }
}GET/souche-api/v1/nom/{nom}/evolution
Séries par décennie. Attention à la lecture des décès : ce sont les personnes décédées entre 1970 et 2026, classées par décennie de naissance — pas un nombre de décès par décennie.
{
"naissances": [ { "decennie": "1891-1900", "naissances": 3398, "naissances_france": 3285631, "pour_100000": 103.42 }, … ],
"tendance": { "sens": "stable", "pourcentage_par_an": -0.194, "r2": 0.7563 },
"personnes_decedees_par_decennie_de_naissance": [ { "decennie_de_naissance": "1890-1899", "personnes": 2481 }, … ],
"deces": { "total": 26680, "hommes": 13776, "femmes": 12904, "age_moyen_au_deces": 74.2 }
}GET/souche-api/v1/recherche?q=dupond&flou=1
Jusqu’à 20 noms candidats. Sans flou : noms qui commencent par la saisie, puis par la saisie sans particule. Avec flou=1 : s’y ajoutent les noms de même clé phonétique française et ceux dont la similarité de Jaro-Winkler atteint 0,88. Le nom exact, s’il existe, vient en tête ; les autres sont triés par score.
{
"requete_normalisee": "DUPOND", "cle_phonetique": "DUP3",
"candidats": [
{ "nom": "DUPOND", "score": 1, "correspondance": "exact", "meme_son": true, "naissances": 1027 },
{ "nom": "DUPON", "score": 0.9667, "correspondance": "phonetique", "meme_son": true, "naissances": 720 },
{ "nom": "DUPONT", "score": 0.9333, "correspondance": "phonetique", "meme_son": true, "naissances": 69221 },
…
]
}GET/souche-api/v1/departement/{code}/noms?top=50
Codes 01 à 95, 2A, 2B, 971 à 974. top entre 1 et 200 (50 par défaut). « Plus caractéristiques » : rapport de vraisemblance classé sur la borne basse de l’intervalle à 95 %, noms d’au moins 30 naissances dans le département. Le tout premier appel peut prendre une dizaine de secondes (index construit une fois par millésime).
{
"code": "29", "nom": "Finistère",
"plus_portes": [ { "rang": 1, "nom": "LE GALL", "naissances": 13629, "pour_1000_naissances_du_departement": 11.71 }, … ],
"plus_caracteristiques": [ { "rang": 1, "nom": "LANNUZEL", "naissances": 1249, "rapport": 50.914 }, … ]
}GET/souche-api/v1/statut
Sans clé, sans décompte : etat, version, millesime des données, seuils appliqués. /souche-api/v1/offres rend de même les offres et leurs prix.
Quotas et erreurs
Deux limites par clé : un quota mensuel, et une rafale par minute qui protège le service. Chaque réponse authentifiée porte X-Quota-Limite, X-Quota-Restant, X-Quota-Periode (AAAA-MM), X-Rafale-Limite et X-Offre.
| Code | erreur | Signification |
|---|---|---|
| 400 | nom_invalide, epoque_invalide, q_absent | paramètre illisible |
| 401 | cle_absente, cle_invalide, cle_revoquee | clé manquante, inconnue ou révoquée |
| 404 | nom_absent, departement_inconnu | moins de 30 naissances et moins de 5 décès : rien ne peut être calculé sans inventer |
| 429 | quota_mensuel_atteint | quota du mois consommé ; Retry-After jusqu’au 1er du mois suivant |
| 429 | rafale_depassee | trop de requêtes dans la minute ; Retry-After en secondes |
{ "erreur": "quota_mensuel_atteint",
"message": "Quota mensuel de 100 requêtes atteint pour l’offre « Essai ». Il se renouvelle le 1er du mois ; une offre supérieure se demande dans l’espace client." }Attribution : une obligation, pas une option
Les données sources sont publiées par l’INSEE sous Licence Ouverte 2.0. Toute diffusion d’un résultat de l’API — à l’écran, sur papier, dans un rapport — doit citer la source et sa date :
Vie privée : des agrégats, jamais une personne
L’API ne rend que des comptes de personnes regroupées par nom, décennie et département. Aucune ligne individuelle, aucune date de naissance ou de décès, aucun prénom ni commune de naissance (l’application en affiche quelques-uns ; l’API, non : croisés avec un nom rare, ils désigneraient presque une famille). Aucune donnée ne porte sur une personne vivante identifiable. Les mêmes seuils que l’application s’appliquent :
Il est interdit de croiser les résultats avec des données sur des personnes vivantes, et d’interroger l’API systématiquement pour reconstituer les fichiers sources : voir les conditions générales de l’API.
Cent requêtes offertes, sans carte bancaire.
Un compte Arborescence, une clé d’essai, et vous interrogez l’API dans la minute. Pour passer à une offre payante, faites la demande depuis l’espace client : la facture suit, l’offre s’active à réception du règlement.