Documentation de l'API
Une API REST publique, sans authentification, qui expose six ressources au format JSON.
URL de base
TEXT
https://www.api-placeholder.frederickagathe.fr/api
Toutes les origines sont autorisées (CORS *) et les réponses sont en JSON.
Tester
Choisissez un exemple ou écrivez votre requête : la réponse vient directement de l'API.
Réponse
…
Ressources
Opérations
Chaque ressource accepte les mêmes opérations.
| Méthode | URI | Description | Codes |
|---|---|---|---|
| GET | /api/{resource} |
Liste les entrées, avec filtres et pagination | 200, 422 |
| GET | /api/{resource}/{id} |
Retourne une entrée | 200, 404 |
| POST | /api/{resource} |
Crée une entrée, réellement enregistrée | 201, 400, 422 |
| PUT | /api/{resource}/{id} |
Remplace une entrée | 200, 400, 404, 422 |
| PATCH | /api/{resource}/{id} |
Modifie les champs envoyés | 200, 400, 404, 422 |
| DELETE | /api/{resource}/{id} |
Simule une suppression : rien n'est supprimé | 204 |
Mode sandbox
- Données initiales : PUT, PATCH et DELETE répondent normalement, mais la base n'est pas modifiée.
- Vos données : ce que vous créez avec POST est réellement enregistré, modifiable et supprimable.
- Purge : vos données sont supprimées chaque nuit à 03h00.
Filtres et pagination
| Paramètre | Rôle | Exemple |
|---|---|---|
_start | Offset de départ | /api/posts?_start=10 |
_limit | Nombre maximal de résultats | /api/photos?_limit=20 |
| Champ filtrable | Égalité exacte, listée sur la page de chaque ressource | /api/todos?userId=1&completed=true |
Erreurs
| Code | Signification |
|---|---|
| 200 | Requête GET, PUT ou PATCH réussie |
| 201 | Ressource créée avec POST |
| 204 | Requête DELETE : aucun contenu, et rien n'est supprimé |
| 400 | JSON malformé, ou clé étrangère inexistante |
| 404 | Ressource introuvable : le corps de la réponse est {} |
| 413 | Body de la requête supérieur à 64 Ko |
| 422 | Erreur de validation, détaillée dans violations |
| 429 | Limite d'appels par IP dépassée, voir l'en-tête Retry-After |
| 503 | La base de données ne répond plus (health check) |
Hors 404, une erreur décrit le problème dans title et detail. Une erreur 422 liste aussi les champs refusés :
JSON
Réponse 422
{
"title": "Validation Failed",
"status": 422,
"detail": "title: This value should not be blank.",
"violations": [
{
"propertyPath": "title",
"title": "This value should not be blank."
}
]
}
Limites
- 100 requêtes par minute et par IP sur les six ressources.
- Body HTTP de 64 Ko au maximum.
Health check
GET /api/health-check répond 200 si la base de données est disponible, 503 sinon.
JSON
Réponse 200
{
"status": "ok",
"timestamp": "2026-11-01T02:00:00+01:00",
"checks": {
"database": "up"
}
}