Aller plus loin
Versions et compatibilité
Ce qui est stable, ce qui peut bouger, et comment cette documentation suit les SDK.
Ce que le sélecteur de version choisit
Le sélecteur en haut de page choisit la version de la documentation, c'est-à-dire le couple (version d'API, version des SDK) décrit par ces pages. La version courante est indiquée dans la colonne de gauche.
| Documentation | API | SDK | État |
|---|---|---|---|
| v1 | v1 | 0.1.x | Stable |
Règles de compatibilité
Ce qui n'arrivera pas sans nouvelle version majeure :
- retirer un champ d'une réponse ;
- retirer une opération ;
- rendre obligatoire un champ qui était facultatif ;
- changer le sens d'un code d'erreur.
Ce qui peut arriver à tout moment, et que votre code doit tolérer :
- l'ajout d'un champ dans une réponse — ne cassez pas sur un champ inconnu ;
- l'ajout d'une valeur à une énumération — prévoyez un cas par défaut ;
- la reformulation d'un
messaged'erreur — branchez-vous surcode; - l'ajout d'un type d'événement webhook — ignorez ceux que vous ne connaissez pas.
Un client HTTP strict qui refuse les champs inconnus finira par casser sur une évolution parfaitement rétrocompatible. Configurez-le en conséquence — les SDK officiels le sont déjà.
Versions des SDK
Les huit SDK sont versionnés ensemble et générés depuis le même manifeste. Une version mineure ajoute des opérations ; une version corrective ne change que le transport ou l'ergonomie.
| Langage | Version | Installation | Ce qu'il faut savoir |
|---|---|---|---|
| TypeScript | 0.1.0 | npm install @rapidy/sdk | Node ≥ 18 (le fetch global suffit) et navigateur. Modèles typés. |
| Python | 0.1.0 | pip install rapidy-sdk | Python ≥ 3.9. Zéro dépendance : urllib de la bibliothèque standard. |
| PHP | 0.1.0 | composer require rapidy/sdk | PHP ≥ 8.1, PSR-4. Le choix pour WooCommerce et WordPress. |
| Ruby | 0.1.0 | gem install rapidy | Ruby ≥ 2.6. Zéro dépendance : net/http, json, openssl. |
| Go | 0.1.0 | go get github.com/Smartdev-Africa/rapidy/sdks/go | Go ≥ 1.21. Zéro dépendance, transport injectable. |
| Java | 0.1.0 | net.rapidy:rapidy-sdk:0.1.0 | Java ≥ 17, compatible Kotlin. Transport JDK, Jackson pour le JSON. |
| C# | 0.1.0 | dotnet add package Rapidy.Sdk | net8.0. Zéro dépendance : System.Net.Http + System.Text.Json. |
| Dart | 0.1.0 | dart pub add rapidy_sdk | Dart ≥ 3.6, Flutter. Modèles typés. |
Suivre les évolutions
Chaque évolution du contrat passe par le manifeste, et le manifeste porte son propre numéro. Les suites de conformance des huit SDK comparent leur contrat généré à ce numéro : un manifeste avancé sans régénération fait échouer les huit, plutôt que de laisser une suite verte tourner sur du code périmé.