api.gouv.fr
api.gouv.fr catalogue les API produites par les administrations centrales, les collectivités territoriales, les établissements publics… Chaque API est associée à une courte description fonctionnelle, une documentation technique, les modalités d'accès, d'éventuelles ressources supplémentaires et surtout des liens vers les services qui l'utilisent.
Derniers déploiements
Public visé
api.gouv.fr s'adresse avant tout aux créateurs de services, les consommateurs d'API. Pour cela, nous facilitons la découverte, la compréhension et l'accès aux API et à leurs producteurs.
Les fournisseurs, de leur côté, ont avec ce catalogue un moyen simple de faire connaître leurs API.
Fournisseur d'API ? Envie de référencer une nouvelle API ?
Comment ça marche ?
Prérequis
Node.js >= 16
Serveur de développement
Cette application utilise Next.js.
- Installer les dépendances
npm i
- Variables d’environnement
Afin de configurer le projet correctement, il est conseillé de créer un fichier .env
avec les variables d’environnement nécessaires à l’application.
.env
permet de persister les variables d’environnement de développement dans un fichier plutôt que de les définir dans le shell, mais les deux fonctionnent. Cela fonctionne avec dotenv et next-runtime-dotenv.
Copier le fichier de configuration
cp .env.sample .env
- Lancer le serveur de développement
npm run dev
Par défaut, il écoutera sur le port 3000
, pour changer, utiliser npm run dev -p 4242
.
Build de production
Cette application utilise Next.js.
- Installer les dépendances
npm i
- Générer les bundles de production
npm run build
- Lancer le serveur de production
PORT=3000 npm run start
Tests
- Linter
npm run lint
- Tests unitaires
npm run test
- Autres tests
// a11y
npm run check-accessibility
//404
npm run check-broken-links
// no link to datapass staging
npm run check-no-datapass-staging
Miniatures
Avant chaque commit est lancé un script qui redimmensionne et compresse les images des pages de guides :
// a11y
npm run create-thumbnail
Preview apps
Chaque pull request est déployé dans des review app sur Heroku
Deploiement
Le déploiement se fait par Github action
A chaque "merge" sur master :
- Laissez le déploiement se faire automatiquement sur staging via l'action deploy-staging
- Vérifiez vos changements sur staging
- Lancez manuellement le déploiement sur production : sur deploy-production et cliquez sur "Run workflow" -> "Run workflow"
NB: Si plusieurs déploiements sont déclenchés en même temps, seul le premier va jusqu'au bout. Les autres sont automatiquement interrompus.