generated: '2026-09-19' method: generated source: openapi/sirenic-eu-openapi.yml description: Recommended x-agentic-access execution contracts, classified heuristically from the OpenAPI. A governance starting point for exposing this API to AI agents — review and bind audience per deployment. See research/curity/agentic-governance/. summary: operations: 125 by_action_class: connected: 122 acting: 3 by_consequence: read: 122 physical: 2 write: 1 human_in_the_loop_required: 0 operations: - path: /v1/recherche method: get x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /v1/entreprise/{siren} method: get x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /v1/entreprise/{siren}/etablissements method: get x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /v1/entreprise/{siren}/alertes method: get x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /v1/entreprise/{siren}/contentieux method: get x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /v1/entreprise/{siren}/accords-collectifs method: get x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /v1/entreprise/{siren}/finances method: get x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /v1/entreprise/{siren}/marches-publics method: get x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /v1/marches/expirations method: get x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /v1/acheteur/{siret}/profil method: get x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /v1/entreprise/{siren}/concurrents-marches method: get x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /v1/eu/recherche method: get x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /v1/eu/entreprise/{pays}/{id} method: get x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /v1/eu/entreprise/BE/{id} method: get x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /v1/eu/entreprise/CH/{id} method: get x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /v1/eu/entreprise/NO/{id} method: get x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /v1/eu/entreprise/CZ/{id} method: get x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /v1/eu/entreprise/SK/{id} method: get x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /v1/eu/entreprise/FI/{id} method: get x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /v1/eu/entreprise/PL/{id} method: get x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /v1/eu/entreprise/EE/{id} method: get x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /v1/eu/entreprise/LV/{id} method: get x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /v1/eu/entreprise/CY/{id} method: get x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /v1/eu/entreprise/SE/{id} method: get x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /v1/eu/entreprise/ES/{hoja}/actes method: get x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /v1/eu/entreprise/NO/{id}/comptes method: get x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /v1/eu/entreprise/NO/{id}/evenements method: get x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /v1/eu/entreprise/NO/{id}/dirigeants method: get x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /v1/eu/entreprise/NO/{id}/etablissements method: get x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /v1/eu/entreprise/GB/{company_number}/marches-publics method: get x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /v1/eu/entreprise/GB/{company_number}/annonces method: get x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /v1/eu/entreprise/GB/{company_number}/dirigeants method: get x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /v1/eu/entreprise/GB/{company_number}/beneficiaires-effectifs method: get x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /v1/eu/entreprise/GB/{company_number}/insolvabilite method: get x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /v1/eu/entreprise/LV/{regnr}/comptes method: get x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /v1/eu/entreprise/LV/{regnr}/insolvabilite method: get x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /v1/eu/entreprise/LV/{regnr}/dirigeants method: get x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /v1/eu/entreprise/LV/{regnr}/evenements method: get x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /v1/eu/entreprise/HR/{oib} method: get x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /v1/eu/entreprise/HR/{oib}/insolvabilite method: get x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /v1/eu/entreprise/HR/{oib}/evenements method: get x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /v1/eu/entreprise/HR/{oib}/comptes method: get x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /v1/eu/entreprise/CH/{id}/evenements method: get x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /v1/eu/entreprise/CH/{id}/insolvabilite method: get x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /v1/eu/entreprise/FI/{id}/evenements method: get x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /v1/eu/entreprise/LT/{kodas} method: get x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /v1/eu/entreprise/LT/{kodas}/comptes method: get x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /v1/eu/entreprise/LT/{kodas}/insolvabilite method: get x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /v1/eu/entreprise/IE/{numero} method: get x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /v1/eu/entreprise/IE/{numero}/insolvabilite method: get x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /v1/eu/entreprise/CY/{id}/dirigeants method: get x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /v1/eu/entreprise/RO/{cui} method: get x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /v1/eu/entreprise/RO/{cui}/dirigeants method: get x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /v1/eu/entreprise/RO/{cui}/insolvabilite method: get x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /v1/eu/entreprise/RO/{cui}/comptes method: get x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /v1/eu/entreprise/PT/{nipc}/marches-publics method: get x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /v1/eu/entreprise/PL/{nip}/marches-publics method: get x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /v1/eu/entreprise/ES/{nif}/marches-publics method: get x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /v1/eu/entreprise/LV/{regnr}/marches-publics method: get x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /v1/eu/entreprise/LV/{regnr}/associes method: get x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /v1/eu/entreprise/EE/{registrikood}/comptes method: get x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /v1/eu/entreprise/EE/{registrikood}/evenements method: get x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /v1/eu/entreprise/EE/{registrikood}/dirigeants method: get x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /v1/eu/entreprise/EE/{registrikood}/associes method: get x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /v1/eu/entreprise/SE/{orgnr}/comptes method: get x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /v1/eu/entreprise/SE/{orgnr}/evenements method: get x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /v1/eu/entreprise/DK/{cvr}/dirigeants method: get x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /v1/eu/entreprise/CZ/{ico}/insolvabilite method: get x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /v1/eu/entreprise/PL/{krs}/evenements method: get x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /v1/eu/entreprise/{pays}/{id}/comptes method: get x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /v1/eu/entreprise/{pays}/{id}/comptes/{reference} method: get x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /v1/eu/entreprise/DK/{id}/comptes method: get x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /v1/eu/entreprise/DK/{id}/comptes/{date_cloture} method: get x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /v1/eu/entreprise/SK/{ico}/comptes method: get x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /v1/eu/entreprise/SK/{ico}/comptes/{date_cloture} method: get x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /v1/eu/entreprise/GB/{company_number}/comptes method: get x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /v1/eu/entreprise/GB/{company_number}/comptes/{date_cloture} method: get x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /v1/intelligence/{siren} method: get x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none x-spend-note: read, but priced per unit / above $0.10 per call — budget-gate before invoking - path: /v1/rapport/{siren} method: get x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none x-spend-note: read, but priced per unit / above $0.10 per call — budget-gate before invoking - path: /v1/entreprise/{siren}/documents method: get x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /v1/documents/{type}/{id} method: get x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /v1/prospection method: get x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /v1/entreprise/{siren}/sante method: get x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /v1/score/defaillance/{siren} method: get x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /v1/secteur/{code_naf}/benchmarks method: get x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /v1/entreprise/{siren}/capital method: get x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none x-spend-note: read, but priced per unit / above $0.10 per call — budget-gate before invoking - path: /v1/entreprise/{siren}/pi method: get x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /v1/entreprise/{siren}/changements method: get x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /v1/facture/verifier method: get x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /v1/facturation/dossier method: get x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /v1/entreprise/{siren}/facturation-prep method: get x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /v1/bodacc/recherche method: get x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /v1/entreprise/{siren}/dossier method: get x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /v1/dirigeant/recherche method: get x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /v1/kyb/batch method: get x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none x-spend-note: read, but priced per unit / above $0.10 per call — budget-gate before invoking - path: /v1/comparer method: get x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none x-spend-note: read, but priced per unit / above $0.10 per call — budget-gate before invoking - path: /v1/kyb/{siren} method: get x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /v1/entreprise/{siren}/risques-industriels method: get x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /v1/entreprise/{siren}/emploi method: get x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /v1/eu/facturation/dossier method: get x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /v1/eu/entreprise/{pays}/{id}/marches-publics-ue method: get x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /v1/eu/entreprise/{pays}/{id}/transactions-dirigeants method: get x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /v1/entreprise/{siren}/agrements method: get x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /v1/association/{rna} method: get x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /v1/associations/recherche method: get x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /v1/association/{rna}/annonces method: get x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /v1/surveillance/creer method: get x-agentic-access: action-class: acting consequence: physical subject: required token: max-ttl: 300 exchange: required audit: required purpose: required curated: paid state-changing GET (creates/extends a watchlist, spends funds, no refund) — reclassified from the method-based heuristic - path: /v1/surveillance/{jeton} method: get x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /v1/surveillance/{jeton}/renouveler method: get x-agentic-access: action-class: acting consequence: physical subject: required token: max-ttl: 300 exchange: required audit: required purpose: required curated: paid state-changing GET (creates/extends a watchlist, spends funds, no refund) — reclassified from the method-based heuristic - path: /v1/surveillance/{jeton}/arreter method: get x-agentic-access: action-class: acting consequence: write subject: required token: max-ttl: 900 audit: required curated: state-changing GET (stops and purges a watchlist) — reclassified from the method-based heuristic - path: /v1/entreprise/{siren}/marches-publics-ue method: get x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /v1/entreprise/{siren}/financements-ue method: get x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /v1/entreprise/{siren}/lobbying method: get x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /v1/regulateurs/fr/alertes method: get x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /v1/eu/agrements method: get x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /v1/sanctions/check method: get x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /v1/iban/verifier/{iban} method: get x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /v1/tva/verifier/{numero} method: get x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /v1/provenance/registres method: get x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /v1/lecture method: get x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /v1/suggestions method: get x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /v1/reperer method: get x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /preview/entreprise/55203253400646 method: get x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /v1/demo/entreprise method: get x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /healthz method: get x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none curation_note: All 125 operations are HTTP GET, so the heuristic classified everything as connected/read. Three GETs mutate server state and two of them spend money; they are curated to acting per the provider's own route descriptions. The whole surface is pay-per-call, so even reads carry a spend consequence — see conventions dry_run for the free quote path.