diff --git a/clients/node/api-entreprise/CHANGELOG.md b/clients/node/api-entreprise/CHANGELOG.md
index 71bf6d2574..01a795952a 100644
--- a/clients/node/api-entreprise/CHANGELOG.md
+++ b/clients/node/api-entreprise/CHANGELOG.md
@@ -1,5 +1,12 @@
# Changelog
+## 0.3.0
+
+### Added
+- `ministere_interieur.fondations(siren_or_siret_or_rnf)` — Données fondations
+ (SIAF / Ministère de l'Intérieur), `/v3/ministere_interieur/siaf/fondations/{siren_or_siret_or_rnf}`.
+ Available on staging only for now (endpoint in "prochainement" mode).
+
## 0.2.0
### Added
diff --git a/clients/node/api-entreprise/package-lock.json b/clients/node/api-entreprise/package-lock.json
index ca3b7ca732..2e75781c3d 100644
--- a/clients/node/api-entreprise/package-lock.json
+++ b/clients/node/api-entreprise/package-lock.json
@@ -1,12 +1,12 @@
{
"name": "@api-gouv-dinum/api-entreprise",
- "version": "0.1.0",
+ "version": "0.3.0",
"lockfileVersion": 3,
"requires": true,
"packages": {
"": {
"name": "@api-gouv-dinum/api-entreprise",
- "version": "0.1.0",
+ "version": "0.3.0",
"license": "MIT",
"devDependencies": {
"@types/node": "^25.8.0",
diff --git a/clients/node/api-entreprise/package.json b/clients/node/api-entreprise/package.json
index bc21edbb01..1205e7065f 100644
--- a/clients/node/api-entreprise/package.json
+++ b/clients/node/api-entreprise/package.json
@@ -1,6 +1,6 @@
{
"name": "@api-gouv-dinum/api-entreprise",
- "version": "0.2.0",
+ "version": "0.3.0",
"description": "Official Node.js client for API Entreprise v3",
"type": "module",
"main": "dist/index.cjs",
diff --git a/clients/node/api-entreprise/src/resources/ministere_interieur.ts b/clients/node/api-entreprise/src/resources/ministere_interieur.ts
index 2e333151bf..6397768507 100644
--- a/clients/node/api-entreprise/src/resources/ministere_interieur.ts
+++ b/clients/node/api-entreprise/src/resources/ministere_interieur.ts
@@ -39,4 +39,18 @@ export class MinistereInterieur {
})();
return this.client.get(path, { params: { 'recipient': options.recipient, 'delegation_id': options.delegation_id, 'context': options.context, 'object': options.object } });
}
+
+ /** Données fondations */
+ async fondations(siren_or_siret_or_rnf: string, options: { version?: number; recipient?: string; delegation_id?: string; context?: string; object?: string } = {}) {
+ const resolvedVersion = options.version ?? 3;
+ const path = (() => {
+ switch (resolvedVersion) {
+ case 3:
+ return `/v3/ministere_interieur/siaf/fondations/${siren_or_siret_or_rnf}`;
+ default:
+ throw new Error(`version ${resolvedVersion} not available for /ministere_interieur/siaf/fondations/{siren_or_siret_or_rnf}; supported: [3]`);
+ }
+ })();
+ return this.client.get(path, { params: { 'recipient': options.recipient, 'delegation_id': options.delegation_id, 'context': options.context, 'object': options.object } });
+ }
}
diff --git a/clients/ruby/api_entreprise/CHANGELOG.md b/clients/ruby/api_entreprise/CHANGELOG.md
index a03e896853..9fd13fdb6f 100644
--- a/clients/ruby/api_entreprise/CHANGELOG.md
+++ b/clients/ruby/api_entreprise/CHANGELOG.md
@@ -6,6 +6,13 @@ adheres to [Semantic Versioning](https://semver.org/).
## [Unreleased]
+## [0.3.0] - 2026-08-15
+
+### Added
+- `ministere_interieur.fondations(siren_or_siret_or_rnf)` — Données fondations
+ (SIAF / Ministère de l'Intérieur), `/v3/ministere_interieur/siaf/fondations/{siren_or_siret_or_rnf}`.
+ Available on staging only for now (endpoint in "prochainement" mode).
+
## [0.2.0] - 2026-05-19
### Added
diff --git a/clients/ruby/api_entreprise/Gemfile.lock b/clients/ruby/api_entreprise/Gemfile.lock
index a224101417..a7daeabcf5 100644
--- a/clients/ruby/api_entreprise/Gemfile.lock
+++ b/clients/ruby/api_entreprise/Gemfile.lock
@@ -1,7 +1,7 @@
PATH
remote: .
specs:
- api_entreprise (0.2.0)
+ api_entreprise (0.3.0)
faraday (~> 2.0)
faraday-retry (~> 2.0)
@@ -62,7 +62,7 @@ DEPENDENCIES
CHECKSUMS
addressable (2.9.0) sha256=7fdf6ac3660f7f4e867a0838be3f6cf722ace541dd97767fa42bc6cfa980c7af
- api_entreprise (0.2.0)
+ api_entreprise (0.3.0)
bigdecimal (4.1.1) sha256=1c09efab961da45203c8316b0cdaec0ff391dfadb952dd459584b63ebf8054ca
crack (1.0.1) sha256=ff4a10390cd31d66440b7524eb1841874db86201d5b70032028553130b6d4c7e
diff-lcs (1.6.2) sha256=9ae0d2cba7d4df3075fe8cd8602a8604993efc0dfa934cff568969efb1909962
diff --git a/clients/ruby/api_entreprise/lib/api_entreprise/resources/ministere_interieur.rb b/clients/ruby/api_entreprise/lib/api_entreprise/resources/ministere_interieur.rb
index a11dc4b36c..923384d10a 100644
--- a/clients/ruby/api_entreprise/lib/api_entreprise/resources/ministere_interieur.rb
+++ b/clients/ruby/api_entreprise/lib/api_entreprise/resources/ministere_interieur.rb
@@ -39,6 +39,20 @@ def documents(siret_or_rna, version: nil, recipient: nil, delegation_id: nil, co
end
@client.get(path, params: { "recipient" => recipient, "delegation_id" => delegation_id, "context" => context, "object" => object }.compact)
end
+
+ # Données fondations
+ # Logical endpoint: /ministere_interieur/siaf/fondations/{siren_or_siret_or_rnf}
+ # Versions available: [3] — default: 3
+ def fondations(siren_or_siret_or_rnf, version: nil, recipient: nil, delegation_id: nil, context: nil, object: nil)
+ path =
+ case version || 3
+ when 3
+ "/v3/ministere_interieur/siaf/fondations/#{siren_or_siret_or_rnf}"
+ else
+ raise ArgumentError, "version #{version.inspect} not available for /ministere_interieur/siaf/fondations/{siren_or_siret_or_rnf}; supported: [3]"
+ end
+ @client.get(path, params: { "recipient" => recipient, "delegation_id" => delegation_id, "context" => context, "object" => object }.compact)
+ end
end
end
end
diff --git a/clients/ruby/api_entreprise/lib/api_entreprise/version.rb b/clients/ruby/api_entreprise/lib/api_entreprise/version.rb
index 117f5e50d7..3540b0de8b 100644
--- a/clients/ruby/api_entreprise/lib/api_entreprise/version.rb
+++ b/clients/ruby/api_entreprise/lib/api_entreprise/version.rb
@@ -1,3 +1,3 @@
module ApiEntreprise
- VERSION = '0.2.0'.freeze
+ VERSION = '0.3.0'.freeze
end
diff --git a/commons/data/authorizations.yml b/commons/data/authorizations.yml
index d648192cb7..86193271a3 100644
--- a/commons/data/authorizations.yml
+++ b/commons/data/authorizations.yml
@@ -153,6 +153,8 @@ shared:
api_entreprise/v3_and_more/mi/unites_legales:
- associations_donnees_protegees
- associations_djepva
+ api_entreprise/v3_and_more/mi/siaf/fondations:
+ - fondations_mi_siaf
api_entreprise/v3_and_more/mi/unites_legales_open_data:
- associations
- open_data
diff --git a/commons/data/throttle.yml b/commons/data/throttle.yml
index fd156b1e01..4dedbf289d 100644
--- a/commons/data/throttle.yml
+++ b/commons/data/throttle.yml
@@ -26,6 +26,7 @@ shared:
- api_entreprise_v3_mi_associations
- api_entreprise_v3_mi_unites_legales
- api_entreprise_v3_mi_unites_legales_open_data
+ - api_entreprise_v3_mi_siaf_fondations
- api_entreprise_v3_dgddi_eori
- api_entreprise_v3_infogreffe_mandataires_sociaux
- api_entreprise_v3_infogreffe_extraits_rcs
diff --git a/commons/endpoints/_swagger_shared/00_commons.yml b/commons/endpoints/_swagger_shared/00_commons.yml
index 878996057e..9e53a2809a 100644
--- a/commons/endpoints/_swagger_shared/00_commons.yml
+++ b/commons/endpoints/_swagger_shared/00_commons.yml
@@ -86,6 +86,19 @@ parameters:
value: "775672272"
summary: SIREN de la Croix-Rouge France
+ siren_or_siret_or_rnf:
+ description: "SIREN ou SIRET de la fondation, ou son identifiant au Répertoire National des Fondations (RNF). Environ 22 % des fondations n'ont pas de SIRET dans le référentiel : elles ne sont accessibles que par leur identifiant RNF."
+ examples:
+ maison_de_la_chimie_rnf:
+ value: "075-FRUP-00194-01"
+ summary: Identifiant RNF de la fondation Maison de la Chimie
+ maison_de_la_chimie_siren:
+ value: "784308934"
+ summary: SIREN de la fondation Maison de la Chimie
+ maison_de_la_chimie_siret:
+ value: "78430893400016"
+ summary: SIRET de la fondation Maison de la Chimie
+
siret_or_eori:
description: "Siret ou numéro EORI de l'entreprise"
examples:
diff --git a/commons/endpoints/_swagger_shared/siaf.yml b/commons/endpoints/_swagger_shared/siaf.yml
new file mode 100644
index 0000000000..fdeba7ce10
--- /dev/null
+++ b/commons/endpoints/_swagger_shared/siaf.yml
@@ -0,0 +1,394 @@
+siaf:
+ fondations:
+ title: "Données fondations"
+ description: "Données de référence d'une fondation (FRUP, fondation d'entreprise ou fonds de dotation) issues du Répertoire National des Fondations (RNF), opéré par le Ministère de l'Intérieur via le SIAF : identité, activité, dirigeants, situation financière déclarative, conformité comptable et pièces justificatives."
+ tags:
+ - "Informations générales"
+ - "Prochainement"
+ attributes:
+ identifiants:
+ title: "Identifiants de la fondation"
+ type: "object"
+ properties:
+ rnf:
+ title: "Identifiant au Répertoire National des Fondations"
+ description: "Identifiant officiel de la fondation, au format {département}-{type}-{numéro}-{suffixe}."
+ type: "string"
+ example: "075-FRUP-00194-01"
+ siren:
+ title: "SIREN de la fondation"
+ description: "Déduit du SIRET présent dans le référentiel. Environ 22 % des fondations n'ont pas de SIRET : la valeur est alors null."
+ type: "string"
+ nullable: true
+ example: "784308934"
+ siret:
+ title: "SIRET du siège de la fondation"
+ type: "string"
+ nullable: true
+ example: "78430893400016"
+ identite:
+ title: "Identité de la fondation"
+ type: "object"
+ properties:
+ service_instructeur:
+ title: "Service instructeur"
+ description: "Département du service instructeur de la fondation."
+ type: "string"
+ example: "75"
+ type_fondation:
+ title: "Type de fondation"
+ description: "FRUP : fondation reconnue d'utilité publique ; FE : fondation d'entreprise ; FDD : fonds de dotation."
+ type: "string"
+ enum:
+ - "FRUP"
+ - "FE"
+ - "FDD"
+ example: "FRUP"
+ denomination:
+ title: "Dénomination de la fondation"
+ type: "string"
+ example: "MAISON DE LA CHIMIE"
+ etat:
+ title: "État de la fondation"
+ description: "État de la fondation au Répertoire National des Fondations : en activité, suspendue, transformée, fusionnée, scindée ou dissoute."
+ type: "string"
+ example: "Active"
+ date_effet_etat:
+ title: "Date d'effet de l'état"
+ type: "string"
+ nullable: true
+ example: "1928-08-12"
+ date_creation:
+ title: "Date de création de la fondation"
+ type: "string"
+ nullable: true
+ example: "1928-08-12"
+ date_terme:
+ title: "Date du terme"
+ description: "Échéance de la fondation, notamment pour les fondations d'entreprise créées pour une durée déterminée. Null si sans objet."
+ type: "string"
+ nullable: true
+ example: "2030-12-31"
+ date_cloture_exercice:
+ title: "Date de clôture de l'exercice comptable (mois/jour, format MM-DD)"
+ type: "string"
+ nullable: true
+ example: "12-31"
+ adresse_siege:
+ title: "Adresse du siège de la fondation"
+ type: "object"
+ properties:
+ adresse_complete:
+ title: "Adresse complète sur une ligne"
+ type: "string"
+ nullable: true
+ example: "28 Rue Saint-Dominique 75007 Paris"
+ numero_voie:
+ title: "Numéro de voie"
+ type: "string"
+ nullable: true
+ example: "28"
+ nom_voie:
+ title: "Libellé de la voie"
+ type: "string"
+ nullable: true
+ example: "Rue Saint-Dominique"
+ code_postal:
+ title: "Code postal"
+ type: "string"
+ nullable: true
+ example: "75007"
+ commune:
+ title: "Commune"
+ type: "string"
+ nullable: true
+ example: "Paris 7e Arrondissement"
+ code_insee_commune:
+ title: "Code INSEE de la commune"
+ type: "string"
+ nullable: true
+ example: "75107"
+ departement:
+ title: "Code du département"
+ type: "string"
+ nullable: true
+ example: "75"
+ pays:
+ title: "Pays"
+ type: "string"
+ nullable: true
+ example: "France"
+ courriel:
+ title: "Courriel de la fondation"
+ type: "string"
+ nullable: true
+ example: "contact@fondation-exemple.fr"
+ telephone:
+ title: "Numéro de téléphone de la fondation"
+ type: "string"
+ nullable: true
+ example: "+33123456789"
+ activite:
+ title: "Activité de la fondation"
+ type: "object"
+ properties:
+ objet_social:
+ title: "Objet social"
+ description: "Objet social extrait des statuts de la fondation."
+ type: "string"
+ example: "Contribuer à l'avancement de la science chimique et au développement de ses applications."
+ domaine_interet_general:
+ title: "Domaines d'intérêt général"
+ description: "Liste des domaines d'intérêt général, séparés par des virgules."
+ type: "string"
+ nullable: true
+ example: "Social, Scientifique, Humanitaire"
+ activite_internationale_prevue_par_statuts:
+ title: "Activité internationale prévue par les statuts"
+ type: "boolean"
+ nullable: true
+ example: false
+ dirigeants:
+ title: "Dirigeants et représentants de la fondation"
+ description: "Personnes physiques siégeant dans les organes de gouvernance ou exerçant des fonctions de direction. Un dirigeant peut représenter une personne morale, détaillée dans personne_morale."
+ type: "array"
+ items:
+ type: "object"
+ properties:
+ nom:
+ title: "Nom du dirigeant"
+ type: "string"
+ nullable: true
+ example: "DUPONT"
+ prenom:
+ title: "Prénom du dirigeant"
+ type: "string"
+ nullable: true
+ example: "Marie"
+ date_naissance:
+ title: "Date de naissance"
+ type: "string"
+ nullable: true
+ example: "1975-04-12"
+ nationalite:
+ title: "Nationalité"
+ type: "string"
+ nullable: true
+ example: "France"
+ adresse_domiciliation:
+ title: "Adresse de domiciliation"
+ type: "object"
+ properties:
+ adresse_complete:
+ title: "Adresse complète sur une ligne"
+ type: "string"
+ nullable: true
+ example: "20 Rue Exemple 75001 Paris"
+ code_postal:
+ title: "Code postal"
+ type: "string"
+ nullable: true
+ example: "75001"
+ commune:
+ title: "Commune"
+ type: "string"
+ nullable: true
+ example: "Paris"
+ pays:
+ title: "Pays"
+ type: "string"
+ nullable: true
+ example: "France"
+ pays_residence:
+ title: "Pays de résidence"
+ type: "string"
+ nullable: true
+ example: "France"
+ profession:
+ title: "Profession"
+ type: "string"
+ nullable: true
+ example: "Juriste"
+ date_entree_fonction:
+ title: "Date d'entrée dans les fonctions"
+ type: "string"
+ nullable: true
+ example: "2018-06-23"
+ date_sortie_fonction:
+ title: "Date de sortie des fonctions"
+ type: "string"
+ nullable: true
+ example: null
+ fonction:
+ title: "Fonction exercée"
+ type: "string"
+ nullable: true
+ example: "Président"
+ qualite:
+ title: "Qualité au titre de laquelle la personne siège"
+ type: "string"
+ nullable: true
+ example: "Membre du conseil d'administration"
+ fondateur:
+ title: "Statut de fondateur"
+ type: "boolean"
+ nullable: true
+ example: false
+ personne_morale:
+ title: "Personne morale représentée"
+ description: "Renseigné lorsque le dirigeant siège en tant que représentant d'une personne morale. Null pour une personne physique siégeant en son nom propre."
+ type: "object"
+ nullable: true
+ properties:
+ type:
+ title: "Type de personne morale"
+ type: "string"
+ nullable: true
+ example: "Entreprise"
+ identifiant:
+ title: "Identifiant de la personne morale"
+ type: "string"
+ nullable: true
+ example: "98765432100012"
+ denomination:
+ title: "Dénomination de la personne morale"
+ type: "string"
+ nullable: true
+ example: "ENTREPRISE EXEMPLE"
+ pays:
+ title: "Pays de la personne morale"
+ type: "string"
+ nullable: true
+ example: "France"
+ liens_entre_organismes:
+ title: "Personnes morales liées à la fondation"
+ type: "object"
+ properties:
+ organisme_issu_transformation:
+ title: "Organisme issu de la transformation"
+ type: "object"
+ nullable: true
+ properties:
+ type:
+ title: "Type de filiation"
+ type: "string"
+ example: "Transformation"
+ identifiant:
+ title: "Identifiant de l'organisme lié"
+ type: "string"
+ nullable: true
+ example: "075-FDD-00001-01"
+ organisme_issu_fusion:
+ title: "Organisme issu de la fusion"
+ type: "object"
+ nullable: true
+ properties:
+ type:
+ title: "Type de filiation"
+ type: "string"
+ example: "Fusion"
+ identifiant:
+ title: "Identifiant de l'organisme lié"
+ type: "string"
+ nullable: true
+ example: "075-FDD-00001-01"
+ organismes_issus_scission:
+ title: "Organismes issus de la scission"
+ type: "array"
+ items:
+ type: "object"
+ properties:
+ type:
+ title: "Type de filiation"
+ type: "string"
+ example: "Scission"
+ identifiant:
+ title: "Identifiant de l'organisme lié"
+ type: "string"
+ nullable: true
+ example: "075-FDD-00001-01"
+ situation_financiere:
+ title: "Situation financière déclarative"
+ description: "Données déclarées par la fondation via des démarches dédiées : elles ne sont renseignées que lorsque la fondation a effectué la démarche correspondante."
+ type: "object"
+ properties:
+ annees_subventions_publiques:
+ title: "Années pendant lesquelles la fondation a reçu des subventions publiques"
+ type: "array"
+ items:
+ type: "integer"
+ example: [2024, 2025]
+ annees_appel_generosite_publique:
+ title: "Années pendant lesquelles la fondation a fait appel à la générosité publique"
+ type: "array"
+ items:
+ type: "integer"
+ example: [2025]
+ annees_financements_etrangers:
+ title: "Années pendant lesquelles la fondation a reçu un financement étranger"
+ type: "array"
+ items:
+ type: "integer"
+ example: []
+ dossiers:
+ title: "Métadonnées liées aux dossiers déposés par la fondation"
+ type: "object"
+ properties:
+ etat_transmission_comptes:
+ title: "État de transmission des comptes"
+ description: "En défaut lorsque la fondation est en retard dans le dépôt de ses comptes annuels."
+ type: "string"
+ enum:
+ - "En règle"
+ - "En défaut"
+ example: "En règle"
+ exercices_comptables_transmis:
+ title: "Exercices comptables transmis"
+ type: "array"
+ items:
+ type: "integer"
+ example: [2023, 2024, 2025]
+ documents:
+ title: "Pièces justificatives déposées par la fondation"
+ description: "Métadonnées des documents déposés (statuts, comptes, rapports d'activité, procès verbaux…). Le type et le nombre de documents varient selon la fondation."
+ type: "array"
+ items:
+ type: "object"
+ properties:
+ id:
+ title: "Identifiant du document"
+ type: "string"
+ example: "7e7867b6-8fe0-11f1-a424-f28dce965a41"
+ type:
+ title: "Type de document"
+ description: "Nature de la pièce justificative déposée par la fondation. Toutes les fondations ne déposent pas tous les types de documents."
+ type: "string"
+ enum:
+ - "Statuts"
+ - "Comptes"
+ - "Rapport d'activité"
+ - "Procès verbal"
+ - "Règlement intérieur"
+ - "Acte notarié lié à une libéralité"
+ - "Acte d'autorisation ou acte de non opposition"
+ - "Courrier adressé par l'administration"
+ - "Mise en demeure"
+ - "Suspension"
+ - "Décision de retrait / dissolution"
+ - "Jugement de dissolution judiciaire"
+ example: "Statuts"
+ nom_original:
+ title: "Nom original du fichier"
+ type: "string"
+ nullable: true
+ example: "Statuts 1957.pdf"
+ type_mime:
+ title: "Type MIME du fichier"
+ type: "string"
+ nullable: true
+ example: "application/pdf"
+ date_depot:
+ title: "Date de dépôt du document"
+ type: "string"
+ nullable: true
+ example: "2026-06-24"
diff --git a/commons/endpoints/api_entreprise/ministere_interieur_siaf_fondations.yml b/commons/endpoints/api_entreprise/ministere_interieur_siaf_fondations.yml
new file mode 100644
index 0000000000..8bcfaa6b31
--- /dev/null
+++ b/commons/endpoints/api_entreprise/ministere_interieur_siaf_fondations.yml
@@ -0,0 +1,101 @@
+---
+fiche:
+ - uid: 'siaf/fondations'
+ path: '/v3/ministere_interieur/siaf/fondations/{siren_or_siret_or_rnf}'
+ controller: 'api_entreprise/v3_and_more/mi/siaf/fondations'
+ position: 155
+ alert:
+ title: "API disponible uniquement en environnement de test"
+ description: |+
+ Cette API est en cours de raccordement au SIAF (Système d'Information des Associations et Fondations) du Ministère de l'Intérieur.
+ Elle est **appelable sur l'environnement de test** (`https://staging.entreprise.api.gouv.fr`) avec des données fictives, afin de préparer les intégrations.
+ Elle n'est pas encore disponible en production.
+ perimeter:
+ entity_type_description: |+
+ Cette API concerne ✅ **les fondations inscrites au Répertoire National des Fondations (RNF)**, tenu par le Ministère de l'Intérieur :
+
+ - ✅ **les fondations reconnues d'utilité publique (FRUP)** ;
+ - ✅ **les fondations d'entreprise (FE)** ;
+ - ✅ **les fonds de dotation (FDD)**.
+
+ **Ne sont pas couvertes par l'API :**
+ - ❌ les associations, y compris reconnues d'utilité publique — consulter l'[API Données association](/catalogue/djepva/associations) ;
+ - ❌ les fondations abritées, qui n'ont pas de personnalité morale propre.
+ geographical_scope_description: |+
+ - ✅ France métropolitaine
+ - ✅ DROM-COM
+ updating_rules_description: |+
+ Le référentiel est alimenté par les démarches effectuées par les fondations
+ (création, modification statutaire, dépôt annuel des comptes…) via Démarches
+ Numériques. Les données sont donc mises à jour au fil de l'instruction des
+ dossiers par les services de l'État.
+ entities:
+ - fondations
+ call_id: "SIREN / SIRET / RNF"
+ provider_uids:
+ - 'mi'
+ keywords:
+ - 'fondation'
+ - 'fondations'
+ - 'RNF'
+ - 'FRUP'
+ - 'fonds de dotation'
+ - 'fondation entreprise'
+ - 'utilité publique'
+ - 'mécénat'
+ - 'philanthropie'
+ - 'dirigeants'
+ - 'générosité publique'
+ - 'ministère intérieur'
+ - 'SIAF'
+ data:
+ description: |+
+ Cette API délivre les données de référence d'une fondation inscrite au **Répertoire National des Fondations (RNF)** :
+
+ - **l'identité de la fondation** : identifiant RNF, SIREN/SIRET, type juridique (FRUP, FE, FDD), dénomination, état, dates de création et de terme, adresse du siège, contacts ;
+ - **son activité** : objet social, domaines d'intérêt général, activité internationale prévue par les statuts ;
+ - **ses dirigeants et représentants** : identité, fonction, qualité, dates de fonctions, y compris les personnes morales représentées ;
+ - **ses liens avec d'autres organismes** : transformation, fusion, scission ;
+ - **sa situation financière déclarative** : années de subventions publiques, d'appel à la générosité publique et de financements étrangers ;
+ - **sa conformité comptable** : état de transmission des comptes et exercices transmis ;
+ - **les métadonnées de ses pièces justificatives** : statuts, comptes, rapports d'activité, procès verbaux.
+
+ {:.fr-highlight}
+ > Le périmètre de données sera progressivement enrichi au fur et à mesure de
+ > l'alimentation du référentiel par les démarches des fondations : données
+ > comptables chiffrées (bilan, produits, charges, résultat), montants et pays
+ > des financements étrangers, détail des campagnes d'appel à la générosité
+ > publique, liquidateur, caractère consomptible de la dotation.
+ opening: protected
+ parameters:
+ - Numéro de SIREN ou de SIRET de la fondation, ou son identifiant RNF
+ format:
+ - Donnée structurée JSON
+ faq:
+ - q: "Qu'est-ce que l'identifiant RNF ?"
+ a: |+
+ L'identifiant RNF est l'identifiant officiel d'une fondation au Répertoire
+ National des Fondations, défini par décret. Il est au format
+ `{département}-{type}-{numéro}-{suffixe}`, par exemple `075-FRUP-00194-01`.
+ - q: "Puis-je toujours appeler l'API avec un SIREN ou un SIRET ?"
+ a: |+
+ Environ 22 % des fondations du référentiel n'ont pas de SIRET (elles n'ont
+ pas d'obligation d'immatriculation au répertoire Sirene tant qu'elles
+ n'emploient pas de salarié notamment). Ces fondations ne sont accessibles
+ que par leur identifiant RNF. L'identifiant RNF est la clé d'appel la plus
+ fiable.
+ - q: "Quelle est la différence entre une fondation et une association ?"
+ a: |+
+ Une **association** est un groupement de *personnes* (des membres) ; une
+ **fondation** est une *affectation de patrimoine* : de l'argent ou des biens
+ dédiés irrévocablement à une cause d'intérêt général, à but non lucratif.
+ Une fondation n'a pas de membres. Pour les associations, consulter
+ l'[API Données association](/catalogue/djepva/associations).
+ - q: "Pourquoi certaines données financières sont-elles vides ?"
+ a: |+
+ Les données de situation financière (années de subventions publiques,
+ d'appel à la générosité publique, de financements étrangers) sont
+ **déclaratives** : elles ne sont renseignées que lorsque la fondation a
+ effectué la démarche correspondante auprès du Ministère de l'Intérieur.
+ Une liste vide signifie qu'aucune déclaration n'a été enregistrée, pas
+ nécessairement que la fondation n'est pas concernée.
diff --git a/commons/swagger/openapi-entreprise.yaml b/commons/swagger/openapi-entreprise.yaml
index fb2f2c9df1..d0174d05f0 100644
--- a/commons/swagger/openapi-entreprise.yaml
+++ b/commons/swagger/openapi-entreprise.yaml
@@ -39070,6 +39070,925 @@ paths:
curl -X GET \
-H "Authorization: Bearer $token" \
--url "https://entreprise.api.gouv.fr/v3/ministere_interieur/rna/associations/13002526500013?context=Test+de+l%27API&object=Test+de+l%27API&recipient=10000001700010"
+ "/v3/ministere_interieur/siaf/fondations/{siren_or_siret_or_rnf}":
+ get:
+ summary: Données fondations
+ tags:
+ - Informations générales
+ - Prochainement
+ parameters:
+ - name: siren_or_siret_or_rnf
+ in: path
+ description: 'SIREN ou SIRET de la fondation, ou son identifiant au Répertoire
+ National des Fondations (RNF). Environ 22 % des fondations n''ont pas de
+ SIRET dans le référentiel : elles ne sont accessibles que par leur identifiant
+ RNF.'
+ examples:
+ maison_de_la_chimie_rnf:
+ value: 075-FRUP-00194-01
+ summary: Identifiant RNF de la fondation Maison de la Chimie
+ maison_de_la_chimie_siren:
+ value: '784308934'
+ summary: SIREN de la fondation Maison de la Chimie
+ maison_de_la_chimie_siret:
+ value: '78430893400016'
+ summary: SIRET de la fondation Maison de la Chimie
+ required: true
+ schema:
+ type: string
+ - name: recipient
+ in: query
+ description: |-
+ "**Bénéficiaire de l’appel**
+
+ SIRET de l’administration destinatrice des données."
+ example: '13002526500013'
+ required: true
+ schema:
+ type: string
+ - name: delegation_id
+ in: query
+ description: |-
+ "**Identifiant de la délégation éditeur**
+
+ UUID d’une délégation précise, réservé aux jetons éditeur. Optionnel : requis uniquement lorsque plusieurs délégations actives existent pour le même `recipient`, afin de lever l’ambiguïté (cf. erreur 00212)."
+ example: 6f3c8d9a-1b2c-4d5e-8f90-abcdef012345
+ required: false
+ schema:
+ type: string
+ - name: context
+ in: query
+ description: |-
+ "**Cadre de la requête**
+
+ Par exemple : aides publiques, marchés publics ou gestion d’un référentiel tiers utilisé pour tel type d’application."
+ example: Context de test
+ required: true
+ schema:
+ type: string
+ - name: object
+ in: query
+ description: |-
+ "**La raison de l’appel ou l’identifiant de la procédure.**
+
+ L’identifiant peut être interne à votre organisation ou bien un numéro de marché publique, un nom de procédure ; l’essentiel est que celui-ci vous permette de tracer et de retrouver les informations relatives à l’appel. En effet, vous devez pouvoir justifier de la raison d’un appel auprès du fournisseur de données. Description courte ( < 50 caractères )."
+ example: marché numéro 127
+ required: true
+ schema:
+ type: string
+ security:
+ - jwt_bearer_token: []
+ description: 'Données de référence d''une fondation (FRUP, fondation d''entreprise
+ ou fonds de dotation) issues du Répertoire National des Fondations (RNF),
+ opéré par le Ministère de l''Intérieur via le SIAF : identité, activité, dirigeants,
+ situation financière déclarative, conformité comptable et pièces justificatives.'
+ responses:
+ '401':
+ description: Non autorisé
+ content:
+ application/json:
+ examples:
+ invalid_token_error:
+ value:
+ errors:
+ - code: '00101'
+ title: Interdit
+ detail: Votre token n'est pas valide ou n'est pas renseigné
+ source:
+ parameter: token
+ meta: {}
+ summary: Interdit
+ description: Votre token n'est pas valide ou n'est pas renseigné
+ expired_token_error:
+ value:
+ errors:
+ - code: '00103'
+ title: Jeton expiré
+ detail: Votre token est expiré. Vous devez refaire une demande
+ source:
+ parameter: token
+ meta: {}
+ summary: Jeton expiré
+ description: Votre token est expiré. Vous devez refaire une demande
+ blacklisted_token_error:
+ value:
+ errors:
+ - code: '00105'
+ title: Jeton sur liste noire
+ detail: 'Votre jeton est sur liste noire, celui-ci a certainement
+ été divulgué sur un canal non-sécurisé. Vous pouvez trouver
+ un jeton valide sur votre espace personnel: https://entreprise.api.gouv.fr/compte'
+ source:
+ parameter: token
+ meta: {}
+ summary: Jeton sur liste noire
+ description: 'Votre jeton est sur liste noire, celui-ci a certainement
+ été divulgué sur un canal non-sécurisé. Vous pouvez trouver un
+ jeton valide sur votre espace personnel: https://entreprise.api.gouv.fr/compte'
+ schema:
+ "$ref": "#/components/schemas/Error"
+ '403':
+ description: Accès interdit
+ content:
+ application/json:
+ examples:
+ insufficient_privileges_error:
+ value:
+ errors:
+ - code: '00100'
+ title: Privilèges insuffisants
+ detail: Votre token est valide mais vos privilèges sont insuffisants.
+ Listez vos privilèges sur /v2/privileges
+ source:
+ parameter: token
+ meta: {}
+ summary: Privilèges insuffisants
+ description: Votre token est valide mais vos privilèges sont insuffisants.
+ Listez vos privilèges sur /v2/privileges
+ schema:
+ "$ref": "#/components/schemas/Error"
+ '429':
+ description: Trop de requêtes
+ content:
+ application/json:
+ examples:
+ too_many_requests_error:
+ value:
+ errors:
+ - code: '00429'
+ title: Trop de requêtes
+ detail: Vous avez effectué trop de requêtes
+ source:
+ meta: {}
+ summary: Trop de requêtes
+ description: Vous avez effectué trop de requêtes
+ schema:
+ "$ref": "#/components/schemas/Error"
+ '200':
+ description: Fondation trouvée
+ headers:
+ RateLimit-Limit:
+ schema:
+ type: integer
+ description: La limite concernant l’endpoint appelé, soit le nombre
+ de requête/minute.
+ example: 50
+ RateLimit-Remaining:
+ schema:
+ type: integer
+ description: Le nombre d’appels restants durant la période courante
+ d’une minute.
+ example: 47
+ RateLimit-Reset:
+ schema:
+ type: integer
+ description: La fin de la période courante (en format timestamp)
+ example: 1637223155
+ x-operationId: api_entreprise_v3_mi_siaf_fondations
+ content:
+ application/json:
+ schema:
+ type: object
+ properties:
+ data:
+ type: object
+ properties:
+ identifiants:
+ title: Identifiants de la fondation
+ type: object
+ properties:
+ rnf:
+ title: Identifiant au Répertoire National des Fondations
+ description: Identifiant officiel de la fondation, au
+ format {département}-{type}-{numéro}-{suffixe}.
+ type: string
+ example: 075-FRUP-00194-01
+ siren:
+ title: SIREN de la fondation
+ description: 'Déduit du SIRET présent dans le référentiel.
+ Environ 22 % des fondations n''ont pas de SIRET : la
+ valeur est alors null.'
+ type: string
+ nullable: true
+ example: '784308934'
+ siret:
+ title: SIRET du siège de la fondation
+ type: string
+ nullable: true
+ example: '78430893400016'
+ required:
+ - rnf
+ - siren
+ - siret
+ identite:
+ title: Identité de la fondation
+ type: object
+ properties:
+ service_instructeur:
+ title: Service instructeur
+ description: Département du service instructeur de la
+ fondation.
+ type: string
+ example: '75'
+ type_fondation:
+ title: Type de fondation
+ description: 'FRUP : fondation reconnue d''utilité publique
+ ; FE : fondation d''entreprise ; FDD : fonds de dotation.'
+ type: string
+ enum:
+ - FRUP
+ - FE
+ - FDD
+ example: FRUP
+ denomination:
+ title: Dénomination de la fondation
+ type: string
+ example: MAISON DE LA CHIMIE
+ etat:
+ title: État de la fondation
+ description: 'État de la fondation au Répertoire National
+ des Fondations : en activité, suspendue, transformée,
+ fusionnée, scindée ou dissoute.'
+ type: string
+ example: Active
+ date_effet_etat:
+ title: Date d'effet de l'état
+ type: string
+ nullable: true
+ example: '1928-08-12'
+ date_creation:
+ title: Date de création de la fondation
+ type: string
+ nullable: true
+ example: '1928-08-12'
+ date_terme:
+ title: Date du terme
+ description: Échéance de la fondation, notamment pour
+ les fondations d'entreprise créées pour une durée déterminée.
+ Null si sans objet.
+ type: string
+ nullable: true
+ example: '2030-12-31'
+ date_cloture_exercice:
+ title: Date de clôture de l'exercice comptable (mois/jour,
+ format MM-DD)
+ type: string
+ nullable: true
+ example: 12-31
+ adresse_siege:
+ title: Adresse du siège de la fondation
+ type: object
+ properties:
+ adresse_complete:
+ title: Adresse complète sur une ligne
+ type: string
+ nullable: true
+ example: 28 Rue Saint-Dominique 75007 Paris
+ numero_voie:
+ title: Numéro de voie
+ type: string
+ nullable: true
+ example: '28'
+ nom_voie:
+ title: Libellé de la voie
+ type: string
+ nullable: true
+ example: Rue Saint-Dominique
+ code_postal:
+ title: Code postal
+ type: string
+ nullable: true
+ example: '75007'
+ commune:
+ title: Commune
+ type: string
+ nullable: true
+ example: Paris 7e Arrondissement
+ code_insee_commune:
+ title: Code INSEE de la commune
+ type: string
+ nullable: true
+ example: '75107'
+ departement:
+ title: Code du département
+ type: string
+ nullable: true
+ example: '75'
+ pays:
+ title: Pays
+ type: string
+ nullable: true
+ example: France
+ required:
+ - adresse_complete
+ - numero_voie
+ - nom_voie
+ - code_postal
+ - commune
+ - code_insee_commune
+ - departement
+ - pays
+ courriel:
+ title: Courriel de la fondation
+ type: string
+ nullable: true
+ example: contact@fondation-exemple.fr
+ telephone:
+ title: Numéro de téléphone de la fondation
+ type: string
+ nullable: true
+ example: "+33123456789"
+ required:
+ - service_instructeur
+ - type_fondation
+ - denomination
+ - etat
+ - date_effet_etat
+ - date_creation
+ - date_terme
+ - date_cloture_exercice
+ - adresse_siege
+ - courriel
+ - telephone
+ activite:
+ title: Activité de la fondation
+ type: object
+ properties:
+ objet_social:
+ title: Objet social
+ description: Objet social extrait des statuts de la fondation.
+ type: string
+ example: Contribuer à l'avancement de la science chimique
+ et au développement de ses applications.
+ domaine_interet_general:
+ title: Domaines d'intérêt général
+ description: Liste des domaines d'intérêt général, séparés
+ par des virgules.
+ type: string
+ nullable: true
+ example: Social, Scientifique, Humanitaire
+ activite_internationale_prevue_par_statuts:
+ title: Activité internationale prévue par les statuts
+ type: boolean
+ nullable: true
+ example: false
+ required:
+ - objet_social
+ - domaine_interet_general
+ - activite_internationale_prevue_par_statuts
+ dirigeants:
+ title: Dirigeants et représentants de la fondation
+ description: Personnes physiques siégeant dans les organes
+ de gouvernance ou exerçant des fonctions de direction. Un
+ dirigeant peut représenter une personne morale, détaillée
+ dans personne_morale.
+ type: array
+ items:
+ type: object
+ properties:
+ nom:
+ title: Nom du dirigeant
+ type: string
+ nullable: true
+ example: DUPONT
+ prenom:
+ title: Prénom du dirigeant
+ type: string
+ nullable: true
+ example: Marie
+ date_naissance:
+ title: Date de naissance
+ type: string
+ nullable: true
+ example: '1975-04-12'
+ nationalite:
+ title: Nationalité
+ type: string
+ nullable: true
+ example: France
+ adresse_domiciliation:
+ title: Adresse de domiciliation
+ type: object
+ properties:
+ adresse_complete:
+ title: Adresse complète sur une ligne
+ type: string
+ nullable: true
+ example: 20 Rue Exemple 75001 Paris
+ code_postal:
+ title: Code postal
+ type: string
+ nullable: true
+ example: '75001'
+ commune:
+ title: Commune
+ type: string
+ nullable: true
+ example: Paris
+ pays:
+ title: Pays
+ type: string
+ nullable: true
+ example: France
+ pays_residence:
+ title: Pays de résidence
+ type: string
+ nullable: true
+ example: France
+ profession:
+ title: Profession
+ type: string
+ nullable: true
+ example: Juriste
+ date_entree_fonction:
+ title: Date d'entrée dans les fonctions
+ type: string
+ nullable: true
+ example: '2018-06-23'
+ date_sortie_fonction:
+ title: Date de sortie des fonctions
+ type: string
+ nullable: true
+ example:
+ fonction:
+ title: Fonction exercée
+ type: string
+ nullable: true
+ example: Président
+ qualite:
+ title: Qualité au titre de laquelle la personne siège
+ type: string
+ nullable: true
+ example: Membre du conseil d'administration
+ fondateur:
+ title: Statut de fondateur
+ type: boolean
+ nullable: true
+ example: false
+ personne_morale:
+ title: Personne morale représentée
+ description: Renseigné lorsque le dirigeant siège en
+ tant que représentant d'une personne morale. Null
+ pour une personne physique siégeant en son nom propre.
+ type: object
+ nullable: true
+ properties:
+ type:
+ title: Type de personne morale
+ type: string
+ nullable: true
+ example: Entreprise
+ identifiant:
+ title: Identifiant de la personne morale
+ type: string
+ nullable: true
+ example: '98765432100012'
+ denomination:
+ title: Dénomination de la personne morale
+ type: string
+ nullable: true
+ example: ENTREPRISE EXEMPLE
+ pays:
+ title: Pays de la personne morale
+ type: string
+ nullable: true
+ example: France
+ liens_entre_organismes:
+ title: Personnes morales liées à la fondation
+ type: object
+ properties:
+ organisme_issu_transformation:
+ title: Organisme issu de la transformation
+ type: object
+ nullable: true
+ properties:
+ type:
+ title: Type de filiation
+ type: string
+ example: Transformation
+ identifiant:
+ title: Identifiant de l'organisme lié
+ type: string
+ nullable: true
+ example: 075-FDD-00001-01
+ required:
+ - type
+ - identifiant
+ organisme_issu_fusion:
+ title: Organisme issu de la fusion
+ type: object
+ nullable: true
+ properties:
+ type:
+ title: Type de filiation
+ type: string
+ example: Fusion
+ identifiant:
+ title: Identifiant de l'organisme lié
+ type: string
+ nullable: true
+ example: 075-FDD-00001-01
+ required:
+ - type
+ - identifiant
+ organismes_issus_scission:
+ title: Organismes issus de la scission
+ type: array
+ items:
+ type: object
+ properties:
+ type:
+ title: Type de filiation
+ type: string
+ example: Scission
+ identifiant:
+ title: Identifiant de l'organisme lié
+ type: string
+ nullable: true
+ example: 075-FDD-00001-01
+ required:
+ - organisme_issu_transformation
+ - organisme_issu_fusion
+ - organismes_issus_scission
+ situation_financiere:
+ title: Situation financière déclarative
+ description: 'Données déclarées par la fondation via des démarches
+ dédiées : elles ne sont renseignées que lorsque la fondation
+ a effectué la démarche correspondante.'
+ type: object
+ properties:
+ annees_subventions_publiques:
+ title: Années pendant lesquelles la fondation a reçu des
+ subventions publiques
+ type: array
+ items:
+ type: integer
+ example:
+ - 2024
+ - 2025
+ annees_appel_generosite_publique:
+ title: Années pendant lesquelles la fondation a fait appel
+ à la générosité publique
+ type: array
+ items:
+ type: integer
+ example:
+ - 2025
+ annees_financements_etrangers:
+ title: Années pendant lesquelles la fondation a reçu un
+ financement étranger
+ type: array
+ items:
+ type: integer
+ example: []
+ required:
+ - annees_subventions_publiques
+ - annees_appel_generosite_publique
+ - annees_financements_etrangers
+ dossiers:
+ title: Métadonnées liées aux dossiers déposés par la fondation
+ type: object
+ properties:
+ etat_transmission_comptes:
+ title: État de transmission des comptes
+ description: En défaut lorsque la fondation est en retard
+ dans le dépôt de ses comptes annuels.
+ type: string
+ enum:
+ - En règle
+ - En défaut
+ example: En règle
+ exercices_comptables_transmis:
+ title: Exercices comptables transmis
+ type: array
+ items:
+ type: integer
+ example:
+ - 2023
+ - 2024
+ - 2025
+ required:
+ - etat_transmission_comptes
+ - exercices_comptables_transmis
+ documents:
+ title: Pièces justificatives déposées par la fondation
+ description: Métadonnées des documents déposés (statuts, comptes,
+ rapports d'activité, procès verbaux…). Le type et le nombre
+ de documents varient selon la fondation.
+ type: array
+ items:
+ type: object
+ properties:
+ id:
+ title: Identifiant du document
+ type: string
+ example: 7e7867b6-8fe0-11f1-a424-f28dce965a41
+ type:
+ title: Type de document
+ description: Nature de la pièce justificative déposée
+ par la fondation. Toutes les fondations ne déposent
+ pas tous les types de documents.
+ type: string
+ enum:
+ - Statuts
+ - Comptes
+ - Rapport d'activité
+ - Procès verbal
+ - Règlement intérieur
+ - Acte notarié lié à une libéralité
+ - Acte d'autorisation ou acte de non opposition
+ - Courrier adressé par l'administration
+ - Mise en demeure
+ - Suspension
+ - Décision de retrait / dissolution
+ - Jugement de dissolution judiciaire
+ example: Statuts
+ nom_original:
+ title: Nom original du fichier
+ type: string
+ nullable: true
+ example: Statuts 1957.pdf
+ type_mime:
+ title: Type MIME du fichier
+ type: string
+ nullable: true
+ example: application/pdf
+ date_depot:
+ title: Date de dépôt du document
+ type: string
+ nullable: true
+ example: '2026-06-24'
+ required:
+ - identifiants
+ - identite
+ - activite
+ - dirigeants
+ - liens_entre_organismes
+ - situation_financiere
+ - dossiers
+ - documents
+ additionalProperties: false
+ links:
+ type: object
+ meta:
+ type: object
+ required:
+ - data
+ - links
+ - meta
+ '422':
+ description: Paramètre(s) invalide(s)
+ content:
+ application/json:
+ examples:
+ unprocessable_content_error_siren_or_siret_or_rnf_error:
+ value:
+ errors:
+ - code: '00331'
+ title: Entité non traitable
+ detail: Le numéro de siren, le numéro de siret ou l'identifiant
+ RNF indiqué n'est pas correctement formatté
+ source:
+ parameter: id
+ meta: {}
+ summary: Entité non traitable
+ description: Le numéro de siren, le numéro de siret ou l'identifiant
+ RNF indiqué n'est pas correctement formatté
+ missing_mandatory_params_context_error:
+ value:
+ errors:
+ - code: '00201'
+ title: Entité non traitable
+ detail: Le paramètre context est obligatoire
+ source:
+ parameter: context
+ meta: {}
+ summary: Entité non traitable
+ description: Le paramètre context est obligatoire
+ missing_mandatory_params_object_error:
+ value:
+ errors:
+ - code: '00202'
+ title: Entité non traitable
+ detail: Le paramètre object est obligatoire
+ source:
+ parameter: object
+ meta: {}
+ summary: Entité non traitable
+ description: Le paramètre object est obligatoire
+ missing_mandatory_params_recipient_error:
+ value:
+ errors:
+ - code: '00203'
+ title: Entité non traitable
+ detail: Le paramètre recipient est obligatoire
+ source:
+ parameter: recipient
+ meta: {}
+ summary: Entité non traitable
+ description: Le paramètre recipient est obligatoire
+ ambiguous_delegation_error:
+ value:
+ errors:
+ - code: '00212'
+ title: Entité non traitable
+ detail: Plusieurs délégations actives existent pour ce SIRET.
+ Le paramètre delegation_id est requis pour identifier la délégation.
+ source:
+ parameter: delegation_id
+ meta: {}
+ summary: Entité non traitable
+ description: Plusieurs délégations actives existent pour ce SIRET.
+ Le paramètre delegation_id est requis pour identifier la délégation.
+ schema:
+ "$ref": "#/components/schemas/Error"
+ '404':
+ description: Fondation non trouvée
+ content:
+ application/json:
+ examples:
+ entite_non_trouvee_44003:
+ value:
+ errors:
+ - code: '44003'
+ title: Entité non trouvée
+ detail: Le ou les paramètre(s) d'entrée n'existent pas, ne sont
+ pas connus, ou ne comportent aucune information pour cet appel.
+ Veuillez vérifier que votre recherche est couverte par le
+ périmètre de l'API.
+ source:
+ meta:
+ provider: SIAF
+ summary: Entité non trouvée
+ description: Le ou les paramètre(s) d'entrée n'existent pas, ne
+ sont pas connus, ou ne comportent aucune information pour cet
+ appel. Veuillez vérifier que votre recherche est couverte par
+ le périmètre de l'API.
+ schema:
+ "$ref": "#/components/schemas/Error"
+ '502':
+ description: Erreur du fournisseur
+ content:
+ application/json:
+ examples:
+ erreur_inconnue_du_fournisseur_de_donnees_44999:
+ value:
+ errors:
+ - code: '44999'
+ title: Erreur inconnue du fournisseur de données
+ detail: La réponse retournée par le fournisseur de données est
+ invalide et inconnue de notre service. L'équipe technique
+ a été notifiée de cette erreur pour investigation.
+ source:
+ meta:
+ provider: SIAF
+ summary: Erreur inconnue du fournisseur de données
+ description: La réponse retournée par le fournisseur de données
+ est invalide et inconnue de notre service. L'équipe technique
+ a été notifiée de cette erreur pour investigation.
+ erreur_interne_du_fournisseur_de_donnees_44000:
+ value:
+ errors:
+ - code: '44000'
+ title: Erreur interne du fournisseur de données
+ detail: La réponse retournée par le fournisseur de données est
+ invalide et a été identifié comme étant une erreur interne.
+ Si le problème persiste, consultez la page de status ou contactez
+ nous sur le support.
+ source:
+ meta:
+ provider: SIAF
+ summary: Erreur interne du fournisseur de données
+ description: La réponse retournée par le fournisseur de données
+ est invalide et a été identifié comme étant une erreur interne.
+ Si le problème persiste, consultez la page de status ou contactez
+ nous sur le support.
+ erreur_aupres_du_fournisseur_de_donnees_trop_de_requetes_44008:
+ value:
+ errors:
+ - code: '44008'
+ title: 'Erreur auprès du fournisseur de données : trop de requêtes'
+ detail: 'Erreur de fournisseur de donnée : Trop de requêtes
+ effectuées, veuillez réessayer plus tard.'
+ source:
+ meta:
+ provider: SIAF
+ summary: 'Erreur auprès du fournisseur de données : trop de requêtes'
+ description: 'Erreur de fournisseur de donnée : Trop de requêtes
+ effectuées, veuillez réessayer plus tard.'
+ erreur_temporaire_du_fournisseur_de_donnees_44011:
+ value:
+ errors:
+ - code: '44011'
+ title: Erreur temporaire du fournisseur de données
+ detail: Merci de réessayer dans quelques instants
+ source:
+ meta:
+ provider: SIAF
+ summary: Erreur temporaire du fournisseur de données
+ description: Merci de réessayer dans quelques instants
+ erreur_de_certificat_ssl_du_fournisseur_de_donnees_44009:
+ value:
+ errors:
+ - code: '44009'
+ title: Erreur de certificat SSL du fournisseur de données
+ detail: Le certificat SSL du fournisseur de données est invalide
+ ou expiré.
+ source:
+ meta:
+ provider: SIAF
+ summary: Erreur de certificat SSL du fournisseur de données
+ description: Le certificat SSL du fournisseur de données est invalide
+ ou expiré.
+ schema:
+ "$ref": "#/components/schemas/Error"
+ '504':
+ description: Erreur d'intermédiaire
+ content:
+ application/json:
+ examples:
+ timeout_error:
+ value:
+ errors:
+ - code: '44002'
+ title: Intermédiaire hors-délai
+ detail: Temps d’attente d’une réponse du fournisseur de données
+ écoulé.
+ source:
+ meta:
+ provider: SIAF
+ summary: Intermédiaire hors-délai
+ description: Temps d’attente d’une réponse du fournisseur de données
+ écoulé.
+ provider_unavailable_error:
+ value:
+ errors:
+ - code: '44001'
+ title: Service non disponible
+ detail: Service du fournisseur de données temporairement indisponible
+ ou en maintenance.
+ source:
+ meta:
+ provider: SIAF
+ summary: Service non disponible
+ description: Service du fournisseur de données temporairement indisponible
+ ou en maintenance.
+ network_error:
+ value:
+ errors:
+ - code: '00501'
+ title: Erreur réseau
+ detail: Problème de connexion au serveur distant. L'erreur peut
+ venir soit du fournisseur, soit de API Entreprise. Il s'agit
+ souvent d'une erreur temporaire.
+ source:
+ meta:
+ retry_in: 10
+ summary: Erreur réseau
+ description: Problème de connexion au serveur distant. L'erreur
+ peut venir soit du fournisseur, soit de API Entreprise. Il s'agit
+ souvent d'une erreur temporaire.
+ dns_resolution_error:
+ value:
+ errors:
+ - code: '44004'
+ title: Erreur de résolution DNS
+ detail: Problème de résolution DNS de l'adresse du serveur
+ source:
+ meta:
+ provider: SIAF
+ summary: Erreur de résolution DNS
+ description: Problème de résolution DNS de l'adresse du serveur
+ schema:
+ "$ref": "#/components/schemas/Error"
+ '409':
+ description: Conflit
+ content:
+ application/json:
+ examples:
+ conflict_error:
+ value:
+ errors:
+ - code: '00015'
+ title: Conflit
+ detail: Une requête associé à votre jeton est déjà en cours
+ de traitement pour ces paramètres. Veuillez attendre la fin
+ du traitement avant d'effectuer une nouvelle requête.
+ source:
+ meta: {}
+ summary: Conflit
+ description: Une requête associé à votre jeton est déjà en cours
+ de traitement pour ces paramètres. Veuillez attendre la fin du
+ traitement avant d'effectuer une nouvelle requête.
+ schema:
+ "$ref": "#/components/schemas/Error"
+ x-codeSamples:
+ - lang: cURL
+ label: Ligne de commande
+ source: |-
+ curl -X GET \
+ -H "Authorization: Bearer $token" \
+ --url "https://staging.entreprise.api.gouv.fr/v3/ministere_interieur/siaf/fondations/13002526500013?context=Test+de+l%27API&object=Test+de+l%27API&recipient=10000001700010"
"/v3/msa/etablissements/{siret}/conformite_cotisations":
get:
summary: Conformité cotisations de sécurité sociale agricole
diff --git a/mocks/payloads/README.md b/mocks/payloads/README.md
index b945a17602..9fedb02b17 100644
--- a/mocks/payloads/README.md
+++ b/mocks/payloads/README.md
@@ -109,6 +109,7 @@ génère une payload par défaut basée sur la spécification OpenAPI associée.
* [Données unité légale en open data](api_entreprise_v4_insee_unites_legales_diffusables) (`/v4/insee/sirene/unites_legales/diffusibles/{siren}`)
* [Divers documents d'une association](api_entreprise_v3_mi_documents_associations) (`/v3/ministere_interieur/rna/associations/{siret_or_rna}/documents`)
* [Données du RNA d'une association](api_entreprise_v3_mi_associations) (`/v3/ministere_interieur/rna/associations/{siret_or_rna}`)
+* [Données fondations](api_entreprise_v3_mi_siaf_fondations) (`/v3/ministere_interieur/siaf/fondations/{siren_or_siret_or_rnf}`)
* [Conformité cotisations de sécurité sociale agricole](api_entreprise_v3_msa_conformites_cotisations) (`/v3/msa/etablissements/{siret}/conformite_cotisations`)
* [Certification d'ingénierie OPQIBI](api_entreprise_v3_opqibi_certifications_ingenierie) (`/v3/opqibi/unites_legales/{siren}/certification_ingenierie`)
* [Conformité cotisations retraite bâtiment](api_entreprise_v3_probtp_attestations_cotisation_retraite) (`/v3/probtp/etablissements/{siret}/attestation_cotisations_retraite`)
diff --git a/mocks/payloads/api_entreprise_v3_mi_siaf_fondations/200_fdd.yaml b/mocks/payloads/api_entreprise_v3_mi_siaf_fondations/200_fdd.yaml
new file mode 100644
index 0000000000..cf89352b46
--- /dev/null
+++ b/mocks/payloads/api_entreprise_v3_mi_siaf_fondations/200_fdd.yaml
@@ -0,0 +1,123 @@
+---
+description: 'Fonds de dotation (FDD) sans SIRET, accessible uniquement par identifiant RNF'
+params:
+ siren_or_siret_or_rnf: '075-fdd-00700-07'
+status: 200
+payload: |-
+ {
+ "data": {
+ "identifiants": {
+ "rnf": "075-FDD-00700-07",
+ "siren": null,
+ "siret": null
+ },
+ "identite": {
+ "service_instructeur": "75",
+ "type_fondation": "FDD",
+ "denomination": "MEET MY MAMA FUND",
+ "etat": "Active",
+ "date_effet_etat": "2023-03-08",
+ "date_creation": "2023-03-08",
+ "date_terme": null,
+ "date_cloture_exercice": "12-31",
+ "adresse_siege": {
+ "adresse_complete": "10 Rue de Penthièvre 75008 Paris",
+ "numero_voie": "10",
+ "nom_voie": "Rue de Penthièvre",
+ "code_postal": "75008",
+ "commune": "Paris 8e Arrondissement",
+ "code_insee_commune": "75108",
+ "departement": "75",
+ "pays": "France"
+ },
+ "courriel": "contact@fonds-exemple.fr",
+ "telephone": "+33198765432"
+ },
+ "activite": {
+ "objet_social": "Conduire et soutenir toutes missions d'intérêt général à caractère social, philanthropique, éducatif et humanitaire concourant à faciliter l'inclusion sociale, notamment des femmes.",
+ "domaine_interet_general": "Social, Humanitaire, Éducatif",
+ "activite_internationale_prevue_par_statuts": false
+ },
+ "dirigeants": [
+ {
+ "nom": "BERNARD",
+ "prenom": "Louise",
+ "date_naissance": "1988-02-20",
+ "nationalite": "France",
+ "adresse_domiciliation": {
+ "adresse_complete": "1 Avenue des Champs Elysées 75008 Paris",
+ "code_postal": "75008",
+ "commune": "Paris",
+ "pays": "France"
+ },
+ "pays_residence": "France",
+ "profession": "Entrepreneuse",
+ "date_entree_fonction": "2023-02-13",
+ "date_sortie_fonction": null,
+ "fonction": "Présidente",
+ "qualite": "Membre du conseil d'administration",
+ "fondateur": true,
+ "personne_morale": null
+ },
+ {
+ "nom": "PETIT",
+ "prenom": "Nicolas",
+ "date_naissance": "1985-07-30",
+ "nationalite": "France",
+ "adresse_domiciliation": {
+ "adresse_complete": "1 Avenue des Champs Elysées 75008 Paris",
+ "code_postal": "75008",
+ "commune": "Paris",
+ "pays": "France"
+ },
+ "pays_residence": "France",
+ "profession": "Consultant",
+ "date_entree_fonction": "2023-02-13",
+ "date_sortie_fonction": null,
+ "fonction": "Secrétaire",
+ "qualite": "Membre du conseil d'administration",
+ "fondateur": false,
+ "personne_morale": null
+ }
+ ],
+ "liens_entre_organismes": {
+ "organisme_issu_transformation": null,
+ "organisme_issu_fusion": null,
+ "organismes_issus_scission": []
+ },
+ "situation_financiere": {
+ "annees_subventions_publiques": [],
+ "annees_appel_generosite_publique": [],
+ "annees_financements_etrangers": []
+ },
+ "dossiers": {
+ "etat_transmission_comptes": "En règle",
+ "exercices_comptables_transmis": [2023, 2024]
+ },
+ "documents": [
+ {
+ "id": "711cf2ed-6e04-11f1-aed1-4faba2bb8c0b",
+ "type": "Statuts",
+ "nom_original": "Statuts constitutifs.pdf",
+ "type_mime": "application/pdf",
+ "date_depot": "2026-04-20"
+ },
+ {
+ "id": "711cf2ee-6e04-11f1-aed1-4faba2bb8c0b",
+ "type": "Comptes",
+ "nom_original": "Comptes annuels 2024.pdf",
+ "type_mime": "application/pdf",
+ "date_depot": "2026-06-17"
+ },
+ {
+ "id": "711cf2ef-6e04-11f1-aed1-4faba2bb8c0b",
+ "type": "Rapport d'activité",
+ "nom_original": "Rapport d'activité 2024.pdf",
+ "type_mime": "application/pdf",
+ "date_depot": "2026-06-17"
+ }
+ ]
+ },
+ "links": {},
+ "meta": {}
+ }
diff --git a/mocks/payloads/api_entreprise_v3_mi_siaf_fondations/200_fe.yaml b/mocks/payloads/api_entreprise_v3_mi_siaf_fondations/200_fe.yaml
new file mode 100644
index 0000000000..f89b0f3c7d
--- /dev/null
+++ b/mocks/payloads/api_entreprise_v3_mi_siaf_fondations/200_fe.yaml
@@ -0,0 +1,101 @@
+---
+description: 'Fondation d''entreprise (FE) à durée déterminée, avec un dirigeant représentant une personne morale'
+params:
+ siren_or_siret_or_rnf: '075-fe-00117-05'
+status: 200
+payload: |-
+ {
+ "data": {
+ "identifiants": {
+ "rnf": "075-FE-00117-05",
+ "siren": "987654321",
+ "siret": "98765432100012"
+ },
+ "identite": {
+ "service_instructeur": "75",
+ "type_fondation": "FE",
+ "denomination": "FONDATION D'ENTREPRISE EXEMPLE",
+ "etat": "Active",
+ "date_effet_etat": "2019-05-15",
+ "date_creation": "2019-05-15",
+ "date_terme": "2029-05-14",
+ "date_cloture_exercice": "12-31",
+ "adresse_siege": {
+ "adresse_complete": "25 Avenue Exemple 75008 Paris",
+ "numero_voie": "25",
+ "nom_voie": "Avenue Exemple",
+ "code_postal": "75008",
+ "commune": "Paris 8e Arrondissement",
+ "code_insee_commune": "75108",
+ "departement": "75",
+ "pays": "France"
+ },
+ "courriel": "fondation@entreprise-exemple.fr",
+ "telephone": "+33144556677"
+ },
+ "activite": {
+ "objet_social": "Financer des actions d'intérêt général dans le domaine de l'éducation et de l'insertion professionnelle des jeunes.",
+ "domaine_interet_general": "Éducatif, Social",
+ "activite_internationale_prevue_par_statuts": true
+ },
+ "dirigeants": [
+ {
+ "nom": "MOREAU",
+ "prenom": "Claire",
+ "date_naissance": "1972-09-18",
+ "nationalite": "France",
+ "adresse_domiciliation": {
+ "adresse_complete": "12 Rue Exemple 92100 Boulogne-Billancourt",
+ "code_postal": "92100",
+ "commune": "Boulogne-Billancourt",
+ "pays": "France"
+ },
+ "pays_residence": "France",
+ "profession": "Directrice générale",
+ "date_entree_fonction": "2019-05-15",
+ "date_sortie_fonction": null,
+ "fonction": "Présidente",
+ "qualite": "Membre du conseil d'administration",
+ "fondateur": false,
+ "personne_morale": {
+ "type": "Entreprise",
+ "identifiant": "98765432100012",
+ "denomination": "ENTREPRISE EXEMPLE",
+ "pays": "France"
+ }
+ }
+ ],
+ "liens_entre_organismes": {
+ "organisme_issu_transformation": null,
+ "organisme_issu_fusion": null,
+ "organismes_issus_scission": []
+ },
+ "situation_financiere": {
+ "annees_subventions_publiques": [],
+ "annees_appel_generosite_publique": [],
+ "annees_financements_etrangers": [2024]
+ },
+ "dossiers": {
+ "etat_transmission_comptes": "En défaut",
+ "exercices_comptables_transmis": [2022, 2023]
+ },
+ "documents": [
+ {
+ "id": "8a1b2c3d-4e5f-11f1-aed1-4faba2bb8c0b",
+ "type": "Statuts",
+ "nom_original": "Statuts fondation entreprise.pdf",
+ "type_mime": "application/pdf",
+ "date_depot": "2026-03-12"
+ },
+ {
+ "id": "8a1b2c3d-4e5f-11f1-aed1-4faba2bb8c0c",
+ "type": "Procès verbal",
+ "nom_original": "PV conseil administration 2025.pdf",
+ "type_mime": "application/pdf",
+ "date_depot": "2026-03-12"
+ }
+ ]
+ },
+ "links": {},
+ "meta": {}
+ }
diff --git a/mocks/payloads/api_entreprise_v3_mi_siaf_fondations/200_frup.yaml b/mocks/payloads/api_entreprise_v3_mi_siaf_fondations/200_frup.yaml
new file mode 100644
index 0000000000..30e603baff
--- /dev/null
+++ b/mocks/payloads/api_entreprise_v3_mi_siaf_fondations/200_frup.yaml
@@ -0,0 +1,123 @@
+---
+description: 'Fondation reconnue d''utilité publique (FRUP), appelée par identifiant RNF'
+params:
+ siren_or_siret_or_rnf: '075-frup-00194-01'
+status: 200
+payload: |-
+ {
+ "data": {
+ "identifiants": {
+ "rnf": "075-FRUP-00194-01",
+ "siren": "784308934",
+ "siret": "78430893400016"
+ },
+ "identite": {
+ "service_instructeur": "75",
+ "type_fondation": "FRUP",
+ "denomination": "MAISON DE LA CHIMIE",
+ "etat": "Active",
+ "date_effet_etat": "1928-08-12",
+ "date_creation": "1928-08-12",
+ "date_terme": null,
+ "date_cloture_exercice": "12-31",
+ "adresse_siege": {
+ "adresse_complete": "28 Rue Saint-Dominique 75007 Paris",
+ "numero_voie": "28",
+ "nom_voie": "Rue Saint-Dominique",
+ "code_postal": "75007",
+ "commune": "Paris 7e Arrondissement",
+ "code_insee_commune": "75107",
+ "departement": "75",
+ "pays": "France"
+ },
+ "courriel": "contact@fondation-exemple.fr",
+ "telephone": "+33123456789"
+ },
+ "activite": {
+ "objet_social": "L'aménagement et l'entretien d'un immeuble destiné à permettre la jouissance de locaux et de salles de réunions aux organismes de chimie pure et appliquée, en vue de contribuer à l'avancement de la science chimique et au développement de ses applications.",
+ "domaine_interet_general": "Scientifique",
+ "activite_internationale_prevue_par_statuts": false
+ },
+ "dirigeants": [
+ {
+ "nom": "DUPONT",
+ "prenom": "Marie",
+ "date_naissance": "1975-04-12",
+ "nationalite": "France",
+ "adresse_domiciliation": {
+ "adresse_complete": "20 Rue Exemple 75001 Paris",
+ "code_postal": "75001",
+ "commune": "Paris",
+ "pays": "France"
+ },
+ "pays_residence": "France",
+ "profession": "Juriste",
+ "date_entree_fonction": "2018-06-23",
+ "date_sortie_fonction": null,
+ "fonction": "Président",
+ "qualite": "Membre du conseil d'administration",
+ "fondateur": false,
+ "personne_morale": null
+ },
+ {
+ "nom": "MARTIN",
+ "prenom": "Paul",
+ "date_naissance": "1968-11-02",
+ "nationalite": "France",
+ "adresse_domiciliation": {
+ "adresse_complete": "5 Avenue Exemple 75008 Paris",
+ "code_postal": "75008",
+ "commune": "Paris",
+ "pays": "France"
+ },
+ "pays_residence": "France",
+ "profession": "Chercheur",
+ "date_entree_fonction": "2018-06-28",
+ "date_sortie_fonction": null,
+ "fonction": "Trésorier",
+ "qualite": "Membre du conseil d'administration",
+ "fondateur": false,
+ "personne_morale": null
+ }
+ ],
+ "liens_entre_organismes": {
+ "organisme_issu_transformation": null,
+ "organisme_issu_fusion": null,
+ "organismes_issus_scission": []
+ },
+ "situation_financiere": {
+ "annees_subventions_publiques": [2024, 2025],
+ "annees_appel_generosite_publique": [2025],
+ "annees_financements_etrangers": []
+ },
+ "dossiers": {
+ "etat_transmission_comptes": "En règle",
+ "exercices_comptables_transmis": [2023, 2024, 2025]
+ },
+ "documents": [
+ {
+ "id": "7e7867b6-8fe0-11f1-a424-f28dce965a41",
+ "type": "Statuts",
+ "nom_original": "Statuts 1957.pdf",
+ "type_mime": "application/pdf",
+ "date_depot": "2026-06-24"
+ },
+ {
+ "id": "7e7867b6-8fe0-11f1-a424-f28dce965a42",
+ "type": "Comptes",
+ "nom_original": "Comptes annuels 2025.pdf",
+ "type_mime": "application/pdf",
+ "date_depot": "2026-06-24"
+ },
+ {
+ "id": "7e7867b6-8fe0-11f1-a424-f28dce965a43",
+ "type": "Rapport d'activité",
+ "nom_original": "Rapport d'activité 2025.pdf",
+ "type_mime": "application/pdf",
+ "date_depot": "2026-06-24"
+ }
+ ]
+ },
+ "links": {},
+ "meta": {}
+ }
diff --git a/mocks/payloads/api_entreprise_v3_mi_siaf_fondations/200_frup_by_siren.yaml b/mocks/payloads/api_entreprise_v3_mi_siaf_fondations/200_frup_by_siren.yaml
new file mode 100644
index 0000000000..afbdcd5b0c
--- /dev/null
+++ b/mocks/payloads/api_entreprise_v3_mi_siaf_fondations/200_frup_by_siren.yaml
@@ -0,0 +1,123 @@
+---
+description: 'Fondation reconnue d''utilité publique (FRUP), appelée par SIREN'
+params:
+ siren_or_siret_or_rnf: '784308934'
+status: 200
+payload: |-
+ {
+ "data": {
+ "identifiants": {
+ "rnf": "075-FRUP-00194-01",
+ "siren": "784308934",
+ "siret": "78430893400016"
+ },
+ "identite": {
+ "service_instructeur": "75",
+ "type_fondation": "FRUP",
+ "denomination": "MAISON DE LA CHIMIE",
+ "etat": "Active",
+ "date_effet_etat": "1928-08-12",
+ "date_creation": "1928-08-12",
+ "date_terme": null,
+ "date_cloture_exercice": "12-31",
+ "adresse_siege": {
+ "adresse_complete": "28 Rue Saint-Dominique 75007 Paris",
+ "numero_voie": "28",
+ "nom_voie": "Rue Saint-Dominique",
+ "code_postal": "75007",
+ "commune": "Paris 7e Arrondissement",
+ "code_insee_commune": "75107",
+ "departement": "75",
+ "pays": "France"
+ },
+ "courriel": "contact@fondation-exemple.fr",
+ "telephone": "+33123456789"
+ },
+ "activite": {
+ "objet_social": "L'aménagement et l'entretien d'un immeuble destiné à permettre la jouissance de locaux et de salles de réunions aux organismes de chimie pure et appliquée, en vue de contribuer à l'avancement de la science chimique et au développement de ses applications.",
+ "domaine_interet_general": "Scientifique",
+ "activite_internationale_prevue_par_statuts": false
+ },
+ "dirigeants": [
+ {
+ "nom": "DUPONT",
+ "prenom": "Marie",
+ "date_naissance": "1975-04-12",
+ "nationalite": "France",
+ "adresse_domiciliation": {
+ "adresse_complete": "20 Rue Exemple 75001 Paris",
+ "code_postal": "75001",
+ "commune": "Paris",
+ "pays": "France"
+ },
+ "pays_residence": "France",
+ "profession": "Juriste",
+ "date_entree_fonction": "2018-06-23",
+ "date_sortie_fonction": null,
+ "fonction": "Président",
+ "qualite": "Membre du conseil d'administration",
+ "fondateur": false,
+ "personne_morale": null
+ },
+ {
+ "nom": "MARTIN",
+ "prenom": "Paul",
+ "date_naissance": "1968-11-02",
+ "nationalite": "France",
+ "adresse_domiciliation": {
+ "adresse_complete": "5 Avenue Exemple 75008 Paris",
+ "code_postal": "75008",
+ "commune": "Paris",
+ "pays": "France"
+ },
+ "pays_residence": "France",
+ "profession": "Chercheur",
+ "date_entree_fonction": "2018-06-28",
+ "date_sortie_fonction": null,
+ "fonction": "Trésorier",
+ "qualite": "Membre du conseil d'administration",
+ "fondateur": false,
+ "personne_morale": null
+ }
+ ],
+ "liens_entre_organismes": {
+ "organisme_issu_transformation": null,
+ "organisme_issu_fusion": null,
+ "organismes_issus_scission": []
+ },
+ "situation_financiere": {
+ "annees_subventions_publiques": [2024, 2025],
+ "annees_appel_generosite_publique": [2025],
+ "annees_financements_etrangers": []
+ },
+ "dossiers": {
+ "etat_transmission_comptes": "En règle",
+ "exercices_comptables_transmis": [2023, 2024, 2025]
+ },
+ "documents": [
+ {
+ "id": "7e7867b6-8fe0-11f1-a424-f28dce965a41",
+ "type": "Statuts",
+ "nom_original": "Statuts 1957.pdf",
+ "type_mime": "application/pdf",
+ "date_depot": "2026-06-24"
+ },
+ {
+ "id": "7e7867b6-8fe0-11f1-a424-f28dce965a42",
+ "type": "Comptes",
+ "nom_original": "Comptes annuels 2025.pdf",
+ "type_mime": "application/pdf",
+ "date_depot": "2026-06-24"
+ },
+ {
+ "id": "7e7867b6-8fe0-11f1-a424-f28dce965a43",
+ "type": "Rapport d'activité",
+ "nom_original": "Rapport d'activité 2025.pdf",
+ "type_mime": "application/pdf",
+ "date_depot": "2026-06-24"
+ }
+ ]
+ },
+ "links": {},
+ "meta": {}
+ }
diff --git a/mocks/payloads/api_entreprise_v3_mi_siaf_fondations/200_frup_by_siret.yaml b/mocks/payloads/api_entreprise_v3_mi_siaf_fondations/200_frup_by_siret.yaml
new file mode 100644
index 0000000000..ad5842db77
--- /dev/null
+++ b/mocks/payloads/api_entreprise_v3_mi_siaf_fondations/200_frup_by_siret.yaml
@@ -0,0 +1,123 @@
+---
+description: 'Fondation reconnue d''utilité publique (FRUP), appelée par SIRET'
+params:
+ siren_or_siret_or_rnf: '78430893400016'
+status: 200
+payload: |-
+ {
+ "data": {
+ "identifiants": {
+ "rnf": "075-FRUP-00194-01",
+ "siren": "784308934",
+ "siret": "78430893400016"
+ },
+ "identite": {
+ "service_instructeur": "75",
+ "type_fondation": "FRUP",
+ "denomination": "MAISON DE LA CHIMIE",
+ "etat": "Active",
+ "date_effet_etat": "1928-08-12",
+ "date_creation": "1928-08-12",
+ "date_terme": null,
+ "date_cloture_exercice": "12-31",
+ "adresse_siege": {
+ "adresse_complete": "28 Rue Saint-Dominique 75007 Paris",
+ "numero_voie": "28",
+ "nom_voie": "Rue Saint-Dominique",
+ "code_postal": "75007",
+ "commune": "Paris 7e Arrondissement",
+ "code_insee_commune": "75107",
+ "departement": "75",
+ "pays": "France"
+ },
+ "courriel": "contact@fondation-exemple.fr",
+ "telephone": "+33123456789"
+ },
+ "activite": {
+ "objet_social": "L'aménagement et l'entretien d'un immeuble destiné à permettre la jouissance de locaux et de salles de réunions aux organismes de chimie pure et appliquée, en vue de contribuer à l'avancement de la science chimique et au développement de ses applications.",
+ "domaine_interet_general": "Scientifique",
+ "activite_internationale_prevue_par_statuts": false
+ },
+ "dirigeants": [
+ {
+ "nom": "DUPONT",
+ "prenom": "Marie",
+ "date_naissance": "1975-04-12",
+ "nationalite": "France",
+ "adresse_domiciliation": {
+ "adresse_complete": "20 Rue Exemple 75001 Paris",
+ "code_postal": "75001",
+ "commune": "Paris",
+ "pays": "France"
+ },
+ "pays_residence": "France",
+ "profession": "Juriste",
+ "date_entree_fonction": "2018-06-23",
+ "date_sortie_fonction": null,
+ "fonction": "Président",
+ "qualite": "Membre du conseil d'administration",
+ "fondateur": false,
+ "personne_morale": null
+ },
+ {
+ "nom": "MARTIN",
+ "prenom": "Paul",
+ "date_naissance": "1968-11-02",
+ "nationalite": "France",
+ "adresse_domiciliation": {
+ "adresse_complete": "5 Avenue Exemple 75008 Paris",
+ "code_postal": "75008",
+ "commune": "Paris",
+ "pays": "France"
+ },
+ "pays_residence": "France",
+ "profession": "Chercheur",
+ "date_entree_fonction": "2018-06-28",
+ "date_sortie_fonction": null,
+ "fonction": "Trésorier",
+ "qualite": "Membre du conseil d'administration",
+ "fondateur": false,
+ "personne_morale": null
+ }
+ ],
+ "liens_entre_organismes": {
+ "organisme_issu_transformation": null,
+ "organisme_issu_fusion": null,
+ "organismes_issus_scission": []
+ },
+ "situation_financiere": {
+ "annees_subventions_publiques": [2024, 2025],
+ "annees_appel_generosite_publique": [2025],
+ "annees_financements_etrangers": []
+ },
+ "dossiers": {
+ "etat_transmission_comptes": "En règle",
+ "exercices_comptables_transmis": [2023, 2024, 2025]
+ },
+ "documents": [
+ {
+ "id": "7e7867b6-8fe0-11f1-a424-f28dce965a41",
+ "type": "Statuts",
+ "nom_original": "Statuts 1957.pdf",
+ "type_mime": "application/pdf",
+ "date_depot": "2026-06-24"
+ },
+ {
+ "id": "7e7867b6-8fe0-11f1-a424-f28dce965a42",
+ "type": "Comptes",
+ "nom_original": "Comptes annuels 2025.pdf",
+ "type_mime": "application/pdf",
+ "date_depot": "2026-06-24"
+ },
+ {
+ "id": "7e7867b6-8fe0-11f1-a424-f28dce965a43",
+ "type": "Rapport d'activité",
+ "nom_original": "Rapport d'activité 2025.pdf",
+ "type_mime": "application/pdf",
+ "date_depot": "2026-06-24"
+ }
+ ]
+ },
+ "links": {},
+ "meta": {}
+ }
diff --git a/mocks/payloads/api_entreprise_v3_mi_siaf_fondations/404.yaml b/mocks/payloads/api_entreprise_v3_mi_siaf_fondations/404.yaml
new file mode 100644
index 0000000000..c416fbd1dd
--- /dev/null
+++ b/mocks/payloads/api_entreprise_v3_mi_siaf_fondations/404.yaml
@@ -0,0 +1,18 @@
+---
+description: 'Fondation non trouvée'
+params:
+ siren_or_siret_or_rnf: '099-fdd-99999-99'
+status: 404
+payload: |-
+ {
+ "errors": [
+ {
+ "code": "44003",
+ "title": "Entité non trouvée",
+ "detail": "Le ou les paramètre(s) d'entrée n'existent pas, ne sont pas connus, ou ne comportent aucune information pour cet appel. Veuillez vérifier que votre recherche est couverte par le périmètre de l'API.",
+ "meta": {
+ "provider": "SIAF"
+ }
+ }
+ ]
+ }
diff --git a/mocks/payloads/api_entreprise_v3_mi_siaf_fondations/README.md b/mocks/payloads/api_entreprise_v3_mi_siaf_fondations/README.md
new file mode 100644
index 0000000000..440d0250ed
--- /dev/null
+++ b/mocks/payloads/api_entreprise_v3_mi_siaf_fondations/README.md
@@ -0,0 +1,839 @@
+# Données fondations
+* [200_fdd.yaml](200_fdd.yaml)
+
+ Status `200`
+
+ Fonds de dotation (FDD) sans SIRET, accessible uniquement par identifiant RNF
+
+ Paramètres
+
+
+ ```json
+ {
+ "siren_or_siret_or_rnf": "075-fdd-00700-07"
+ }
+ ```
+
+
+
+
+ Réponse API
+
+
+ ```json
+ {
+ "data": {
+ "identifiants": {
+ "rnf": "075-FDD-00700-07",
+ "siren": null,
+ "siret": null
+ },
+ "identite": {
+ "service_instructeur": "75",
+ "type_fondation": "FDD",
+ "denomination": "MEET MY MAMA FUND",
+ "etat": "Active",
+ "date_effet_etat": "2023-03-08",
+ "date_creation": "2023-03-08",
+ "date_terme": null,
+ "date_cloture_exercice": "12-31",
+ "adresse_siege": {
+ "adresse_complete": "10 Rue de Penthièvre 75008 Paris",
+ "numero_voie": "10",
+ "nom_voie": "Rue de Penthièvre",
+ "code_postal": "75008",
+ "commune": "Paris 8e Arrondissement",
+ "code_insee_commune": "75108",
+ "departement": "75",
+ "pays": "France"
+ },
+ "courriel": "contact@fonds-exemple.fr",
+ "telephone": "+33198765432"
+ },
+ "activite": {
+ "objet_social": "Conduire et soutenir toutes missions d'intérêt général à caractère social, philanthropique, éducatif et humanitaire concourant à faciliter l'inclusion sociale, notamment des femmes.",
+ "domaine_interet_general": "Social, Humanitaire, Éducatif",
+ "activite_internationale_prevue_par_statuts": false
+ },
+ "dirigeants": [
+ {
+ "nom": "BERNARD",
+ "prenom": "Louise",
+ "date_naissance": "1988-02-20",
+ "nationalite": "France",
+ "adresse_domiciliation": {
+ "adresse_complete": "1 Avenue des Champs Elysées 75008 Paris",
+ "code_postal": "75008",
+ "commune": "Paris",
+ "pays": "France"
+ },
+ "pays_residence": "France",
+ "profession": "Entrepreneuse",
+ "date_entree_fonction": "2023-02-13",
+ "date_sortie_fonction": null,
+ "fonction": "Présidente",
+ "qualite": "Membre du conseil d'administration",
+ "fondateur": true,
+ "personne_morale": null
+ },
+ {
+ "nom": "PETIT",
+ "prenom": "Nicolas",
+ "date_naissance": "1985-07-30",
+ "nationalite": "France",
+ "adresse_domiciliation": {
+ "adresse_complete": "1 Avenue des Champs Elysées 75008 Paris",
+ "code_postal": "75008",
+ "commune": "Paris",
+ "pays": "France"
+ },
+ "pays_residence": "France",
+ "profession": "Consultant",
+ "date_entree_fonction": "2023-02-13",
+ "date_sortie_fonction": null,
+ "fonction": "Secrétaire",
+ "qualite": "Membre du conseil d'administration",
+ "fondateur": false,
+ "personne_morale": null
+ }
+ ],
+ "liens_entre_organismes": {
+ "organisme_issu_transformation": null,
+ "organisme_issu_fusion": null,
+ "organismes_issus_scission": []
+ },
+ "situation_financiere": {
+ "annees_subventions_publiques": [],
+ "annees_appel_generosite_publique": [],
+ "annees_financements_etrangers": []
+ },
+ "dossiers": {
+ "etat_transmission_comptes": "En règle",
+ "exercices_comptables_transmis": [
+ 2023,
+ 2024
+ ]
+ },
+ "documents": [
+ {
+ "id": "711cf2ed-6e04-11f1-aed1-4faba2bb8c0b",
+ "type": "Statuts",
+ "nom_original": "Statuts constitutifs.pdf",
+ "type_mime": "application/pdf",
+ "date_depot": "2026-04-20"
+ },
+ {
+ "id": "711cf2ee-6e04-11f1-aed1-4faba2bb8c0b",
+ "type": "Comptes",
+ "nom_original": "Comptes annuels 2024.pdf",
+ "type_mime": "application/pdf",
+ "date_depot": "2026-06-17"
+ },
+ {
+ "id": "711cf2ef-6e04-11f1-aed1-4faba2bb8c0b",
+ "type": "Rapport d'activité",
+ "nom_original": "Rapport d'activité 2024.pdf",
+ "type_mime": "application/pdf",
+ "date_depot": "2026-06-17"
+ }
+ ]
+ },
+ "links": {},
+ "meta": {}
+ }
+ ```
+
+
+
+
+ Commande cURL
+
+
+ ```bash
+ curl -H "Authorization: Bearer $token" \
+ -G -d 'recipient=10000001700010' -d 'context=Contexte+de+la+requ%C3%AAte' -d 'object=Objet+de+la+requ%C3%AAte' \
+ --url "https://staging.entreprise.api.gouv.fr/v3/ministere_interieur/siaf/fondations/075-fdd-00700-07"
+ ```
+
+
+
+* [200_fe.yaml](200_fe.yaml)
+
+ Status `200`
+
+ Fondation d'entreprise (FE) à durée déterminée, avec un dirigeant représentant une personne morale
+
+ Paramètres
+
+
+ ```json
+ {
+ "siren_or_siret_or_rnf": "075-fe-00117-05"
+ }
+ ```
+
+
+
+
+ Réponse API
+
+
+ ```json
+ {
+ "data": {
+ "identifiants": {
+ "rnf": "075-FE-00117-05",
+ "siren": "987654321",
+ "siret": "98765432100012"
+ },
+ "identite": {
+ "service_instructeur": "75",
+ "type_fondation": "FE",
+ "denomination": "FONDATION D'ENTREPRISE EXEMPLE",
+ "etat": "Active",
+ "date_effet_etat": "2019-05-15",
+ "date_creation": "2019-05-15",
+ "date_terme": "2029-05-14",
+ "date_cloture_exercice": "12-31",
+ "adresse_siege": {
+ "adresse_complete": "25 Avenue Exemple 75008 Paris",
+ "numero_voie": "25",
+ "nom_voie": "Avenue Exemple",
+ "code_postal": "75008",
+ "commune": "Paris 8e Arrondissement",
+ "code_insee_commune": "75108",
+ "departement": "75",
+ "pays": "France"
+ },
+ "courriel": "fondation@entreprise-exemple.fr",
+ "telephone": "+33144556677"
+ },
+ "activite": {
+ "objet_social": "Financer des actions d'intérêt général dans le domaine de l'éducation et de l'insertion professionnelle des jeunes.",
+ "domaine_interet_general": "Éducatif, Social",
+ "activite_internationale_prevue_par_statuts": true
+ },
+ "dirigeants": [
+ {
+ "nom": "MOREAU",
+ "prenom": "Claire",
+ "date_naissance": "1972-09-18",
+ "nationalite": "France",
+ "adresse_domiciliation": {
+ "adresse_complete": "12 Rue Exemple 92100 Boulogne-Billancourt",
+ "code_postal": "92100",
+ "commune": "Boulogne-Billancourt",
+ "pays": "France"
+ },
+ "pays_residence": "France",
+ "profession": "Directrice générale",
+ "date_entree_fonction": "2019-05-15",
+ "date_sortie_fonction": null,
+ "fonction": "Présidente",
+ "qualite": "Membre du conseil d'administration",
+ "fondateur": false,
+ "personne_morale": {
+ "type": "Entreprise",
+ "identifiant": "98765432100012",
+ "denomination": "ENTREPRISE EXEMPLE",
+ "pays": "France"
+ }
+ }
+ ],
+ "liens_entre_organismes": {
+ "organisme_issu_transformation": null,
+ "organisme_issu_fusion": null,
+ "organismes_issus_scission": []
+ },
+ "situation_financiere": {
+ "annees_subventions_publiques": [],
+ "annees_appel_generosite_publique": [],
+ "annees_financements_etrangers": [
+ 2024
+ ]
+ },
+ "dossiers": {
+ "etat_transmission_comptes": "En défaut",
+ "exercices_comptables_transmis": [
+ 2022,
+ 2023
+ ]
+ },
+ "documents": [
+ {
+ "id": "8a1b2c3d-4e5f-11f1-aed1-4faba2bb8c0b",
+ "type": "Statuts",
+ "nom_original": "Statuts fondation entreprise.pdf",
+ "type_mime": "application/pdf",
+ "date_depot": "2026-03-12"
+ },
+ {
+ "id": "8a1b2c3d-4e5f-11f1-aed1-4faba2bb8c0c",
+ "type": "Procès verbal",
+ "nom_original": "PV conseil administration 2025.pdf",
+ "type_mime": "application/pdf",
+ "date_depot": "2026-03-12"
+ }
+ ]
+ },
+ "links": {},
+ "meta": {}
+ }
+ ```
+
+
+
+
+ Commande cURL
+
+
+ ```bash
+ curl -H "Authorization: Bearer $token" \
+ -G -d 'recipient=10000001700010' -d 'context=Contexte+de+la+requ%C3%AAte' -d 'object=Objet+de+la+requ%C3%AAte' \
+ --url "https://staging.entreprise.api.gouv.fr/v3/ministere_interieur/siaf/fondations/075-fe-00117-05"
+ ```
+
+
+
+* [200_frup.yaml](200_frup.yaml)
+
+ Status `200`
+
+ Fondation reconnue d'utilité publique (FRUP), appelée par identifiant RNF
+
+ Paramètres
+
+
+ ```json
+ {
+ "siren_or_siret_or_rnf": "075-frup-00194-01"
+ }
+ ```
+
+
+
+
+ Réponse API
+
+
+ ```json
+ {
+ "data": {
+ "identifiants": {
+ "rnf": "075-FRUP-00194-01",
+ "siren": "784308934",
+ "siret": "78430893400016"
+ },
+ "identite": {
+ "service_instructeur": "75",
+ "type_fondation": "FRUP",
+ "denomination": "MAISON DE LA CHIMIE",
+ "etat": "Active",
+ "date_effet_etat": "1928-08-12",
+ "date_creation": "1928-08-12",
+ "date_terme": null,
+ "date_cloture_exercice": "12-31",
+ "adresse_siege": {
+ "adresse_complete": "28 Rue Saint-Dominique 75007 Paris",
+ "numero_voie": "28",
+ "nom_voie": "Rue Saint-Dominique",
+ "code_postal": "75007",
+ "commune": "Paris 7e Arrondissement",
+ "code_insee_commune": "75107",
+ "departement": "75",
+ "pays": "France"
+ },
+ "courriel": "contact@fondation-exemple.fr",
+ "telephone": "+33123456789"
+ },
+ "activite": {
+ "objet_social": "L'aménagement et l'entretien d'un immeuble destiné à permettre la jouissance de locaux et de salles de réunions aux organismes de chimie pure et appliquée, en vue de contribuer à l'avancement de la science chimique et au développement de ses applications.",
+ "domaine_interet_general": "Scientifique",
+ "activite_internationale_prevue_par_statuts": false
+ },
+ "dirigeants": [
+ {
+ "nom": "DUPONT",
+ "prenom": "Marie",
+ "date_naissance": "1975-04-12",
+ "nationalite": "France",
+ "adresse_domiciliation": {
+ "adresse_complete": "20 Rue Exemple 75001 Paris",
+ "code_postal": "75001",
+ "commune": "Paris",
+ "pays": "France"
+ },
+ "pays_residence": "France",
+ "profession": "Juriste",
+ "date_entree_fonction": "2018-06-23",
+ "date_sortie_fonction": null,
+ "fonction": "Président",
+ "qualite": "Membre du conseil d'administration",
+ "fondateur": false,
+ "personne_morale": null
+ },
+ {
+ "nom": "MARTIN",
+ "prenom": "Paul",
+ "date_naissance": "1968-11-02",
+ "nationalite": "France",
+ "adresse_domiciliation": {
+ "adresse_complete": "5 Avenue Exemple 75008 Paris",
+ "code_postal": "75008",
+ "commune": "Paris",
+ "pays": "France"
+ },
+ "pays_residence": "France",
+ "profession": "Chercheur",
+ "date_entree_fonction": "2018-06-28",
+ "date_sortie_fonction": null,
+ "fonction": "Trésorier",
+ "qualite": "Membre du conseil d'administration",
+ "fondateur": false,
+ "personne_morale": null
+ }
+ ],
+ "liens_entre_organismes": {
+ "organisme_issu_transformation": null,
+ "organisme_issu_fusion": null,
+ "organismes_issus_scission": []
+ },
+ "situation_financiere": {
+ "annees_subventions_publiques": [
+ 2024,
+ 2025
+ ],
+ "annees_appel_generosite_publique": [
+ 2025
+ ],
+ "annees_financements_etrangers": []
+ },
+ "dossiers": {
+ "etat_transmission_comptes": "En règle",
+ "exercices_comptables_transmis": [
+ 2023,
+ 2024,
+ 2025
+ ]
+ },
+ "documents": [
+ {
+ "id": "7e7867b6-8fe0-11f1-a424-f28dce965a41",
+ "type": "Statuts",
+ "nom_original": "Statuts 1957.pdf",
+ "type_mime": "application/pdf",
+ "date_depot": "2026-06-24"
+ },
+ {
+ "id": "7e7867b6-8fe0-11f1-a424-f28dce965a42",
+ "type": "Comptes",
+ "nom_original": "Comptes annuels 2025.pdf",
+ "type_mime": "application/pdf",
+ "date_depot": "2026-06-24"
+ },
+ {
+ "id": "7e7867b6-8fe0-11f1-a424-f28dce965a43",
+ "type": "Rapport d'activité",
+ "nom_original": "Rapport d'activité 2025.pdf",
+ "type_mime": "application/pdf",
+ "date_depot": "2026-06-24"
+ }
+ ]
+ },
+ "links": {},
+ "meta": {}
+ }
+ ```
+
+
+
+
+ Commande cURL
+
+
+ ```bash
+ curl -H "Authorization: Bearer $token" \
+ -G -d 'recipient=10000001700010' -d 'context=Contexte+de+la+requ%C3%AAte' -d 'object=Objet+de+la+requ%C3%AAte' \
+ --url "https://staging.entreprise.api.gouv.fr/v3/ministere_interieur/siaf/fondations/075-frup-00194-01"
+ ```
+
+
+
+* [200_frup_by_siren.yaml](200_frup_by_siren.yaml)
+
+ Status `200`
+
+ Fondation reconnue d'utilité publique (FRUP), appelée par SIREN
+
+ Paramètres
+
+
+ ```json
+ {
+ "siren_or_siret_or_rnf": "784308934"
+ }
+ ```
+
+
+
+
+ Réponse API
+
+
+ ```json
+ {
+ "data": {
+ "identifiants": {
+ "rnf": "075-FRUP-00194-01",
+ "siren": "784308934",
+ "siret": "78430893400016"
+ },
+ "identite": {
+ "service_instructeur": "75",
+ "type_fondation": "FRUP",
+ "denomination": "MAISON DE LA CHIMIE",
+ "etat": "Active",
+ "date_effet_etat": "1928-08-12",
+ "date_creation": "1928-08-12",
+ "date_terme": null,
+ "date_cloture_exercice": "12-31",
+ "adresse_siege": {
+ "adresse_complete": "28 Rue Saint-Dominique 75007 Paris",
+ "numero_voie": "28",
+ "nom_voie": "Rue Saint-Dominique",
+ "code_postal": "75007",
+ "commune": "Paris 7e Arrondissement",
+ "code_insee_commune": "75107",
+ "departement": "75",
+ "pays": "France"
+ },
+ "courriel": "contact@fondation-exemple.fr",
+ "telephone": "+33123456789"
+ },
+ "activite": {
+ "objet_social": "L'aménagement et l'entretien d'un immeuble destiné à permettre la jouissance de locaux et de salles de réunions aux organismes de chimie pure et appliquée, en vue de contribuer à l'avancement de la science chimique et au développement de ses applications.",
+ "domaine_interet_general": "Scientifique",
+ "activite_internationale_prevue_par_statuts": false
+ },
+ "dirigeants": [
+ {
+ "nom": "DUPONT",
+ "prenom": "Marie",
+ "date_naissance": "1975-04-12",
+ "nationalite": "France",
+ "adresse_domiciliation": {
+ "adresse_complete": "20 Rue Exemple 75001 Paris",
+ "code_postal": "75001",
+ "commune": "Paris",
+ "pays": "France"
+ },
+ "pays_residence": "France",
+ "profession": "Juriste",
+ "date_entree_fonction": "2018-06-23",
+ "date_sortie_fonction": null,
+ "fonction": "Président",
+ "qualite": "Membre du conseil d'administration",
+ "fondateur": false,
+ "personne_morale": null
+ },
+ {
+ "nom": "MARTIN",
+ "prenom": "Paul",
+ "date_naissance": "1968-11-02",
+ "nationalite": "France",
+ "adresse_domiciliation": {
+ "adresse_complete": "5 Avenue Exemple 75008 Paris",
+ "code_postal": "75008",
+ "commune": "Paris",
+ "pays": "France"
+ },
+ "pays_residence": "France",
+ "profession": "Chercheur",
+ "date_entree_fonction": "2018-06-28",
+ "date_sortie_fonction": null,
+ "fonction": "Trésorier",
+ "qualite": "Membre du conseil d'administration",
+ "fondateur": false,
+ "personne_morale": null
+ }
+ ],
+ "liens_entre_organismes": {
+ "organisme_issu_transformation": null,
+ "organisme_issu_fusion": null,
+ "organismes_issus_scission": []
+ },
+ "situation_financiere": {
+ "annees_subventions_publiques": [
+ 2024,
+ 2025
+ ],
+ "annees_appel_generosite_publique": [
+ 2025
+ ],
+ "annees_financements_etrangers": []
+ },
+ "dossiers": {
+ "etat_transmission_comptes": "En règle",
+ "exercices_comptables_transmis": [
+ 2023,
+ 2024,
+ 2025
+ ]
+ },
+ "documents": [
+ {
+ "id": "7e7867b6-8fe0-11f1-a424-f28dce965a41",
+ "type": "Statuts",
+ "nom_original": "Statuts 1957.pdf",
+ "type_mime": "application/pdf",
+ "date_depot": "2026-06-24"
+ },
+ {
+ "id": "7e7867b6-8fe0-11f1-a424-f28dce965a42",
+ "type": "Comptes",
+ "nom_original": "Comptes annuels 2025.pdf",
+ "type_mime": "application/pdf",
+ "date_depot": "2026-06-24"
+ },
+ {
+ "id": "7e7867b6-8fe0-11f1-a424-f28dce965a43",
+ "type": "Rapport d'activité",
+ "nom_original": "Rapport d'activité 2025.pdf",
+ "type_mime": "application/pdf",
+ "date_depot": "2026-06-24"
+ }
+ ]
+ },
+ "links": {},
+ "meta": {}
+ }
+ ```
+
+
+
+
+ Commande cURL
+
+
+ ```bash
+ curl -H "Authorization: Bearer $token" \
+ -G -d 'recipient=10000001700010' -d 'context=Contexte+de+la+requ%C3%AAte' -d 'object=Objet+de+la+requ%C3%AAte' \
+ --url "https://staging.entreprise.api.gouv.fr/v3/ministere_interieur/siaf/fondations/784308934"
+ ```
+
+
+
+* [200_frup_by_siret.yaml](200_frup_by_siret.yaml)
+
+ Status `200`
+
+ Fondation reconnue d'utilité publique (FRUP), appelée par SIRET
+
+ Paramètres
+
+
+ ```json
+ {
+ "siren_or_siret_or_rnf": "78430893400016"
+ }
+ ```
+
+
+
+
+ Réponse API
+
+
+ ```json
+ {
+ "data": {
+ "identifiants": {
+ "rnf": "075-FRUP-00194-01",
+ "siren": "784308934",
+ "siret": "78430893400016"
+ },
+ "identite": {
+ "service_instructeur": "75",
+ "type_fondation": "FRUP",
+ "denomination": "MAISON DE LA CHIMIE",
+ "etat": "Active",
+ "date_effet_etat": "1928-08-12",
+ "date_creation": "1928-08-12",
+ "date_terme": null,
+ "date_cloture_exercice": "12-31",
+ "adresse_siege": {
+ "adresse_complete": "28 Rue Saint-Dominique 75007 Paris",
+ "numero_voie": "28",
+ "nom_voie": "Rue Saint-Dominique",
+ "code_postal": "75007",
+ "commune": "Paris 7e Arrondissement",
+ "code_insee_commune": "75107",
+ "departement": "75",
+ "pays": "France"
+ },
+ "courriel": "contact@fondation-exemple.fr",
+ "telephone": "+33123456789"
+ },
+ "activite": {
+ "objet_social": "L'aménagement et l'entretien d'un immeuble destiné à permettre la jouissance de locaux et de salles de réunions aux organismes de chimie pure et appliquée, en vue de contribuer à l'avancement de la science chimique et au développement de ses applications.",
+ "domaine_interet_general": "Scientifique",
+ "activite_internationale_prevue_par_statuts": false
+ },
+ "dirigeants": [
+ {
+ "nom": "DUPONT",
+ "prenom": "Marie",
+ "date_naissance": "1975-04-12",
+ "nationalite": "France",
+ "adresse_domiciliation": {
+ "adresse_complete": "20 Rue Exemple 75001 Paris",
+ "code_postal": "75001",
+ "commune": "Paris",
+ "pays": "France"
+ },
+ "pays_residence": "France",
+ "profession": "Juriste",
+ "date_entree_fonction": "2018-06-23",
+ "date_sortie_fonction": null,
+ "fonction": "Président",
+ "qualite": "Membre du conseil d'administration",
+ "fondateur": false,
+ "personne_morale": null
+ },
+ {
+ "nom": "MARTIN",
+ "prenom": "Paul",
+ "date_naissance": "1968-11-02",
+ "nationalite": "France",
+ "adresse_domiciliation": {
+ "adresse_complete": "5 Avenue Exemple 75008 Paris",
+ "code_postal": "75008",
+ "commune": "Paris",
+ "pays": "France"
+ },
+ "pays_residence": "France",
+ "profession": "Chercheur",
+ "date_entree_fonction": "2018-06-28",
+ "date_sortie_fonction": null,
+ "fonction": "Trésorier",
+ "qualite": "Membre du conseil d'administration",
+ "fondateur": false,
+ "personne_morale": null
+ }
+ ],
+ "liens_entre_organismes": {
+ "organisme_issu_transformation": null,
+ "organisme_issu_fusion": null,
+ "organismes_issus_scission": []
+ },
+ "situation_financiere": {
+ "annees_subventions_publiques": [
+ 2024,
+ 2025
+ ],
+ "annees_appel_generosite_publique": [
+ 2025
+ ],
+ "annees_financements_etrangers": []
+ },
+ "dossiers": {
+ "etat_transmission_comptes": "En règle",
+ "exercices_comptables_transmis": [
+ 2023,
+ 2024,
+ 2025
+ ]
+ },
+ "documents": [
+ {
+ "id": "7e7867b6-8fe0-11f1-a424-f28dce965a41",
+ "type": "Statuts",
+ "nom_original": "Statuts 1957.pdf",
+ "type_mime": "application/pdf",
+ "date_depot": "2026-06-24"
+ },
+ {
+ "id": "7e7867b6-8fe0-11f1-a424-f28dce965a42",
+ "type": "Comptes",
+ "nom_original": "Comptes annuels 2025.pdf",
+ "type_mime": "application/pdf",
+ "date_depot": "2026-06-24"
+ },
+ {
+ "id": "7e7867b6-8fe0-11f1-a424-f28dce965a43",
+ "type": "Rapport d'activité",
+ "nom_original": "Rapport d'activité 2025.pdf",
+ "type_mime": "application/pdf",
+ "date_depot": "2026-06-24"
+ }
+ ]
+ },
+ "links": {},
+ "meta": {}
+ }
+ ```
+
+
+
+
+ Commande cURL
+
+
+ ```bash
+ curl -H "Authorization: Bearer $token" \
+ -G -d 'recipient=10000001700010' -d 'context=Contexte+de+la+requ%C3%AAte' -d 'object=Objet+de+la+requ%C3%AAte' \
+ --url "https://staging.entreprise.api.gouv.fr/v3/ministere_interieur/siaf/fondations/78430893400016"
+ ```
+
+
+
+* [404.yaml](404.yaml)
+
+ Status `404`
+
+ Fondation non trouvée
+
+ Paramètres
+
+
+ ```json
+ {
+ "siren_or_siret_or_rnf": "099-fdd-99999-99"
+ }
+ ```
+
+
+
+
+ Réponse API
+
+
+ ```json
+ {
+ "errors": [
+ {
+ "code": "44003",
+ "title": "Entité non trouvée",
+ "detail": "Le ou les paramètre(s) d'entrée n'existent pas, ne sont pas connus, ou ne comportent aucune information pour cet appel. Veuillez vérifier que votre recherche est couverte par le périmètre de l'API.",
+ "meta": {
+ "provider": "SIAF"
+ }
+ }
+ ]
+ }
+ ```
+
+
+
+
+ Commande cURL
+
+
+ ```bash
+ curl -H "Authorization: Bearer $token" \
+ -G -d 'recipient=10000001700010' -d 'context=Contexte+de+la+requ%C3%AAte' -d 'object=Objet+de+la+requ%C3%AAte' \
+ --url "https://staging.entreprise.api.gouv.fr/v3/ministere_interieur/siaf/fondations/099-fdd-99999-99"
+ ```
+
+
+
diff --git a/mocks/payloads/api_entreprise_v3_mi_siaf_fondations/summary.csv b/mocks/payloads/api_entreprise_v3_mi_siaf_fondations/summary.csv
new file mode 100644
index 0000000000..821a0977ea
--- /dev/null
+++ b/mocks/payloads/api_entreprise_v3_mi_siaf_fondations/summary.csv
@@ -0,0 +1,576 @@
+Titre,Description,Paramètres,Status,Réponse
+,"Fonds de dotation (FDD) sans SIRET, accessible uniquement par identifiant RNF","{""siren_or_siret_or_rnf"":""075-fdd-00700-07""}",200,"{
+ ""data"": {
+ ""identifiants"": {
+ ""rnf"": ""075-FDD-00700-07"",
+ ""siren"": null,
+ ""siret"": null
+ },
+ ""identite"": {
+ ""service_instructeur"": ""75"",
+ ""type_fondation"": ""FDD"",
+ ""denomination"": ""MEET MY MAMA FUND"",
+ ""etat"": ""Active"",
+ ""date_effet_etat"": ""2023-03-08"",
+ ""date_creation"": ""2023-03-08"",
+ ""date_terme"": null,
+ ""date_cloture_exercice"": ""12-31"",
+ ""adresse_siege"": {
+ ""adresse_complete"": ""10 Rue de Penthièvre 75008 Paris"",
+ ""numero_voie"": ""10"",
+ ""nom_voie"": ""Rue de Penthièvre"",
+ ""code_postal"": ""75008"",
+ ""commune"": ""Paris 8e Arrondissement"",
+ ""code_insee_commune"": ""75108"",
+ ""departement"": ""75"",
+ ""pays"": ""France""
+ },
+ ""courriel"": ""contact@fonds-exemple.fr"",
+ ""telephone"": ""+33198765432""
+ },
+ ""activite"": {
+ ""objet_social"": ""Conduire et soutenir toutes missions d'intérêt général à caractère social, philanthropique, éducatif et humanitaire concourant à faciliter l'inclusion sociale, notamment des femmes."",
+ ""domaine_interet_general"": ""Social, Humanitaire, Éducatif"",
+ ""activite_internationale_prevue_par_statuts"": false
+ },
+ ""dirigeants"": [
+ {
+ ""nom"": ""BERNARD"",
+ ""prenom"": ""Louise"",
+ ""date_naissance"": ""1988-02-20"",
+ ""nationalite"": ""France"",
+ ""adresse_domiciliation"": {
+ ""adresse_complete"": ""1 Avenue des Champs Elysées 75008 Paris"",
+ ""code_postal"": ""75008"",
+ ""commune"": ""Paris"",
+ ""pays"": ""France""
+ },
+ ""pays_residence"": ""France"",
+ ""profession"": ""Entrepreneuse"",
+ ""date_entree_fonction"": ""2023-02-13"",
+ ""date_sortie_fonction"": null,
+ ""fonction"": ""Présidente"",
+ ""qualite"": ""Membre du conseil d'administration"",
+ ""fondateur"": true,
+ ""personne_morale"": null
+ },
+ {
+ ""nom"": ""PETIT"",
+ ""prenom"": ""Nicolas"",
+ ""date_naissance"": ""1985-07-30"",
+ ""nationalite"": ""France"",
+ ""adresse_domiciliation"": {
+ ""adresse_complete"": ""1 Avenue des Champs Elysées 75008 Paris"",
+ ""code_postal"": ""75008"",
+ ""commune"": ""Paris"",
+ ""pays"": ""France""
+ },
+ ""pays_residence"": ""France"",
+ ""profession"": ""Consultant"",
+ ""date_entree_fonction"": ""2023-02-13"",
+ ""date_sortie_fonction"": null,
+ ""fonction"": ""Secrétaire"",
+ ""qualite"": ""Membre du conseil d'administration"",
+ ""fondateur"": false,
+ ""personne_morale"": null
+ }
+ ],
+ ""liens_entre_organismes"": {
+ ""organisme_issu_transformation"": null,
+ ""organisme_issu_fusion"": null,
+ ""organismes_issus_scission"": []
+ },
+ ""situation_financiere"": {
+ ""annees_subventions_publiques"": [],
+ ""annees_appel_generosite_publique"": [],
+ ""annees_financements_etrangers"": []
+ },
+ ""dossiers"": {
+ ""etat_transmission_comptes"": ""En règle"",
+ ""exercices_comptables_transmis"": [2023, 2024]
+ },
+ ""documents"": [
+ {
+ ""id"": ""711cf2ed-6e04-11f1-aed1-4faba2bb8c0b"",
+ ""type"": ""Statuts"",
+ ""nom_original"": ""Statuts constitutifs.pdf"",
+ ""type_mime"": ""application/pdf"",
+ ""date_depot"": ""2026-04-20""
+ },
+ {
+ ""id"": ""711cf2ee-6e04-11f1-aed1-4faba2bb8c0b"",
+ ""type"": ""Comptes"",
+ ""nom_original"": ""Comptes annuels 2024.pdf"",
+ ""type_mime"": ""application/pdf"",
+ ""date_depot"": ""2026-06-17""
+ },
+ {
+ ""id"": ""711cf2ef-6e04-11f1-aed1-4faba2bb8c0b"",
+ ""type"": ""Rapport d'activité"",
+ ""nom_original"": ""Rapport d'activité 2024.pdf"",
+ ""type_mime"": ""application/pdf"",
+ ""date_depot"": ""2026-06-17""
+ }
+ ]
+ },
+ ""links"": {},
+ ""meta"": {}
+}"
+,"Fondation d'entreprise (FE) à durée déterminée, avec un dirigeant représentant une personne morale","{""siren_or_siret_or_rnf"":""075-fe-00117-05""}",200,"{
+ ""data"": {
+ ""identifiants"": {
+ ""rnf"": ""075-FE-00117-05"",
+ ""siren"": ""987654321"",
+ ""siret"": ""98765432100012""
+ },
+ ""identite"": {
+ ""service_instructeur"": ""75"",
+ ""type_fondation"": ""FE"",
+ ""denomination"": ""FONDATION D'ENTREPRISE EXEMPLE"",
+ ""etat"": ""Active"",
+ ""date_effet_etat"": ""2019-05-15"",
+ ""date_creation"": ""2019-05-15"",
+ ""date_terme"": ""2029-05-14"",
+ ""date_cloture_exercice"": ""12-31"",
+ ""adresse_siege"": {
+ ""adresse_complete"": ""25 Avenue Exemple 75008 Paris"",
+ ""numero_voie"": ""25"",
+ ""nom_voie"": ""Avenue Exemple"",
+ ""code_postal"": ""75008"",
+ ""commune"": ""Paris 8e Arrondissement"",
+ ""code_insee_commune"": ""75108"",
+ ""departement"": ""75"",
+ ""pays"": ""France""
+ },
+ ""courriel"": ""fondation@entreprise-exemple.fr"",
+ ""telephone"": ""+33144556677""
+ },
+ ""activite"": {
+ ""objet_social"": ""Financer des actions d'intérêt général dans le domaine de l'éducation et de l'insertion professionnelle des jeunes."",
+ ""domaine_interet_general"": ""Éducatif, Social"",
+ ""activite_internationale_prevue_par_statuts"": true
+ },
+ ""dirigeants"": [
+ {
+ ""nom"": ""MOREAU"",
+ ""prenom"": ""Claire"",
+ ""date_naissance"": ""1972-09-18"",
+ ""nationalite"": ""France"",
+ ""adresse_domiciliation"": {
+ ""adresse_complete"": ""12 Rue Exemple 92100 Boulogne-Billancourt"",
+ ""code_postal"": ""92100"",
+ ""commune"": ""Boulogne-Billancourt"",
+ ""pays"": ""France""
+ },
+ ""pays_residence"": ""France"",
+ ""profession"": ""Directrice générale"",
+ ""date_entree_fonction"": ""2019-05-15"",
+ ""date_sortie_fonction"": null,
+ ""fonction"": ""Présidente"",
+ ""qualite"": ""Membre du conseil d'administration"",
+ ""fondateur"": false,
+ ""personne_morale"": {
+ ""type"": ""Entreprise"",
+ ""identifiant"": ""98765432100012"",
+ ""denomination"": ""ENTREPRISE EXEMPLE"",
+ ""pays"": ""France""
+ }
+ }
+ ],
+ ""liens_entre_organismes"": {
+ ""organisme_issu_transformation"": null,
+ ""organisme_issu_fusion"": null,
+ ""organismes_issus_scission"": []
+ },
+ ""situation_financiere"": {
+ ""annees_subventions_publiques"": [],
+ ""annees_appel_generosite_publique"": [],
+ ""annees_financements_etrangers"": [2024]
+ },
+ ""dossiers"": {
+ ""etat_transmission_comptes"": ""En défaut"",
+ ""exercices_comptables_transmis"": [2022, 2023]
+ },
+ ""documents"": [
+ {
+ ""id"": ""8a1b2c3d-4e5f-11f1-aed1-4faba2bb8c0b"",
+ ""type"": ""Statuts"",
+ ""nom_original"": ""Statuts fondation entreprise.pdf"",
+ ""type_mime"": ""application/pdf"",
+ ""date_depot"": ""2026-03-12""
+ },
+ {
+ ""id"": ""8a1b2c3d-4e5f-11f1-aed1-4faba2bb8c0c"",
+ ""type"": ""Procès verbal"",
+ ""nom_original"": ""PV conseil administration 2025.pdf"",
+ ""type_mime"": ""application/pdf"",
+ ""date_depot"": ""2026-03-12""
+ }
+ ]
+ },
+ ""links"": {},
+ ""meta"": {}
+}"
+,"Fondation reconnue d'utilité publique (FRUP), appelée par identifiant RNF","{""siren_or_siret_or_rnf"":""075-frup-00194-01""}",200,"{
+ ""data"": {
+ ""identifiants"": {
+ ""rnf"": ""075-FRUP-00194-01"",
+ ""siren"": ""784308934"",
+ ""siret"": ""78430893400016""
+ },
+ ""identite"": {
+ ""service_instructeur"": ""75"",
+ ""type_fondation"": ""FRUP"",
+ ""denomination"": ""MAISON DE LA CHIMIE"",
+ ""etat"": ""Active"",
+ ""date_effet_etat"": ""1928-08-12"",
+ ""date_creation"": ""1928-08-12"",
+ ""date_terme"": null,
+ ""date_cloture_exercice"": ""12-31"",
+ ""adresse_siege"": {
+ ""adresse_complete"": ""28 Rue Saint-Dominique 75007 Paris"",
+ ""numero_voie"": ""28"",
+ ""nom_voie"": ""Rue Saint-Dominique"",
+ ""code_postal"": ""75007"",
+ ""commune"": ""Paris 7e Arrondissement"",
+ ""code_insee_commune"": ""75107"",
+ ""departement"": ""75"",
+ ""pays"": ""France""
+ },
+ ""courriel"": ""contact@fondation-exemple.fr"",
+ ""telephone"": ""+33123456789""
+ },
+ ""activite"": {
+ ""objet_social"": ""L'aménagement et l'entretien d'un immeuble destiné à permettre la jouissance de locaux et de salles de réunions aux organismes de chimie pure et appliquée, en vue de contribuer à l'avancement de la science chimique et au développement de ses applications."",
+ ""domaine_interet_general"": ""Scientifique"",
+ ""activite_internationale_prevue_par_statuts"": false
+ },
+ ""dirigeants"": [
+ {
+ ""nom"": ""DUPONT"",
+ ""prenom"": ""Marie"",
+ ""date_naissance"": ""1975-04-12"",
+ ""nationalite"": ""France"",
+ ""adresse_domiciliation"": {
+ ""adresse_complete"": ""20 Rue Exemple 75001 Paris"",
+ ""code_postal"": ""75001"",
+ ""commune"": ""Paris"",
+ ""pays"": ""France""
+ },
+ ""pays_residence"": ""France"",
+ ""profession"": ""Juriste"",
+ ""date_entree_fonction"": ""2018-06-23"",
+ ""date_sortie_fonction"": null,
+ ""fonction"": ""Président"",
+ ""qualite"": ""Membre du conseil d'administration"",
+ ""fondateur"": false,
+ ""personne_morale"": null
+ },
+ {
+ ""nom"": ""MARTIN"",
+ ""prenom"": ""Paul"",
+ ""date_naissance"": ""1968-11-02"",
+ ""nationalite"": ""France"",
+ ""adresse_domiciliation"": {
+ ""adresse_complete"": ""5 Avenue Exemple 75008 Paris"",
+ ""code_postal"": ""75008"",
+ ""commune"": ""Paris"",
+ ""pays"": ""France""
+ },
+ ""pays_residence"": ""France"",
+ ""profession"": ""Chercheur"",
+ ""date_entree_fonction"": ""2018-06-28"",
+ ""date_sortie_fonction"": null,
+ ""fonction"": ""Trésorier"",
+ ""qualite"": ""Membre du conseil d'administration"",
+ ""fondateur"": false,
+ ""personne_morale"": null
+ }
+ ],
+ ""liens_entre_organismes"": {
+ ""organisme_issu_transformation"": null,
+ ""organisme_issu_fusion"": null,
+ ""organismes_issus_scission"": []
+ },
+ ""situation_financiere"": {
+ ""annees_subventions_publiques"": [2024, 2025],
+ ""annees_appel_generosite_publique"": [2025],
+ ""annees_financements_etrangers"": []
+ },
+ ""dossiers"": {
+ ""etat_transmission_comptes"": ""En règle"",
+ ""exercices_comptables_transmis"": [2023, 2024, 2025]
+ },
+ ""documents"": [
+ {
+ ""id"": ""7e7867b6-8fe0-11f1-a424-f28dce965a41"",
+ ""type"": ""Statuts"",
+ ""nom_original"": ""Statuts 1957.pdf"",
+ ""type_mime"": ""application/pdf"",
+ ""date_depot"": ""2026-06-24""
+ },
+ {
+ ""id"": ""7e7867b6-8fe0-11f1-a424-f28dce965a42"",
+ ""type"": ""Comptes"",
+ ""nom_original"": ""Comptes annuels 2025.pdf"",
+ ""type_mime"": ""application/pdf"",
+ ""date_depot"": ""2026-06-24""
+ },
+ {
+ ""id"": ""7e7867b6-8fe0-11f1-a424-f28dce965a43"",
+ ""type"": ""Rapport d'activité"",
+ ""nom_original"": ""Rapport d'activité 2025.pdf"",
+ ""type_mime"": ""application/pdf"",
+ ""date_depot"": ""2026-06-24""
+ }
+ ]
+ },
+ ""links"": {},
+ ""meta"": {}
+}"
+,"Fondation reconnue d'utilité publique (FRUP), appelée par SIREN","{""siren_or_siret_or_rnf"":""784308934""}",200,"{
+ ""data"": {
+ ""identifiants"": {
+ ""rnf"": ""075-FRUP-00194-01"",
+ ""siren"": ""784308934"",
+ ""siret"": ""78430893400016""
+ },
+ ""identite"": {
+ ""service_instructeur"": ""75"",
+ ""type_fondation"": ""FRUP"",
+ ""denomination"": ""MAISON DE LA CHIMIE"",
+ ""etat"": ""Active"",
+ ""date_effet_etat"": ""1928-08-12"",
+ ""date_creation"": ""1928-08-12"",
+ ""date_terme"": null,
+ ""date_cloture_exercice"": ""12-31"",
+ ""adresse_siege"": {
+ ""adresse_complete"": ""28 Rue Saint-Dominique 75007 Paris"",
+ ""numero_voie"": ""28"",
+ ""nom_voie"": ""Rue Saint-Dominique"",
+ ""code_postal"": ""75007"",
+ ""commune"": ""Paris 7e Arrondissement"",
+ ""code_insee_commune"": ""75107"",
+ ""departement"": ""75"",
+ ""pays"": ""France""
+ },
+ ""courriel"": ""contact@fondation-exemple.fr"",
+ ""telephone"": ""+33123456789""
+ },
+ ""activite"": {
+ ""objet_social"": ""L'aménagement et l'entretien d'un immeuble destiné à permettre la jouissance de locaux et de salles de réunions aux organismes de chimie pure et appliquée, en vue de contribuer à l'avancement de la science chimique et au développement de ses applications."",
+ ""domaine_interet_general"": ""Scientifique"",
+ ""activite_internationale_prevue_par_statuts"": false
+ },
+ ""dirigeants"": [
+ {
+ ""nom"": ""DUPONT"",
+ ""prenom"": ""Marie"",
+ ""date_naissance"": ""1975-04-12"",
+ ""nationalite"": ""France"",
+ ""adresse_domiciliation"": {
+ ""adresse_complete"": ""20 Rue Exemple 75001 Paris"",
+ ""code_postal"": ""75001"",
+ ""commune"": ""Paris"",
+ ""pays"": ""France""
+ },
+ ""pays_residence"": ""France"",
+ ""profession"": ""Juriste"",
+ ""date_entree_fonction"": ""2018-06-23"",
+ ""date_sortie_fonction"": null,
+ ""fonction"": ""Président"",
+ ""qualite"": ""Membre du conseil d'administration"",
+ ""fondateur"": false,
+ ""personne_morale"": null
+ },
+ {
+ ""nom"": ""MARTIN"",
+ ""prenom"": ""Paul"",
+ ""date_naissance"": ""1968-11-02"",
+ ""nationalite"": ""France"",
+ ""adresse_domiciliation"": {
+ ""adresse_complete"": ""5 Avenue Exemple 75008 Paris"",
+ ""code_postal"": ""75008"",
+ ""commune"": ""Paris"",
+ ""pays"": ""France""
+ },
+ ""pays_residence"": ""France"",
+ ""profession"": ""Chercheur"",
+ ""date_entree_fonction"": ""2018-06-28"",
+ ""date_sortie_fonction"": null,
+ ""fonction"": ""Trésorier"",
+ ""qualite"": ""Membre du conseil d'administration"",
+ ""fondateur"": false,
+ ""personne_morale"": null
+ }
+ ],
+ ""liens_entre_organismes"": {
+ ""organisme_issu_transformation"": null,
+ ""organisme_issu_fusion"": null,
+ ""organismes_issus_scission"": []
+ },
+ ""situation_financiere"": {
+ ""annees_subventions_publiques"": [2024, 2025],
+ ""annees_appel_generosite_publique"": [2025],
+ ""annees_financements_etrangers"": []
+ },
+ ""dossiers"": {
+ ""etat_transmission_comptes"": ""En règle"",
+ ""exercices_comptables_transmis"": [2023, 2024, 2025]
+ },
+ ""documents"": [
+ {
+ ""id"": ""7e7867b6-8fe0-11f1-a424-f28dce965a41"",
+ ""type"": ""Statuts"",
+ ""nom_original"": ""Statuts 1957.pdf"",
+ ""type_mime"": ""application/pdf"",
+ ""date_depot"": ""2026-06-24""
+ },
+ {
+ ""id"": ""7e7867b6-8fe0-11f1-a424-f28dce965a42"",
+ ""type"": ""Comptes"",
+ ""nom_original"": ""Comptes annuels 2025.pdf"",
+ ""type_mime"": ""application/pdf"",
+ ""date_depot"": ""2026-06-24""
+ },
+ {
+ ""id"": ""7e7867b6-8fe0-11f1-a424-f28dce965a43"",
+ ""type"": ""Rapport d'activité"",
+ ""nom_original"": ""Rapport d'activité 2025.pdf"",
+ ""type_mime"": ""application/pdf"",
+ ""date_depot"": ""2026-06-24""
+ }
+ ]
+ },
+ ""links"": {},
+ ""meta"": {}
+}"
+,"Fondation reconnue d'utilité publique (FRUP), appelée par SIRET","{""siren_or_siret_or_rnf"":""78430893400016""}",200,"{
+ ""data"": {
+ ""identifiants"": {
+ ""rnf"": ""075-FRUP-00194-01"",
+ ""siren"": ""784308934"",
+ ""siret"": ""78430893400016""
+ },
+ ""identite"": {
+ ""service_instructeur"": ""75"",
+ ""type_fondation"": ""FRUP"",
+ ""denomination"": ""MAISON DE LA CHIMIE"",
+ ""etat"": ""Active"",
+ ""date_effet_etat"": ""1928-08-12"",
+ ""date_creation"": ""1928-08-12"",
+ ""date_terme"": null,
+ ""date_cloture_exercice"": ""12-31"",
+ ""adresse_siege"": {
+ ""adresse_complete"": ""28 Rue Saint-Dominique 75007 Paris"",
+ ""numero_voie"": ""28"",
+ ""nom_voie"": ""Rue Saint-Dominique"",
+ ""code_postal"": ""75007"",
+ ""commune"": ""Paris 7e Arrondissement"",
+ ""code_insee_commune"": ""75107"",
+ ""departement"": ""75"",
+ ""pays"": ""France""
+ },
+ ""courriel"": ""contact@fondation-exemple.fr"",
+ ""telephone"": ""+33123456789""
+ },
+ ""activite"": {
+ ""objet_social"": ""L'aménagement et l'entretien d'un immeuble destiné à permettre la jouissance de locaux et de salles de réunions aux organismes de chimie pure et appliquée, en vue de contribuer à l'avancement de la science chimique et au développement de ses applications."",
+ ""domaine_interet_general"": ""Scientifique"",
+ ""activite_internationale_prevue_par_statuts"": false
+ },
+ ""dirigeants"": [
+ {
+ ""nom"": ""DUPONT"",
+ ""prenom"": ""Marie"",
+ ""date_naissance"": ""1975-04-12"",
+ ""nationalite"": ""France"",
+ ""adresse_domiciliation"": {
+ ""adresse_complete"": ""20 Rue Exemple 75001 Paris"",
+ ""code_postal"": ""75001"",
+ ""commune"": ""Paris"",
+ ""pays"": ""France""
+ },
+ ""pays_residence"": ""France"",
+ ""profession"": ""Juriste"",
+ ""date_entree_fonction"": ""2018-06-23"",
+ ""date_sortie_fonction"": null,
+ ""fonction"": ""Président"",
+ ""qualite"": ""Membre du conseil d'administration"",
+ ""fondateur"": false,
+ ""personne_morale"": null
+ },
+ {
+ ""nom"": ""MARTIN"",
+ ""prenom"": ""Paul"",
+ ""date_naissance"": ""1968-11-02"",
+ ""nationalite"": ""France"",
+ ""adresse_domiciliation"": {
+ ""adresse_complete"": ""5 Avenue Exemple 75008 Paris"",
+ ""code_postal"": ""75008"",
+ ""commune"": ""Paris"",
+ ""pays"": ""France""
+ },
+ ""pays_residence"": ""France"",
+ ""profession"": ""Chercheur"",
+ ""date_entree_fonction"": ""2018-06-28"",
+ ""date_sortie_fonction"": null,
+ ""fonction"": ""Trésorier"",
+ ""qualite"": ""Membre du conseil d'administration"",
+ ""fondateur"": false,
+ ""personne_morale"": null
+ }
+ ],
+ ""liens_entre_organismes"": {
+ ""organisme_issu_transformation"": null,
+ ""organisme_issu_fusion"": null,
+ ""organismes_issus_scission"": []
+ },
+ ""situation_financiere"": {
+ ""annees_subventions_publiques"": [2024, 2025],
+ ""annees_appel_generosite_publique"": [2025],
+ ""annees_financements_etrangers"": []
+ },
+ ""dossiers"": {
+ ""etat_transmission_comptes"": ""En règle"",
+ ""exercices_comptables_transmis"": [2023, 2024, 2025]
+ },
+ ""documents"": [
+ {
+ ""id"": ""7e7867b6-8fe0-11f1-a424-f28dce965a41"",
+ ""type"": ""Statuts"",
+ ""nom_original"": ""Statuts 1957.pdf"",
+ ""type_mime"": ""application/pdf"",
+ ""date_depot"": ""2026-06-24""
+ },
+ {
+ ""id"": ""7e7867b6-8fe0-11f1-a424-f28dce965a42"",
+ ""type"": ""Comptes"",
+ ""nom_original"": ""Comptes annuels 2025.pdf"",
+ ""type_mime"": ""application/pdf"",
+ ""date_depot"": ""2026-06-24""
+ },
+ {
+ ""id"": ""7e7867b6-8fe0-11f1-a424-f28dce965a43"",
+ ""type"": ""Rapport d'activité"",
+ ""nom_original"": ""Rapport d'activité 2025.pdf"",
+ ""type_mime"": ""application/pdf"",
+ ""date_depot"": ""2026-06-24""
+ }
+ ]
+ },
+ ""links"": {},
+ ""meta"": {}
+}"
+,Fondation non trouvée,"{""siren_or_siret_or_rnf"":""099-fdd-99999-99""}",404,"{
+ ""errors"": [
+ {
+ ""code"": ""44003"",
+ ""title"": ""Entité non trouvée"",
+ ""detail"": ""Le ou les paramètre(s) d'entrée n'existent pas, ne sont pas connus, ou ne comportent aucune information pour cet appel. Veuillez vérifier que votre recherche est couverte par le périmètre de l'API."",
+ ""meta"": {
+ ""provider"": ""SIAF""
+ }
+ }
+ ]
+}"
diff --git a/mocks/tokens/default b/mocks/tokens/default
index ebc43d7ebb..9706c6d4c2 100644
--- a/mocks/tokens/default
+++ b/mocks/tokens/default
@@ -1 +1 @@
-eyJhbGciOiJIUzI1NiJ9.eyJ1aWQiOiIzNDkyZGRjOC05MWIzLTQwZTAtYmE0MC1jMjg5NGY3NDgwYTciLCJqdGkiOiIwMDAwMDAwMC0wMDAwLTAwMDAtMDAwMC0wMDAwMDAwMDAwMDAiLCJzY29wZXMiOlsiYXNzb2NpYXRpb25zIiwib3Blbl9kYXRhIiwicHJvYnRwIiwiY290aXNhdGlvbnNfcHJvYnRwIiwiYXR0ZXN0YXRpb25zX2Zpc2NhbGVzIiwiYXR0ZXN0YXRpb25fZmlzY2FsZV9kZ2ZpcCIsImF0dGVzdGF0aW9uc19zb2NpYWxlcyIsImF0dGVzdGF0aW9uX3NvY2lhbGVfdXJzc2FmIiwiYmlsYW5zX2VudHJlcHJpc2VfYmRmIiwiYmlsYW5zX2JkZiIsImZudHBfY2FydGVfcHJvIiwiY2VydGlmaWNhdF9jbmV0cCIsImNlcnRpZmljYXRpb25fY25ldHAiLCJjZXJ0aWZpY2F0X29wcWliaSIsInF1YWxpYmF0IiwiY2VydGlmaWNhdF9yZ2VfYWRlbWUiLCJkb2N1bWVudHNfYXNzb2NpYXRpb24iLCJlbnRyZXByaXNlcyIsInVuaXRlc19sZWdhbGVzX2V0YWJsaXNzZW1lbnRzX2luc2VlIiwiZXRhYmxpc3NlbWVudHMiLCJleGVyY2ljZXMiLCJjaGlmZnJlX2FmZmFpcmVzX2RnZmlwIiwiZXh0cmFpdHNfcmNzIiwibGlhc3NlX2Zpc2NhbGUiLCJsaWFzc2VzX2Zpc2NhbGVzX2RnZmlwIiwiY2VydGlmaWNhdGlvbnNfcXVhbGlvcGlfZnJhbmNlX2NvbXBldGVuY2VzIiwiYXR0ZXN0YXRpb25fY290aXNhdGlvbnNfY29uZ2VzX3BheWVzX2Nob21hZ2VfaW50ZW1wZXJpZXNfY2lidHBfY25ldHAiLCJlb3JpX2RvdWFuZXMiLCJkYXRhX3N1YnZlbnRpb25fc3VidmVudGlvbnMiLCJsaWVuc19jYXBpdGFsaXN0aXF1ZXNfZGdmaXAiLCJjb252ZW50aW9uc19jb2xsZWN0aXZlcyIsIm1hbmRhdGFpcmVzX3NvY2lhdXhfaW5mb2dyZWZmZSIsImFjdGVzX2lucGkiLCJhc3NvY2lhdGlvbnNfZG9ubmVlc19wcm90ZWdlZXMiLCJhc3NvY2lhdGlvbnNfZGplcHZhIiwibXNhX2NvdGlzYXRpb25zIiwiY290aXNhdGlvbnNfbXNhIiwiY2VydGlmaWNhdGlvbl9vcHFpYmkiLCJlbnRyZXByaXNlc19hcnRpc2FuYWxlcyIsImVmZmVjdGlmc191cnNzYWYiLCJiZW5lZmljaWFpcmVzX2VmZmVjdGlmc19pbnBpIiwiY25hZl9xdW90aWVudF9mYW1pbGlhbCIsImNuYWZfYWxsb2NhdGFpcmVzIiwiY25hZl9lbmZhbnRzIiwiY25hZl9hZHJlc3NlIiwiY29tcGxlbWVudGFpcmVfc2FudGVfc29saWRhaXJlIiwiYWxsb2NhdGlvbl9hZHVsdGVfaGFuZGljYXBlIiwicmV2ZW51X3NvbGlkYXJpdGVfYWN0aXZlIiwicmV2ZW51X3NvbGlkYXJpdGVfYWN0aXZlX21ham9yYXRpb24iLCJhbGxvY2F0aW9uX3NvdXRpZW5fZmFtaWxpYWwiLCJwcmltZV9hY3Rpdml0ZSIsInByaW1lX2FjdGl2aXRlX21ham9yYXRpb24iLCJjbm91c19zdGF0dXRfYm91cnNpZXIiLCJjbm91c19lY2hlbG9uX2JvdXJzZSIsImNub3VzX2VtYWlsIiwiY25vdXNfcGVyaW9kZV92ZXJzZW1lbnQiLCJjbm91c19zdGF0dXRfYm91cnNlIiwiY25vdXNfdmlsbGVfZXR1ZGVzIiwiY25vdXNfaWRlbnRpdGUiLCJtZXNyaV9pZGVudGlmaWFudCIsIm1lc3JpX2lkZW50aXRlIiwibWVzcmlfaW5zY3JpcHRpb25fZXR1ZGlhbnQiLCJtZXNyaV9pbnNjcmlwdGlvbl9hdXRyZSIsIm1lc3JpX2FkbWlzc2lvbiIsIm1lc3JpX2V0YWJsaXNzZW1lbnRzIiwicG9sZV9lbXBsb2lfaWRlbnRpdGUiLCJwb2xlX2VtcGxvaV9hZHJlc3NlIiwicG9sZV9lbXBsb2lfY29udGFjdCIsInBvbGVfZW1wbG9pX2luc2NyaXB0aW9uIiwicG9sZV9lbXBsb2lfcGFpZW1lbnRzIiwibWVuX3N0YXR1dF9zY29sYXJpdGUiLCJtZW5fc3RhdHV0X2JvdXJzaWVyIiwibWVuX2VjaGVsb25fYm91cnNlIiwiYW50c19leHRyYWl0X2ltbWF0cmljdWxhdGlvbl92ZWhpY3VsZV9pZGVudGl0ZV9wYXJ0aWN1bGllciIsImFudHNfZXh0cmFpdF9pbW1hdHJpY3VsYXRpb25fdmVoaWN1bGVfYWRyZXNzZV9wYXJ0aWN1bGllciIsImFudHNfZXh0cmFpdF9pbW1hdHJpY3VsYXRpb25fdmVoaWN1bGVfc3RhdHV0X3JhdHRhY2hlbWVudCIsImFudHNfZXh0cmFpdF9pbW1hdHJpY3VsYXRpb25fdmVoaWN1bGVfZG9ubmVlc19pbW1hdHJpY3VsYXRpb25fdmVoaWN1bGUiLCJhbnRzX2V4dHJhaXRfaW1tYXRyaWN1bGF0aW9uX3ZlaGljdWxlX2NhcmFjdGVyaXN0aXF1ZXNfdGVjaG5pcXVlc192ZWhpY3VsZSIsInBvbGVfZW1wbG9pX2lkZW50aWZpYW50IiwibWVuX3N0YXR1dF9pZGVudGl0ZSIsIm1lbl9zdGF0dXRfZXRhYmxpc3NlbWVudCIsIm1lbl9zdGF0dXRfbW9kdWxlX2VsZW1lbnRhaXJlX2Zvcm1hdGlvbiIsIm1lbl9yZWdpbWVfcGVuc2lvbm5hdCIsIm1lc3JpX2FkbWlzc2lvbnMiLCJtZXNyaV9hZG1pc3Npb25faW5zY3JpdCIsIm1lc3JpX2FkbWlzc2lvbl9yZWdpbWVfZm9ybWF0aW9uIiwibWVzcmlfYWRtaXNzaW9uX2NvbW11bmVfZXR1ZGVzIiwibWVzcmlfYWRtaXNzaW9uX2V0YWJsaXNzZW1lbnRfZXR1ZGVzIiwiY25hdl9hbGxvY2F0aW9uX2VuZmFudF9oYW5kaWNhcGUiLCJjbmF2X2FsbG9jYXRpb25fcmVudHJlZV9zY29sYWlyZSIsImNub3VzX2luZSIsImRzbmpfc3RhdHV0X3NlcnZpY2VfbmF0aW9uYWwiLCJjbmF2X3BhcnRpY2lwYXRpb25fZmFtaWxpYWxlX2VhamVfYWxsb2NhdGFpcmVzIiwiY25hdl9wYXJ0aWNpcGF0aW9uX2ZhbWlsaWFsZV9lYWplX2VuZmFudHMiLCJjbmF2X3BhcnRpY2lwYXRpb25fZmFtaWxpYWxlX2VhamVfYWRyZXNzZSIsImNuYXZfcGFydGljaXBhdGlvbl9mYW1pbGlhbGVfZWFqZV9wYXJhbWV0cmVzX2NhbGN1bCIsInNkaF9zdGF0dXRfc3BvcnRpZl9pZGVudGl0ZSIsInNkaF9zdGF0dXRfc3BvcnRpZl9lc3Rfc3BvcnRpZl9kZV9oYXV0X25pdmVhdSIsInNkaF9zdGF0dXRfc3BvcnRpZl9hX2V0ZV9zcG9ydGlmX2RlX2hhdXRfbml2ZWF1Iiwic2RoX3N0YXR1dF9zcG9ydGlmX2luZm9ybWF0aW9uc19zdGF0dXQiLCJzZGhfc3RhdHV0X3Nwb3J0aWZfaW5mb3JtYXRpb25zX3N0YXR1dHNfcHJlY2VkZW50cyIsImdpcF9tZHNfc2VydmljZV9jaXZpcXVlX3N0YXR1dF9hY3R1ZWwiLCJnaXBfbWRzX3NlcnZpY2VfY2l2aXF1ZV9zdGF0dXRfcGFzc2UiLCJnaXBfbWRzX3NlcnZpY2VfY2l2aXF1ZV9vcmdhbmlzbWVfYWNjdWVpbCIsImdpcF9tZHNfc2VydmljZV9jaXZpcXVlX2RhdGVzIl0sInN1YiI6InN0YWdpbmciLCJpYXQiOjE3ODQ2MzQ0MjcsInZlcnNpb24iOiIxLjAiLCJleHAiOjIxMDAyNTM2Mjd9.v4umVXBY704AxC3laz_Cl5hBYXbKcvyuBw8nC2Db5Hc
\ No newline at end of file
+eyJhbGciOiJIUzI1NiJ9.eyJ1aWQiOiIwZThhZDA5MC02NTNkLTRjNWMtODI0ZC1jZGUwNTg3YTlhOWUiLCJqdGkiOiIwMDAwMDAwMC0wMDAwLTAwMDAtMDAwMC0wMDAwMDAwMDAwMDAiLCJzY29wZXMiOlsiYXNzb2NpYXRpb25zIiwib3Blbl9kYXRhIiwicHJvYnRwIiwiY290aXNhdGlvbnNfcHJvYnRwIiwiYXR0ZXN0YXRpb25zX2Zpc2NhbGVzIiwiYXR0ZXN0YXRpb25fZmlzY2FsZV9kZ2ZpcCIsImF0dGVzdGF0aW9uc19zb2NpYWxlcyIsImF0dGVzdGF0aW9uX3NvY2lhbGVfdXJzc2FmIiwiYmlsYW5zX2VudHJlcHJpc2VfYmRmIiwiYmlsYW5zX2JkZiIsImZudHBfY2FydGVfcHJvIiwiY2VydGlmaWNhdF9jbmV0cCIsImNlcnRpZmljYXRpb25fY25ldHAiLCJjZXJ0aWZpY2F0X29wcWliaSIsInF1YWxpYmF0IiwiY2VydGlmaWNhdF9yZ2VfYWRlbWUiLCJkb2N1bWVudHNfYXNzb2NpYXRpb24iLCJlbnRyZXByaXNlcyIsInVuaXRlc19sZWdhbGVzX2V0YWJsaXNzZW1lbnRzX2luc2VlIiwiZXRhYmxpc3NlbWVudHMiLCJleGVyY2ljZXMiLCJjaGlmZnJlX2FmZmFpcmVzX2RnZmlwIiwiZXh0cmFpdHNfcmNzIiwibGlhc3NlX2Zpc2NhbGUiLCJsaWFzc2VzX2Zpc2NhbGVzX2RnZmlwIiwiY2VydGlmaWNhdGlvbnNfcXVhbGlvcGlfZnJhbmNlX2NvbXBldGVuY2VzIiwiYXR0ZXN0YXRpb25fY290aXNhdGlvbnNfY29uZ2VzX3BheWVzX2Nob21hZ2VfaW50ZW1wZXJpZXNfY2lidHBfY25ldHAiLCJlb3JpX2RvdWFuZXMiLCJkYXRhX3N1YnZlbnRpb25fc3VidmVudGlvbnMiLCJsaWVuc19jYXBpdGFsaXN0aXF1ZXNfZGdmaXAiLCJjb252ZW50aW9uc19jb2xsZWN0aXZlcyIsIm1hbmRhdGFpcmVzX3NvY2lhdXhfaW5mb2dyZWZmZSIsImFjdGVzX2lucGkiLCJhc3NvY2lhdGlvbnNfZG9ubmVlc19wcm90ZWdlZXMiLCJhc3NvY2lhdGlvbnNfZGplcHZhIiwiZm9uZGF0aW9uc19taV9zaWFmIiwibXNhX2NvdGlzYXRpb25zIiwiY290aXNhdGlvbnNfbXNhIiwiY2VydGlmaWNhdGlvbl9vcHFpYmkiLCJlbnRyZXByaXNlc19hcnRpc2FuYWxlcyIsImVmZmVjdGlmc191cnNzYWYiLCJiZW5lZmljaWFpcmVzX2VmZmVjdGlmc19pbnBpIiwiY25hZl9xdW90aWVudF9mYW1pbGlhbCIsImNuYWZfYWxsb2NhdGFpcmVzIiwiY25hZl9lbmZhbnRzIiwiY25hZl9hZHJlc3NlIiwiY29tcGxlbWVudGFpcmVfc2FudGVfc29saWRhaXJlIiwiYWxsb2NhdGlvbl9hZHVsdGVfaGFuZGljYXBlIiwicmV2ZW51X3NvbGlkYXJpdGVfYWN0aXZlIiwicmV2ZW51X3NvbGlkYXJpdGVfYWN0aXZlX21ham9yYXRpb24iLCJhbGxvY2F0aW9uX3NvdXRpZW5fZmFtaWxpYWwiLCJwcmltZV9hY3Rpdml0ZSIsInByaW1lX2FjdGl2aXRlX21ham9yYXRpb24iLCJjbm91c19zdGF0dXRfYm91cnNpZXIiLCJjbm91c19lY2hlbG9uX2JvdXJzZSIsImNub3VzX2VtYWlsIiwiY25vdXNfcGVyaW9kZV92ZXJzZW1lbnQiLCJjbm91c19zdGF0dXRfYm91cnNlIiwiY25vdXNfdmlsbGVfZXR1ZGVzIiwiY25vdXNfaWRlbnRpdGUiLCJtZXNyaV9pZGVudGlmaWFudCIsIm1lc3JpX2lkZW50aXRlIiwibWVzcmlfaW5zY3JpcHRpb25fZXR1ZGlhbnQiLCJtZXNyaV9pbnNjcmlwdGlvbl9hdXRyZSIsIm1lc3JpX2FkbWlzc2lvbiIsIm1lc3JpX2V0YWJsaXNzZW1lbnRzIiwicG9sZV9lbXBsb2lfaWRlbnRpdGUiLCJwb2xlX2VtcGxvaV9hZHJlc3NlIiwicG9sZV9lbXBsb2lfY29udGFjdCIsInBvbGVfZW1wbG9pX2luc2NyaXB0aW9uIiwicG9sZV9lbXBsb2lfcGFpZW1lbnRzIiwibWVuX3N0YXR1dF9zY29sYXJpdGUiLCJtZW5fc3RhdHV0X2JvdXJzaWVyIiwibWVuX2VjaGVsb25fYm91cnNlIiwiYW50c19leHRyYWl0X2ltbWF0cmljdWxhdGlvbl92ZWhpY3VsZV9pZGVudGl0ZV9wYXJ0aWN1bGllciIsImFudHNfZXh0cmFpdF9pbW1hdHJpY3VsYXRpb25fdmVoaWN1bGVfYWRyZXNzZV9wYXJ0aWN1bGllciIsImFudHNfZXh0cmFpdF9pbW1hdHJpY3VsYXRpb25fdmVoaWN1bGVfc3RhdHV0X3JhdHRhY2hlbWVudCIsImFudHNfZXh0cmFpdF9pbW1hdHJpY3VsYXRpb25fdmVoaWN1bGVfZG9ubmVlc19pbW1hdHJpY3VsYXRpb25fdmVoaWN1bGUiLCJhbnRzX2V4dHJhaXRfaW1tYXRyaWN1bGF0aW9uX3ZlaGljdWxlX2NhcmFjdGVyaXN0aXF1ZXNfdGVjaG5pcXVlc192ZWhpY3VsZSIsInBvbGVfZW1wbG9pX2lkZW50aWZpYW50IiwibWVuX3N0YXR1dF9pZGVudGl0ZSIsIm1lbl9zdGF0dXRfZXRhYmxpc3NlbWVudCIsIm1lbl9zdGF0dXRfbW9kdWxlX2VsZW1lbnRhaXJlX2Zvcm1hdGlvbiIsIm1lbl9yZWdpbWVfcGVuc2lvbm5hdCIsIm1lc3JpX2FkbWlzc2lvbnMiLCJtZXNyaV9hZG1pc3Npb25faW5zY3JpdCIsIm1lc3JpX2FkbWlzc2lvbl9yZWdpbWVfZm9ybWF0aW9uIiwibWVzcmlfYWRtaXNzaW9uX2NvbW11bmVfZXR1ZGVzIiwibWVzcmlfYWRtaXNzaW9uX2V0YWJsaXNzZW1lbnRfZXR1ZGVzIiwiY25hdl9hbGxvY2F0aW9uX2VuZmFudF9oYW5kaWNhcGUiLCJjbmF2X2FsbG9jYXRpb25fcmVudHJlZV9zY29sYWlyZSIsImNub3VzX2luZSIsImRzbmpfc3RhdHV0X3NlcnZpY2VfbmF0aW9uYWwiLCJjbmF2X3BhcnRpY2lwYXRpb25fZmFtaWxpYWxlX2VhamVfYWxsb2NhdGFpcmVzIiwiY25hdl9wYXJ0aWNpcGF0aW9uX2ZhbWlsaWFsZV9lYWplX2VuZmFudHMiLCJjbmF2X3BhcnRpY2lwYXRpb25fZmFtaWxpYWxlX2VhamVfYWRyZXNzZSIsImNuYXZfcGFydGljaXBhdGlvbl9mYW1pbGlhbGVfZWFqZV9wYXJhbWV0cmVzX2NhbGN1bCIsInNkaF9zdGF0dXRfc3BvcnRpZl9pZGVudGl0ZSIsInNkaF9zdGF0dXRfc3BvcnRpZl9lc3Rfc3BvcnRpZl9kZV9oYXV0X25pdmVhdSIsInNkaF9zdGF0dXRfc3BvcnRpZl9hX2V0ZV9zcG9ydGlmX2RlX2hhdXRfbml2ZWF1Iiwic2RoX3N0YXR1dF9zcG9ydGlmX2luZm9ybWF0aW9uc19zdGF0dXQiLCJzZGhfc3RhdHV0X3Nwb3J0aWZfaW5mb3JtYXRpb25zX3N0YXR1dHNfcHJlY2VkZW50cyIsImdpcF9tZHNfc2VydmljZV9jaXZpcXVlX3N0YXR1dF9hY3R1ZWwiLCJnaXBfbWRzX3NlcnZpY2VfY2l2aXF1ZV9zdGF0dXRfcGFzc2UiLCJnaXBfbWRzX3NlcnZpY2VfY2l2aXF1ZV9vcmdhbmlzbWVfYWNjdWVpbCIsImdpcF9tZHNfc2VydmljZV9jaXZpcXVlX2RhdGVzIl0sInN1YiI6InN0YWdpbmciLCJpYXQiOjE3ODcxMjk1ODAsInZlcnNpb24iOiIxLjAiLCJleHAiOjIxMDI3NDg3ODB9.2kb4Y0IM2PxyVmBT-MRYq4j8mWM7lIRZR2fuRFej4gc
\ No newline at end of file
diff --git a/siade/app/controllers/api_entreprise/v3_and_more/mi/siaf/fondations_controller.rb b/siade/app/controllers/api_entreprise/v3_and_more/mi/siaf/fondations_controller.rb
new file mode 100644
index 0000000000..8062f56c15
--- /dev/null
+++ b/siade/app/controllers/api_entreprise/v3_and_more/mi/siaf/fondations_controller.rb
@@ -0,0 +1,26 @@
+class APIEntreprise::V3AndMore::MI::SIAF::FondationsController < APIEntreprise::V3AndMore::BaseController
+ def show
+ if organizer.success?
+ render json: organizer[:payload],
+ status: organizer[:status]
+ else
+ render_errors
+ end
+ end
+
+ private
+
+ def organizer_params
+ {
+ siren_or_siret_or_rnf: params.require(:siren_or_siret_or_rnf)
+ }
+ end
+
+ def serializer_module
+ ::APIEntreprise::MI::SIAF::FondationsSerializer
+ end
+
+ def organizer
+ @organizer ||= retrieve_payload_data(::MI::SIAF::Fondations)
+ end
+end
diff --git a/siade/app/errors/unprocessable_entity_error.rb b/siade/app/errors/unprocessable_entity_error.rb
index 048983f606..2f2f294112 100644
--- a/siade/app/errors/unprocessable_entity_error.rb
+++ b/siade/app/errors/unprocessable_entity_error.rb
@@ -25,6 +25,7 @@ def code
month: '00305',
code_insee_commune: '00306',
siren_or_siret_or_rna: '00330',
+ siren_or_siret_or_rnf: '00331',
uuid: '00314',
# DGFIP entreprise
year: '00307',
diff --git a/siade/app/interactors/mi/siaf/fondations/make_request.rb b/siade/app/interactors/mi/siaf/fondations/make_request.rb
new file mode 100644
index 0000000000..675050af36
--- /dev/null
+++ b/siade/app/interactors/mi/siaf/fondations/make_request.rb
@@ -0,0 +1,23 @@
+class MI::SIAF::Fondations::MakeRequest < MockedInteractor
+ protected
+
+ def mocking_params
+ {
+ siren_or_siret_or_rnf: context.params[:siren_or_siret_or_rnf]&.downcase
+ }
+ end
+
+ def request_uri
+ fail NotImplementedError
+ end
+
+ def request_params
+ fail NotImplementedError
+ end
+
+ private
+
+ def siaf_domain
+ Siade.credentials[:siaf_domain]
+ end
+end
diff --git a/siade/app/interactors/validate_siren_or_siret_or_rnf.rb b/siade/app/interactors/validate_siren_or_siret_or_rnf.rb
new file mode 100644
index 0000000000..1b0d5af861
--- /dev/null
+++ b/siade/app/interactors/validate_siren_or_siret_or_rnf.rb
@@ -0,0 +1,25 @@
+class ValidateSirenOrSiretOrRNF < ValidateParamInteractor
+ def call
+ return if rnf_id.valid? || siret.valid? || siren.valid?
+
+ invalid_param!(:siren_or_siret_or_rnf)
+ end
+
+ private
+
+ def rnf_id
+ @rnf_id ||= RNFId.new(siren_or_siret_or_rnf)
+ end
+
+ def siret
+ @siret ||= Siret.new(siren_or_siret_or_rnf)
+ end
+
+ def siren
+ @siren ||= Siren.new(siren_or_siret_or_rnf)
+ end
+
+ def siren_or_siret_or_rnf
+ context.params[:siren_or_siret_or_rnf]
+ end
+end
diff --git a/siade/app/models/rnf_id.rb b/siade/app/models/rnf_id.rb
new file mode 100644
index 0000000000..6e69ca80d2
--- /dev/null
+++ b/siade/app/models/rnf_id.rb
@@ -0,0 +1,15 @@
+class RNFId
+ attr_accessor :rnf_id
+
+ include ActiveModel::Validations
+
+ validates :rnf_id, rnf_id_format: true
+
+ def initialize(rnf_id = nil)
+ @rnf_id = rnf_id
+ end
+
+ def to_s
+ @rnf_id
+ end
+end
diff --git a/siade/app/organizers/mi/siaf/fondations.rb b/siade/app/organizers/mi/siaf/fondations.rb
new file mode 100644
index 0000000000..2671891790
--- /dev/null
+++ b/siade/app/organizers/mi/siaf/fondations.rb
@@ -0,0 +1,8 @@
+class MI::SIAF::Fondations < RetrieverOrganizer
+ organize MI::SIAF::Fondations::ValidateParams,
+ MI::SIAF::Fondations::MakeRequest
+
+ def provider_name
+ 'SIAF'
+ end
+end
diff --git a/siade/app/organizers/mi/siaf/fondations/validate_params.rb b/siade/app/organizers/mi/siaf/fondations/validate_params.rb
new file mode 100644
index 0000000000..7302c85e5b
--- /dev/null
+++ b/siade/app/organizers/mi/siaf/fondations/validate_params.rb
@@ -0,0 +1,3 @@
+class MI::SIAF::Fondations::ValidateParams < ValidateParamsOrganizer
+ organize ValidateSirenOrSiretOrRNF
+end
diff --git a/siade/app/serializers/api_entreprise/mi/siaf/fondations_serializer/v3.rb b/siade/app/serializers/api_entreprise/mi/siaf/fondations_serializer/v3.rb
new file mode 100644
index 0000000000..759eb4e969
--- /dev/null
+++ b/siade/app/serializers/api_entreprise/mi/siaf/fondations_serializer/v3.rb
@@ -0,0 +1,2 @@
+class APIEntreprise::MI::SIAF::FondationsSerializer::V3 < APIEntreprise::V3AndMore::BaseSerializer
+end
diff --git a/siade/app/services/errors_backend.rb b/siade/app/services/errors_backend.rb
index 630a0684d1..04f6fbcf23 100644
--- a/siade/app/services/errors_backend.rb
+++ b/siade/app/services/errors_backend.rb
@@ -79,6 +79,7 @@ def provider_hash
'41' => 'SDH',
'42' => 'ANTS',
'43' => 'DGFIP - TVA',
+ '44' => 'SIAF',
'51' => 'FranceConnect',
'52' => 'DataSubvention'
}
diff --git a/siade/app/services/generate_code_sample_from_path.rb b/siade/app/services/generate_code_sample_from_path.rb
index 4cad23404a..c43fe426c6 100644
--- a/siade/app/services/generate_code_sample_from_path.rb
+++ b/siade/app/services/generate_code_sample_from_path.rb
@@ -1,13 +1,14 @@
class GenerateCodeSampleFromPath
- def initialize(path)
+ def initialize(path, staging: false)
@path = path
+ @staging = staging
end
# rubocop:disable Layout/LineContinuationLeadingSpace
def perform
"curl -X GET \\\n" \
" -H \"Authorization: Bearer $token\" \\\n" \
- " --url \"https://entreprise.api.gouv.fr#{interpolated_path}#{query_params}\""
+ " --url \"#{host}#{interpolated_path}#{query_params}\""
end
# rubocop:enable Layout/LineContinuationLeadingSpace
@@ -15,11 +16,19 @@ def perform
attr_reader :path
+ def host
+ if @staging
+ 'https://staging.entreprise.api.gouv.fr'
+ else
+ 'https://entreprise.api.gouv.fr'
+ end
+ end
+
# rubocop:disable Metrics/MethodLength
def interpolated_path
path.gsub(/\{[^}]+\}/) do |parameter|
case parameter[1..-2]
- when 'siret', 'siret_or_rna', 'siret_or_eori', 'siren_or_siret_or_rna'
+ when 'siret', 'siret_or_rna', 'siret_or_eori', 'siren_or_siret_or_rna', 'siren_or_siret_or_rnf'
example_siret
when 'siren', 'siren_or_rna'
example_siret.first(9)
diff --git a/siade/app/validators/rnf_id_format_validator.rb b/siade/app/validators/rnf_id_format_validator.rb
new file mode 100644
index 0000000000..94abf22e23
--- /dev/null
+++ b/siade/app/validators/rnf_id_format_validator.rb
@@ -0,0 +1,7 @@
+class RNFIdFormatValidator < ActiveModel::EachValidator
+ def validate_each(record, attribute, value)
+ return if value =~ /\A\d{2,3}[AB]?-(FRUP|FDD|FE)-\d{5}-\d{2}\z/i
+
+ record.errors.add(attribute, :format, message: 'department code, foundation type (FRUP, FDD or FE), 5 digits and 2 digits, separated by dashes')
+ end
+end
diff --git a/siade/bin/augment_openapi_files.rb b/siade/bin/augment_openapi_files.rb
index beb85d7420..6d5dcabc34 100644
--- a/siade/bin/augment_openapi_files.rb
+++ b/siade/bin/augment_openapi_files.rb
@@ -11,12 +11,14 @@ def augment_with_maintenances(schema, path, maintenances)
end
def augment_with_code_samples(schema, path)
+ staging_only = schema.dig('get', 'tags')&.include?('Prochainement') || false
+
schema['get'].merge!({
'x-codeSamples' => [
{
'lang' => 'cURL',
'label' => 'Ligne de commande',
- 'source' => GenerateCodeSampleFromPath.new(path).perform
+ 'source' => GenerateCodeSampleFromPath.new(path, staging: staging_only).perform
}
]
}.compact)
diff --git a/siade/config/errors.yml b/siade/config/errors.yml
index 4df30d71b3..f98784e7b1 100644
--- a/siade/config/errors.yml
+++ b/siade/config/errors.yml
@@ -166,6 +166,12 @@
source:
parameter: 'id'
+- code: '00331'
+ title: 'Entité non traitable'
+ detail: "Le numéro de siren, le numéro de siret ou l'identifiant RNF indiqué n'est pas correctement formatté"
+ source:
+ parameter: 'id'
+
- code: '00333'
title: 'Entité non traitable'
detail: "Le numéro de siren ou le numéro d'association indiqué n'est pas correctement formatté"
diff --git a/siade/config/initializers/inflections.rb b/siade/config/initializers/inflections.rb
index 8868714e28..7efaaec509 100644
--- a/siade/config/initializers/inflections.rb
+++ b/siade/config/initializers/inflections.rb
@@ -68,8 +68,10 @@
inflect.acronym 'RGE'
inflect.acronym 'RNA'
inflect.acronym 'RNE'
+ inflect.acronym 'RNF'
inflect.acronym 'RNM'
inflect.acronym 'SDH'
+ inflect.acronym 'SIAF'
inflect.acronym 'URSSAF'
inflect.irregular 'aide_covid_effectifs', 'aides_covid_effectifs'
diff --git a/siade/config/routes/api_entreprise.rb b/siade/config/routes/api_entreprise.rb
index 9a8003f6e6..51f593b47e 100644
--- a/siade/config/routes/api_entreprise.rb
+++ b/siade/config/routes/api_entreprise.rb
@@ -97,6 +97,8 @@
get 'djepva/api-association/associations/:siren_or_rna', to: 'api_entreprise/v3_and_more/mi/unites_legales#show'
get 'djepva/api-association/associations/open_data/:siren_or_rna', to: 'api_entreprise/v3_and_more/mi/unites_legales_open_data#show'
+ get 'ministere_interieur/siaf/fondations/:siren_or_siret_or_rnf', to: 'api_entreprise/v3_and_more/mi/siaf/fondations#show'
+
get 'data_subvention/associations/:siren_or_siret_or_rna/subventions', to: 'api_entreprise/v3_and_more/data_subvention/subventions#show'
namespace :msa do
diff --git a/siade/spec/interactors/mi/siaf/fondations/make_request_spec.rb b/siade/spec/interactors/mi/siaf/fondations/make_request_spec.rb
new file mode 100644
index 0000000000..2facc0a0ad
--- /dev/null
+++ b/siade/spec/interactors/mi/siaf/fondations/make_request_spec.rb
@@ -0,0 +1,43 @@
+RSpec.describe MI::SIAF::Fondations::MakeRequest, type: :make_request do
+ describe '.call' do
+ subject { described_class.call(params:, operation_id: 'api_entreprise_v3_mi_siaf_fondations') }
+
+ let(:params) do
+ {
+ siren_or_siret_or_rnf: valid_rnf_id
+ }
+ end
+
+ it { is_expected.to be_a_success }
+
+ it 'serves the mocked payload matching the downcased param' do
+ expect(subject.mocked_data[:payload].dig('data', 'identifiants', 'rnf')).to eq(valid_rnf_id)
+ end
+
+ it 'sets the mocked status' do
+ expect(subject.status).to eq(200)
+ end
+
+ context 'with an unknown fondation' do
+ let(:params) do
+ {
+ siren_or_siret_or_rnf: non_existing_rnf_id
+ }
+ end
+
+ it 'serves the not found payload' do
+ expect(subject.status).to eq(404)
+ end
+ end
+
+ context 'when outside staging and test environments' do
+ before do
+ allow(Rails.env).to receive_messages(staging?: false, test?: false)
+ end
+
+ it 'raises EndpointNotYetImplemented' do
+ expect { subject }.to raise_error(MockedInteractor::EndpointNotYetImplemented)
+ end
+ end
+ end
+end
diff --git a/siade/spec/organizers/mi/siaf/fondations/validate_params_spec.rb b/siade/spec/organizers/mi/siaf/fondations/validate_params_spec.rb
new file mode 100644
index 0000000000..4fd33703ee
--- /dev/null
+++ b/siade/spec/organizers/mi/siaf/fondations/validate_params_spec.rb
@@ -0,0 +1,49 @@
+RSpec.describe MI::SIAF::Fondations::ValidateParams, type: :validate_params do
+ subject { described_class.call(params:) }
+
+ let(:params) do
+ {
+ siren_or_siret_or_rnf:
+ }
+ end
+
+ context 'with a valid RNF id' do
+ let(:siren_or_siret_or_rnf) { valid_rnf_id }
+
+ it { is_expected.to be_a_success }
+ end
+
+ context 'with a lowercase RNF id' do
+ let(:siren_or_siret_or_rnf) { valid_rnf_id.downcase }
+
+ it { is_expected.to be_a_success }
+ end
+
+ context 'with a valid siren' do
+ let(:siren_or_siret_or_rnf) { fondation_siren }
+
+ it { is_expected.to be_a_success }
+ end
+
+ context 'with a valid siret' do
+ let(:siren_or_siret_or_rnf) { fondation_siret }
+
+ it { is_expected.to be_a_success }
+ end
+
+ context 'with an invalid RNF id' do
+ let(:siren_or_siret_or_rnf) { invalid_rnf_id }
+
+ it { is_expected.to be_a_failure }
+
+ its(:errors) { is_expected.to include(instance_of(UnprocessableEntityError)) }
+ end
+
+ context 'with a blank param' do
+ let(:siren_or_siret_or_rnf) { '' }
+
+ it { is_expected.to be_a_failure }
+
+ its(:errors) { is_expected.to include(instance_of(UnprocessableEntityError)) }
+ end
+end
diff --git a/siade/spec/organizers/mi/siaf/fondations_spec.rb b/siade/spec/organizers/mi/siaf/fondations_spec.rb
new file mode 100644
index 0000000000..fb6d9e8b87
--- /dev/null
+++ b/siade/spec/organizers/mi/siaf/fondations_spec.rb
@@ -0,0 +1,33 @@
+RSpec.describe MI::SIAF::Fondations, type: :retriever_organizer do
+ subject { described_class.call(params:, operation_id: 'api_entreprise_v3_mi_siaf_fondations', recipient: '13002526500013') }
+
+ let(:params) do
+ {
+ siren_or_siret_or_rnf: valid_rnf_id
+ }
+ end
+
+ describe 'valid params' do
+ before do
+ allow(Rails.env).to receive(:staging?).and_return(true)
+ end
+
+ it { is_expected.to be_a_success }
+
+ it 'retrieves the mocked fondation' do
+ resource = subject.mocked_data[:payload]
+
+ expect(resource.dig('data', 'identifiants', 'rnf')).to eq(valid_rnf_id)
+ end
+ end
+
+ describe 'invalid params' do
+ let(:params) do
+ {
+ siren_or_siret_or_rnf: invalid_rnf_id
+ }
+ end
+
+ it { is_expected.to be_a_failure }
+ end
+end
diff --git a/siade/spec/requests/api_entreprise/v3_and_more/mi/siaf/fondations/v3_spec.rb b/siade/spec/requests/api_entreprise/v3_and_more/mi/siaf/fondations/v3_spec.rb
new file mode 100644
index 0000000000..f54ca533c7
--- /dev/null
+++ b/siade/spec/requests/api_entreprise/v3_and_more/mi/siaf/fondations/v3_spec.rb
@@ -0,0 +1,60 @@
+require 'swagger_helper'
+
+RSpec.describe 'MI - SIAF : Fondations', api: :entreprise, type: %i[request swagger] do
+ path '/v3/ministere_interieur/siaf/fondations/{siren_or_siret_or_rnf}' do
+ get SwaggerData.get('siaf.fondations.title') do
+ tags(*SwaggerData.get('siaf.fondations.tags'))
+
+ parameter_siren_or_siret_or_rnf
+
+ common_action_attributes
+
+ unauthorized_request do
+ let(:siren_or_siret_or_rnf) { valid_rnf_id }
+ end
+
+ forbidden_request do
+ let(:siren_or_siret_or_rnf) { valid_rnf_id }
+ end
+
+ too_many_requests(MI::SIAF::Fondations) do
+ let(:siren_or_siret_or_rnf) { valid_rnf_id }
+ end
+
+ describe 'with valid token and mandatory params', :valid do
+ response 200, 'Fondation trouvée' do
+ description SwaggerData.get('siaf.fondations.description')
+
+ schema build_rswag_response(
+ attributes: SwaggerData.get('siaf.fondations.attributes')
+ )
+
+ rate_limit_headers
+
+ let(:siren_or_siret_or_rnf) { valid_rnf_id }
+
+ run_test!
+ end
+
+ describe 'server errors' do
+ let(:siren_or_siret_or_rnf) { valid_rnf_id }
+
+ unprocessable_content_error_request(:siren_or_siret_or_rnf)
+
+ response '404', 'Fondation non trouvée' do
+ let(:siren_or_siret_or_rnf) { non_existing_rnf_id }
+
+ build_rswag_example(NotFoundError.new('SIAF'))
+
+ schema '$ref' => '#/components/schemas/Error'
+
+ run_test!
+ end
+
+ common_provider_errors_request('SIAF', MI::SIAF::Fondations)
+ common_network_error_request('SIAF', MI::SIAF::Fondations)
+ end
+ end
+ end
+ end
+end
diff --git a/siade/spec/services/generate_code_sample_from_path_spec.rb b/siade/spec/services/generate_code_sample_from_path_spec.rb
index 22dfe21178..54375bbcf6 100644
--- a/siade/spec/services/generate_code_sample_from_path_spec.rb
+++ b/siade/spec/services/generate_code_sample_from_path_spec.rb
@@ -15,4 +15,16 @@
it 'interpolates parameters with valid value' do
expect(curl_example).to include('/v3/insee/sirene/unites_legales/130025265')
end
+
+ it 'targets production by default' do
+ expect(curl_example).to include('https://entreprise.api.gouv.fr/v3')
+ end
+
+ context 'when the endpoint is staging only' do
+ subject(:curl_example) { described_class.new(path, staging: true).perform }
+
+ it 'targets the staging host' do
+ expect(curl_example).to include('https://staging.entreprise.api.gouv.fr/v3')
+ end
+ end
end
diff --git a/siade/spec/support/helpers/rnf_id.rb b/siade/spec/support/helpers/rnf_id.rb
new file mode 100644
index 0000000000..c279e1fb6e
--- /dev/null
+++ b/siade/spec/support/helpers/rnf_id.rb
@@ -0,0 +1,11 @@
+def valid_rnf_id
+ '075-FRUP-00194-01'
+end
+
+def invalid_rnf_id
+ '075-XXXX-00194-01'
+end
+
+def non_existing_rnf_id
+ '099-FDD-99999-99'
+end
diff --git a/siade/spec/support/helpers/siren.rb b/siade/spec/support/helpers/siren.rb
index 0cd046f515..3e8c9e90a7 100644
--- a/siade/spec/support/helpers/siren.rb
+++ b/siade/spec/support/helpers/siren.rb
@@ -82,6 +82,10 @@ def association_siren
association_siret.first(9)
end
+def fondation_siren
+ fondation_siret.first(9)
+end
+
def la_poste_siren
'356000000'
end
diff --git a/siade/spec/support/helpers/siret.rb b/siade/spec/support/helpers/siret.rb
index 56bb4166ec..6a879a0e77 100644
--- a/siade/spec/support/helpers/siret.rb
+++ b/siade/spec/support/helpers/siret.rb
@@ -136,3 +136,7 @@ def closed_siret
def association_siret
'19590183000024'
end
+
+def fondation_siret
+ '78430893400016'
+end
diff --git a/siade/spec/support/rswag_parameters_api_entreprise.rb b/siade/spec/support/rswag_parameters_api_entreprise.rb
index 809395d91f..1bcbae6d54 100644
--- a/siade/spec/support/rswag_parameters_api_entreprise.rb
+++ b/siade/spec/support/rswag_parameters_api_entreprise.rb
@@ -31,6 +31,14 @@ def parameter_siren_or_rna
examples: SwaggerData.get('parameters.siren_or_rna.examples')
end
+ def parameter_siren_or_siret_or_rnf
+ parameter name: :siren_or_siret_or_rnf,
+ in: :path,
+ type: :string,
+ description: SwaggerData.get('parameters.siren_or_siret_or_rnf.description'),
+ examples: SwaggerData.get('parameters.siren_or_siret_or_rnf.examples')
+ end
+
def parameter_siret_or_eori
parameter name: :siret_or_eori,
in: :path,
diff --git a/site/config/changelogs.yml b/site/config/changelogs.yml
index a3e97704a5..aef8d9a468 100644
--- a/site/config/changelogs.yml
+++ b/site/config/changelogs.yml
@@ -1,3 +1,11 @@
+- date: 2026-08-17
+ scope: api_entreprise
+ title: "Données fondations (SIAF) : nouvelle API disponible en environnement de test"
+ description: |
+ Une nouvelle API [Données fondations](<%= endpoint_path(uid: 'siaf/fondations') %>) expose les données du **Répertoire National des Fondations (RNF)**, opéré par le Ministère de l'Intérieur via le SIAF : identité, activité, dirigeants, situation financière déclarative, conformité comptable et pièces justificatives des fondations (FRUP, fondations d'entreprise, fonds de dotation).
+
+ Elle est pour l'instant **appelable uniquement sur l'environnement de test** (`https://staging.entreprise.api.gouv.fr`), avec des données fictives, afin de permettre aux futurs consommateurs de préparer leurs intégrations avant la mise en production.
+
- date: 2026-07-22
scope: both
title: "Bureau ouvert : passage au jeudi"
diff --git a/site/config/locales/api_entreprise/endpoint.fr.yml b/site/config/locales/api_entreprise/endpoint.fr.yml
index 1e1b3115bb..c4f3a64611 100644
--- a/site/config/locales/api_entreprise/endpoint.fr.yml
+++ b/site/config/locales/api_entreprise/endpoint.fr.yml
@@ -19,6 +19,9 @@ fr:
associations:
name: Associations
icon: ri-store-2-line
+ fondations:
+ name: Fondations
+ icon: ri-building-line
etablissements_entreprises:
name: Établissements des entreprises
icon: ri-building-line
diff --git a/site/config/locales/api_entreprise/fr.yml b/site/config/locales/api_entreprise/fr.yml
index 6af578c78d..122718675e 100644
--- a/site/config/locales/api_entreprise/fr.yml
+++ b/site/config/locales/api_entreprise/fr.yml
@@ -104,6 +104,8 @@ fr:
label: Infogreffe || API Mandataires sociaux
associations_donnees_protegees:
label: Djepva || API Données association
+ fondations_mi_siaf:
+ label: SIAF || API Données fondations
associations_djepva:
label: Djepva || API Données ouvertes association
tags: