Changelog
Évolutions de l'API publique — Keep a Changelog.
Politique de versioning : /api/v1/... reste stable. Tout breaking change crée un nouveau préfixe (/api/v2/...) servi 6 mois en parallèle.
v0.1.87 — 2026-07-01
Sprint AppService v2 — refonte du modèle applicatif pour couvrir les besoins RFP RSSI / Compliance (DORA, NIS2, RGPD). Additive N-1 compat : chaque champ ajouté a un défaut sensible, aucun caller v0.1.86 n'est cassé. Détails architecture : docs/APPSERVICE_V2_ARCHITECTURE.md.
- Ajout : Champ
dataClassificationsurApplication(enumPUBLIC/INTERNAL/CONFIDENTIAL/RESTRICTED, défautINTERNAL). Exposé surGET /api/v1/referentiel/applications/{code}+ accepté enPUT. Nouveau filtre?data_class=CONFIDENTIALsur la liste. Migration Liquibase 089. - Ajout : Champs
criticality(enum 4 niveauxMISSION_CRITICAL/IMPORTANT/NOMINAL/LOW) +rtoHours+rpoHourssurApplication. Backfill :applicationVip=true → MISSION_CRITICAL, elseNOMINAL. Nouveau filtre?criticality=. Migration Liquibase 090. - Ajout : Champ
regulationssurApplication— CSV multi-valeur (DORA,NIS2,RGPD,PCI_DSS,HDS,ISO_27001). Validation typée côté domain (token inconnu → 400). Nouveau filtre?regulation=DORA. Migration Liquibase 091. - Ajout : TCO éclaté — champs
licenseCost/supportCost/infraCost/staffCost(BIGINT nullable, minor units cents). Backfill legacyannual_cost → license_cost_cents. Le getterannualCostest maintenant dérivé (somme des 4 si ≥ 1 renseignée, sinon fallback legacy). Migration Liquibase 092. - Ajout : Champ
roleAssignmentssurApplication— CSV multi-valeur M:N au formatROLE:contact,ROLE:contact. 6 rôles typés :PRODUCT_OWNER,BUSINESS_OWNER,TECH_LEAD,ARCHITECT,SECURITY_OFFICER,DATA_OWNER. Backfill :contact_it → TECH_LEAD,contact_metier → PRODUCT_OWNER. Migration Liquibase 093. - Ajout : Endpoint
GET /api/v1/referentiel/applications/{code}/changes?limit=50— audit trail des changements sur les 11 fields whitelistés (criticité, RTO/RPO, classification donnée, réglementations, rôles assignés, coût TCO, statut). Ordre reverse-chronological, hard-cap 200. Alimente le tab Historique de la Fact Sheet. Migration Liquibase 094 (tableapplication_change_log). - Deprecation :
applicationVip(bool),annualCost(montant unique),contactITetcontactMetier(mono-valué) sont marqués@Deprecated(forRemoval=true)+ log WARN dans les setters. DROP planifié v0.1.88 — mettre à jour les callers legacy avant.
v0.1.77.1 — 2026-06-25
- Ajout : Webhooks sortants signés
POSTHTTP par subscription tenant. Catalogue V1 :application.created,application.updated,das.submitted. SignatureX-Arch-SignatureHMAC-SHA256 (formattimestamp.body), 4 headers de traçabilité (X-Arch-Timestamp,X-Arch-Event,X-Arch-Event-Id,X-Arch-Delivery-Id). Backoff exponentiel facteur 5 (1 min → 5 min → 25 min → 2 h → 10 h → 50 h, 6 tentatives max). Auto-disable de la subscription après 10 échecs consécutifs. CRUD via/admin/webhookscôté UI. Détails : /developer/webhooks. - Ajout : Spec OpenAPI enrichi de
x-codeSamples(curl / Python / JavaScript) sur tous les endpoints@PublicApi— exemples affichés dans le panneau Scalar côté /developer/explore.
v0.1.77 — 2026-06-24
- Ajout : Header
X-RateLimit-Reset(epoch secondes UTC) sur toutes les réponses/api/**, succès ou 429. Permet de pacer proactivement les requêtes sans attendre un 429.Retry-Afteraligné sur le même calcul. - Ajout : Réponses
401 Unauthorized(PAT invalide / expiré) et429 Too Many Requests(rate-limited) systématiquement documentées dans le spec OpenAPI — avec exemple JSON et headers associés. - Ajout : Tags
scope:read/scope:writeinjectés automatiquement dans la doc OpenAPI à partir de@PublicApi.scope. Plus besoin de chercher quel scope un endpoint exige.
v0.1.71 — 2026-06-24
- Ajout : SDK officiels TypeScript (
@arch-platform/sdk, npm) et Python (arch-platform-sdk, PyPI). Typage complet généré depuis le spec OpenAPI, auth PAT + OAuth2 supportées, sémantique identique entre les deux. Détails : /developer/sdks.
v0.1.70 — 2026-06-23
- Ajout : Endpoints provisioning utilisateurs
@PublicApisur/api/v1/tenant/invitations—POST /(invite),GET /(liste invitations),GET /members(membres actifs),DELETE /{id}(révoque invitation),DELETE /members/{userSub}(retire un membre). Permet d'automatiser l'offboarding RH via script. Scopesread/write. Détails : /developer/provisioning.
v0.1.67 — 2026-06-23
- Ajout : Référence API interactive Scalar sur /developer/explore — test des endpoints sans installer de client (Bearer PAT persisté en
localStorage).
v0.1.65 — 2026-06-22
- Ajout : Workflow self-service PAT — un dev dépose une demande justifiée sur /api-token-requests, un tenant-admin approuve et transmet le token via canal sécurisé.
- Ajout : OAuth2 Client Credentials pour partenaires long-terme — convention
client_id = arch-partner-<slug>, quota 600 req/min (3× PAT), TTL access token 5 min. - Ajout : Métriques Micrometer
arch.public_api.callsexposées via OTLP (par endpoint + statut).
v0.1.31 — 2026-05-26
- Ajout : API publique v1 — premiers endpoints
@PublicApisur/api/v1/referentiel/applicationset/api/v1/referentiel/functions. - Ajout : Authentification Personal Access Token (PAT, format
arc_pat_…). Rate limit 180 req/min par token.
Roadmap publique
- Endpoints
POST/PATCHsur/das(v0.2) - Formulaire self-service pour les demandes OAuth2 partenaires (v0.1.81+)
- Élargissement du catalogue d'events webhooks (
flux.created,notice.signed, etc. — V2)