Aller au contenu

Versionnement de l'API & Politique LTS

Versionnement de l’API & Politique LTS

Schéma de versionnement

qr3.app utilise le versionnement basé sur l’URL : /v1/, /v2/, etc.

https://qr3.app/v1/codes
^^^
Versionspräfix

La version stable actuelle est v1 LTS .


Cycle de vie des versions

Neu → Stable (LTS) → Maintenance → End-of-Life
Beta-Phase Aktiv Nur Fixes Eingestellt
(0–3 Monate) (12+ Monate) (6 Monate) (danach)
VersionStatutSupport jusqu’àNotes
v1✅ Stable (LTS)Min. mars 2027Version de production actuelle
v2📋 PlanifiéRoadmap : Phase 5+

Modifications de rupture (Breaking Changes) — Définition

Une modification de rupture (Breaking Change) est tout changement qui perturbe le fonctionnement des clients existants sans adaptation :

  • Suppression ou renommage de champs de requête/réponse
  • Modification des codes d’état HTTP pour les scénarios existants
  • Suppression de points de terminaison (endpoints)
  • Modification de la méthode d’authentification
  • Modifications incompatibles du format d’erreur

Ne sont pas des modifications de rupture (extensions compatibles) :

  • Ajout de champs de requête facultatifs
  • Ajout de nouveaux champs de réponse
  • Nouveaux points de terminaison (endpoints)
  • Nouveaux paramètres de requête (query parameters) facultatifs
  • Nouveaux codes d’erreur (RFC 7807 reste compatible)

Communication des modifications de rupture

Les modifications de rupture ne sont jamais effectuées sans annonce préalable :

  1. Annonce : Au moins 90 jours avant la modification de rupture
  2. Canal : E-mail à tous les utilisateurs de l’API + bannière sur le tableau de bord + CHANGELOG.md
  3. Aide à la migration : Guide de migration et exemples de code
  4. En-têtes de dépréciation : L’API fournit les en-têtes HTTP Deprecation + Sunset
HTTP/1.1 200 OK
Deprecation: true
Sunset: Sat, 01 Mar 2027 00:00:00 GMT
Link: <https://docs.qr3.app/de/api/versioning>; rel="deprecation"

Garanties LTS (v1)

Pour la version LTS actuelle v1, les conditions suivantes s’appliquent :

GarantiePériode
Aucune modification de ruptureMin. 12 mois à partir du statut Stable
Correctifs de sécuritéPour toute la durée de vie de la version LTS
Corrections de bugsPour toute la durée de vie de la version LTS
Mode maintenance6 mois après la fin de la version LTS
Support completAu moins jusqu’en mars 2027

Identifier la version

Chaque réponse de l’API contient des métadonnées sur la version actuelle :

{
"data": { ... },
"meta": {
"request_id": "req_abc123",
"api_version": "1.0.0"
}
}

Le point de terminaison GET /v1/health fournit en plus :

{
"version": "1.0.0",
"environment": "production",
"status": "ok"
}

Migration entre les versions

Lorsqu’une nouvelle version majeure est publiée, l’ancienne version reste active en parallèle pendant au moins 6 mois.

Nous fournissons :

  • Un diff complet de tous les points de terminaison modifiés
  • Un outil de migration automatique (dans la mesure du possible)
  • Un support de migration personnalisé pour les clients Business/Agency

Politique de dépréciation pour les points de terminaison individuels

Certains points de terminaison individuels peuvent également être marqués comme dépréciés au sein d’une même version :

GET /v1/codes HTTP/1.1
HTTP/1.1 200 OK
Deprecation: true
Sunset: Thu, 01 Jan 2026 00:00:00 GMT
Link: <https://docs.qr3.app/de/api/codes>; rel="deprecation"

Journal des modifications (Changelog)

Toutes les modifications de l’API sont documentées dans le fichier CHANGELOG.md du dépôt.

DateVersionTypeDescription
Mars 2026v1.0.0InitialPremière version stable : QR-Codes, Redirect, Auth, Billing
Mars 2026v1.1.0FeatureBatch-API, A/B-Destinations, Expiry, PDF-Export
Mars 2026v1.2.0FeatureOrganizations, Workspaces, Audit-Logs, Comments, points de terminaison RGPD

Des questions ?

Pour toute question concernant la politique de versionnement : [email protected]