Aller au contenu
Subsido

Utiliser l'API

Limites et quotas

Trois limites, chacune signalée avant que vous ne l’atteigniez : requêtes par seconde, requêtes par mois et évaluations de matching par mois.

Par formule

Ce que comprend chaque formule
DeveloperProBusinessEnterprise
Requêtes par mois10 000100 000500 000Illimité
Évaluations de matching par moisUne entreprise évaluée sur toutes les mesures.1001 00010 000Illimité
Requêtes par seconde51540150
Clés API23550
Lignes par page100200200500
Entreprises par matching en masseNon inclusNon inclus5005 000
Entreprises sur les listes de suiviNon inclusNon inclus5 000Illimité
Endpoints de webhookNon inclus51050
Flux de modificationsGET /v1/changesInclusInclusInclusInclus
Versions de chaque mesureGET /v1/subsidies/{id}/versionsNon inclusInclusInclusInclus
Une mesure telle qu’elle était à une date?as_of=Non inclusInclusInclusInclus
WebhooksNon inclusInclusInclusInclus
Matching en massePOST /v1/match/bulkNon inclusNon inclusInclusInclus
Listes de suiviNon inclusNon inclusInclusInclus
Export de tout le catalogueNDJSONNon inclusNon inclusInclusInclus
Droits de redistribution (par contrat)Non inclusNon inclusNon inclusInclus

Tiré de GET /v1/plans, la table appliquée par l’API. Les prix sont sur la page tarifs.

Un compte sans formule peut créer une clé, mais cette clé répond 402 subscription_required sur chaque route, avant tout décompte, tant qu’aucune formule n’est choisie dans le tableau de bord.

Requêtes par seconde

Chaque compte dispose d’un seau à jetons dimensionné selon sa formule, partagé par toutes ses clés, avec une rafale d’une seconde de débit : quelques requêtes parallèles suivies d’une pause passent, une boucle effrénée non. Au-delà, la réponse est 429 rate_limit_exceeded avec Retry-After: 1. La limite de débit est vérifiée avant le quota : on demande à un client en boucle effrénée de ralentir, au lieu de lui annoncer que son mois est épuisé. Les routes sans clé sont limitées par adresse du client.

Requêtes par mois

Chaque requête vers une route avec clé compte une fois, quelle que soit sa réponse, l’endpoint MCP et GET /v1/key compris ; une requête sans clé valide ou sans formule, ou refusée par la limite de débit ou par le quota lui-même, ne compte pas. Les clés de production et de test comptent de la même façon. Le mois est le mois civil UTC. Une fois le quota épuisé, la réponse est 429 quota_exceeded, avec dans Retry-After le nombre de secondes jusqu’au début du mois suivant. Enterprise n’a pas de limite mensuelle.

Évaluations de matching

Le matching a son propre quota mensuel, compté à part des requêtes. Une évaluation de matching, c’est une entreprise évaluée sur toutes les mesures :

AppelÉvaluations
POST /v1/match1
POST /v1/match/bulkUne par entreprise aux informations valides ; une entreprise qui reçoit sa propre erreur n’est pas comptée.
POST /v1/watchlists/{id}/companiesUne par entreprise acceptée, ajoutée ou remplacée.
MCP match_company, explain_eligibility1 chacun.
Réévaluer une liste de suivi quand une mesure changeRien. Compris dans la formule.

Une fois le quota épuisé, le matching répond 429 match_quota_exceeded (avec details.limit et Retry-After), et tout le reste continue de fonctionner : vous pouvez toujours rechercher et lire des mesures. Une requête en masse ou un ajout à une liste de suivi qui dépasserait le quota est refusé en entier, et rien n’en est évalué ni compté. GET /v1/key indique match_evaluations_this_month.

En-têtes

Chaque réponse d’une route avec clé porte les chiffres mensuels :

En-têteSignification
RateLimit-LimitLe quota mensuel de requêtes de votre formule.
RateLimit-RemainingRequêtes restantes ce mois-ci, après celle-ci. La valeur atteint 0 à la dernière requête autorisée.
RateLimit-ResetSecondes jusqu’à la remise à zéro du quota, au début du mois UTC suivant.
X-Quota-Limit, X-Quota-RemainingLes deux mêmes chiffres sous un autre nom.
curl -sI "https://api.subsido.be/v1/subsidies?limit=1" -H "Authorization: Bearer sb_live_..." | grep -i -E "ratelimit|quota"
  • Une formule illimitée n’envoie pas d’en-tête -Limit ni -Remaining plutôt qu’un très grand nombre ; RateLimit-Reset est toujours envoyé.
  • Les en-têtes décrivent le quota mensuel de requêtes, pas la limite par seconde ni les évaluations de matching.
  • Les navigateurs peuvent les lire : l’API les expose au JavaScript cross-origin.

Autres plafonds

Par requête

QuoiLimite
Lignes par pageLe max_page_size de la formule. Voir pagination.
Résultats renvoyés par POST /v1/matchlimit, de 1 à 100 (25 par défaut).
Entreprises dans POST /v1/match/bulkLe max_bulk_companies de la formule ; au-delà, plan_required avec la formule qui le permet.
Entreprises par ajout à une liste1 000.
Texte de recherche q200 caractères.
Téléchargements de l’export completDeux à la fois pour tout le service ; un troisième attend (429, Retry-After: 5).

Par compte

QuoiLimite
Clés APILe api_keys de la formule.
Listes de suivi50.
Entreprises sur toutes les listesLe watchlist_companies de la formule.
Endpoints de webhookLe webhook_endpoints de la formule.

Besoin de plus ?

Une formule supérieure se choisit en un clic dans le tableau de bord. Si votre besoin ne correspond à aucune formule, écrivez-nous : Enterprise est dimensionné selon l’usage.