# Module 8 : Backend API (PHP) > Ce module couvre la création de l'API REST côté serveur : routage, controllers, mappers et intégration avec Dolibarr. ## Prérequis - Connaissance de PHP et de Dolibarr - Modules 5-7 complétés (architecture et hooks frontend) ## Structure backend ``` monmodule/ ├── pwa/ │ └── api.php # Point d'entrée des requêtes ├── smartmaker-api/ │ ├── Controllers/ # Logique métier │ │ └── ItemController.php │ └── Mappers/ # Conversion Dolibarr → JSON │ └── dmItem.php └── smartmaker-api-prepend.php # Bootstrap ``` ## Chapitres ^ # ^ Chapitre ^ Contenu ^ | 1 | [[:15_training:module8-backend-api:routage|Routage]] | Configuration des routes dans api.php | | 2 | [[:15_training:module8-backend-api:controllers|Controllers]] | Logique métier et CRUD | | 3 | [[:15_training:module8-backend-api:mappers|Mappers]] | Conversion Dolibarr → React | | 4 | [[:15_training:module8-backend-api:extrafields|Extrafields]] | Formulaires dynamiques et champs personnalisés | ## Objectifs du module À la fin de ce module, vous saurez : - Configurer les routes API - Créer des controllers avec CRUD complet - Mapper les objets Dolibarr vers JSON - Gérer l'authentification JWT - Utiliser les extrafields ## Flux d'une requête ``` 1. React: api.private.get('items/123') ↓ 2. HTTP: GET /pwa/api.php?route=items/123 ↓ 3. api.php: Route vers ItemController::show ↓ 4. Controller: Charge l'objet Dolibarr ↓ 5. Mapper: Convertit en JSON ↓ 6. api.php: Retourne JSON avec code HTTP ``` ## SmartAuth L'authentification JWT est gérée par SmartAuth : - Validation automatique des tokens - Accès à l'utilisateur Dolibarr connecté - Refresh automatique des tokens [[:15_training:module8-backend-api:routage|Commencer : Routage →]]