Conventions
Dates et heures
Toutes les dates utilisent ISO 8601 en UTC.Devises
Les montants sont toujours en entier dans l’unité principale (pas de centimes). Ex.
500000 = 500 000 XAF.
Téléphones
Format E.164 avec code pays obligatoire.Emails
Validation stricte RFC 5322. Longueur max 254 caractères.Noms de champs
- API (JSON) :
camelCase—firstName,dateExpiration,niveauExperience - SQL (colonnes) :
snake_case—first_name,date_expiration - SQL (tables) :
snake_casepluriel —candidats,offres_emploi - Enums :
UPPER_SNAKE_CASE—CDI,PENDING_APPROVAL,NEW
IDs
- Type :
long(64 bits) - Format dans JSON : nombre entier
- Exposés tels quels (pas d’obfuscation ni de slug)
Pagination
Spring Data standard. Voir Pagination.pagebase 0sizemax 100 (clampé silencieusement)sortaccepte plusieurs entrées
Tri
Langues
Les messages d’erreur et enumérations sont renvoyés selonAccept-Language (fr/en). Le français est le défaut.
Encodage
- Body :
UTF-8 - URL : percent-encoding standard
- Multipart : boundary généré par le client
Codes pays
ISO 3166-1 alpha-2. Cameroun =CM.
Géolocalisation
FormatPOINT(lon lat) pour les coordonnées PostGIS (interne). Exposé en API sous forme :
Enumérations
Toujours documentées par endpoint. Liste complète : Énumérations.Nullabilité
Champs absents omis du JSON (pasnull). Exception : champs explicitement documentés comme nullable.
Casse des réponses
- Clés JSON :
camelCasestrict - Valeurs enum :
UPPER_SNAKE_CASE - Chaînes libres : telles qu’enregistrées