Ortak veri API rehberi

Ortak API ürün, kategori ve satıcı verilerini XML olarak sunar; anahtar gerekmez. İsteklere ref=<ortak-kodun> eklersen tüm bağlantılar https://kral.market/r/<ortak-kodun>?u=/urun/<ürün> biçiminde gelir ve bu bağlantılarla gelen siparişler komisyonuna yazılır.

Genel bilgiler

Tüm uç noktalar GET ile çağrılır ve application/xml; charset=utf-8 döndürür. Fiyatlar nokta ayraçlı ondalık TRY değeridir (ör. 99.90). Yanıtlar 5 dakika önbelleğe alınır; dakikada birkaç istekten fazlasına gerek yoktur. Tanınmayan, yinelenen veya geçersiz parametreler 400, bulunamayan ürün ya da satıcı 404, geçici hizmet hataları 503 döndürür; hata gövdesi <error status="400">…</error> biçimindedir.

Hızlı başlangıç

Ortak kodun, onaydan sonra /ortaklik sayfasındaki ortak panelinde “XML API ve YML feed için ortak kodun” satırında görünür. Aşağıdaki örnek, kendi sunucunda en çok satan 10 Steam ürününü ortak bağlantılarınla listeler. Yanıtları kendi tarafında da önbelleğe al; ziyaretçi başına istek gönderme.

// Node.js 18+ (sunucu tarafı)
const REF = 'AbCdEfGhIjKlMnOpQrStUv12'; // kendi ortak kodun
const res = await fetch(`https://kral.market/api/partner/v1/products?category=steam&per=10&in_stock=1&ref=${REF}`);
const xml = await res.text();
// <product> öğelerindeki <title>, <price> ve <url> değerlerini XML ayrıştırıcınla oku.
// <url> zaten ortak bağlantındır: https://kral.market/r/<kod>?u=/urun/<slug>

Ürün listesi

Satıştaki ürünleri en çok satandan başlayarak XML olarak listeler. Kök öğe toplam ürün sayısını ve sayfa bilgisini taşır.

YöntemGETİstek adresi/api/partner/v1/products

Sorgu parametreleri

AdAçıklama
categoryKategori adresi (slug); alt kategoriler de dahil edilir.
qÜrün adında arama, 2–80 karakter.
sellerMağaza adresi (slug); yalnız bu satıcının ürünleri.
pageSayfa numarası, 1–500 (varsayılan 1).
perSayfa başına ürün, 1–100 (varsayılan 50).
sortpopular (varsayılan, en çok satan), newest, price_asc veya price_desc.
in_stock1 verilirse yalnız stokta görünen ürünler.
refİsteğe bağlı 24 karakterlik ortak kodun; verilirse her url ortak bağlantına (/r/<kod>?u=/urun/<slug>) dönüşür.

Örnek istek

GET https://kral.market/api/partner/v1/products?category=valorant&per=2&ref=AbCdEfGhIjKlMnOpQrStUv12

Örnek yanıt

<?xml version="1.0" encoding="UTF-8"?>
<products total="128" page="1" per="2" pages="64" count="2" sort="popular">
<product><id>cm…</id><slug>valorant-475-vp</slug><title>Valorant 475 VP</title>
  <url>https://kral.market/r/AbCdEfGhIjKlMnOpQrStUv12?u=/urun/valorant-475-vp</url>
  <image>https://kral.market/demo-images/valorant.svg</image>
  <price>99.90</price><old_price>119.90</old_price><currency>TRY</currency>
  <in_stock>true</in_stock><sold>312</sold>
  <category slug="valorant">Valorant</category>
  <seller slug="oyun-dunyasi">Oyun Dünyası</seller>
  <rating reviews="41">4.8</rating></product>
…
</products>

Ürün ayrıntısı

Tek bir ürünün tam açıklaması, seçenekleri, galeri görselleri, platform/içerik türü/bölge bilgisi, değerlendirme özeti ve son 10 yorumu. Yorum yapanların kimlik bilgileri paylaşılmaz.

YöntemGETİstek adresi/api/partner/v1/products/<slug>

Sorgu parametreleri

AdAçıklama
refİsteğe bağlı ortak kodun; ürün, kategori ve mağaza bağlantılarını ortak bağlantına çevirir.

Örnek istek

GET https://kral.market/api/partner/v1/products/valorant-475-vp

Örnek yanıt

<?xml version="1.0" encoding="UTF-8"?>
<product>
<id>cm…</id><slug>valorant-475-vp</slug><title>Valorant 475 VP</title>
<url>https://kral.market/urun/valorant-475-vp</url><image>…</image>
<gallery><image>https://…/1.webp</image></gallery>
<price>99.90</price><currency>TRY</currency><in_stock>true</in_stock><sold>312</sold>
<platform>Riot</platform><content_type>Oyun içi para</content_type><region>TR</region>
<category slug="valorant" url="…">Valorant</category>
<seller slug="oyun-dunyasi" url="…" rating="4.9" reviews="210" sold="5400">Oyun Dünyası</seller>
<options><option price="99.90" in_stock="true">475 VP</option></options>
<description>Kod &lt;anında&gt; teslim &amp; 7/24 destek…</description>
<reviews count="41" average="4.8"><review><rating>5</rating><date>2026-10-01T12:00:00.000Z</date><text>Hızlı teslimat.</text></review>…</reviews>
</product>

Kategori ağacı

Ana kategoriler ve doğrudan alt kategorileri, satıştaki ürün sayılarıyla birlikte. Ürün listesi isteğindeki category değeri için bu slug değerlerini kullan.

YöntemGETİstek adresi/api/partner/v1/categories

Sorgu parametreleri

AdAçıklama
refİsteğe bağlı ortak kodun; kategori bağlantılarını /r/<kod>?u=/katalog/<slug> biçimine çevirir.

Örnek istek

GET https://kral.market/api/partner/v1/categories

Örnek yanıt

<?xml version="1.0" encoding="UTF-8"?>
<categories count="12">
<category slug="oyunlar" name="Oyunlar" count="840" url="https://kral.market/katalog/oyunlar">
  <category slug="steam" name="Steam" count="310" url="https://kral.market/katalog/steam"/>
</category>
…
</categories>

Satıcı profili

Mağaza adı, adresi, açıklaması, katılım tarihi, puan, değerlendirme sayısı, toplam satış ve satıştaki ürün sayısı.

YöntemGETİstek adresi/api/partner/v1/sellers/<slug>

Sorgu parametreleri

AdAçıklama
refİsteğe bağlı ortak kodun; mağaza bağlantısını ortak bağlantına çevirir.

Örnek istek

GET https://kral.market/api/partner/v1/sellers/oyun-dunyasi

Örnek yanıt

<?xml version="1.0" encoding="UTF-8"?>
<seller>
<slug>oyun-dunyasi</slug><name>Oyun Dünyası</name>
<url>https://kral.market/magaza/oyun-dunyasi</url><joined>2025-03-14T09:30:00.000Z</joined>
<rating>4.9</rating><reviews>210</reviews><sold>5400</sold><products>86</products>
<description>Dijital oyun kodları…</description>
</seller>

YML ürün akışı

Tüm satıştaki ürünleri (en fazla 50.000) tek dosyada veren Yandex YML biçiminde akış. Fiyat karşılaştırma ve içerik siteleri için uygundur; 30 dakika önbelleğe alınır.

YöntemGETİstek adresi/feed/yml

Sorgu parametreleri

AdAçıklama
refİsteğe bağlı ortak kodun; her teklifin url değeri ortak bağlantına dönüşür.

Örnek istek

GET https://kral.market/feed/yml?ref=AbCdEfGhIjKlMnOpQrStUv12

Örnek yanıt

<?xml version="1.0" encoding="UTF-8"?>
<yml_catalog date="2026-10-30 12:00">
<shop><name>Kral.market</name><company>Kral.market</company><url>https://kral.market</url>
<currencies><currency id="TRY" rate="1"/></currencies>
<categories><category id="oyunlar">Oyunlar</category><category id="steam" parentId="oyunlar">Steam</category>…</categories>
<offers>
<offer id="cm…" available="true"><url>https://kral.market/urun/valorant-475-vp</url><price>99.90</price><oldprice>119.90</oldprice>
  <currencyId>TRY</currencyId><categoryId>valorant</categoryId><picture>…</picture><name>Valorant 475 VP</name>
  <vendor>Oyun Dünyası</vendor><description>…</description></offer>
…
</offers></shop></yml_catalog>