InseeApiSirene 1.3.0

dotnet add package InseeApiSirene --version 1.3.0
                    
NuGet\Install-Package InseeApiSirene -Version 1.3.0
                    
This command is intended to be used within the Package Manager Console in Visual Studio, as it uses the NuGet module's version of Install-Package.
<PackageReference Include="InseeApiSirene" Version="1.3.0" />
                    
For projects that support PackageReference, copy this XML node into the project file to reference the package.
<PackageVersion Include="InseeApiSirene" Version="1.3.0" />
                    
Directory.Packages.props
<PackageReference Include="InseeApiSirene" />
                    
Project file
For projects that support Central Package Management (CPM), copy this XML node into the solution Directory.Packages.props file to version the package.
paket add InseeApiSirene --version 1.3.0
                    
#r "nuget: InseeApiSirene, 1.3.0"
                    
#r directive can be used in F# Interactive and Polyglot Notebooks. Copy this into the interactive tool or source code of the script to reference the package.
#:package InseeApiSirene@1.3.0
                    
#:package directive can be used in C# file-based apps starting in .NET 10 preview 4. Copy this into a .cs file before any lines of code to reference the package.
#addin nuget:?package=InseeApiSirene&version=1.3.0
                    
Install as a Cake Addin
#tool nuget:?package=InseeApiSirene&version=1.3.0
                    
Install as a Cake Tool

Wrapper .Net de l'API Sirene de l'Insee

NuGet Version GitHub license

Wrapper de l'API Sirene de l'Insee pour les développements sur plateforme .Net.

L'API Sirene donne accès aux informations concernant les entreprises et les établissements enregistrés au répertoire interadministratif Sirene depuis sa création en 1973, y compris les unités fermées.

La recherche peut être unitaire, multicritère, phonétique et porter sur les données courantes et historisées.

  • Les services actuellement disponibles interrogent :
    • les Unités légales (SIREN)
    • les Établissements (SIRET)
  • Le service Informations permet de connaître les dates de dernières mises à jour.
  • Le service Liens de succession informe sur les prédécesseurs et les successeurs des établissements.

Pour plus d'infos, consulter les Informations générales et la Documentation technique.

Version de l'API

Utilisation de l'Api Sirene 3.11 qui est la version de référence depuis le 30 avril 2024.

Le répertoire Sirene est en version 4.

Pour plus d'infos, consulter les Évolutions

Support

La bibliothèque InseeApiSirene.Net est compatible avec les environnements suivants :

  • .NET Framework 4.6.1+
  • .NET Core 2.0+
  • .NET 5.0+
  • Mono 5.4+
  • Xamarin.iOS 10.14+
  • Xamarin.Android 8.0+
  • UWP 10.0.16299+

Installation

Le package Insee.Net est disponible sur NuGet.org.

dotnet add package InseeApiSirene

Clé d'intégration API

Un compte est nécéssaire pour avoir accès à une clé d'API (X-INSEE-Api-Key-Integration) pour se connecter à l'API Sirene.

Pour obtenir cette clé, vous devrez créer un compte (gratuit) sur le portail API de l'Insee, puis créer une application (en mode "simple") et enfin souscrire à l'API Sirene pour l'application.

Pour plus d'infos, consulter le guide pas à pas ou la documentation.

Limites d'utilisation

L'usage de l'API Sirene est soumis à une limite de 30 interrogations par minute.

L'Insee se réserve le droit de changer cette limite en cas de nécessité.

Pour plus d'infos, consulter les Conditions générales d'utilisation de l'API Sirene et la Charte d'utilisations du catalogue des API de l'Insee.

Utilisation

Configuration de l'instance

using (var oSireneApi = new SireneApi("01234567-89ab-cdef-0123-456789abcdef")) // A remplacer par votre propre clé d'API
{
    oSireneApi.Timeout = 30; // Timeout en secondes des appels à l'API
    oSireneApi.CompressionGzip = true; // Active la compression Gzip lors des appels à l'API (réduction de la taille des données échangées), la décompression sera éffectuée localement (augmentation des ressources).

    var oReponseSynchrone = oSireneApi.Fonction();
    var oReponseSynchroneEnCsv = oSireneApi.FonctionCsv();
    var oReponseAsynchrone = await oSireneApi.FonctionAsync();
    var oReponseAsynchroneEnCsv = await oSireneApi.FonctionCsvAsync();
}

Paramètres globaux de l'instance

Initialisable à l'instanciation de l'API ou à tout moment via les propriétés de l'instance.

  • MasquerValeurNulles : Détermine si l'API doit renvoyer les champs dont les données sont nulles.
  • Timeout : Timeout en secondes des appels à l'API.
  • CompressionGzip = Active la compression Gzip lors des appels à l'API (réduction de la taille des données échangées), la décompression sera éffectuée localement (augmentation des ressources).

Fonctions proposées

Chaque fonction avec appel à l'API est disponible en version Asynchrone (await/async) ou Synchrone (classique).

Manipulation des numéros SIREN et SIRET

Fonctions bonus de validation et formatage des numéros SIRET et SIREN.

// Numéro SIREN
Siren.Nettoyer("326 094 47[1]"); // 326094471
Siren.Tester("326 094 47[1]"); // True
Siren.Formater("326 094 47[1]"); // 326 094 471

// Numéro SIRET
Siret.Tester("326 094 47[1] 00035"); // True
Siret.Nettoyer("326 094 47[1] 00035"); // 32609447100035
Siret.Formater("326 094 47[1] 00035"); // 326 094 471 00035
Siret.ExtraireSiren("326 094 47[1] 00035", out String nic); // 326094471 (et nic = 00035)

Recherches unitaires

Trouver les informations d'une unité légale à partir de son numéro SIREN :

using (var oSireneApi = new SireneApi("01234567-89ab-cdef-0123-456789abcdef")) // A remplacer par votre propre clé d'API
{
    var oUniteLegale = oSireneApi.UniteLegale("123 456 789");
}

Trouver les informations d'un établissement à partir de son numéro SIRET :

using (var oSireneApi = new SireneApi("01234567-89ab-cdef-0123-456789abcdef")) // A remplacer par votre propre clé d'API
{
    var oEtablissement = oSireneApi.Etablissement("123 456 789 00001");
}

Recherches simplifiées

Trouver les unités légales ou établissements à partir de la raison sociale (et ses historiques) :

using (var oSireneApi = new SireneApi("01234567-89ab-cdef-0123-456789abcdef")) // A remplacer par votre propre clé d'API
{
    // Recherche des unités légales
    var oUnitesLegales = oSireneApi.UnitesLegales("Raison Sociale");

    // Recherche des établissements
    var oEtablissements = oSireneApi.Etablissements("Raison Sociale");
}

Recherches multicritères

Possibilité de construire une requête complexe via l'objet 'RequeteMultiCriteres' pour des établissements ou des unités légales.

  • en combinant plusieurs critères de recherche (voir la documentation la syntaxe détaillée).
  • en définissant les élèments à retourner dans le résultat
  • en définissant un ordre de tri
  • en gérant la pagination des résultats

Il est possible d'obtenir les données structurées (Objets) ou brutes (CSV).

Stack Technique

  • .NET Standard 2.0
  • C# 7.3
  • Visual Studio 2026

Logs

Par défaut les logs sortent sur "System.Diagnostics.Debug".

Possibilité d'ajouter des traces des opérations via un Logger personnalisé

// Configuration des logs
InseeApiSirene.Logger = new ConsoleLogger();

/// <summary>
/// Classe de log pour une sortie sur la Console
/// </summary>
public class ConsoleLogger : ILogger
{
    public void Debug(String message, Exception exception = null) => Console.WriteLine($"[DEBUG] {message}");
    public void Info(String message, Exception exception = null) => Console.WriteLine($"[INFO] {message}");
    public void Warning(String message, Exception exception = null) => Console.WriteLine($"[WARNING] {message}");
    public void Error(String message, Exception exception = null) => Console.WriteLine($"[ERROR] {message}");
    public void Fatal(String message, Exception exception = null) => Console.WriteLine($"[FATAL] {message}");

    public Boolean IsDebugEnabled() => true;
    public Boolean IsInfoEnabled() => true;
    public Boolean IsWarningEnabled() => true;
    public Boolean IsErrorEnabled() => true;
    public Boolean IsFatalEnabled() => true;
}

Test unitaires

Tests unitaires avec MSTest (projet InseeApiSirene.Tests).

Unitialiser votre clé API pour les tests unitaires (à faire une seule fois dans le dossier InseeApiSirene.Test) :

dotnet user-secrets init
dotnet user-secrets set "InseeApiKey" "votre_clé_api_personnelle"

License

InseeNet est distribué sous licence MIT.

Product Compatible and additional computed target framework versions.
.NET net5.0 was computed.  net5.0-windows was computed.  net6.0 was computed.  net6.0-android was computed.  net6.0-ios was computed.  net6.0-maccatalyst was computed.  net6.0-macos was computed.  net6.0-tvos was computed.  net6.0-windows was computed.  net7.0 was computed.  net7.0-android was computed.  net7.0-ios was computed.  net7.0-maccatalyst was computed.  net7.0-macos was computed.  net7.0-tvos was computed.  net7.0-windows was computed.  net8.0 was computed.  net8.0-android was computed.  net8.0-browser was computed.  net8.0-ios was computed.  net8.0-maccatalyst was computed.  net8.0-macos was computed.  net8.0-tvos was computed.  net8.0-windows was computed.  net9.0 was computed.  net9.0-android was computed.  net9.0-browser was computed.  net9.0-ios was computed.  net9.0-maccatalyst was computed.  net9.0-macos was computed.  net9.0-tvos was computed.  net9.0-windows was computed.  net10.0 was computed.  net10.0-android was computed.  net10.0-browser was computed.  net10.0-ios was computed.  net10.0-maccatalyst was computed.  net10.0-macos was computed.  net10.0-tvos was computed.  net10.0-windows was computed. 
.NET Core netcoreapp2.0 was computed.  netcoreapp2.1 was computed.  netcoreapp2.2 was computed.  netcoreapp3.0 was computed.  netcoreapp3.1 was computed. 
.NET Standard netstandard2.0 is compatible.  netstandard2.1 was computed. 
.NET Framework net461 was computed.  net462 was computed.  net463 was computed.  net47 was computed.  net471 was computed.  net472 was computed.  net48 was computed.  net481 was computed. 
MonoAndroid monoandroid was computed. 
MonoMac monomac was computed. 
MonoTouch monotouch was computed. 
Tizen tizen40 was computed.  tizen60 was computed. 
Xamarin.iOS xamarinios was computed. 
Xamarin.Mac xamarinmac was computed. 
Xamarin.TVOS xamarintvos was computed. 
Xamarin.WatchOS xamarinwatchos was computed. 
Compatible target framework(s)
Included target framework(s) (in package)
Learn more about Target Frameworks and .NET Standard.

NuGet packages

This package is not used by any NuGet packages.

GitHub repositories

This package is not used by any popular GitHub repositories.

Version Downloads Last Updated
1.3.0 95 5/5/2026

Wrapper de l'API Sirene de l'Insee