API versiyalaşdırması və istifadədən çıxarılma
Geriyə uyğun REST API dəyişikliklərini və uyğunluğu pozan dəyişikliyin Deprecation və Sunset başlıqları ilə ən azı 6 ay əvvəl elan edilməsini öyrənin.
REST API əsas versiyasını yolda daşıyır: /api/v1. Bir əsas versiya daxilində API yalnız mövcud müştəri proqramlarının işləməyə davam etdiyi şəkildə dəyişir. Müştəri proqramını poza bilən dəyişiklik qüvvəyə minməzdən ən azı 6 ay əvvəl elan edilir: API istinadında, API dəyişiklik jurnalında və təsirlənən əməliyyatın hər cavabının başlıqlarında.
Bu siyasət 2026-10-18 tarixindən qüvvədədir. Ümumi istifadəyə verilməzdən əvvəl edilən dəyişikliklər bildiriş müddətinə tabe deyildi. Onlar API dəyişiklik jurnalında sadalanır.
Yoldakı versiya
https://<api-host>/api/v1<api-host>: API-nin host adı.
Yeni əsas versiya v1 ilə yanaşı, /api/v2 kimi öz yolunda təqdim olunur. v1 əlçatan qalır və v1 üzərində uyğunluğu pozan dəyişiklik yenə də ən azı 6 ay əvvəl bildiriş tələb edir.
Geriyə uyğun dəyişikliklər
Bu dəyişikliklər v1 daxilində istənilən vaxt edilə bilər. Müştəri proqramınızı elə qurun ki, onlar baş verdikdə də işləməyə davam etsin:
| Dəyişiklik | Müştəri proqramınızın etməli olduğu |
|---|---|
| Yeni əməliyyat | Heç nə. |
| Yeni, istəyə bağlı sorğu parametri və ya başlıq | Heç nə. Onsuz göndərilən sorğular əvvəlki kimi işləyir. |
| Sorğu gövdəsində yeni, istəyə bağlı sahə | Heç nə. |
| Cavabda yeni sahə | Tanımadığınız cavab sahələrinə məhəl qoymayın. |
| Cavabın enum siyahısında yeni dəyər | Tanımadığınız dəyərləri emal edin, məsələn, standart budaqla. |
| Yeni cavab başlığı | Tanımadığınız başlıqlara məhəl qoymayın. |
| Daha böyük maksimal uzunluq və ya daha yüksək limit kimi yumşaldılmış yoxlama | Heç nə. |
Uyğunluğu pozan dəyişikliklər
Bu dəyişikliklər aşağıdakı istifadədən çıxarılma prosesi olmadan heç vaxt əməliyyata tətbiq edilmir:
- Əməliyyatı və ya yolu silmək.
- Məcburi parametr və ya məcburi sorğu sahəsi əlavə etmək, yaxud istəyə bağlı parametri və ya sahəni məcburi etmək.
- Sahənin və ya parametrin tipini dəyişmək.
- Sorğunun enum siyahısından dəyəri silmək, yaxud daha qısa maksimal uzunluq, daha kiçik maksimum, daha az element və ya yeni şablon kimi yoxlamanı sərtləşdirmək.
- Cavab sahəsini silmək, yaxud onu istəyə bağlı və ya null ola bilən etmək.
- Uğurlu status kodunu və ya media tipini silmək.
- Əməliyyatın əvvəllər tələb etmədiyi token miqyasını (scope) tələb etmək, yaxud istənilən birinin kifayət etdiyi miqyaslar dəstindən miqyas çıxarmaq.
- API tokenlərini (API token) və xidmət hesabı (service account) açarlarını qəbul edən əməliyyatda onları rədd edərək əməliyyatı yalnız konsol sessiyasında işləyən etmək.
Uyğunluğu pozan dəyişiklik necə elan edilir
Uyğunluğu pozan dəyişiklik qüvvəyə minməzdən ən azı 6 ay əvvəl:
- Əməliyyat API istinadında və
https://<api-host>/openapi.jsonünvanındakı OpenAPI sənədində istifadədən çıxarılmış kimi işarələnir. Ondadeprecated: true, elan tarixi olanx-deprecation-datevə əməliyyatın işləməyi dayandıra biləcəyi ən erkən tarix olanx-sunsetvar. Hər iki tarix RFC 3339 formatındadır. - API dəyişiklik jurnalındakı qeyd dəyişikliyi və onun əvəzinə nədən istifadə ediləcəyini təsvir edir.
- Əməliyyatın hər cavabı aşağıdakı cədvəldəki başlıqları daşıyır.
| Başlıq | Dəyər |
|---|---|
Deprecation | Elan tarixi: @ və ardınca saniyələrlə Unix vaxtı (RFC 9745). |
Sunset | Əməliyyatın işləməyi dayandıra biləcəyi ən erkən tarix, HTTP tarixi kimi (RFC 8594). |
Link | API dəyişiklik jurnalının ünvanı, rel="deprecation" ilə. |
Deprecation: @1792281600
Sunset: Sun, 18 Apr 2027 00:00:00 GMT
Link: <https://docs.cloud.example/docs/developers/rest-api/changelog/>; rel="deprecation"; type="text/html"Bu nümunədə əməliyyat 2026-10-18 tarixində istifadədən çıxarılıb və 2027-04-18 tarixindən sonra işləməyi dayandıra bilər.
Başlıqlar əməliyyatın hər cavabında, o cümlədən 401, 403 və 429 kimi xəta cavablarında olur. İstifadədən çıxarılma barədə cavabların özündən xəbər tutmaq üçün müştəri proqramınızda Deprecation başlığını jurnala yazın və ya onun üçün xəbərdarlıq yaradın.
Sunset tarixindən sonra
Sunset başlığındakı tarixə qədər istifadədən çıxarılmış əməliyyat sənədləşdirildiyi kimi işləməyə davam edir. Bu tarixdən sonra o silinə və ya dəyişdirilə bilər. Dəyişiklik jurnalındakı qeyd onun əvəzinə nədən istifadə ediləcəyini göstərir.
Siyasət necə yoxlanılır
İctimai API müqaviləsindəki hər dəyişiklik ondan əvvəl dərc edilmiş müqavilə ilə avtomatik müqayisə olunur. Uyğunluğu pozan fərq dəyişikliyin buraxılmasını dayandırır. Yeganə istisna istifadədən çıxarılmış və sunset tarixi keçmiş əməliyyatdır.