# API de données ouvertes

Tout ce qui est publié sur Tempussit — cours, articles du blog, notions et questions fréquentes — est disponible en JSON pour les programmes et les assistants d’IA. Lecture seule, sans clé ni inscription.

## Ce qui est disponible

**`GET /data/v1/index.json`**

Sommaire : langues du site, catalogues de cours et liens vers tous les fichiers de données.

**`GET /data/v1/courses/{languageKey}.json`**

Cours d’une langue du catalogue, 100 par page (paramètre ?page=).

**`GET /data/v1/course/{slug}.json`**

Fiche d’un cours publié : titre, description, auteur, langues, prix, programme, adresse de la page et couverture.

**`GET /data/v1/{languageCode}/{kind}.json`**

Notions, questions fréquentes, rubriques et articles du blog dans une langue du site.

**`GET /data/v1/openapi.json`**

Description de toutes les réponses au format OpenAPI 3.1.

## Exemples de requêtes

```
curl https://tempussit.com/data/v1/index.json
curl https://tempussit.com/data/v1/courses/fr.json
curl https://tempussit.com/data/v1/course/{slug}.json
curl -I https://tempussit.com/data/v1/fr/faq.json

fetch("https://tempussit.com/data/v1/fr/glossary.json")
  .then(response => response.json());
```

## Conditions

- Lecture seule : seules les requêtes GET et HEAD sont acceptées.
- Le nombre de requêtes par adresse IP et par minute est limité. Au-delà, la réponse est 429 avec l’en-tête Retry-After.
- Les réponses peuvent être mises en cache 5 minutes et demandées depuis un navigateur sur n’importe quel site (Access-Control-Allow-Origin: \*).
- Uniquement ce qui est visible sur les pages publiques : ni brouillons, ni achats, ni données personnelles.
- La version fait partie de l’adresse (/data/v1/). Les anciennes adresses sans version continuent de fonctionner.

mis à jour le 9 novembre 2026
