Pe măsură ce API-ul evoluează, apar noi metode, parametri și logică. Pentru a nu perturba activitatea clienților actuali, se utilizează versionarea API. Suportăm mai multe abordări ale versionării, permițând integratorilor să utilizeze versiunea dorită a interfeței fără riscuri pentru o funcționare stabilă.
Acest lucru este important atât la scalarea platformei, cât și la implementarea actualizărilor, testarea sau deservirea clienților vechi.
Metode de versionare
| Metodă | Descriere și beneficii |
|---|---|
| Versiune în URL ('/v1/') | Cel mai ușor de înțeles și popular mod este convenabil pentru API RESTUL |
| Acceptă antetul | Exemplu: 'Accept: application/vnd. api + json; versiunea = 2 '- separă datele de versiune |
| Câmpuri alias/versioned GraphQL | Versiuni diferite prin pseudonime: 'userV1', 'userV2' - convenabil pentru migrarea treptată |
| Versiuni la nivel de schemă | Diagrame și module separate în OpenAPI/Swagger pentru fiecare versiune |
Cum a fost implementat
Structura API cu „/v1/”, „/v2/” și rute independente
Verificarea anteturilor 'Accept' și 'X-API-Version'
GraphQL acceptă pseudonime și scheme versionate ('userV1', 'userV2')
Capacitatea de a testa A/B versiuni noi, fără riscuri pentru producție
Logarea apelurilor la fiecare versiune pentru analiză și migrare
Beneficii Business și Integrator
Sprijiniți clienții vechi fără încetinirea
Multi-generație API Funcționare paralelă
Implementați în siguranță noi caracteristici fără a rupe compatibilitatea inversă
Flexibilitate pentru scalarea și modernizarea infrastructurii
Migrarea fără probleme între versiunile controlate și analitice
În cazul în care deosebit de important
Platforme cu mai multi clienti externi
Proiecte cu prima abordare API și ciclu de viață lung
Integrarea cu băncile, furnizorii, partenerii B2B
Sisteme cu clienti mobili sau IoT de lunga durata
Versionarea API este baza fiabilității și flexibilității în integrare. Indiferent de format (REST, GraphQL sau gRPC), asigurăm dezvoltarea în siguranță a interfețelor - fără eșecuri, conflicte și pierderea compatibilității.