En direct00:543 789 événements8 accidents3780 bouchons et travaux

API

L'API de Trafic en Direct

Les perturbations en cours sur les routes de France, en GeoJSON ou en JSON : Bison Futé, autoroutes concédées, arrêtés DiaLog, métropoles et départements. Essayez-la 5 jours avec une clé d'essai ; ensuite, l'API est payante.

L'attribution est obligatoire, dans toutes les offres

Essai, Personnel, Professionnel ou Entreprise : toute app, tout site ou produit qui utilise cette API indique d'où viennent les données, avec un lien visible vers traficendirect.fr à côté d'elles. Le texte exigé est « Données : Trafic en Direct », avec un lien vers https://traficendirect.fr. À copier :

Données : <a href="https://traficendirect.fr">Trafic en Direct</a>

Gardez aussi le crédit de la source d'origine quand la réponse le donne (les champs source et sourceUrl de chaque événement : Bison Futé (DIR et autoroutes concédées), DiaLog, Ville de Paris, métropoles de Lyon, Toulouse, Bordeaux, Rennes et Lille, départements 17, 22, 44, 53 et 72, Météo-France via MeteoAlarm). Chaque réponse porte l'attribution dans le champ attribution et dans l'en-tête X-Attribution.

Commencer

Créez une clé d'essai avec le formulaire ci-dessous et ajoutez-la à la requête. Ouvrez ceci dans le navigateur, votre clé à la fin, et vous avez des données :

https://traficendirect.fr/api/v1/incidents?district=bretagne&key=ted_…

La réponse est en GeoJSON, prête pour une carte. Pour du JSON simple, ajoutez &format=json. Dans un programme, mieux vaut passer la clé en en-tête :

curl -H "X-API-Key: ted_…" "https://traficendirect.fr/api/v1/incidents?district=auvergne-rhone-alpes&type=accident&format=json"

La clé

Depuis le 8 octobre 2026 l'API est payante et chaque requête porte une clé. La clé créée ici est une clé d'essai : elle fonctionne 5 jours à partir de la première requête, avec 120 requêtes par heure, pour vérifier que l'API convient à ce que vous construisez. Pour continuer ensuite, écrivez à [email protected] avec le nom du projet et l'usage prévu : nous répondons avec l'offre et la facture.

Nous demandons un nom, un e-mail et l'usage pour trois raisons concrètes : vous prévenir quand une source officielle tombe ou change de format ; savoir ce qui manque à l'API pour ceux qui l'utilisent vraiment ; et parce qu'une clé révocable protège tout le monde d'une boucle emballée.

Immédiate, sans validation. Valable 5 jours à partir de la première requête.

La clé se passe dans l'en-tête X-API-Key, dans Authorization: Bearer … ou dans le paramètre key. Jusqu'à la fin du 13 octobre 2026, l'API répond encore sans clé, avec un avis dans l'en-tête X-API-Notice et dans le corps ; à partir du 14, sans clé elle répond 401.

Événements en cours : /api/v1/incidents

Tout ce que publient en ce moment les sources officielles : travaux, fermetures, ralentissements, accidents, obstacles, manifestations et vigilances météo qui touchent la route. Les sources sont lues toutes les quelques minutes et servies depuis notre base.

GET https://traficendirect.fr/api/v1/incidents

Paramètres

ParamètreValeursÀ quoi ça sert
districtbretagne, ile-de-france, auvergne-rhone-alpes…Une des 13 régions métropolitaines, par slug ou par nom. Le même slug que dans /trafic/bretagne.
typeaccident, closure, traffic, weatherFiltre par type ; plusieurs possibles, séparés par des virgules. Sans ce paramètre, tout vient.
formatgeojson (par défaut), jsonGeoJSON pour les cartes ; JSON pour les listes.
since2026-10-01Les événements commencés après cette date, y compris ceux déjà terminés encore dans la base.
debug1L'état de chaque source : combien d'événements, quand elle a publié pour la dernière fois, si elle s'est tue.
keyted_…Votre clé, si vous ne l'envoyez pas en en-tête.

Exemple de requête et de réponse en JSON

https://traficendirect.fr/api/v1/incidents?district=auvergne-rhone-alpes&type=accident&format=json
{
  "attribution": { "text": "Données : Trafic en Direct", "url": "https://traficendirect.fr" },
  "count": 1,
  "incidents": [
    {
      "id": "cnir-16kgalq",
      "type": "accident",
      "severity": "medium",
      "status": "active",
      "lat": 45.8581,
      "lon": 4.03776,
      "title": "Accident · A89 (Amions)",
      "description": "Accident sur l'A89, de Lyon vers Bordeaux, au PR 477, à Amions. Information fournie par Bison Futé / ASF",
      "source": "bison-fute-cnir",
      "sourceUrl": "https://www.bison-fute.gouv.fr",
      "road": "A89",
      "district": "Auvergne-Rhône-Alpes",
      "startedAt": "2026-10-08T20:57:00.000Z",
      "updatedAt": "2026-10-08T21:27:00.000Z"
    }
  ]
}

En GeoJSON

https://traficendirect.fr/api/v1/incidents?district=auvergne-rhone-alpes&type=traffic
{
  "attribution": { "text": "Données : Trafic en Direct", "url": "https://traficendirect.fr" },
  "type": "FeatureCollection",
  "features": [
    {
      "type": "Feature",
      "id": "cnir-qi26c8",
      "geometry": { "type": "Point", "coordinates": [4.82217, 45.28714] },
      "properties": {
        "id": "cnir-qi26c8",
        "type": "traffic",
        "severity": "medium",
        "status": "active",
        "title": "Obstacle sur la chaussée · A7 (Saint-Rambert-d'Albon)",
        "description": "Obstacle sur l'A7, de Lyon vers Marseille, au PR 28, à Saint-Rambert-d'Albon. Impact : voies neutralisées. Information fournie par Bison Futé / ASF",
        "source": "bison-fute-cnir",
        "sourceUrl": "https://www.bison-fute.gouv.fr",
        "road": "A7",
        "district": "Auvergne-Rhône-Alpes",
        "startedAt": "2026-10-08T21:27:00.000Z",
        "updatedAt": "2026-10-08T21:27:00.000Z"
      }
    }
  ]
}

Réponses réelles de l'API, réduites à un événement. En GeoJSON les champs sont dans properties et les coordonnées dans l'ordre GeoJSON : longitude, latitude.

Les champs de chaque événement

ChampCe que c'est
idIdentifiant stable, préfixé par la source (bisonfute-, cnir-, dialog-, fr-…, ma-).
typeaccident, closure (travaux et fermetures), traffic (ralentissements, obstacles, manifestations) ou weather.
severityinfo, low, medium, high ou critical, selon ce que publie la source.
statusactive en cours, scheduled annoncé pour plus tard.
lat lonCoordonnées WGS84 du point.
titleTitre court : cause, route et commune.
descriptionTexte complet : sens, PR, impact, gestionnaire.
sourcebison-fute, bison-fute-cnir, dialog, fr-paris, fr-lyon, fr-cd17… ou meteoalarm. À garder quand vous affichez les données.
sourceUrlLa page officielle de la source.
roadLa route (A7, N94…), quand la source la donne. Absente pour les vigilances météo.
districtLa région.
startedAt updatedAtDébut et dernière mise à jour, en ISO 8601 (UTC).

Diagnostic : ?debug=1

https://traficendirect.fr/api/v1/incidents?debug=1
{
  "attribution": { "text": "Données : Trafic en Direct", "url": "https://traficendirect.fr" },
  "generatedAt": "2026-10-08T21:38:36.942Z",
  "liveCount": 3802,
  "totalCount": 3802,
  "supplementedFromMocks": false,
  "sources": [
    {
      "name": "dialog",
      "configured": true,
      "ok": true,
      "count": 509,
      "newestAt": "2026-10-08T14:00:00.000Z",
      "stale": false,
      "byType": { "closure": 509 },
      "bySeverity": { "medium": 314, "low": 195 }
    }
  ]
}

Utile quand un chiffre paraît bizarre : il dit quelle source s'est tue. Exemple réel, réduit à une source.

Codes de réponse

CodeQuand
200Tout va bien. En-têtes utiles : X-API-Plan, X-API-Trial-Ends (fin de l'essai), X-RateLimit-Remaining, X-Attribution.
401Sans clé, ou avec une clé inconnue (à partir du 14 octobre 2026).
402L'essai de 5 jours est terminé et la clé n'a pas d'offre payante.
403Clé révoquée. Le corps donne la raison.
429Limite de l'offre dépassée. L'en-tête Retry-After dit combien de secondes attendre.
HTTP/1.1 401 Unauthorized
{
  "error": "Clé nécessaire",
  "detail": "L'API de Trafic en Direct ne répond plus sans clé. Créez une clé d'essai sur https://traficendirect.fr/api-publique (valable 5 jours) ou demandez une offre payante à [email protected].",
  "cle": "https://traficendirect.fr/api-publique",
  "contact": "[email protected]",
  "attribution_obligatoire": "L'attribution est obligatoire dans toutes les offres : ...",
  "attribution": { "text": "Données : Trafic en Direct", "url": "https://traficendirect.fr" }
}
HTTP/1.1 402 Payment Required
{
  "error": "Période d'essai terminée",
  "detail": "Cette clé était une clé d'essai et a expiré le 15 octobre 2026. Pour continuer à utiliser l'API, écrivez à [email protected] ...",
  "offres": "https://traficendirect.fr/api-publique",
  "contact": "[email protected]",
  "attribution_obligatoire": "L'attribution est obligatoire dans toutes les offres : ...",
  "attribution": { "text": "Données : Trafic en Direct", "url": "https://traficendirect.fr" }
}

Limites

L'essai accepte 120 requêtes par heure. Les offres payantes se comptent par jour : 10 000 requêtes en Personnel et 100 000 en Professionnel ; Entreprise, ce qui est convenu. Le compte se fait par clé et non par IP, pour qu'une app avec beaucoup d'utilisateurs ne soit pas freinée par l'un d'eux. Au-delà, vous recevez un 429 avec le temps d'attente dans Retry-After.

Les sources sont lues toutes les quelques minutes et la réponse a un cache de 30 secondes : interroger plus de deux fois par minute n'apporte aucune donnée nouvelle. Qui atteint la limite, c'est presque toujours une boucle oubliée.

Le CORS est ouvert : vous pouvez appeler directement depuis le navigateur, sans serveur intermédiaire. La clé est alors visible par quiconque ouvre la page.

Offres et prix

Essai

Pour tout le monde

Gratuit

  • 5 jours à partir de la première requête
  • 120 requêtes par heure
  • Attribution obligatoire

Formulaire ci-dessus, deux minutes.

Personnel

Projets personnels ou petits, sans revenus significatifs

15 € / mois

TVA incluse

  • Environ 10 000 requêtes par jour
  • France uniquement
  • Attribution obligatoire

Professionnel

Apps commerciales, sites avec publicité, usage en entreprise

79 € / mois

TVA incluse

  • Environ 100 000 requêtes par jour
  • Attribution obligatoire

Entreprise

Flottes, assureurs, médias, plusieurs pays, SLA

Parlons-en

  • Plusieurs pays, via Roadscore
  • Volume et disponibilité convenus
  • Attribution obligatoire

Via Roadscore et [email protected].

Ce que vous payez : l'accès au service, c'est-à-dire l'API elle-même, les limites de l'offre et le support. Pas les données : les événements appartiennent aux organismes qui les publient (Bison Futé (DIR et autoroutes concédées), DiaLog, Ville de Paris, métropoles de Lyon, Toulouse, Bordeaux, Rennes et Lille, départements 17, 22, 44, 53 et 72, Météo-France via MeteoAlarm), ils ne sont pas à nous et nous n'en accordons pas de licence. C'est pourquoi chaque événement garde sa source, et qui les affiche garde ce crédit.

Comment payer : pour l'instant, par e-mail et facture. Écrivez à [email protected] avec le nom du projet, l'usage prévu et l'offre qui vous intéresse : nous répondons avec la facture. Au paiement, votre clé d'essai passe sur l'offre et n'expire plus. Prix par mois, TVA incluse.

Conditions et attribution

L'attribution est obligatoire, dans toutes les offres

Essai, Personnel, Professionnel ou Entreprise : toute app, tout site ou produit qui utilise cette API indique d'où viennent les données, avec un lien visible vers traficendirect.fr à côté d'elles. Le texte exigé est « Données : Trafic en Direct », avec un lien vers https://traficendirect.fr. À copier :

Données : <a href="https://traficendirect.fr">Trafic en Direct</a>

Gardez aussi le crédit de la source d'origine quand la réponse le donne (les champs source et sourceUrl de chaque événement : Bison Futé (DIR et autoroutes concédées), DiaLog, Ville de Paris, métropoles de Lyon, Toulouse, Bordeaux, Rennes et Lille, départements 17, 22, 44, 53 et 72, Météo-France via MeteoAlarm). Chaque réponse porte l'attribution dans le champ attribution et dans l'en-tête X-Attribution.

  • Construire un produit sur l'API sans offre payante une fois l'essai terminé, ou sans attribution, n'est pas un usage autorisé.
  • La clé appartient au projet : on ne la partage pas et on ne la publie pas. Si elle fuite, écrivez-nous et nous en émettons une autre.
  • Une clé peut être révoquée si elle sert à autre chose que l'usage déclaré, ou sans attribution.
  • Certaines sources (Ville de Paris pour les chantiers, Rennes Métropole) sont sous licence ODbL : la base que vous en tirez reste soumise à ses conditions de partage à l'identique.
  • Plus de détails dans les conditions d'utilisation et, sur les données des détenteurs de clé, dans la politique de confidentialité.

Honnêteté sur la couverture

Cette API renvoie ce que publient les sources officielles, pas ce qui se passe sur la route. Une route sans événement dans la réponse n'est pas une route dégagée: c'est une route sur laquelle personne n'a rien publié. Hors des métropoles et départements listés, les routes locales sont peu couvertes.

Si vous construisez des alertes dessus, dites-le à ceux qui les reçoivent. Et ne l'utilisez pas pour des décisions d'urgence : en cas d'urgence, 112.

L'état de chaque source, en direct, est dans ?debug=1.

Contact

Pour une offre payante, du volume, une facture, une clé perdue ou toute question sur l'API : [email protected]. C'est nous qui répondons, pas un système de tickets. Pour des données de plusieurs pays ou un accord avec SLA, voyez Roadscore.