FAQ · données, schéma, qualité, fraîcheur

Ce que contient l'API, comment les champs sont structurés, ce sur quoi vous pouvez compter, et à quelle fréquence les données arrivent.

1. Périmètre et sources

TenderAPI agrège deux sources officielles de marchés publics :

Couverture temporelle

Volumétrie actuelle

2,9 M+ tenders (avis publiés) et 1,95 M+ awards (résultats d'attribution) à date.

Avis de préinformation (PIN)

Les avis de préinformation TED annoncent un marché à venir : on ne peut pas encore y soumissionner et ils n'ont pas de date limite. Ils sont donc exclus de /tenders par défaut. Pour les inclure (veille amont des marchés à venir), ajoutez include_planning=true.

2. Modèle de données

L'API expose deux ressources principales :

Conventions

Recherche par mot-clé multilingue

Le filtre keyword (alias q) recherche dans le titre et la description, dans la langue de publication de l'avis (TED est multilingue). Un terme en français ne remonte pas les avis allemands, espagnols ou italiens : cherchez le concept dans chaque langue cible et combinez avec OR, par exemple keyword=bathymétrie OR Bathymetrie OR batimetría.

Champ awarded_at_source

Pour chaque award, ce champ indique d'où vient la date d'attribution. C'est utile pour interpréter la précision de awarded_at :

3. Qualité et complétude des champs

Les taux ci-dessous indiquent la proportion de lignes où le champ est renseigné, mesurée sur la totalité du corpus actuel. Ils dépendent essentiellement du format imposé par la source à l'autorité contractante au moment de la publication.

Tenders
ChampBOAMPTED legacyTED eForms
title 100%100%100%
buyer_name 100%100%100%
cpv_codes 62% 100%100%
buyer_siret 77% 16% 95%
deadline 86%95%97%
budget_max 0% 38% 6%
department (FR) 100%91%95%
Awards
ChampBOAMPTED legacyTED eForms
winner_name 91%85%100%
winner_siret 74%14%94%
amount 78%78%96%
awarded_at 95%100%100%

Pourquoi ces écarts ?

Ces taux reflètent ce que les sources officielles publient effectivement, et constituent une limite intrinsèque à ces sources, pas de notre traitement. Pour les lignes où un champ est null, c'est qu'il était absent ou non parsable dans la donnée source.

4. Mises à jour et fraîcheur

L'ingestion des nouvelles publications est entièrement automatisée :

La latence typique entre la publication officielle d'un avis et sa disponibilité dans l'API est inférieure à 24 heures.

Bascule automatique des avis clôturés

Chaque jour, les tenders dont la date limite de remise des offres est dépassée basculent automatiquement de status="open" à status="closed". Certains avis n'ont pas de date limite renseignée (accords-cadres permanents, procédures négociées, anciens MAPA) et restent en open par défaut. Pour les exclure, ajoutez deadline_after=now. À l'inverse, un filtre deadline_after/deadline_before écarte par défaut les avis sans date limite : ajoutez include_null_deadline=true pour les conserver dans vos résultats.