Introduction

Ce guide liste les changements effectués entre la version 2 de l’API Entreprise et la version 3, et vous livre les éléments nécessaires pour effectuer la migration.

Les évolutions présentées ici ont été guidées par trois objectifs : 

  • assurer une meilleure sécurité de la donnée des fournisseurs ;
  • normaliser les formats pour faciliter la compréhension et l’industrialisation ;
  • clarifier, documenter les réponses et les rendre actionnables par vos logiciels.

Votre jeton d’accès reste identique 🔑
Pour accéder à la version 3 de l’API Entreprise, utilisez le même token qu’en V.2. En effet, tant que votre jeton est valide, il est inutile de refaire une demande d’accès car la migration vers la V.3 ne change pas les droits que vous avez déjà obtenu.

Évolutions générales

1. Jeton d'accès à paramétrer dans le header

🚀 Avec la V.3 : Le jeton est à paramétrer uniquement dans le header de l’appel.

Avant : Le jeton JWT pouvait être un paramètre de l’URL d’appel (query parameter).

🤔 Pourquoi ?

  • Respecter les standards de sécurité ;
  • Garantir que le token ne sera pas utilisé dans un navigateur.

🧰 Comment ?
Utilisez un client REST API pour tester les API pendant le développement.
Des clients sont disponibles gratuitement. API Entreprise utilise pour ses propres tests le client Insomnia. Le plus connu sur le marché est Postman.
Une fois le client installé, vous pouvez directement intégrer notre fichier Swagger/OpenAPI dedans.

2. Votre numéro de SIRET obligatoire dans le "recipient"

🚀 Avec la V.3 : Le paramètre obligatoire recipient de l’URL d’appel devra obligatoirement être complété par votre numéro de SIRET.

Avant : Ce paramètre obligatoire n’était pas contraint en termes de syntaxe.

🤔 Pourquoi ?

  • Pour garantir la traçabilité de l’appel jusqu’au bénéficiaire ayant obtenu l’habilitation à appeler l’API Entreprise et respecter nos engagements auprès des fournisseurs de données ;
  • Nous avions trop d’utilisateurs inscrivant le numéro de SIRET ou RNA de l’entreprise/association recherchée.

⚠️ Cas particulier, vous êtes un éditeur ?
Ce n’est pas votre numéro de SIRET mais celui de votre client public qu’il s’agira de renseigner. API Entreprise doit pouvoir tracer pour quelle entité publique l’appel a été passé.

Pour en savoir plus sur les paramètres obligatoires d’appel, consultez les spécifications techniques.

3. Codes erreurs spécifiques à chaque situation, actionnables et documentés

🚀 Avec la V.3 : Tous les codes erreur HTTPS sont accompagnés de codes plus précis, spécifiques à chaque situation d’erreur. Une explication en toutes lettres est également donnée dans la payload. Enfin, dans certains cas, une métadonnée actionnable est disponible.

Dans l’exemple ci-dessous, la clé retry_in permet de relancer un appel après le nombre de secondes indiquées.

Exemple de payload d’un code HTTP 502 :
{
  "errors": [
    {
      "code": "04501",
      "title": "Analyse de la situation du compte en cours",
      "detail": "La situation de l'entreprise requiert une
                 analyse manuelle d'un agent de l'URSSAF.
                 Une demande d'analyse vient d'être envoyée,
                 cela prend au maximum 2 jours.",
      "meta": {
        "provider": "ACOSS",
        "retry_in": 172800
      }
    }
  ]
}

Avant : Seul le code HTTP standard vous était fourni. Il pouvait correspondre à de nombreuses situations.

Exemple de payload d’un code HTTP 502 :
{
  "errors": [
    "L'ACOSS ne peut répondre à votre requête, réessayez ultérieurement  (erreur: Analyse de la situation du compte en cours)"
  ]
}

🤔 Pourquoi ?

  • Pour préciser la nature de l’erreur et vous aider à la comprendre ;
  • Pour vous permettre d’actionner automatiquement l’erreur en utilisant le code.

🧰 Comment ?
Utiliser les libellés pour comprendre l’erreur rencontrée, voire automatiser votre logiciel en fonction du code.
La liste de tous les codes erreurs spécifiques (environ 80) est disponible dans le Swagger. La gestion des erreurs et l’explication des codes retours est détaillée dans la documentation technique générale.

4. Volumétrie indiquée dans le header et actionnable

La gestion de la volumétrie est maintenue identique à la dernière évolution de la V.2 et expliquée dans cette documentation

5. Gestion des évolutions futures

🚀 Avec la V.3 : Toutes les API pourront évoluer indépendamment les unes des autres. Les anciennes versions resteront disponibles si le fournisseur de la donnée continue de nous transmettre les informations. Le numéro de version devient donc un paramètre de l’appel et non plus une valeur fixe pour toutes les API.
📩 Une infolettre annoncera systématiquement les nouvelles évolutions.

Avant : L’évolution d’un endpoint exigeait la montée en version de toute l’API.

🤔 Pourquoi ?

  • Permettre l’ajout de nouvelles informations sans forcer les fournisseurs de service à monter de version ;
  • Continuer de garantir la continuité des API dans le temps.

🧰 Comment ?
Renseigner directement le numéro de la version voulue dans l’URL, au même endroit qu’avant, par exemple :

https://entreprise.api.gouv.fr/v3/insee/sirene/etablissements/:siret

6. Un seul fournisseur et un seul type de données par API

🚀 Avec la V.3 : Chaque API appelle un seul et unique fournisseur de données.

Il n’existe plus d’API à contenu multiple, comme celle de l’INSEE/Infogreffe, les informations des différents fournisseurs ont été séparées.

Avant : Certaines API appelaient deux fournisseurs à la fois. Certaines API regroupaient de très nombreuses informations différentes.

🤔 Pourquoi ?

  • Faciliter la compréhension métier des données transmises ;
  • Réduire le nombre d’erreurs car le périmètre de la donnée disponible est plus explicite ;
  • Accélérer le temps de réponse des API, car il y a moins d’appels externes ;

🧰 Comment ?
Utiliser la table de correspondance pour identifier les API en version 3, qui correspondent à celle en version 2 :

Table de correspondance
des API v.2 > v.3

7. Les payloads normalisées et enrichies

🚀 Avec la V.3 : La payload de réponse est normalisée est composée systématiquement de 3 clés :

  • data, qui regroupe l’ensemble des données de la ou les ressources (si c’est une ressource seule, la données est un objet json, si c’est une collection, la données est un tableau json) ;
  • links, qui donne des liens vers d’autres endpoints relatifs à cette ressource, liens qui peuvent être utilisés par vos logiciels pour relancer un appel ;
  • meta, qui regroupe des metadonnées liées à API Entreprise ou au fournisseur de données.
Architecture de la payload V.3 :
{
  "data" : { … },
  "links" :  { … },
  "meta" : { … }
}

Avant : La structure de la payload n’était pas normalisée ni conventionnée ; elle ne contenait aucune information explicitant la nature de la réponse. Les liens permettant d’appeler une autre API n’étaient pas disponibles.

Architecture de la payload V.2 :
{
  LES DONNÉES,
}

🤔 Pourquoi ?

  • Uniformiser toutes les payloads de réponses ;
  • Permettre la connexion entre les API grâce à l’ajout des liens URL.

Table de correspondance V.2 > V.3

Cette partie du guide de migration permet de trouver la correspondance de chaque API de la V.2 avec les API de la V3 : 

Sommaire des tables de correspondance des API V.2 :

V.2 - Données de référence d'une entité - INSEE

L’API V.2 /entreprise de l’INSEE a été découpée en plusieurs API différentes dans la V.3 :

  • les données de référence de l’unité légale tirées de l’Insee ;
  • les données sur le siège social de l’unité légale sont séparées ;
  • les mandataires socaux tirés d’Infogreffe font aussi l’objet d’une autre API.

La distinction entre les “diffusibles” et les “non-diffusibles” n’est plus faite par une option d’appel. Nous avons créé des API distinctes :

API V.2 API V.3+ correspondantes
API Données de référence d’une entité - INSEE
Sans
l’option d’appel des “non-diffusibles”
 
Données concernant les unités légales “diffusibles”. API Données unité légale diffusible
../insee/sirene/unites_legales/diffusibles/{siren}
📖 Fiche métier
📟 Swagger

Ces informations sont aussi disponibles depuis :
API Données établissement diffusible
../insee/sirene/etablissements/diffusibles/{siret}
📖 Fiche métier
📟 Swagger

🎁 Nouvelle donnée disponible : Sexe des personnes physiques.

⚠️ Suppression du champ raison_sociale pour les personnes physiques en V.3 : par abus de langage, on parle de raison sociale ou dénomination pour les personnes physiques, or leur nom d’entreprise correspond toujours au nom de famille et au prénom, précédés ou suivis de la mention “entrepreneur individuel” ou “EI”. En savoir plus sur service-public.fr
Données concernant les mandataires sociaux de l’entreprise. API Mandataires sociaux
../infogreffe/mandataires_sociaux/{siren}
📖 Fiche métier
📟 Swagger

🎁 Nouvelle donnée disponible : Lieu de naissance des mandataires sociaux.
Données concernant le siège social d’une unité légale “diffusible”. API Données siège social diffusible
../insee/sirene/unites_legales/diffusibles/{siren}/siege
📖 Fiche métier
📟 Swagger
Adresse du siège social d´une unité légale “diffusible” API Adresse établissement diffusible
../insee/sirene/etablissements/diffusibles/{siret}/adresse
📖 Fiche métier
📟 Swagger
Numéro de TVA intracommunautaire API N°TVA intracommunautaire français
../european_commission/unites_legales/{siren}/numero_tva
📖 Fiche métier
📟 Swagger
API Données de référence d’une entité - INSEE
Avec
l’option d’appel des “non-diffusibles”
 
Données concernant toutes les unités légales, y compris les “non-diffusibles”. API Données unité légale
../insee/sirene/unites_legales/{siren}
📖 Fiche métier
📟 Swagger

Ces informations sont aussi disponibles depuis l’API Données établissement
../insee/sirene/etablissements/{siret}
📖 Fiche métier
📟 Swagger

🎁 Nouvelle donnée disponible : Sexe des personnes physiques.

⚠️ Suppression du champ raison_sociale pour les personnes physiques en V.3 : par abus de langage, on parle de raison sociale ou dénomination pour les personnes physiques, or leur nom d’entreprise correspond toujours au nom de famille et au prénom, précédés ou suivis de la mention “entrepreneur individuel” ou “EI”. En savoir plus sur service-public.fr
Données concernant les mandataires sociaux de l’entreprise. API Mandataires sociaux
../infogreffe/mandataires_sociaux/{siren}
📖 Fiche métier
📟 Swagger

🎁 Nouvelle donnée disponible : Lieu de naissance des mandataires sociaux.
Données concernant le siège social d’une unité légale, qu’elle soit “diffusible” ou non. API Données siège social
../insee/sirene/unites_legales/{siren}/siege
📖 Fiche métier
📟 Swagger
Adresse du siège social d´une unité légale, qu´elle soit “diffusible” ou non. API Adresse établissement
../insee/sirene/etablissements/{siret}/adresse
📖 Fiche métier
📟 Swagger
Numéro de TVA intracommunautaire API N°TVA intracommunautaire français
../european_commission/unites_legales/{siren}/numero_tva
📖 Fiche métier
📟 Swagger

Le champ booléen dirigeant des mandataires sociaux retiré en V.3 car non-effectif
En V.2, parmi les informations relatives aux mandataires sociaux, API Entreprise semblait transmettre une information sur le statut dirigeant ou non du mandataire social. Cette information n’était pas effective car toujours à true. Nous avons donc retiré ce champ inutile de l’API V.3 Mandataires sociaux.
Pour connaître les rôles des mandataires sociaux, vous pouvez vous aider du champ fonction qui renvoie des valeurs telles que “PRESIDENT”, “DIRECTEUR GENERALE”.

Table de correspondance de tous les champs en V.2 et leurs équivalents en V.3

API V.2. Données de référence d’une entité

Appelé avec SIREN
API V.3. Données établissement

Appelé avec SIRET
API V.3. Mandataires sociaux - Infogreffe

Appelé avec SIREN
API V.3. Données siège social

Appelé avec SIREN
API V.3. Données unités légales

Appelé avec SIREN
API V.3. Adresse établissement

Appelé avec SIRET
API V.3. Extrait RCS - Infogreffe

Appelé avec SIREN
API V.3. Numéro de TVA Intra

Appelé avec SIREN
"entreprise": { "unite_legale"     "unite_legale"      
"siren": "418166096", ⚙️ Cette information va être prochainement remise en V.3. ⚙️ Cette information va être prochainement remise en V.3.       ⚙️ Cette information va être prochainement remise en V.3. ⚙️ Cette information va être prochainement remise en V.3.
"capital_social": 509525,           "capital": {  
            "montant": "509525",  
            "devise": "EUROS",  
            "code_devise": "EUR"},  
"numero_tva_intracommunautaire": "FR16418166096",             🎁 "tva_number": "FR48672039971" - Cette donnée est certifiée contrairement à celle de la V.2
"forme_juridique": "SA à directoire (s.a.i.)", "libelle": "Service central d'un ministère" dans "forme_juridique"     "libelle": "Service central d'un ministère" dans "forme_juridique"      
"forme_juridique_code": "5699", "code": "7120" dans "forme_juridique"     "code": "7120" dans "forme_juridique"      
"nom_commercial": "OCTO-TECHNOLOGY",           "nom_commercial": "DECATHLON",  
"procedure_collective": false, ❌ Supprimé : Cette information n’a jamais fonctionné en V.2. Nous n’avons pas l’information et avons donc supprimé le champ en V.3            
"enseigne": null, "enseigne": "Coiff Land, CoiffureLand",            
"naf_entreprise": "6202A", "code": "8411Z"     "code": "8411Z"      
"libelle_naf_entreprise": "Conseil en systèmes et logiciels informatiques", "libelle": "Administration publique générale"     "libelle": "Administration publique générale"      
  🎁 "nomenclature" : "NAFRev2" - Nouvelle donnée qui précise la nomenclature     🎁 "nomenclature" : "NAFRev2" - Nouvelle donnée qui précise la nomenclature      
"raison_sociale": "OCTO-TECHNOLOGY", "raison_sociale": "DIRECTION INTERMINISTERIELLE DU NUMERIQUE"     "raison_sociale": "DIRECTION INTERMINISTERIELLE DU NUMERIQUE"      
"siret_siege_social": "41816609600051", "siret_siege_social": "13002526500013"     "siret_siege_social": "13002526500013"      
"code_effectif_entreprise": "31", ❌ Supprimé car en double dans la payload     ❌ Supprimé car en double dans la payload      
"date_creation": 891381600, "date_creation": 1634103818     "date_creation": 1634103818      
"nom": null, "nom_naissance": "Dubois"     "nom_naissance": "Dubois"      
  🎁 "nom_usage": "Dupont" - Nouvelle donnée     🎁 "nom_usage": "Dupont" - Nouvelle donnée      
"prenom": null, "prenom_usuel": "Jean"     "prenom_usuel": "Jean"      
  🎁 "prenom_1": "Jean" - Nouvelle donnée     🎁 "prenom_1": "Jean" - Nouvelle donnée      
  🎁 "prenom_2": "Jean" - Nouvelle donnée     🎁 "prenom_2": "Jean" - Nouvelle donnée      
  🎁 "prenom_3": "Jean" - Nouvelle donnée     🎁 "prenom_3": "Jean" - Nouvelle donnée      
  🎁 "prenom_4": "Jean" - Nouvelle donnée     🎁 "prenom_4": "Jean" - Nouvelle donnée      
"date_radiation": null, "date_radiation": null,     "date_radiation": null,      
"categorie_entreprise": "PME", "categorie_entreprise": "GE"     "categorie_entreprise": "GE"      
"tranche_effectif_salarie_entreprise": { "tranche_effectif_salarie"     "tranche_effectif_salarie"      
"de": 200, "de": 2000     "de": 2000      
"a": 249, "a": 4999     "a": 4999      
"code": "31", "code": "51"     "code": "51"      
"date_reference": "2014", "date_reference": "2016"     "date_reference": "2016"      
"intitule": "200 à 249 salariés" "intitule": "2 000 à 4 999 salariés"     "intitule": "2 000 à 4 999 salariés"      
"mandataires_sociaux": [              
"nom": "Henri",   "nom": "GAUQUELIN"       "nom": "GAUQUELIN"  
"prenom": "Martin",   "prenom": "ARNAUD"       "prenom": "Martin",  
"fonction": "Président du Directoire",   "fonction": "PRESIDENT"       "fonction": "Président du Directoire",  
"dirigeant": true,   ❌ Supprimé car ce champ n’apportait aucune information : juridiquement tout mandataire est un dirigeant, le champ était donc toujours à true       ❌ Supprimé car ce champ n’apportait aucune information : juridiquement tout mandataire est un dirigeant, le champ était donc toujours à true  
"date_naissance": "1965-01-27",   "date_naissance": "1969-08-24",       "date_naissance": "1965-01",
⚠️ Uniquement le mois et l’année pour cette API aux données ouvertes
 
"date_naissance_timestamp": -155523600,   "date_naissance_timestamp": -11235600,       ❌ car le jour de naissance n’est pas donné  
"raison_sociale": "",   ❌ Supprimé. Il n’y a pas de raison sociale pour les p. physiques. Pour obtenir le nom de l’entreprise, vous pouvez concaténer le nom de famille, le prénom, avec un espace entre les deux, précédés ou suivis de la mention “entrepreneur individuel” ou “EI”.          
"identifiant": "",   ❌ Supprimé pour les personnes physiques car toujours vide          
"type": "PP"   "type": "personne_physique"          
    🎁 Nouveaux champs :
- "lieu_naissance": "FLERS",
- "pays_naissance": "FRANCE",
- "code_pays_naissance": "FR",
- "nationalite": "FRANCAISE",
- "code_nationalite": "FR"
         
               
"nom": "",   ❌ Supprimé pour les personnes morales car toujours vide       ❌ Supprimé pour les personnes morales car toujours vide  
"prenom": "",   ❌ Supprimé pour les personnes morales car toujours vide       ❌ Supprimé pour les personnes morales car toujours vide  
"fonction": "COMMISSAIRE AUX COMPTES SUPPLEANT",   "fonction": "COMMISSAIRE AUX COMPTES TITULAIRE",       "fonction": "COMMISSAIRE AUX COMPTES SUPPLEANT",  
"dirigeant": true,   ❌ Supprimé car ce champ n’apportait aucune information : juridiquement tout mandataire est un dirigeant, le champ était donc toujours à true       ❌ Supprimé car ce champ n’apportait aucune information : juridiquement tout mandataire est un dirigeant, le champ était donc toujours à true  
"date_naissance": "",   ❌ Supprimé pour les personnes morales car toujours vide       ❌ Supprimé pour les personnes morales car toujours vide  
"date_naissance_timestamp": 0,   ❌ Supprimé pour les personnes morales car toujours vide       ❌ Supprimé pour les personnes morales car toujours vide  
"raison_sociale": "BCRH & ASSOCIES - SOCIETE A RESPONSABILITE LIMITEE A ASSOCIE UNIQUE",   "raison_sociale": "MAZARS - SOCIETE ANONYME A DIRECTOIRE ET CONSEIL DE SURVEILLANCE"       "raison_sociale": "BCRH & ASSOCIES - SOCIETE A RESPONSABILITE LIMITEE A ASSOCIE UNIQUE",  
"identifiant": "490092574",   "numero_identification": "784824153"       "numero_identification": "784824153"  
"type": "PM"   "type": "personne_morale"       "type": "personne_morale"  
"etat_administratif": {              
"value": "C", "etat_administratif": "A",            
"date_cessation": 1315173600 "date_cessation": 1634133818,            
"diffusable_commercialement": true "diffusable_commercialement": true            
"etablissement_siege": {              
"siege_social": true,     "siege_social": true        
"siret": "41816609600051",     ⚙️ Cette information va être prochainement remise en V.3.   ⚙️ Cette information va être prochainement remise en V.3.    
"naf": "6202A",     "code": "8411Z" dans "activite_principale"        
"libelle_naf": "Conseil en systèmes et logiciels informatiques",     "libelle": "Administration publique générale" dans "activite_principale"        
      🎁 "nomenclature" : "NAFRev2" - Nouvelle donnée qui précise la nomenclature        
"date_mise_a_jour": 1449183600,              
"tranche_effectif_salarie_etablissement": {     "tranche_effectif_salarie"        
"de": 200,     "de": 2000        
"a": 249,     "de": 2000        
"code": "31",     "code": "51"        
"date_reference": "2014",     "date_reference": "2016"        
"intitule": "200 à 249 salariés"     "intitule": "2 000 à 4 999 salariés"        
},              
"date_creation_etablissement": 1108594800,     "date_creation": 1634103818        
"enseigne": null,     "enseigne": "Coiff Land, CoiffureLand",        
"region_implantation": {     ❌ Supprimé, cette information, retrouvable autrement, ralentissait l’API. Nous l’avons supprimé en V.3.        
"code": "11",     ❌ Supprimé, cette information, retrouvable autrement, ralentissait l’API. Nous l’avons supprimé en V.3.        
"value": "Île-de-France"     ❌ Supprimé, cette information, retrouvable autrement, ralentissait l’API. Nous l’avons supprimé en V.3.        
},              
"commune_implantation": {              
"code": "75108",     ❌ Supprimé car en double dans la payload        
"value": "PARIS 8"     ❌ Supprimé car en double dans la payload        
"pays_implantation": {              
"code": null,     Remplacé par "code_pays_etranger": "99132"        
"value": null     Remplacé par "libelle_pays_etranger": "ROYAUME-UNI"        
"diffusable_commercialement": true,     "diffusable_commercialement": true,        
"adresse": {              
"l1": "OCTO TECHNOLOGY",     "l1": "ipsum" dans "acheminement_postal"   "l1": "ipsum" dans "acheminement_postal"    
"l2": null,     "l2": "ipsum" dans "acheminement_postal"   "l2": "ipsum" dans "acheminement_postal"    
"l3": null,     "l3": "ipsum" dans "acheminement_postal"   "l3": "ipsum" dans "acheminement_postal"    
"l4": "50 AVENUE DES CHAMPS ELYSEES",     "l4": "ipsum" dans "acheminement_postal"   "l4": "ipsum" dans "acheminement_postal"    
"l5": null,     "l5": "ipsum" dans "acheminement_postal"   "l5": "ipsum" dans "acheminement_postal"    
"l6": "75008 PARIS",     "l6": "ipsum" dans "acheminement_postal"   "l6": "ipsum" dans "acheminement_postal"    
"l7": "FRANCE",     "l7": "ipsum" dans "acheminement_postal"   "l7": "ipsum" dans "acheminement_postal"    
"numero_voie": "50",     "numero_voie": "22",   "numero_voie": "22",    
      "indice_repetition_voie": "lorem" - Donnée désormais séparée du numéro de voie   🎁 "indice_repetition_voie": "lorem" - Nouvelle donnée    
"type_voie": "AV",     "type_voie": "RUE",   "type_voie": "RUE",    
"nom_voie": "DES CHAMPS ELYSEES",     "libelle_voie": "ipsum",   "libelle_voie": "ipsum",    
"complement_adresse": null,     "complement_adresse": "ZAE SAINT GUENAULT",   "complement_adresse": "ZAE SAINT GUENAULT",    
"code_postal": "75008",     "code_postal": "75016",   "code_postal": "75016",    
"localite": "PARIS 8",     "libelle_commune": "PARIS 12"   "libelle_commune": "PARIS 12"    
"code_insee_localite": "75108",     "code_commune": "75112"   "code_commune": "75112"    
"cedex": null     "code_cedex": "ipsum",   "code_cedex": "ipsum",    
      🎁 "libelle_cedex": "PARIS CEDEX 12" - Nouvelle donnée   🎁 "libelle_cedex": "PARIS CEDEX 12" - Nouvelle donnée    
      🎁 "distribution_speciale": "ipsum" - Nouvelle donnée   🎁 "distribution_speciale": "ipsum" - Nouvelle donnée    
},              
"etat_administratif": {              
"value": "F",     "etat_administratif": "A"        
"date_fermeture": 1315173600     "date_fermeture": 1634133818        
"gateway_error": false     ❌ Supprimé, information technique API Entreprise complexe et peu utile        

V.2 - Données de référence d'un établissement - INSEE

L’API V.2 /etablissement de l’INSEE devient l’API centrale des données Insee en V.3. À partir du SIRET de l’établissement, vous récupérez les données de l’établissement, dont son adresse postale, ainsi que les données de l’unité légale qui le concerne.

La distinction entre les “diffusibles” et les “non-diffusibles” n’est plus faite par une option d’appel. Nous avons créé des API distinctes :

API V.2 API V.3+ correspondantes
API Données de référence d’un établissement - INSEE  
Sans l’option d’appel des “non-diffusibles” API Données établissement diffusible
../insee/sirene/etablissements/diffusibles/{siret}
📖 Fiche métier
📟 Swagger

🧩 Cette API délivre en plus des informations sur l’unité légale de l’établissement.
Avec l’option d’appel des “non-diffusibles” API Données établissement
../insee/sirene/etablissements/{siret}
📖 Fiche métier
📟 Swagger

🧩 Cette API délivre en plus des informations sur l’unité légale de l’établissement.

Table de correspondance de tous les champs en V.2 et leurs équivalents en V.3

API V.2. Données de référence d’un établissement

Appelé avec SIRET
API V.3. Données établissement

Appelé avec SIRET
API V.3. Données siège social

Appelé avec SIREN
API V.3. Adresse établissement

Appelé avec SIRET
"etablissement": {      
"siege_social": true, "siege_social": false "siege_social": true  
"siret": "41816609600051", ⚙️ Cette information va être prochainement remise en V.3. ⚙️ Cette information va être prochainement remise en V.3. ⚙️ Cette information va être prochainement remise en V.3.
"naf": "6202A", "code": "8411Z" dans "activite_principale" "code": "8411Z" dans "activite_principale"  
"libelle_naf": "Conseil en systèmes et logiciels informatiques", "libelle": "Administration publique générale" dans "activite_principale" "libelle": "Administration publique générale" dans "activite_principale"  
  🎁 "nomenclature" : "NAFRev2" - Nouvelle donnée qui précise la nomenclature 🎁 "nomenclature" : "NAFRev2" - Nouvelle donnée qui précise la nomenclature  
"date_mise_a_jour": "1449183600,"      
"tranche_effectif_salarie_etablissement": { "tranche_effectif_salarie" "tranche_effectif_salarie"  
"de": 200, "de": 2000 "de": 2000  
"a": 249, "de": 2000 "de": 2000  
"code": "31", "code": "51" "code": "51"  
"date_reference": "2014", "date_reference": "2016" "date_reference": "2016"  
"intitule": "200 à 249 salariés" "intitule": "2 000 à 4 999 salariés" "intitule": "2 000 à 4 999 salariés"  
"date_creation_etablissement": 1108594800, "date_creation": 1634103818" "date_creation": 1634103818  
"region_implantation": { ❌ Supprimé, cette information, retrouvable autrement, ralentissait l’API. Nous l’avons supprimé en V.3. ❌ Supprimé, cette information, retrouvable autrement, ralentissait l’API. Nous l’avons supprimé en V.3.  
"code": "11", ❌ Supprimé, cette information, retrouvable autrement, ralentissait l’API. Nous l’avons supprimé en V.3. ❌ Supprimé, cette information, retrouvable autrement, ralentissait l’API. Nous l’avons supprimé en V.3.  
"value": "Île-de-France" ❌ Supprimé, cette information, retrouvable autrement, ralentissait l’API. Nous l’avons supprimé en V.3. ❌ Supprimé, cette information, retrouvable autrement, ralentissait l’API. Nous l’avons supprimé en V.3.  
"commune_implantation": {      
"code": "75108", ❌ Supprimé car en double dans la payload ❌ Supprimé car en double dans la payload  
"value": "PARIS 8" ❌ Supprimé car en double dans la payload ❌ Supprimé car en double dans la payload  
"pays_implantation": {      
"code": "FR", Remplacé par "code_pays_etranger": "99132" Remplacé par "code_pays_etranger": "99132"  
"value": "FRANCE" Remplacé par "libelle_pays_etranger": "ROYAUME-UNI" Remplacé par "libelle_pays_etranger": "ROYAUME-UNI"  
"diffusable_commercialement": true, "diffusable_commercialement": true, "diffusable_commercialement": true,  
"enseigne": null, "enseigne": "Coiff Land, CoiffureLand", "enseigne": "Coiff Land, CoiffureLand",  
"adresse": {      
"l1": "OCTO TECHNOLOGY", "l1": "ipsum" dans "acheminement_postal" "l1": "ipsum" dans "acheminement_postal" "l1": "ipsum" dans "acheminement_postal"
"l2": null, "l2": "ipsum" dans "acheminement_postal" "l2": "ipsum" dans "acheminement_postal" "l2": "ipsum" dans "acheminement_postal"
"l3": null, "l3": "ipsum" dans "acheminement_postal" "l3": "ipsum" dans "acheminement_postal" "l3": "ipsum" dans "acheminement_postal"
"l4": "50 AVENUE DES CHAMPS ELYSEES", "l4": "ipsum" dans "acheminement_postal" "l4": "ipsum" dans "acheminement_postal" "l4": "ipsum" dans "acheminement_postal"
"l5": null, "l5": "ipsum" dans "acheminement_postal" "l5": "ipsum" dans "acheminement_postal" "l5": "ipsum" dans "acheminement_postal"
"l6": "75008 PARIS", "l6": "ipsum" dans "acheminement_postal" "l6": "ipsum" dans "acheminement_postal" "l6": "ipsum" dans "acheminement_postal"
"l7": "FRANCE", "l7": "ipsum" dans "acheminement_postal" "l7": "ipsum" dans "acheminement_postal" "l7": "ipsum" dans "acheminement_postal"
"numero_voie": "50", "numero_voie": "22", "numero_voie": "22", "numero_voie": "22",
  🎁 "indice_repetition_voie": "lorem" - Nouvelle donnée 🎁 "indice_repetition_voie": "lorem" - Nouvelle donnée 🎁 "indice_repetition_voie": "lorem" - Nouvelle donnée
"type_voie": "AV", "type_voie": "RUE", "type_voie": "RUE", "type_voie": "RUE",
"nom_voie": "DES CHAMPS ELYSEES", "libelle_voie": "ipsum", "libelle_voie": "ipsum", "libelle_voie": "ipsum",
"complement_adresse": null, "complement_adresse": "ZAE SAINT GUENAULT", "complement_adresse": "ZAE SAINT GUENAULT", "complement_adresse": "ZAE SAINT GUENAULT",
"code_postal": "75008", "code_postal": "75016", "code_postal": "75016", "code_postal": "75016",
"localite": "PARIS 8", "libelle_commune": "PARIS 12" "libelle_commune": "PARIS 12" "libelle_commune": "PARIS 12"
"code_insee_localite": "75108", "code_commune": "75112" "”code_commune”: “75112”” "”code_commune”: “75112””
"cedex": null" "code_cedex": "ipsum", "code_cedex": "ipsum", "code_cedex": "ipsum",
  🎁 "libelle_cedex": "PARIS CEDEX 12" - Nouvelle donnée 🎁 "libelle_cedex": "PARIS CEDEX 12" - Nouvelle donnée 🎁 "libelle_cedex": "PARIS CEDEX 12" - Nouvelle donnée
  🎁 "distribution_speciale": "ipsum" - Nouvelle donnée 🎁 "distribution_speciale": "ipsum" - Nouvelle donnée 🎁 "distribution_speciale": "ipsum" - Nouvelle donnée
"etat_administratif": {      
"value": "F", "etat_administratif": "A" "etat_administratif": "A"  
"date_fermeture": 1315173600" "date_fermeture": 1634133818" "date_fermeture": 1634133818"  
"gateway_error": false" ❌ Supprimé, information technique API Entreprise complexe et peu utile ❌ Supprimé, information technique API Entreprise complexe et peu utile”  

V.2 - Extrait RCS - Infogreffe

API V.2 API V.3+ correspondante
API Extrait RCS - Infogreffe API Extrait RCS
../infogreffe/rcs/unites_legales/{siren}/extrait_kbis
📖 Fiche métier
📟 Swagger

V.2 - Informations déclaratives d'une association - Ministère de l'Intérieur

La migration V.3 introduit de nouvelles données sur les associations. Par conséquent, en migrant, vous trouverez deux nouvelles API :

  • Une API en open data, délivrant le même type d’informations que celles données par l’API V.2 données RNA d’une association et l’API V.2 Divers documents d’une associations.
  • 🎁 Une API délivrant de nouvelles données : des informations protégées uniquement accessibles aux agents publics habilités. Il vous faudra effectuer une demande d’habilitation pour accéder à cette API. Pour élargir votre périmètre des API accessibles, consulter cette rubrique de la FAQ.
API V.2 API V.3+ correspondante
API Informations déclaratives d’une association - Ministère de l’Intérieur API Données association en open data - DJEPVA
v4/djepva/api-association/associations/open_data/{siren_or_rna}
📖 Fiche métier
📟 Swagger

🎁 Plus de données disponibles avec la nouvelle API Données associations - DJEPVA.

V.2 - Divers documents d'une association - Ministère de l'Intérieur

La migration V.3 introduit de nouvelles données sur les associations. Par conséquent, en migrant, vous trouverez deux nouvelles API :

  • Une API en open data, délivrant le même type d’informations que celles données par l’API V.2 données RNA d’une association et l’API V.2 Divers documents d’une associations.
  • 🎁 Une API délivrant de nouvelles données : des informations protégées uniquement accessibles aux agents publics habilités. Il vous faudra effectuer une demande d’habilitation pour accéder à cette API. Pour élargir votre périmètre des API accessibles, consulter cette rubrique de la FAQ.
API V.2 API V.3+ correspondante
API Divers documents d’une association - Ministère de l’Intérieur API Données association en open data - DJEPVA
v4/djepva/api-association/associations/open_data/{siren_or_rna}
📖 Fiche métier
📟 Swagger

🎁 Plus de données disponibles avec la nouvelle API Données associations - DJEPVA.

V.2 - Actes - INPI

API V.2 API V.3+ correspondante
API Actes - INPI API Actes
../inpi/unites_legales/{siren}/actes
📖 Fiche métier
📟 Swagger

V.2 - Conventions collectives - Fabrique numérique des Ministères sociaux

API V.2 API V.3+ correspondante
API Conventions collectives - Fabrique numérique des Ministères sociaux API Conventions collectives
../fabrique_numerique_ministeres_sociaux/etablissements/{siret}/conventions_collectives
📖 Fiche métier
📟 Swagger

V.2 - Données de référence d'une entreprise artisanale - CMA France

API V.2 API V.3+ correspondante
API Données de référence d’une entreprise artisanale - CMA France API Données du RNM d’une entreprise artisanale
../cma_france/rnm/unites_legales/{siren}
📖 Fiche métier
📟 Swagger

V.2 - Effectifs d'une entreprise - URSSAF

API V.2 API V.3+ correspondante
API Effectifs d’une entreprise - URSSAF API Effectifs
📖 Fiche métier
⚙️ Swagger prochainement disponible

V.2 - Immatriculations EORI - Douanes

API V.2 API V.3+ correspondante
API Immatriculations EORI - Douanes API Immatriculations EORI
../douanes/etablissements/{siret_or_eori}/immatriculations_eori
📖 Fiche métier
📟 Swagger

V.2 - Chiffre d'affaires - DGFIP

API V.2 API V.3+ correspondante
API Chiffre d’affaires - DGFIP API Chiffre d’affaires
../dgfip/etablissements/{siret}/chiffres_affaires
📖 Fiche métier
📟 Swagger

V.2 - Bilans annuels - INPI

API V.2 API V.3+ correspondante
API Bilans annuels - INPI API Comptes annuels du RNCS

📖 Fiche métier
⚙️ Swagger prochainement disponible

V.2 - 3 derniers bilans annuels - Banque de France

API V.2 API V.3+ correspondante
API 3 derniers bilans annuels - Banque de France API Trois derniers bilans annuels

📖 Fiche métier
⚙️ Swagger prochainement disponible

V.2 - Déclarations de résultats - DGFIP

API V.2 API V.3+ correspondante
API Déclarations de résulats - DGFIP API Liasses fiscales
../dgfip/unites_legales/{siren}/liasses_fiscales/{year}
📖 Fiche métier
📟 Swagger

V.2 - Attestation fiscale - DGFIP

API V.2 API V.3+ correspondante
API Attestation fiscale - DGFIP API Attestation fiscale - DGFIP
../dgfip/unites_legales/{siren}/attestation_fiscale
📖 Fiche métier
📟 Swagger

V.2 - Attestation de vigilance - ACOSS

API V.2 API V.3+ correspondante
API Attestation de vigilance - ACOSS API Attestation de vigilance - URSSAF Caisse nationale
../urssaf/unites_legales/{siren}/attestation_vigilance
📖 Fiche métier
📟 Swagger

V.2 - Conformité emploi des travailleurs handicapés - Agefiph

API V.2 API V.3+ correspondante
API Conformité emploi des travailleurs handicapés - Agefiph ❌ Ressource supprimée en V3 - Depuis 2021, la contribution annuelle de l’OETH (Obligation d’Emploi de Travailleur Handicapé) relève de l’URSSAF et non plus de l’Agefiph.

La conformité à l’OETH est donc désormais incluse dans l’API attestation de vigileance - URSSAF ou dans l’API conformité cotisations de sécurité sociale agricole - MSA pour les entreprises relevant du régime agricole.

V.2 - Cotisations de sécurité agricole - MSA

API V.2 API V.3+ correspondante
API Cotisations de sécurité agricole - MSA API Conformité cotisations de sécurité sociale agricole
../msa/etablissements/{siret}/conformite_cotisations
📖 Fiche métier
📟 Swagger

V.2 - Cotisations retraite bâtiment - PROBTP

API V.2 API V.3+ correspondante
API Cotisations retraite bâtiment - PROBTP API Conformité cotisations retraite bâtiment

📖 Fiche métier
⚙️ Swagger prochainement disponible

🚀 En V.3, plus besoin de faire deux appels différents. Avec un seul appel, vous obtenez l’état de conformité et l’URL de téléchargement de l’attestation si elle est disponible.

V.2 - Carte professionnelle travaux publics - FNTP

API V.2 API V.3+ correspondante
API Carte professionnelle travaux publics - FNTP API Carte professionnelle travaux publics
../fntp/unites_legales/{siren}/carte_professionnelle_travaux_publics
📖 Fiche métier
📟 Swagger

V.2 - Cotisations congés payés & chômage intempéries - CNETP

API V.2 API V.3+ correspondante
API Cotisations congés payés & chômage intempéries - CNETP API Attestation de cotisations congés payés & chômage-intempéries
../cnetp/unites_legales/{siren}/attestation_cotisations_conges_payes_chomage_intemperies
📖 Fiche métier
📟 Swagger

V.2 - Certification en BIO - Agence BIO

API V.2 API V.3+ correspondante
API Certification en BIO - Agence BIO API Certifications en BIO

📖 Fiche métier
⚙️ Swagger prochainement disponible

V.2 - Certification RGE - ADEME

API V.2 API V.3+ correspondante
API Certification RGE - ADEME API Certificat RGE
../ademe/etablissements/{siret}/certification_rge
📖 Fiche métier
📟 Swagger

V.2 - Certification de qualification du bâtiment - Qualibat

API V.2 API V.3+ correspondante
API Certification de qualification du bâtiment - Qualibat API Certification Qualibat
../qualibat/etablissements/{siret}/certification_batiment
📖 Fiche métier
📟 Swagger

V.2 - Certification de qualification d'ingénierie - OPQIBI

API V.2 API V.3+ correspondante
API Certification de qualification d’ingénierie - OPQIBI API Certification d’ingénierie OPQIBI

📖 Fiche métier
⚙️ Swagger prochainement disponible

V.2 - Brevets, modèles et marques déposés - INPI

API V.2 API V.3+ correspondantes
API Brevets, modèles et marques déposés - INPI  
Données des brevets API Brevets déposés
../inpi/unites_legales/{siren}/brevets
📖 Fiche métier
📟 Swagger
Données des dessins & modèles API Modèles déposés
../inpi/unites_legales/{siren}/modeles
📖 Fiche métier
📟 Swagger
Données des marques API Marques déposées
../inpi/unites_legales/{siren}/marques
📖 Fiche métier
📟 Swagger