Annexes Techniques
Documentation technique détaillée, guides et références
Annexe A - Documentation API
Documentation complète de l'API RESTful de MELIS Platform avec exemples d'utilisation et spécifications techniques.
Endpoints Principaux
# Authentification
POST /api/v1/auth/login
POST /api/v1/auth/logout
POST /api/v1/auth/refresh
# Gestion des utilisateurs
GET /api/v1/users
POST /api/v1/users
GET /api/v1/users/{id}
PUT /api/v1/users/{id}
DELETE /api/v1/users/{id}
# Gestion des données
GET /api/v1/data
POST /api/v1/data
GET /api/v1/data/{id}
PUT /api/v1/data/{id}
PATCH /api/v1/data/{id}
DELETE /api/v1/data/{id}
Exemples de Requêtes
Authentification
curl -X POST https://api.melis.com/v1/auth/login \
-H "Content-Type: application/json" \
-d '{
"email": "user@example.com",
"password": "password123"
}'
Création d'utilisateur
curl -X POST https://api.melis.com/v1/users \
-H "Authorization: Bearer {token}" \
-H "Content-Type: application/json" \
-d '{
"name": "John Doe",
"email": "john@example.com",
"role": "user"
}'
Annexe B - Schémas de Base de Données
Structure détaillée des tables et relations de la base de données MELIS Platform.
Tables Principales
| Table | Description | Clé Primaire | Relations |
|---|---|---|---|
users |
Informations utilisateurs | id (UUID) | 1:N avec sessions, data |
sessions |
Sessions utilisateur | id (UUID) | N:1 avec users |
data |
Données métier | id (UUID) | N:1 avec users, categories |
audit_logs |
Journalisation | id (BIGINT) | N:1 avec users |
Modèle de Données Utilisateur
CREATE TABLE users (
id UUID PRIMARY KEY DEFAULT gen_random_uuid(),
email VARCHAR(255) UNIQUE NOT NULL,
password_hash VARCHAR(255) NOT NULL,
first_name VARCHAR(100),
last_name VARCHAR(100),
role VARCHAR(50) DEFAULT 'user',
is_active BOOLEAN DEFAULT true,
email_verified_at TIMESTAMP,
created_at TIMESTAMP DEFAULT CURRENT_TIMESTAMP,
updated_at TIMESTAMP DEFAULT CURRENT_TIMESTAMP
);
CREATE INDEX idx_users_email ON users(email);
CREATE INDEX idx_users_role ON users(role);
CREATE INDEX idx_users_active ON users(is_active);
Annexe C - Configuration et Variables d'Environnement
Variables de configuration requises pour le déploiement et la configuration de MELIS Platform.
Variables d'Environnement
Application
# Application
APP_NAME=MELIS Platform
APP_ENV=production
APP_DEBUG=false
APP_URL=https://app.melis.com
# Database
DB_HOST=localhost
DB_PORT=5432
DB_DATABASE=melis
DB_USERNAME=melis_user
DB_PASSWORD=secure_password
Sécurité
# Security
JWT_SECRET=your-jwt-secret-key
ENCRYPTION_KEY=32-char-encryption-key
SESSION_LIFETIME=120
# External Services
MAIL_DRIVER=smtp
MAIL_HOST=smtp.mailtrap.io
MAIL_PORT=2525
MAIL_USERNAME=your-username
MAIL_PASSWORD=your-password
Annexe D - Guide de Déploiement
Instructions détaillées pour déployer MELIS Platform en production.
Déploiement avec Docker
Étapes recommandées pour un déploiement containerisé :
- Préparation : Cloner le repository et configurer les variables
- Build : Construire les images Docker
- Database : Initialiser la base de données
- Déploiement : Lancer les containers
- Monitoring : Configurer la surveillance
# Dockerfile example
FROM node:18-alpine
WORKDIR /app
COPY package*.json ./
RUN npm ci --only=production
COPY . .
EXPOSE 3000
CMD ["npm", "start"]
# Docker Compose
version: '3.8'
services:
app:
build: .
ports:
- "3000:3000"
environment:
- NODE_ENV=production
depends_on:
- database
database:
image: postgres:15
environment:
POSTGRES_DB: melis
POSTGRES_USER: melis_user
POSTGRES_PASSWORD: secure_password
volumes:
- postgres_data:/var/lib/postgresql/data
volumes:
postgres_data:
Annexe E - Dépannage et FAQ
Solutions aux problèmes courants et questions fréquemment posées.
Problèmes Courants
Erreur de Connexion à la Base de Données
Symptôme : "Database connection failed"
Solutions :
- • Vérifier les variables DB_HOST, DB_PORT, DB_USERNAME
- • Contrôler que PostgreSQL est démarré
- • Tester la connectivité réseau
- • Vérifier les permissions utilisateur
Performance Lente
Symptôme : Temps de réponse élevé
Solutions :
- • Activer le cache Redis
- • Optimiser les requêtes SQL
- • Augmenter les ressources serveur
- • Configurer le CDN
Problèmes d'Authentification
Symptôme : "Token expired" ou "Unauthorized"
Solutions :
- • Vérifier la configuration JWT_SECRET
- • Contrôler la durée de vie des tokens
- • Synchroniser l'horloge système
- • Nettoyer les sessions expirées
Annexe F - Glossaire Technique
Définitions des termes techniques utilisés dans la documentation MELIS Platform.
API (Application Programming Interface)
Interface permettant à des applications de communiquer entre elles
JWT (JSON Web Token)
Standard ouvert pour créer des tokens d'accès sécurisés
CRUD
Create, Read, Update, Delete - opérations de base sur les données
TLS (Transport Layer Security)
Protocole cryptographique pour sécuriser les communications
CDN (Content Delivery Network)
Réseau de serveurs distribués pour optimiser la diffusion de contenu
RBAC (Role-Based Access Control)
Contrôle d'accès basé sur les rôles utilisateur
SSO (Single Sign-On)
Authentification unique pour accéder à plusieurs applications
Webhook
Mécanisme permettant à une application d'envoyer des données en temps réel
Annexe G - Ressources et Téléchargements
Liens vers les ressources utiles, outils et fichiers de configuration.
SDK & Libraries
Kits de développement officiels
Documentation PDF
Version imprimable complète
Outils de Configuration
Scripts et templates de déploiement