Docs

Sürümler ve API değişiklikleri

Son güncelleme: 2026-10-0310 dk okuma

Sürüm

Ana sürüm yoldadır: /api/v1. v1 içinde mevcut entegrasyonları bozmayız. Sözleşmenin güncel sürümü /openapi.json içindeki info.version değeridir; her değişiklikte artar.

Haber vermeden neler değişebilir

Bu değişiklikler uyumludur ve istemciniz bunlarla başa çıkabilmelidir:

  • yeni işlemler ve araçlar;
  • yeni isteğe bağlı istek alanları;
  • yeni yanıt alanları;
  • yanıt numaralandırmalarında yeni değerler (durumlar, kodlar), title içinde yeni hata kodları, yeni webhook olay türleri;
  • detail metnindeki değişiklikler;
  • daha yüksek limitler.

İstemci nasıl yazılır

  • Bilinmeyen yanıt alanlarını yok sayın.
  • Bilinmeyen bir numaralandırma değerini, hata kodunu veya olay türünü hata değil, «diğer» olarak ele alın.
  • Dallanmayı detail metnine göre değil, status, title ve code değerlerine göre yapın.
  • Alanların sırasına veya kimliklerin uzunluğuna güvenmeyin.
  • Aracın ham status değerine değil, işin state değerine güvenin.

Neler bozucu sayılır

Bir işlemi, alanı, kapsamı veya olayı kaldırmak ya da yeniden adlandırmak; yeni bir zorunlu istek alanı; bir alanın türünü veya anlamını değiştirmek; aynı durum için durum kodunu değiştirmek; izin verilen değerleri daraltmak. Bu değişiklikleri v1 içinde haber vermeden yapmayız: işlem önce /openapi.json içinde ve bu günlükte deprecated olarak işaretlenir ve en az 6 ay çalışmaya devam eder. İstisna, bir güvenlik açığını kapatmaktır.

Bir yanıtı bu belgeyle uyumlu hâle getiren düzeltme bozucu değişiklik değildir.

Değişiklik günlüğü

2026-10-03: sürüm 1.16

Değişenler:

  • 429, code taşır: minute_limit veya daily_limit (anahtarın günlük limiti, 00:00 UTC'de sıfırlanır).
  • Ajans anahtarıyla yazılan ilan ajansa aittir; ajans ilanları ve lead'lerinin object.* ve lead.* webhook'ları ajansın adreslerine de ulaşır.
  • İlan fotoğrafları: panelde olduğu gibi her tür için en fazla 50.
  • SDK 1.7.2: akıştaki boş bir parça artık sohbet olayını bölmez.

Düzeltilenler:

  • PUT /objects/{kind}/{id} ilanın moderasyon durumunu, isSold değerini ve yayın durumunu korur; önceden bunları sıfırlıyordu (basit bir düzenleme yayındaki ilanı yayından kaldırıyordu).
  • GET /objects artık askıya alınmış sahiplerin ilanlarını listelemez; misafirlerden gizlenen kart kimlikle de verilmez.
  • PATCH /leads/{id}: sözleşmesiz bir lead'in göndericisi, paneldeki gibi durumunu değiştirebilir; değişiklik ve arşivleme lead geçmişine yazılır.

2026-10-03: sürüm 1.15

Değişenler:

  • PATCH /leads/{id} (durum) ve DELETE /leads/{id} panel kurallarına uyar: sonlandırma, komisyon tahsilatı, geçerli sözleşme veya anlaşma: nedeni code içinde olan 422. ?expand=history artık hizmet meta verisi (token, diğer kullanıcıların kimlikleri) taşımaz.
  • Ücretsiz sohbetin günlük limiti code: free_daily_limit ve 00:00 UTC'ye kadar Retry-After ile yanıt verir.
  • GET /works: previewUrl, link ve object.photoUrl, GET /artifacts/{path} için /files/... yollarıdır; son sayfada nextCursor null olur.
  • Lead oluşturma: bilinmeyen alanlar atılır (reddedilmez); hizmetin denetlediği uzunluklar spesifikasyonda; pool: true lead'i platform havuzuna verir.
  • SDK 1.7.1: jobs.wait bir 429 sonrasında bekler; chat.stream parçalar arasında bölünmüş CRLF'yi işler; artifact() signal alır.

Düzeltilenler:

  • Müzik önizlemesi: dosya sonunu aşan Range 416 verir (404 veriyordu); dosya hizmeti arızası 404 değil 502 olur.
  • POST /uploads içinde 15 MB üstü dosya 413 verir. Reddedilen strictPhotos ilanı yüklenemeyen fotoğrafları belirtir (code: photo_fetch_failed).
  • İçerik paketi reddi form.media.photos alanını belirtir. Sandbox: rapor incelemesi herhangi bir addaki ilk dosyayı alır; kira dizeleri ve fotoğraf hizmet anahtarları reddedilmez.

2026-10-03: sürüm 1.14

Değişenler:

  • Hızlı değerlemeyi aynı Idempotency-Key ile tekrarlamak artık tamamen ücretsiz: API çağrısı da ücretlendirilmez.
  • GET /works: nextCursor olmayan bir cursor 400 verir (liste sessizce baştan başlıyordu).
  • POST /webhooks/{id}/test: listede olmayan bir eventType 400 verir (genel bir test gönderiliyordu).
  • Swipe Match: reasonCode yalnızca listedeki nedenleri kabul eder, hizmetin her zaman istediği gibi; lead kind değeri pool olabilir.
  • SDK 1.7.0: jobs.wait tek bir başarısız sorguya dayanır; artifact() range alır; chat.stream CRLF akışlarını okur ve olay başına bir kez çağırır.

Düzeltilenler:

  • Müzik önizlemesi: bytes=-N son N baytı döndürür, dosya sonunu aşan Range 416 verir.
  • İstek gönderilmeden önceki bağlantı zaman aşımı Idempotency-Key anahtarını serbest bırakır.
  • Sandbox: hizmetin okuduğu her alan adındaki video fotoğrafları, dize olarak kira sayıları, belirtilen boyutta flyer PNG'leri.

2026-10-03: sürüm 1.13

Eklenenler:

  • GET /works, panelin her sonuç için gösterdiklerini döndürür: street, streetNumber, previewUrl, link, repeatIndex, error ve ilan (object).
  • GET /chat/sessions parametrelerini belgeler: limit, cursor, q, projectId, archivedOnly, sort.
  • Spesifikasyondaki Problem.title, range_not_satisfiable değerini içerir; webhook listesi requestId taşır.
  • SDK 1.6.1: chat.listSessions liste parametrelerini alır.

Değişenler:

  • Spesifikasyon, canlı ortamın zaten uyguladığı sınırları belirtir: avatar scriptText en fazla 1200 karakter, flyer formats en fazla 3 ve layouts en fazla 5, flyer contacts alan uzunlukları, fotoğraf seed en fazla 2147483647 ve fotoğraf data içinde bilinmeyen anahtar yok.
  • Hızlı değerleme: ağ geçidi yalnızca hiç alan ve mülk türü olmayan isteği reddeder; landPlotArea değerinin sayılıp sayılmayacağına hizmet karar verir (propertyType veya apartmentType içinde arsa olarak belirtilen de sayılır).

Düzeltilenler:

  • Sandbox fotoğrafları canlı ortam gibi reddeder (en fazla 25 MB JPEG, PNG veya WebP: JOB_CREATE_FAILED; cleanup dışında maske: MASK_NOT_SUPPORTED) ve canlı ortamın kestiği veya değiştirdiği şeyleri kabul eder (video başlığı, ses düzeyi, kapanış karesi ve kapanış cümlesi seçenekleri, açılış sayfası dili, 20'den fazla içerik fotoğrafı, kirada kelime olarak furnished). Rapor işi running sonrasında artık pending göstermez.
  • Reddedilen indirme yönlendirmesi zaman aşımı olarak değil, olduğu gibi bildirilir; dosyadan uzun bir Range soneki dosyanın tamamını döndürür.
  • SDK 1.6.1: verifyWebhookSignature Node 18'de çalışır.

2026-10-03: sürüm 1.12

Eklenenler:

  • RFC 9457 problemi olarak 416 range_not_satisfiable (boş gövdeyle geliyordu).
  • Fotoğraf iyileştirme başlatmasında priceMinor: çağrının ücreti, panelde gösterildiği gibi.
  • SDK 1.6.0: works from/to, chat.history limit/cursor, chat.sendMessage style alır.

Değişenler:

  • GET /match/leads: 50'den büyük limit veya 1000'den büyük page 400 verir (hiç kesilmiyorlardı). POST /match/leads/{id}/events: başka biçimdeki Idempotency-Key sessizce atılmak yerine 400 verir.
  • Flyer'ın reddettiği bir alan, alan adıyla 400 validation olur (422 idi).
  • Ödemesi aynı Idempotency-Key altında hâlâ ayrılan bir çağrı 409 idempotency_conflict olur (422 idi).
  • Hızlı değerleme: landPlotArea, hizmetteki gibi yalnızca land için alan sayılır.
  • Zaman aşımı, sıfırlanan bağlantı veya yanıtın ortasında kapanan soket Idempotency-Key anahtarını dolu bırakır; onu yalnızca hizmete hiç ulaşmayan bir istek serbest bırakır.
  • SDK 1.6.0: yükleme 503 sonrasında asla tekrarlanmaz; iptal dinleyicisi her beklemeden sonra kaldırılır.

Düzeltilenler:

  • PDF ve açılış sayfası retleri nedenlerini taşır: INSUFFICIENT_FUNDS veya QUOTA_EXCEEDED ile 402 (code olmadan 422 idi).
  • Sandbox, canlı ortamın reddettiğini aynen reddeder: yüklenen dosyaların türü ve boyutu; metinler reddedilmek yerine kesilir; bilinmeyen video length, aspect ve language değerleri varsayılana döner; flyer kodlarında büyük/küçük harf fark etmez; type olmadan taslak. Yetersiz bakiye simülasyonu, canlı ortamın gönderdiği INSUFFICIENT_FUNDS koduyla yanıt verir.
  • limit ve page değerlerini ağ geçidi kendisi aralığa keser (GET /chat/history?limit=500 400 veriyordu; limit=0 1 yerine 20 veriyordu).

2026-10-03: sürüm 1.11

Eklenenler:

  • İş sonuçları panelin gösterdiği alanları taşır: içerik paketi, metinler ve video için progress, masterProfile (metinlerin ve seslendirmenin dayandığı hikâye taslağı) ve başarısız işte error; fotoğraf için metadata.error; kat planı için rooms[].stable, rooms[].placement, sourceFileId.
  • Tarayıcılar (CORS) RateLimit-*, Retry-After, Grem-Sandbox, X-Request-Id ve Content-Range başlıklarını okuyabilir.

Değişenler:

  • Webhook'lar: test anahtarı yalnızca sandbox adresleri oluşturur ve yönetir; bu adresler yalnızca sandbox işlerinin olaylarını alır, canlı adresler ise onları asla almaz.
  • Aralık dışındaki limit ve page 400 yerine aralığa çekilir; GET /objects içindeki kind büyük/küçük harfe duyarsızdır; rooms ondalıklı olabilir.
  • Idempotency-Key API anahtarına, yönteme ve gerçek yola aittir (POST /objects/property ve POST /objects/rental farklı işlemlerdir). Zaman aşımından sonra ilan ve lead oluşturma, araçlar gibi anahtarı 15 dakika tutar; hizmete hiç ulaşmayan istek anahtarı serbest bırakır.
  • text/generate: customDirection 500 karaktere kısaltılır.
  • SDK 1.5.1: yazmada 503 yalnızca Idempotency-Key ile tekrarlanır; 30 saniyeden uzun Retry-After beklenmez; maxRetries en fazla 10; AbortSignal'ınız beklemeyi iptal eder; mesaj kimlikleri Node 18'de çalışır.

Düzeltilenler:

  • Sandbox canlı ortam gibi çalışır: multipart alanlarının, kategoriye göre rapor alanlarının, ev ısıtma değerlerinin, ticari apartmentType ve konut komplekslerinin denetimi; dosyalar yalnızca bitmiş işler için, aracın kendi yolunda ve bilinen yapıt kimlikleriyle; anahtar kontrolünden önceki yanıtlarda da Grem-Sandbox; Grem-Simulate büyük/küçük harfe duyarsız.
  • Anahtar olmadan geçersiz sorgu parametreleri önce 401 döndürür.
  • Bir temsilciye bağlı ajans anahtarı artık ajans genelindeki anahtarla başlatılan işleri okuyamaz.
  • Daha önce başka bir bağlantı noktasıyla kaydedilmiş webhook adresleri teslim almaya devam eder.
  • Karşılanamayan Range 404 yerine 416 döndürür; rapor incelemesi için 40 MB'a kadar belge kabul edilir.

2026-10-03: sürüm 1.10

Eklenenler:

  • conflict hata kodu (409): kaynak, işleme izin vermeyen bir durumda (Hatalar).
  • POST /video/create içinde video kapanış cümlesi alanları: ctaMode, ctaIntent, ctaText, ctaMarket; GET /video/endings seçenekleri intent ve text taşır.
  • GET /works: from ve to filtreleri.
  • SDK 1.5.0: maxRetries seçeneği; 429 ve 503, Retry-After sonrasında tekrarlanır.

Değişenler:

  • Sorgu parametreleri denetlenir: geçersiz değerli bilinen bir parametre, alan adını belirten 400 validation alır.
  • Webhook'lar: yalnızca 443 numaralı bağlantı noktasında https, URL'de kimlik bilgisi yok; 11. adres 422; ajans webhook'larını yalnızca ajans genelindeki anahtar yönetir.
  • Idempotency-Key, API anahtarına ve işleme aittir; bir aracın zaman aşımından sonra anahtar 15 dakika ayrılmış kalır.
  • Parayla ilgili retler (kota, borç, adil kullanım, bakiye) code ile 402 insufficient_funds olur.
  • Bir ajansın temsilciye bağlı anahtarı yalnızca kendi işlerini ve dosyalarını görür.
  • Dosya indirmeler hız limitine sayılır.

Düzeltilenler:

  • Çok büyük veya bozuk gövde dahil her hata RFC 9457 application/problem+json olarak gelir; limiti aşan gövde 413 payload_too_large alır.
  • Video ending alanı hiç okunmuyordu; ctaIntent veya ctaText kullanın.
  • SDK: gerçek bir anahtarla simulate, çağrıyı çalıştırmak yerine hata fırlatır.

2026-10-03: sürüm 1.8-1.9

Eklenenler:

  • Emsaller: hızlı değerlemede estimate.analogs, tam raporda analogs, kira tahmininde comps - kabinette ve PDF'te olanla aynı.
  • Tamamlanan işlerin alanları eksiksiz açıklandı: gerçek adlarıyla rapor rakamları (potPrice, priceRangeLow, priceRangeHigh, …), rapor incelemesi, kat planı, fotoğraf, broşür, taslak.
  • SDK 1.4.0: Analog tipi.

Değişenler:

  • Araç yanıtları yalnızca açıklanmış alanları içerir; önceden sızan iç alanlar artık döndürülmez.
  • GET /tools/status tarafından kullanılamaz gösterilen araç, ücret alınmadan önce 503 service_unavailable yanıtı verir (önceden yalnızca içerik paketi, metinler ve video).
  • Rapor incelemesi onay yanıtı yalnızca iş alanlarını içerir (jobId, state, status); eski _id artık yok.

Düzeltilenler:

  • Avatar videosu: artifacts, indirme adresi için gereken id'leri içerir.
  • Kiralıkların checkIn/checkOut alanları günün saati olarak açıklandı.

2026-10-02: sürüm 1.7

Eklenenler:

  • Sandbox: test anahtarları (gsk_test) araçları ücret almadan simüle eder; Grem-Simulate başlığı sonucu seçer.
  • Hızlı değerlemede estimate.confidenceScore.

Değişenler:

  • Bir aracı başlatan çağrılar 60 saniye yerine 5 dakikaya kadar bekler.
  • Aynı Idempotency-Key ile tekrarlanan hızlı değerleme, zaman aşımından sonra da dahil olmak üzere biten sonucu ikinci kez ücret almadan döndürür.

Düzeltilenler:

  • Hızlı değerlemenin estimate.confidence değeri her zaman null idi.
  • Kat planı yanıtları artık iç alanlar içermez.
  • kind olmadan GET /objects ile ilan ve lead retleri artık nedeni detail içinde açıklar.

2026-10-02: sürüm 1.6

Değişenler:

  • Her iş yanıtı aynı jobId alanını içerir. Önceki adlar id, _id, contentGenJobId hâlâ döndürülür ve kullanımdan kaldırılmıştır.
  • SDK 1.2.0: Job.jobId her zaman bulunur.

2026-10-02: sürüm 1.2 ile 1.5 arası

Eklenenler:

  • GET /voices, GET /avatar/avatars, GET /video/music, GET /video/endings: araçlar için kimlikler (Başvuru verileri).
  • GET /tools/status: araçların kullanılabilirliği; GET /works: çalışma geçmişi.
  • POST /flyer/create: kişisel broşür, tools:flyer kapsamı.
  • POST /valuation/review/jobs/{id}/confirm: rapor incelemesi verilerinin onayı.
  • Her iş yanıtında state alanı.
  • Hatalarda code ve errors alanları, forbidden, payload_too_large, service_unavailable kodları.
  • API açıklamasında her araç için tam istek ve yanıt şemaları, türe göre tam ilan yazma sözleşmesi, her işlemin ücretlendirme sınıfı (x-grem-billing), kapsam ve olay listesi.
  • scope (ilanlar) ve pool (lead'ler) parametreleri belgelendi.

Değişenler:

  • Eksik veri nedeniyle ret (örneğin açıklama veya şehir olmadan metinler) artık neden ve kodla 422 business_rule. Önceden 502 provider_error idi.
  • Bir kaynak üzerindeki yetki nedeniyle ret artık nedenle 403 forbidden. Önceden 500 idi.
  • Araçlar için deneme webhook teslimi gerçek olanla aynı biçimdedir: { jobId, status, state }.

Düzeltilenler:

  • Ajans anahtarları tüm araçlarla, sohbetle ve dosya indirmeyle çalışır.
  • Rapor incelemesi ve kat planı: iş durumu yanıttaki kimlikle alınabilir, webhook'lar gelir.
  • İçerik paketi, metin ve video dosyalarının indirilmesi yalnızca işin sahibine açıktır.

İlgili makaleler

Bu makale yardımcı oldu mu?