API REST pour intégrer la bibliothèque dans vos applications mobiles, desktop ou services tiers.
http://library.antimilitarism.org/api/
Livres
?endpoint=books
Liste des livres avec pagination et filtres
Paramètres
| Param | Type | Description |
|---|---|---|
| page | int | Numéro de page (défaut: 1) |
| limit | int | Résultats par page (défaut: 20, max: 100) |
| sort | string | recent, oldest, title, author, popular |
| category | int | Filtrer par ID catégorie |
| author | int | Filtrer par ID auteur |
?endpoint=books&id=X ou &slug=X
Détail d'un livre par ID ou slug
Auteurs
?endpoint=authors
Liste de tous les auteurs
?endpoint=authors&id=X
Détail d'un auteur avec ses livres
Catégories
?endpoint=categories
Liste des catégories
Recherche
?endpoint=search&q=bakounine
Recherche dans les titres, résumés et auteurs (min 2 caractères)
Raccourcis
?endpoint=recent&limit=10
Derniers livres ajoutés
?endpoint=popular&limit=10
Livres les plus consultés
?endpoint=random&limit=1
Livre(s) aléatoire(s)
?endpoint=stats
Statistiques globales (nb livres, auteurs, vues...)
Téléchargement
?endpoint=download&id=X
URLs de téléchargement PDF/EPUB d'un livre
Pages
?endpoint=pages
Liste des pages statiques (à propos, mentions légales...)
?endpoint=pages&slug=a-propos
Contenu d'une page par slug
Feed
?endpoint=feed&limit=20
Flux des derniers ajouts (format JSON, alternative au RSS XML)
Authentification
?endpoint=auth
Connexion - retourne un token Bearer (valide 30 jours)
{"email": "user@example.com", "password": "xxx"}
?endpoint=logout
Déconnexion (header: Authorization: Bearer {token})
Favoris (auth requise)
?endpoint=favorites
Liste des favoris de l'utilisateur
?endpoint=favorites
Ajouter un favori
{"book_id": 123}
?endpoint=favorites&book_id=123
Supprimer un favori
Profil (auth requise)
?endpoint=me
Informations du profil utilisateur connecté
?endpoint=me
Modifier le profil
{"firstname": "Jean", "name": "Dupont"}
# Liste des livres
curl "http://library.antimilitarism.org/api/?endpoint=books&limit=5"
# Recherche
curl "http://library.antimilitarism.org/api/?endpoint=search&q=kropotkine"
# Auth
curl -X POST "http://library.antimilitarism.org/api/?endpoint=auth" \
-H "Content-Type: application/json" \
-d '{"email":"x@x.com","password":"xxx"}'
200 | Succès |
400 | Requête invalide |
401 | Non authentifié |
404 | Non trouvé |
405 | Méthode non autorisée |
500 | Erreur serveur |
- CORS activé pour toutes origines
- Réponses en JSON UTF-8
- Token valide 30 jours
- Header:
Authorization: Bearer {token}