Aller au contenu principal

Conventions

Format JSON, dates, énumérations, pagination, suppression et archivage, envoi et téléchargement de fichiers.

JSON

  • Requêtes et réponses en JSON UTF-8 (Content-Type: application/json).
  • Propriétés en camelCase dans les réponses ; la casse des propriétés est indifférente dans les requêtes.
  • Les valeurs null sont écrites explicitement.
  • Les nombres sont écrits comme des nombres. Le document OpenAPI déclare les entiers integer | string parce que l’API accepte aussi un nombre écrit entre guillemets en entrée ; la référence les présente comme des nombres.

Énumérations

Les énumérations sont écrites par leur nom, tel qu’il est défini dans le code, en PascalCase : par exemple "Standard", "Important", "High", "Critical" pour la criticité d’un actif (criticalityScore). La référence de l’API donne la liste des valeurs de chaque énumération.

Quelques champs ne sont pas des énumérations mais des chaînes avec leurs propres valeurs ; la référence les présente comme string. Les plus utiles :

ChampValeurs
Statut d’un contrôle (status)not_started, in_progress, implemented, non_compliant, not_applicable (en entrée, la casse et les tirets bas sont indifférents ; le filtre de liste accepte plusieurs valeurs séparées par des virgules)
Criticité d’un contrôle (criticality)critical, important, standard
Rôle dans le jeton (roles[].role)admin, rssi, contributor, auditor

Dates

  • Les horodatages sont en UTC, au format ISO 8601 avec le suffixe Z (2026-10-10T08:30:00Z). Envoyez vos dates en UTC.
  • Les dates sans heure s’écrivent AAAA-MM-JJ.

Identifiants

La plupart des ressources sont identifiées par un UUID (les référentiels par leur code, le Trust Center public par un identifiant court). Dans les chemins qui attendent un UUID, un identifiant mal formé ne correspond à aucune route et donne 404.

Pagination

Les listes ne suivent pas toutes la même convention. Les quatre formes en usage :

RessourcesParamètresRéponse
Actifs, incidents, tâches, fournisseurs, notifications, exports et planifications de rapports, RGPD (traitements, AIPD, demandes de droits, violations)page (à partir de 1), pageSize (20 par défaut ; 100 au plus, borne non contrôlée sur les rapports){ "items": [...], "pagination": { "total", "page", "pageSize" } }
Risques, politiquespage, pageSize (1 à 100, 25 par défaut){ "data": [...], "meta": { "total", "page", "pageSize" } }
Journal d’accès et demandes du Trust Centerpage, pageSize (20 par défaut){ "data": [...], "meta": { "total", "page", "pageSize" } }
Journal d’audit (50 par défaut), utilisateurs (20 par défaut, 100 au plus)page, pageSize{ "items": [...], "totalCount", "page", "pageSize" }
Contrôleslimit (1 à 100, 100 par défaut), offset{ "data": [...], "totalCount" }

D’autres listes (règles d’automatisation, par exemple) renvoient tout, sans pagination. Pour chaque opération, la référence indique les paramètres et le schéma de réponse exacts. La recherche plein texte s’appelle q sur la plupart des listes, search sur le journal d’audit et les utilisateurs.

Supprimer ou archiver

La plupart des ressources ne sont pas effacées mais archivées : elles disparaissent des listes et restent en base.

  • Certains DELETE archivent en réalité : actifs, fournisseurs, exports et planifications de rapports.
  • D’autres ressources ont une opération POST …/archive explicite : entités, politiques, traitements, référentiels et modèles.
  • DELETE /api/v1/entities/{entityId}/risks/{id} clôture le risque et attend un corps JSON avec la justification de clôture.

Fichiers

Envoi (multipart/form-data) : il n’existe que deux points d’envoi de fichiers, l’image d’une certification du Trust Center (PNG, JPEG ou WebP, contenu vérifié) et les pièces jointes du portail fournisseur (PDF, PNG ou JPEG, 10 Mo au plus). Les autres imports prennent du JSON : lignes d’actifs ou de fournisseurs, document d’un référentiel personnalisé ou d’un modèle de questionnaire (5 Mo au plus).

Téléchargement : certaines opérations renvoient un fichier plutôt que du JSON, avec un nom de fichier dans l’en-tête Content-Disposition :

  • CSV : export du journal d’audit, modèles d’import d’actifs et de fournisseurs ;
  • Excel : modèle d’import de fournisseurs, registre d’informations DORA ;
  • PDF ou Excel : rapports générés ;
  • JSON : export d’une version de référentiel personnalisé ou d’un modèle de questionnaire ;
  • PNG : QR code du Trust Center ;
  • format d’origine : images de certification du Trust Center, pièces jointes des questionnaires fournisseurs.

En-têtes de sécurité

Toutes les réponses portent X-Content-Type-Options: nosniff, X-Frame-Options: DENY, Referrer-Policy: strict-origin-when-cross-origin, Permissions-Policy: camera=(), microphone=(), geolocation=() et Strict-Transport-Security: max-age=31536000; includeSubDomains.

État du service

GET https://api.conformitly.fr/health répond {"status":"ok"} sans authentification ; GET /api/v1/health répond {"status":"healthy","timestamp":"…"}. Ils indiquent que l’API répond, pas l’état de ses dépendances.

Mise à jour : 10 octobre 2026. Signaler une inexactitude