Aller au contenu

Lister les sources

GET
/v1/sources
curl --request GET \
--url https://api.arnakoff.com/v1/sources

Les sources consultées, leur licence et l’état de leurs données en service.

CORS : seule l’origine du site est autorisée, sans cookie ni identifiant : sa page d’état lit cette route.

Les sources.

Media typeapplication/json

Les sources.

object
sources
required
Array<object>

Une source consultée et l’état de ses données en service.

object
name
required

Nom d’une source, tel qu’il est montré aux utilisateurs.

string
>= 1 characters
publisher
required

Éditeur de la source.

string
licence
required

Licence sous laquelle la source est réutilisée.

string
url
required

Page publique de la source.

string format: uri
status
required

État d’une source dans GET /v1/sources : ok quand des données sont en service, indisponible sinon. Un registre interrogé à la demande est ok tant qu’il est configuré.

string
Allowed values: ok indisponible
updated_at
required

Téléchargement des données en service ; null pour un registre interrogé à la demande ou quand aucune donnée n’est en service.

string | null format: date-time
entries
required

Nombre d’entrées en service ; null pour un registre interrogé à la demande.

integer | null

Examples

Examplesources

Une liste synchronisée

{
"sources": [
{
"name": "AMF",
"publisher": "Autorité des marchés financiers",
"licence": "Licence Ouverte 2.0",
"url": "https://www.data.gouv.fr/datasets/641d5dab1d84b530f7720b08",
"status": "ok",
"updated_at": "2026-11-02T08:14:42Z",
"entries": 3466
}
]
}
RateLimit
required
string

Quota restant de la politique en cours, selon draft-ietf-httpapi-ratelimit-headers-11 : r, requêtes encore permises maintenant ; t, secondes avant qu’une requête de plus soit rendue (pendant ce délai, pas plus de r requêtes), 0 quand le quota est entier.

Example
"key";r=59;t=1
RateLimit-Policy
required
string

Politique de quota, selon draft-ietf-httpapi-ratelimit-headers-11 : q, requêtes permises par fenêtre ; w, fenêtre en secondes. Le quota entier peut être dépensé d’un coup, puis il revient au même rythme sur la fenêtre. Politique key sur les routes de vérification, par clé API (un lot compte pour une requête) ; politique ip sur les routes sans clé, par adresse du client (préfixe /64 en IPv6) ; politique auth sur les routes de vérification, par adresse du client, qui compte les clés refusées (mal formées, inconnues ou révoquées) : une fois ce quota dépensé, les clés envoyées depuis cette adresse ne sont plus vérifiées et la réponse est 429, même pour une clé valide. La politique auth n’apparaît que sur ses réponses 429. Sur POST /v1/demo/check, politique demo par adresse du client et politique demo_global pour tous les clients ensemble, qui n’apparaît que sur ses réponses 429. Sur POST /v1/keys/request et POST /v1/keys/redeem, politique key_request par adresse du client. Valeurs de l’exemple données à titre d’illustration : les quotas dépendent de l’offre.

Example
"key";q=60;w=60

Quota dépassé : celui de la clé (key), de l’adresse (ip), des clés refusées depuis l’adresse (auth), de l’accès de démonstration (demo, demo_global) ou des demandes de clé (key_request), nommé dans RateLimit-Policy.

Media typeapplication/problem+json

Erreur au format RFC 9457 (application/problem+json).

object
type
required

Adresse de la page du site qui documente ce type d’erreur : la documentation des erreurs suivie du code.

string format: uri
title
required

Résumé du type d’erreur, en français, le même pour toutes ses occurrences.

string
status
required

Code de statut HTTP de la réponse.

integer
>= 400 <= 599
detail
required

Explication de cette occurrence, en français. Ne cite jamais une donnée personnelle.

string
instance

Identifiant de cette occurrence : l’URI tag:arnakoff.com,2026:request: suivie de l’identifiant de la requête, celui de l’en-tête X-Request-ID de la réponse. À citer quand on signale un problème. Absent d’une erreur d’un élément de POST /v1/check/batch.

string format: uri-reference
code
required

Identifiant stable du type d’erreur (liste ouverte). Chaque code a un exemple Problem… dans ce contrat.

string
/^[a-z][a-z0-9_]*$/

Examples

Examplequota

Quota dépassé

{
"type": "https://arnakoff.com/docs/erreurs/too_many_requests",
"title": "Trop de requêtes",
"status": 429,
"detail": "Le quota de requêtes est atteint. Réessaie après le délai de l'en-tête Retry-After.",
"instance": "tag:arnakoff.com,2026:request:7NQJ4ZWKX3C5RB2D6HVMTPLE9A",
"code": "too_many_requests"
}
RateLimit
required
string

Quota restant de la politique en cours, selon draft-ietf-httpapi-ratelimit-headers-11 : r, requêtes encore permises maintenant ; t, secondes avant qu’une requête de plus soit rendue (pendant ce délai, pas plus de r requêtes), 0 quand le quota est entier.

Example
"key";r=59;t=1
RateLimit-Policy
required
string

Politique de quota, selon draft-ietf-httpapi-ratelimit-headers-11 : q, requêtes permises par fenêtre ; w, fenêtre en secondes. Le quota entier peut être dépensé d’un coup, puis il revient au même rythme sur la fenêtre. Politique key sur les routes de vérification, par clé API (un lot compte pour une requête) ; politique ip sur les routes sans clé, par adresse du client (préfixe /64 en IPv6) ; politique auth sur les routes de vérification, par adresse du client, qui compte les clés refusées (mal formées, inconnues ou révoquées) : une fois ce quota dépensé, les clés envoyées depuis cette adresse ne sont plus vérifiées et la réponse est 429, même pour une clé valide. La politique auth n’apparaît que sur ses réponses 429. Sur POST /v1/demo/check, politique demo par adresse du client et politique demo_global pour tous les clients ensemble, qui n’apparaît que sur ses réponses 429. Sur POST /v1/keys/request et POST /v1/keys/redeem, politique key_request par adresse du client. Valeurs de l’exemple données à titre d’illustration : les quotas dépendent de l’offre.

Example
"key";q=60;w=60
Retry-After
required
integer

Secondes à attendre avant de réessayer (RFC 9110, section 10.2.3).

Example
30

Erreur interne du serveur.

Media typeapplication/problem+json

Erreur au format RFC 9457 (application/problem+json).

object
type
required

Adresse de la page du site qui documente ce type d’erreur : la documentation des erreurs suivie du code.

string format: uri
title
required

Résumé du type d’erreur, en français, le même pour toutes ses occurrences.

string
status
required

Code de statut HTTP de la réponse.

integer
>= 400 <= 599
detail
required

Explication de cette occurrence, en français. Ne cite jamais une donnée personnelle.

string
instance

Identifiant de cette occurrence : l’URI tag:arnakoff.com,2026:request: suivie de l’identifiant de la requête, celui de l’en-tête X-Request-ID de la réponse. À citer quand on signale un problème. Absent d’une erreur d’un élément de POST /v1/check/batch.

string format: uri-reference
code
required

Identifiant stable du type d’erreur (liste ouverte). Chaque code a un exemple Problem… dans ce contrat.

string
/^[a-z][a-z0-9_]*$/

Examples

Exampleinternal

Erreur interne

{
"type": "https://arnakoff.com/docs/erreurs/internal_error",
"title": "Erreur interne",
"status": 500,
"detail": "Le serveur a rencontré une erreur. Réessaie plus tard.",
"instance": "tag:arnakoff.com,2026:request:7NQJ4ZWKX3C5RB2D6HVMTPLE9A",
"code": "internal_error"
}