Platform Events
Canlı yayın platformlarının sabit eventlerini (katılma, yorum, beğeni, takip, abonelik, bağış, moderasyon…) ve Chrome eklentisinin topladığı global hediye kataloglarını ortak bir şemada döndürür. Her kayıt kalıcı, noktalı bir kimlik taşır (tiktok.comment, tiktok.gift.5655). Dil yalnızca ?lang= ile seçilir; varsayılan tr.
Hızlı başvuru
| Örnek istek | Yol (API klasörüne göre) |
|---|---|
| Yapay zekâ için örnek (önerilen ilk istek) Tüm kind'lar, platform başına 5 event ve en fazla 20 temsilî hediye. | ?view=sample&lang=en |
| TikTok sabit eventleri (Türkçe) | ?platform=tiktok&lang=tr |
| Launcher listesi — platform ve kategori grupları Platform adı ve ikonlarıyla gruplu tam liste. | ?view=all&group=platform,category&lang=tr |
| Tek platformun tam listesi (düz) | ?view=all&platform=tiktok&lang=tr |
| YouTube hediyeleri, pahalıdan ucuza | ?view=items&platform=youtube&sort=value_desc&lang=vi |
| Herhangi bir platformdaki moderasyon eventleri | ?category=moderation&lang=en |
| Kimlikle kayıt | ?id=tiktok.gift.5655,twitch.cheer&lang=zh-Hant |
| Kanonik türler (Markdown) | ?view=kinds&lang=tr&format=md |
| Desteklenen diller | ?view=languages |
| TikTok hediyelerinin görüldüğü yayıncı bölgeleri | ?view=regions&platform=tiktok |
- Kullananlar
- Launcher, Falcon, EventFabric, Chrome eklentisi
- Etiketler
- tiktok, youtube, twitch, kick, facebook, instagram, trovo, events, gifts, i18n, ingest
- Doküman (ham)
- api.streamember.com/platform-events/API.md
- Ek sayfalar
- Ayrıntılı referans · Ingest sözleşmesi (Chrome eklentisi)
Genel bakış
Bu API, canlı yayın platformlarında olabilecek her şeyi tek bir sözlükte toplar. Launcher, Falcon ve EventFabric aynı kimlikleri kullanır; böylece bir tetikleyici "TikTok Gül hediyesi", "herhangi bir platformda yorum" ya da "her türlü moderasyon eventi" gibi seçimler yapabilir.
Her kayıt dört seviyeden birine bağlanır:
| Seviye | Örnek | Ne seçer |
|---|---|---|
Kategori (category) | support | Hediye, bağış, hazine sandığı… |
Kanonik tür (kind) | comment | Hangi platformdan gelirse gelsin her yorum |
Platform eventi (id) | youtube.super_chat | Platformun kendi adıyla tek bir event |
Katalog öğesi (id) | tiktok.gift.5655 | Tek bir hediye, Power-up ya da spell |
Kayıtlar iki türdür: record: "event" (elle tanımlı sabit eventler, data/platforms/*.json) ve record: "item" (Chrome eklentisinin topladığı hediyeler ile sabit Twitch Power-up'ları). Katalog globaldir: farklı ülkelerde görülen hediyeler tek listede birleşir ve hiçbir öğe silinmez.
Hızlı başlangıç
Yapıyı tüm listeyi indirmeden öğrenmek için:
GET https://api.streamember.com/platform-events/?view=sample&lang=enGruplu tam liste (yapay zekâ araçları ve Falcon MCP bunu kullanır): her platform grubunun başında adı ve ikonları, altında kategori grupları ve kayıtlar:
GET https://api.streamember.com/platform-events/?view=all&group=platform,category&lang=tr[
{
"group": "platform", "id": "tiktok", "name": "TikTok",
"icon": "https://api.streamember.com/platform-events/media/platforms/color/tiktok.webp",
"icon_flat": "https://api.streamember.com/platform-events/media/platforms/flat/tiktok.webp",
"order": 10, "units": ["tiktok_coin"], "item_types": ["gift"], "count": 694,
"groups": [
{ "group": "category", "id": "audience", "name": "İzleyici", "order": 10, "count": 6, "items": [ … ] },
{ "group": "category", "id": "support", "name": "Destek", "order": 30, "count": 674, "items": [ … ] }
]
}
]Aynı veri düz liste olarak da alınabilir (sabit eventler önce, hediyeler değere göre, community hediyeleri en sonda):
GET https://api.streamember.com/platform-events/?view=all&platform=tiktok&lang=tr[
{ "id": "tiktok.join", "record": "event", "platform": "tiktok", "platform_name": "TikTok",
"kind": "join", "kind_name": "Yayına katılma", "category": "audience", "category_name": "İzleyici",
"native": "join", "name": "Yayına katılma", "description": null,
"icon": "https://api.streamember.com/platform-events/media/tiktok/events/join.webp", "order": 10 },
{ "id": "tiktok.gift.5655", "record": "item", "platform": "tiktok", "platform_name": "TikTok",
"kind": "gift", "kind_name": "Hediye", "category": "support", "category_name": "Destek",
"item_type": "gift", "native_id": "5655", "name": "Gül", "description": null,
"value": { "amount": 1, "unit": "tiktok_coin" }, "icon": "https://p16-webcast.tiktokcdn.com/…",
"flags": { "community": false, "streakable": true }, "attributes": { "tiktok.gift_type": 1 },
"langs": ["tr", "vi", "zh-Hans"], "regions": ["VN"],
"first_seen": "2026-10-07T11:48:56Z", "last_seen": "2026-10-07T11:48:56Z" }
]Parametreler
| Parametre | Tür | Varsayılan | Açıklama |
|---|---|---|---|
lang | metin | tr | Her biçimde kabul edilir (tr, tr-TR, zh_TW) ve 14 koddan birine çözülür. Başlık okunmaz. |
view | metin | events | sample, platforms, categories, kinds, events, items, all, languages, regions |
id | liste | — | Virgülle ayrılmış kimlikler. Verilirse view yok sayılır. |
group | liste | — | platform, category, kind ya da virgülle iç içe sıra (platform,category). events, items, all ve id ile kullanılır. |
platform | liste | tümü | tiktok,youtube,twitch,kick,facebook,instagram,trovo |
kind / category | liste | — | kind=gift,donation, category=moderation |
item_type | liste | tümü | gift, power_up, spell, sticker |
q | metin | — | İstenen dilde ve İngilizcede ad, kimlik ya da native alanında arama. |
community | metin | last | last (sona), exclude (çıkar), only (yalnızca community) |
min_value / max_value | sayı | — | Platform biriminde değer aralığı (yalnızca öğeler). |
sort | metin | default | default, value, value_desc, name, newest |
fields | liste | tümü | Yalnızca istenen alanlar: id,name,value,icon |
details | bool | 0 | { meta, data } sarmalayıcısı: çözülen dil, filtreler, toplam. |
format | metin | json | json ya da md (yapay zekâ araçları için Markdown tablo). |
Boolean değerler 1, true, yes, on kabul eder.
Yanıt biçimi
Varsayılan yanıt düz bir dizidir (view=sample bir nesnedir). Toplam kayıt X-Total-Count başlığında, çözülen dil Content-Language başlığında gelir. Her yanıtta ETag vardır; If-None-Match gönderen istemci değişiklik yoksa 304 alır.
Gruplu yanıt (group=…): her düğüm group (seviye), id, name (istenen dilde), order, count (grubun toplam kaydı) taşır. Platform düğümü ayrıca icon, icon_flat, units, item_types içerir. Alt seviyesi olan düğümde groups, en alttaki düğümde items (o grubun bütün kayıtları) bulunur. Grup sırası platform order ve taksonomi sırasıdır; kayıt sırası düz listedekiyle aynıdır.
Her kayıt grup başlıkları için platform_name, kind_name ve category_name alanlarını da taşır; düz liste tek başına gruplanabilir.
Event alanları: id, record, platform, kind, category, native (platformdaki ad), name, description, icon (bizim CDN'imiz, yoksa null), order.
Öğe alanları: id, record, platform, kind, category, item_type, native_id, name, description, value ({amount, unit} ya da bilinmiyorsa null), icon (platformun URL'si, kopyalanmaz), flags (community, streakable), attributes (platforma özgü, {platform}.{alan}), langs, regions (görüldüğü yayıncı ülkeleri, yalnızca bilgi), first_seen, last_seen, order (platformun items_order değeri; sabit eventlerle birlikte sıralamak için).
Bölge kapsamı (view=regions): katalogdaki hediyelerin görüldüğü her yayıncı bölgesi için region (ISO 3166-1 alpha-2), items (o bölgede görülen hediye sayısı), last_seen, platforms. Hangi ülkelerden yayıncı taranması gerektiğini planlamak içindir.
Değer birimleri: tiktok_coin, youtube_jewel, twitch_bit, kick_kick, trovo_mana, trovo_elixir.
Kategoriler, 35 kanonik tür, platform başına eventler ve dil kuralları Ayrıntılı referans sayfasındadır.
Ingest (yazma)
Hediye listeleri POST ingest.php ile yalnızca Stream Ember Chrome eklentisinden gelir. Gövde sözleşmesi, hata kodları ve platform eşleme rehberi: Ingest sözleşmesi. JSON Schema: GET ingest.php?schema=1.
Hatalar
| HTTP | error | Ne zaman |
|---|---|---|
| 400 | invalid_parameter | Bilinmeyen view, platform, sort, community ya da format. |
| 405 | method_not_allowed | index.php'ye GET dışı istek. |
| 500 | internal_error | Veri dosyası okunamadı; message ayrıntıyı içerir. |
Önbellek ve sınırlar
- Yanıtlar
Cache-Control: public, max-age=300ve veri sürümünden üretilenETagtaşır; ingest sonrası ETag değişir. - Sayfalama ve kayıt sınırı yoktur: her yanıt eşleşen kayıtların tamamını döner. Yapıyı öğrenmek için önce
view=sample. - Ad bulunamazsa sırayla yakın dil (
zh-Hant↔zh-Hans,pt↔es),en,trve öğenin bilinen ilk dili denenir.
Değişiklik geçmişi
- 3.0.0 —
limit/pagevehas_morekaldırıldı;items,allve gruplu yanıtlar her zaman tam listedir. - 2.2.0 —
view=regions: katalogdaki hediyelerin görüldüğü yayıncı bölgeleri (Chrome eklentisi toplama turunu planlamak için kullanır). - 2.1.0 —
groupparametresi (platform → kategori → tür iç içe gruplar, platform başlığında ad ve ikonlar); kayıtlaraplatform_name,kind_name,category_name. - 2.0.0 — Sıfırdan yeniden yazıldı. Noktalı kimlikler, 36 kanonik tür ve 7 kategori, 14 dil, global ve kalıcı hediye kataloğu, Chrome eklentisi için
ingest.php,viewparametresi. v1 kimlikleri ve Tikfinity'ye otomatik bağımlılık kaldırıldı.