Aller au contenu
DRC Data
À la une

API de données

API JSON publique, en lecture seule et sans inscription.

Principes

  • Requêtes GET uniquement, réponses JSON en UTF-8 ; les valeurs manquantes valent null.
  • Une série est désignée par son identifiant numérique ou par son slug stable (préférable dans vos scripts), par exemple ipc-ipc.
  • Chaque observation est datée du premier jour de sa période (2023-01-01 pour l'année 2023) et porte son libellé de période (2023, 2021-10…).
  • Les réponses sont mises en cache 10 minutes : juste après une mise à jour, un résultat peut rester ancien quelques minutes.

Liste des séries

GET https://drc-data.org/api/series/

Filtres facultatifs : sector (identifiant du secteur), frequency (A, Q, M, W, D), q (texte cherché dans le titre, le slug et les mots-clés). Chaque élément donne le titre, le secteur, l'unité, la fréquence, la couverture, la dernière valeur et sa variation.

{
  "count": 223,
  "results": [{
    "id": 64, "slug": "reel-pib-reel-usd", "title": "PIB réel",
    "unit": "USD", "multiplier": 1, "frequency": "A",
    "coverage": {"start": "1960-01-01", "end": "2023-12-31"},
    "last": {"date": "2023-01-01", "period": "2023", "value": 56862826231.05},
    …
  }]
}

Une série et ses observations

GET https://drc-data.org/api/series/ipc-ipc/?start=2015&transform=yoy

Renvoie les métadonnées complètes de la série (unité, multiplicateur, source, couverture, note méthodologique…) et la liste de ses observations, éventuellement transformées ou agrégées.

Paramètres

Paramètres communs
ParamètreValeursRôle
start, end2015, 2015-06, 2015-Q2, 2015-06-30Fenêtre de dates, bornes incluses (end=2020 va jusqu'au 31/12/2020).
transformlevel, yoy, pop, index100, log, diffNiveau, glissement annuel, variation d'une période à l'autre, base 100, logarithme, différence première.
freqA, Q, M, W, DAgrégation vers une fréquence plus basse uniquement.
methodmean, last, sumMéthode d'agrégation : moyenne (défaut), fin de période, somme.
baseune périodePériode de référence de la base 100 (défaut : début de la fenêtre).

Les définitions exactes des transformations et des règles d'agrégation sont données dans la méthodologie.

Comparer des séries

GET https://drc-data.org/api/analysis/compare/?series=reel-pib-reel-usd,ipc-ipc&transform=index100&start=2012

Aligne de 1 à 6 séries sur une grille commune (la fréquence la plus basse) et renvoie leurs valeurs alignées ainsi que des statistiques descriptives (moyenne, médiane, écart-type, minimum, maximum, taux de croissance annuel moyen).

Corrélation

GET https://drc-data.org/api/analysis/correlation/?x=ipc-ipc&y=change-tc-indic-moy&max_lag=3

Calcule, sur la période commune de deux séries, les coefficients de Pearson (avec intervalle de confiance à 95 %) et de Spearman, la régression linéaire (pente, constante, R², p-value), le nuage de points et les corrélations décalées. Des avertissements accompagnent le résultat : une corrélation n'établit pas de causalité (voir la méthodologie).

Erreurs et limites

Codes de réponse
CodeSignification
200Succès.
400Paramètre invalide ; le message d'erreur précise lequel.
404Série introuvable ou non publiée.
409Série sans fréquence renseignée (transformation impossible).
429Trop de requêtes depuis votre adresse IP : patientez une minute (en-tête Retry-After).

Les erreurs sont renvoyées sous la forme {"error": "message"}. Pour un usage intensif (salle de cours, projet partenaire), contactez-nous.

Exemples

Python (pandas)

import pandas as pd
import requests

r = requests.get("https://drc-data.org/api/series/ipc-ipc/", params={"start": "2000"}).json()
serie = pd.Series({o["date"]: o["value"] for o in r["observations"]}, name=r["series"]["title"])

R

library(jsonlite)
r <- fromJSON("https://drc-data.org/api/series/ipc-ipc/?start=2000")
serie <- r$observations[, c("date", "value")]

Pour une récupération ponctuelle, les boutons CSV, Excel et JSON de chaque fiche série suffisent. Pensez à citer la source.