DocsAlmaniyaBilik bazasının beynəlxalq versiyasını göstər

İdempotentlik

Son yeniləmə: 2026-11-063 dəq oxu

Şəbəkə bəzən sorğunu kəsir və onun çatıb-çatmadığını bilmək olmur. POST sorğusunu işi iki dəfə icra etmədən (və iki dəfə ödəmədən) təkrarlamaq üçün Idempotency-Key başlığını göndərin - hər məntiqi əməliyyat üçün unikal dəyər. UUID yaxşı uyğun gəlir.

curl -X POST https://developers.grem.capital/api/v1/valuation/express \
  -H "Authorization: Bearer gsk_live_xxx" \
  -H "Content-Type: application/json" \
  -H "Idempotency-Key: 3f1c8a90-1e2b-4c77-9a10-2b6d0f9e4a11" \
  -d '{"propertyCategory":"apartment","addressText":"Torstraße 12, Berlin","totalArea":64}'

Necə işləyir

  • Açarla ilk sorğu adi qaydada icra olunur; onun uğurlu cavabı saxlanılır.
  • Eyni açarla təkrar sorğu saxlanılmış cavabı qaytarır: alət yenidən işə düşmür və yenidən ödəniş tutulmur.
  • İlk sorğu hələ icra olunarkən eyni açarla ikinci sorğu title: idempotency_conflict ilə 409 alır. Gözləyin və eyni açarla təkrarlayın.
  • İlk sorğu uğursuz olubsa, açar azad edilir - onunla təkrar sorğu yenidən icra olunur. Xidmətə heç çatmamış sorğu (bağlantı rədd edilib) da açarı azad edir.
  • Alətin, obyekt yaradılmasının və ya lid yaradılmasının taymautundan sonra (502 provider_error) açar 15 dəqiqə rezervdə qalır ki, təkrar sorğu işi iki dəfə icra edə bilməsin. Təkrarlamazdan əvvəl nəticəni yoxlayın: alətlər üçün GET /works, yaratma əməliyyatları üçün GET /objects və GET /leads. Fotoların yaxşılaşdırılması, sayt və qaralama nəticələri GET /works daxilində saxlanılmır - onları kabinetdə və ya obyektləriniz arasında yoxlayın. 15 dəqiqədən sonra təkrar sorğu işi (və onun ödənişini) yenidən icra edir.
  • Ekspress qiymətləndirmə istisnadır: taymautdan sonra açar azad edilir - onu dərhal eyni açarla təkrarlayın, hazır qiymətləndirmə pulsuz qaytarılır: nə qiymətləndirmə, nə də API çağırışı üçün yenidən ödəniş tutulmur.
  • 524 o deməkdir ki, API-nin qarşısındakı şəbəkə ~100 saniyə ərzində başlamayan cavabı kəsib; iş davam edir. 524 və 504-dən sonra açar azad edilmir: eyni açarla təkrarlayın - hazır nəticə ikinci ödəniş olmadan qayıdır, ilk çağırış icra olunarkən isə 409 alırsınız. Bunun əvəzinə ekspress və icarə qiymətləndirmələrini Prefer: respond-async ilə başladın: tapşırıq dərhal qayıdır.
  • Prefer: respond-async ilə başladılmış planlaşdırma və ya hesabatın yoxlanması code: interrupted ilə failed vəziyyətində bitə bilər (xidmətin yenidən başladılması tapşırığı kəsib). Heç nə üçün ödəniş tutulmur və açar azad edilir: eyni sorğunu eyni açarla yenidən göndərin - fayllar ikinci ödəniş olmadan yenidən yüklənir. SDK bunu özü edir.
  • Açar 24 saat yadda saxlanılır və API açarınıza və əməliyyata - metod və faktiki yola - aiddir: müxtəlif API açarları altında eyni dəyərlər, başqa alətdə eyni açar və ya POST /objects/property və POST /objects/rental fərqli sorğulardır.

Təkrar sorğunun gövdəsi ilk sorğu ilə müqayisə edilmir. Artıq istifadə olunmuş açarla başqa sorğu göndərsəniz, birinci sorğunun cavabını alacaqsınız. Hər yeni əməliyyat üçün yeni açar istifadə edin.

Harada tətbiq olunur

Sorğu
POST /valuation/express və bütün alətlər (POST /valuation/report, POST /content/generate, POST /flyer/create və s.)bəli
POST /objects/{kind} - obyekt yaratmaqbəli
POST /leads - lid yaratmaqbəli
POST /match/leads/{id}/events - Swipe Match hadisəsibəli; açar ^[A-Za-z0-9_.:-]{8,128}$ ifadəsinə uyğun olmalıdır, əks halda nəzərə alınmır
POST /uploads, POST /chat/messages, POST /valuation/review/jobs/{id}/confirmxeyr (çat bunun üçün clientMessageId istifadə edir)

SDK daxilində açar metodun son arqumentidir.

Əlaqəli

Bu məqalə faydalı oldu?