İçindekiler Şunu istiyorum … Ne planladığını seç; altında yalnızca bunun adımları var. Tam başvuru aşağıda devam eder.
bot yapmak uygulamamı bağlamak sitemde tellmelo ile giriş GIF ve video yerleştirmekBotu gruplarından birinde, grup menüsünde “Botlar → Botlarım” altında resim, ad ve @adla oluştur. Tokenını yalnızca bir kez görürsün. “Bot ekle” bağlantısını paylaş ya da onu bot dizini için gönder; ekip kontrol ettikten sonra orada görünür. Bir grupta rolleri yönetebilen kişi onu onayladığı izinlerle alır. Gruplarında olanları akış olarak (GET /v2/events/stream) ya da adresine al, POST /v2/channels/{id}/messages ile yaz. Daha fazlası Botlar altında. Komutları kaydet (PUT /v2/me/commands) ve kartlar ile düğmelerle yanıtla; bot, sesli kanalda bir yerle müzik çalar (POST /v2/channels/{id}/voice). Genel bakış v2 ile kendi programların tellmelo ile konuşur: istek başına bir anahtar, yanıt olarak JSON, her liste aynı şekilde sayfalanır. Uygulamadaki kurallar geçerlidir.
Her yol https://api.tellmelo.com/v2 ile başlar. İstekler ve yanıtlar UTF-8 kodlu JSON’dur. Alan adları, kodlar ve değerler İngilizcedir ve öyle kalır. Bir anahtar hesabın olarak hareket eder: uygulamada göremediğini o da okuyamaz. https://api.tellmelo.com/v2Hızlı başlangıç “Geliştirici alanı → API” altında bir anahtar oluştur ve kopyala. Yalnızca bir kez gösterilir. Onunla kökü sorgula. Yanıt sürümü, anahtarın yetkilerini ve bu dakika kalan istekleri gösterir. Her yol aynı çalışır: anahtar başlıkta, yanıt JSON, listelerde items ve next. curl -H "Authorization: Bearer tm_key_…" https://api.tellmelo.com/v2{
"name": "tellmelo",
"version": "2.20",
"scope": "read write",
"rateLimit": {
"limit": 120,
"remaining": 117
},
"docs": "/developers/docs",
"spec": "/api/v2/openapi.json"
}Sonra: profilin için /me, açık gönderiler için /posts, akışın için /feed.
Dene Bir görev seç, alanları doldur ve isteği kopyala ya da buradan gönder. Yazma işlemleri önce sorar. Kod anahtarı TELLMELO_KEY içinden okur.
Görev GET / GET /posts GET /posts/{id} POST /posts DELETE /posts/{id} GET /me/scheduled POST /posts/{id}/schedule POST /posts/{id}/edit GET /posts/{id}/reply-settings PUT /posts/{id}/reply-settings POST /posts/{id}/coauthor DELETE /posts/{id}/coauthor POST /posts/{id}/pin GET /posts/{id}/replies POST /posts/{id}/replies POST /replies/{id}/edit DELETE /replies/{id} POST /replies/{id}/like POST /replies/{id}/vote POST /replies/{id}/pick GET /posts/{id}/replies/waiting POST /replies/{id}/decide GET /posts/{id}/replies/planned PUT /me/planned-replies/{id} POST /me/planned-replies/{id}/send DELETE /me/planned-replies/{id} POST /posts/{id}/vote GET /profiles/{handle} GET /profiles/{handle}/posts GET /profiles/{handle}/events POST /me/events PUT /me/events/{id} DELETE /me/events/{id} GET /me/events/{id}/signups POST /events/{id}/signup GET /communities GET /communities/{id} GET /communities/{id}/posts GET /communities/{id}/members GET /communities/{id}/roles GET /communities/{id}/bell GET /invites/{code} PUT /roles/{id}/self GET /communities/{id}/emojis PUT /communities/{id}/bell POST /invites/{code}/join GET /communities/{id}/bots GET /communities/{id}/channels GET /channels/{id}/messages POST /channels/{id}/messages POST /channels/{id}/read DELETE /channel-messages/{id} GET /communities/{id}/voice POST /communities/{id}/emojis DELETE /communities/{id}/emojis/{name} POST /communities/{id}/roles PUT /roles/{id} DELETE /roles/{id} PUT /communities/{id}/roles/order PUT /roles/{id}/members/{member} POST /communities/{id}/channels PUT /channels/{id} DELETE /channels/{id} PUT /communities/{id}/channels/order PUT /communities/{id}/channels/shape GET /channels/{id}/overrides PUT /channels/{id}/overrides/{role} POST /communities/{id}/categories PUT /categories/{id} DELETE /categories/{id} PUT /communities/{id}/feed GET /communities/{id}/invites POST /communities/{id}/invites DELETE /invites/{code} POST /channel-messages/{id}/remove POST /communities/{id}/posts/{post}/remove DELETE /communities/{id}/members/{member} PUT /communities/{id}/members/{member}/timeout DELETE /communities/{id}/members/{member}/timeout GET /communities/{id}/bans PUT /communities/{id}/bans/{member} DELETE /communities/{id}/bans/{member} GET /communities/{id}/log POST /communities PUT /communities/{id} GET /events GET /events/stream GET /me/commands PUT /me/commands POST /interactions/{id}/reply POST /channels/{id}/voice GET /tags GET /search GET /emojis GET /media GET /media/mine GET /media/{id} POST /media/uploads POST /media/{id} DELETE /media/{id} GET /me GET /feed POST /me/pictures PUT /me/profile GET /me/emojis POST /me/emojis/pictures POST /me/emojis DELETE /me/emojis/{name} PUT /me/emojis/sharing GET /me/webhooks POST /me/webhooks DELETE /me/webhooks/{id} POST /me/webhooks/{id}/test GET /notifications POST /notifications/read GET /conversations GET /conversations/{with}/messages POST /conversations/{with}/messages POST /conversations/{with}/read DELETE /conversations/{with}/messages/{id} POST /conversations/{with}/planned GET /me/planned-messages POST /me/planned-messages/{id}/send DELETE /me/planned-messages/{id} POST /relations GET /profiles/{handle}/followers GET /profiles/{handle}/following GET /me/relations GET /me/collections POST /me/collections PUT /me/collections/{id} DELETE /me/collections/{id} GET /me/collections/{id}/posts POST /me/collections/{id}/posts GET /partner/quota GET /partner/gifts POST /partner/gifts GET /gift-drops POST /gift-drops read API sürümü ve bu sunucunun adı.
curl JavaScript Python
Kopyalacurl \
-H "Authorization: Bearer $TELLMELO_KEY" \
"https://api.tellmelo.com/v2"Senin anahtarın Hesap başına en fazla 10 anahtar; her biri adı, kendi izinleri ve istersen bir bitiş tarihiyle. Anahtar tm_key_ ile başlar ve yalnızca bir kez gösterilir. Kaybettin mi? Yenile; eski değer artık çalışmaz.
Onu “Geliştirici alanı → API” altında oluşturursun. İsteğin başlığında gider:
curl -H "Authorization: Bearer tm_key_…" \
https://api.tellmelo.com/v2/postsYa da daha kolaysa kendi başlığında:
curl -H "X-Tellmelo-Key: tm_key_…" https://api.tellmelo.com/v2Adres satırına değil: orada kayıtlara ve tarayıcı geçmişine düşer.
Aynı anahtar görselleri de yükler: her url /api/media adresini gösterir; anahtarı orada da başlıkta gönder.
curl -H "Authorization: Bearer tm_key_…" \
-o picture.webp "https://api.tellmelo.com/media?id=…"Bir anahtarın yapabildikleri Bir anahtar her zaman okuyabilir; izin verirsen yazabilir, hediye edebilir, medya yükleyebilir ve grupları yönetebilir. Aşağıdaki her yol neye ihtiyaç duyduğunu söyler:
read : okumak. Herkese açık gönderiler, profiller, gruplar ve etiketler; ayrıca akışın, bildirimlerin, mesajların ve gruplarının kanalları.write : işlem yapmak. Paylaşmak, yanıtlamak, oy vermek, mesaj göndermek, bir grubun sohbetinde yazmak, takip etmek, katılmak, engellemek, bildirimleri okundu işaretlemek.gifts : hediye vermek. Bir partnerin kotasından bir üyeye ve yeni bir gönderinin altında hediyeler. Ayrı bir izin; böylece paylaşım için yapılmış bir anahtar asla bir şey dağıtamaz.media : kendi medya kitaplığın. GIF ve video yükleme, değiştirme, paylaşma ve kaldırma. Ayrı bir izin, çünkü yüklemeler hesabın video puanlarını harcar. Paylaşılan GIF ve videoları bulmak için yalnızca read yeterli.groups : Grupları yönetmek. Roller, kanallar, kategoriler, davet bağlantıları, akış kanalı, kaldırmalar, susturmalar, atmalar ve yasaklar; hesabının grupta yapabildiği kadar. Ayrı bir yetki, böylece paylaşım için bir anahtar bir grupta kimin neyi yapabileceğini asla değiştirmez.Hiçbir anahtarın yapamayacağı Hiçbir anahtar parolaya, e-posta adresine, hesap türüne, yere, role, silmeye, oturumlara, bildirim cihazlarına ya da başka anahtarlara uzanmaz; yönetime ve grup yönetimine de. Parolanın koruduğunu hiçbir anahtar yapamaz.
Botlar Bot , gruplar için bot türünde ayrı bir hesaptır: şifresi ve e-postası yoktur, programın kendi anahtarıyla çalıştırır. Her hesapla aynı API’yi kullanır ve gruplarda rolünün izin verdiği her şeyi yapabilir.
Gruplarından birinde grup menüsünü aç ve “Botlar → Botlarım” altında resim, kapak, ad, kullanıcı adı ve açıklamayla bir bot oluştur. Token yalnızca bir kez gösterilir; read, write, media ve groups izinlerine sahiptir. Botun bağlantısını paylaş ya da bot dizini için gönder; ekip kontrol eder etmez orada görünür. Bir grupta rolleri yönetebilen kişi izinleri seçer; bot katılır ve kendi rolünü alır. Programın tokenı Authorization: Bearer … olarak gönderir, gruplarının olaylarını akış olarak okur ve Botlar , Kanallar ve Gruplar altındaki yollarla çalışır. Olayları akış olarak okuyan ve /ping komutuna yalnızca soran kişi için pong diye yanıt veren küçük bir bot:
// Node 18 or newer: reads the events of the bot's groups as they happen and answers /ping.
const BASE = 'https://api.tellmelo.com/v2';
const KEY = process.env.TELLMELO_BOT_TOKEN;
const call = (method, path, body) =>
fetch(BASE + path, {
method,
headers: { Authorization: 'Bearer ' + KEY, 'Content-Type': 'application/json' },
body: body && JSON.stringify(body),
}).then((r) => r.json());
await call('PUT', '/me/commands', { commands: [{ name: 'ping', description: 'Answers pong' }] });
let last = '';
for (;;) {
// The stream closes after ten minutes; Last-Event-ID goes on where it stopped.
const res = await fetch(BASE + '/events/stream', {
headers: { Authorization: 'Bearer ' + KEY, ...(last && { 'Last-Event-ID': last }) },
});
const reader = res.body.pipeThrough(new TextDecoderStream()).getReader();
let buffer = '';
for (;;) {
const { value, done } = await reader.read();
if (done) break;
buffer += value;
let end;
while ((end = buffer.indexOf('
')) >= 0) {
const data = buffer.slice(0, end).split('
').find((l) => l.startsWith('data: '));
buffer = buffer.slice(end + 2);
if (!data) continue;
const event = JSON.parse(data.slice(6));
last = event.id;
if (event.type === 'command' && event.data.command === 'ping')
await call('POST', '/interactions/' + event.data.interaction + '/reply', { text: 'pong', private: true });
}
}
}Aynı bot Python'da, olayları sayfa sayfa alarak:
# Python 3 with requests: the same bot, reading the events page by page.
import os, time, requests
BASE = 'https://api.tellmelo.com/v2'
H = {'Authorization': 'Bearer ' + os.environ['TELLMELO_BOT_TOKEN']}
requests.put(BASE + '/me/commands', headers=H,
json={'commands': [{'name': 'ping', 'description': 'Answers pong'}]})
since = '0'
while True:
page = requests.get(BASE + '/events', headers=H, params={'since': since}).json()
for event in page['items']:
if event['type'] == 'command' and event['data']['command'] == 'ping':
requests.post(f"{BASE}/interactions/{event['data']['interaction']}/reply",
headers=H, json={'text': 'pong'})
since = page['next'] or since
time.sleep(2)Bir botun grupta ne yapabileceğini token değil, oradaki rolü belirler. Rol onun adını taşır; grup, rolün izinlerini grup ayarlarındaki roller bölümünde değiştirir ve botu grup menüsünde “Botlar → Bu grupta” altında kaldırır. Hesap başına en fazla 5 bot; grup başına avantajlarının izin verdiği kadar. Bir bot grup başına dakikada en fazla 30 mesaj yazar, aramada bulunmaz ve yalnızca ona önce yazanlara yazar. Sınırlar geçerlidir. Olaylar kendi HTTPS adresine de gelir (webhook'lar gibi imzalı, yeniden denemeli). Ayrıca: herkese ya da yalnızca sorana yanıtlı komutlar (PUT /v2/me/commands), mesajlarda kartlar ve düğmeler ve sesli kanalda müzik (POST /v2/channels/{id}/voice): hepsi Botlar altında. Sayfalar Her liste limit ve cursor alır, items ve next ile yanıt verir. Sonraki sayfa için next değerini cursor olarak geri gönder; next boşsa bitti. İmleç opaktır: ayrıştırma, kendin oluşturma.
{ "items": [ … ], "next": "MTc1ODYyNDAwMDAwMDo1ZjBjMmE5ZS04ZDQx" }
curl -H "Authorization: Bearer tm_key_…" \
"https://api.tellmelo.com/v2/posts?limit=20&cursor=MTc1ODYyNDAwMDAwMDo1ZjBjMmE5ZS04ZDQx"limit yoksa 20 kayıt, en fazla 50. Bazı listeler sayfalanmaz; next değerleri hep null olur.
Yalnızca yeni olan Her yanıt bir ETag taşır. Bir sonraki sefer onu If-None-Match olarak gönder: hiçbir şey değişmediyse gövdesiz 304 gelir.
ETag: W/"3Qk1mJ7fQe2Yb0sVxT9aL4pNdRc"
If-None-Match: W/"3Qk1mJ7fQe2Yb0sVxT9aL4pNdRc" → 304İstisnalar: sıralaması sürekli değiştiği için /feed için ETag yoktur ve yazma işlemleri asla 304 döndürmez.
Sınırlar Bir anahtar dakikada 120 istek yapabilir, “Kurum” aboneliğiyle 600, yönetim başka bir sayı belirlemediyse. Üstünde 429 gelir ve hiçbir şey yürütülmez. Bir dakika bekle ve isteği yeniden gönder.
X-RateLimit-Limit: 120
X-RateLimit-Remaining: 117
X-RateLimit-Reset: 1758624060Yazma işlemleri ayrıca uygulamanın sınırlarına da sayılır, örneğin birkaç dakikada kaç gönderi. Bunlar da rate_limited ile 429 döndürür.
Bir şey olmazsa Hatalar JSON olarak gelir: programın için error içinde sabit bir İngilizce kod, insanlar için message içinde bir cümle ve uygun durum kodu. Yalnızca kodu karşılaştır; cümle değişebilir.
{ "error": "rate_limited",
"message": "Too many requests. Try again in a minute.",
"limit": 120 }Bazı hatalar bir alan daha getirir: eksik anahtar yüzünden gelen 401 ile docs, 429 ile limit.
Durum Kod Anlamı 400bad_requestİstek okunamıyor, zorunlu bir alan eksik ya da bir değere izin verilmiyor. 401key_missingBaşlıkta anahtar yok. 401key_invalidAnahtar geçersiz: yanlış yazılmış, değiştirilmiş ya da hesap engellenmiş. 401unauthorizedAnahtar dışında bir nedenle oturum açılmamış sayılıp reddedildi. 403scope_missingAnahtarda gereken yetki yok, genellikle write. 403account_data_lockedParola, e-posta adresi ya da silme gibi hesap verileri anahtarlara kapalıdır. 403forbiddenHesabın bunu yapamaz, örneğin geri alınmış bir yetki ya da engelleme yüzünden. 403timed_outBir susturma hesabını şu anda bu grupta susturuyor. 404unknown_pathBöyle bir yol yok ya da bu yöntemle yok. 404not_foundBulunamadı ya da görmene izin yok. 409conflictZaten var olan bir şeyle çakışıyor, örneğin alınmış bir ad. 409feed_offBu grubun akış kanalı kapalı. 413too_largeBu sunucu için çok büyük. 422unprocessableOkunabilir ama bu biçimde mümkün değil. 429rate_limitedÇok fazla istek. Hiçbir şey olmadı; bekle ve tekrar dene. 500internal_errorSunucuda bir hata oldu.
Sürümler Sürüm yolda yazar. Orada v2 yazdığı sürece yollar ve alanlar aynı kalır; yenilikler yalnızca eklenir.
Eklemeler ikinci sayıyı artırır. Her yol ne zamandan beri var olduğunu belirtir.
https://api.tellmelo.com/v1/ artık yok: eski yollar 410 yanıtı verir ve gövdede yeni yolu belirtir.
Uç noktalar Tüm yollar bir bakışta, ardından her biri örnekle.
Yol Yetki Ne işe yarar Giriş GET /v2readAPI sürümü ve bu sunucunun adı. Gönderiler GET /v2/postsreadAçık gönderiler, en yenisi önce. GET /v2/posts/{id}readTek bir gönderi, id değeriyle. POST /v2/postswriteBir gönderi yayımlamak. DELETE /v2/posts/{id}writeKendi gönderilerinden birini kaldırmak. GET /v2/me/scheduledreadHenüz yayımlanmamış gönderilerin ve neyi beklediklerini. POST /v2/posts/{id}/schedulewritePlanlanmış bir gönderinin ne zaman yayımlanacağını ya da bir gönderinin ne zaman kendiliğinden silineceğini değiştirmek. POST /v2/posts/{id}/editwriteKendi gönderinin metnini değiştirmek. GET /v2/posts/{id}/reply-settingsreadKendi gönderine kimlerin yanıt verebileceği, yanıtların onay bekleyip beklemediği ve yavaş mod. PUT /v2/posts/{id}/reply-settingswriteKendi gönderinin yanıt ayarlarını değiştir. Belirtmediğin her şey aynı kalır. POST /v2/posts/{id}/coauthorwriteOrtak yazar davetini kabul et veya reddet. DELETE /v2/posts/{id}/coauthorwriteOrtak yazarlıktan çekil veya yazar olarak ortak yazarı gönderiden çıkar. POST /v2/posts/{id}/pinwriteKendi gönderini profilinin en üstüne sabitle veya sabitlemeyi kaldır. Yanıtlar GET /v2/posts/{id}/repliesreadBir gönderiye gelen yanıtlar, engellenen hesaplar hariç. POST /v2/posts/{id}/replieswriteBir gönderiye yanıt vermek. POST /v2/replies/{id}/editwriteKendi yanıtının metnini değiştirmek. DELETE /v2/replies/{id}writeKendi yanıtını kaldırmak. POST /v2/replies/{id}/likewriteBir yanıta artı oy ver (yanıtlar oylandığından beri beğeni bir artı oydur) ya da artı oyu geri al; eksi oy kalır. POST /v2/replies/{id}/votewriteBir yanıta artı ya da eksi oy ver veya oyunu geri al. Oyunla birlikte sonraki puanı döndürür. POST /v2/replies/{id}/pickwriteKendi gönderinin altındaki bir yanıtı en iyisi olarak öne çıkar veya öne çıkarmayı kaldır. GET /v2/posts/{id}/replies/waitingreadBir gönderinin altında onay bekleyen yanıtlar: kendi gönderinde hepsi, değilse yalnızca seninkiler. POST /v2/replies/{id}/decidewriteKendi gönderinin altında bekleyen bir yanıtı onayla veya reddet. Reddedilen yanıt silinir. GET /v2/posts/{id}/replies/plannedreadBir gönderinin altında sonraya planladığın yanıtların. PUT /v2/me/planned-replies/{id}writePlanlanmış bir yanıtın metnini veya zamanını değiştir. Başarısız olan yeniden bekler. POST /v2/me/planned-replies/{id}/sendwritePlanlanmış bir yanıtı hemen gönder. DELETE /v2/me/planned-replies/{id}writePlanlanmış bir yanıtı sil. Anketler POST /v2/posts/{id}/votewriteBir ankete katılmak. Profiller GET /v2/profiles/{handle}readBir profil, kısa adıyla. GET /v2/profiles/{handle}/postsreadBir profilin açık gönderileri, en yenisi önce. GET /v2/profiles/{handle}/eventsreadBir profilin yaklaşan etkinlikleri, en yakınlar önce. POST /v2/me/eventswriteEtkinlik oluştur. id değerini döndürür. PUT /v2/me/events/{id}writeEtkinliklerinden birini değiştir. Tüm alanlar yeniden ayarlanır. DELETE /v2/me/events/{id}writeEtkinliklerinden birini sil. GET /v2/me/events/{id}/signupsreadEtkinliklerinden birine kimlerin kaydolduğu. POST /v2/events/{id}/signupwriteBir etkinliğe kaydol veya kaydını sil. Gruplar GET /v2/communitiesreadBu sunucunun açık grupları; mine=true ile hesabının grupları. GET /v2/communities/{id}readTek bir grup, id değeriyle. GET /v2/communities/{id}/postsreadBir grubun akış kanalındaki gönderiler, en yenisi önce. GET /v2/communities/{id}/membersreadBir grubun üyeleri ve rolleri. GET /v2/communities/{id}/rolesreadBir grubun rolleri, en üstteki önce, @everyone en sonda. GET /v2/communities/{id}/bellreadBir grubun sana hangi bildirimleri gönderdiği. GET /v2/invites/{code}readBir davet bağlantısının arkasındaki grup, katılmadan önce. PUT /v2/roles/{id}/selfwriteKendi kendine seçilebilir bir rolü al ya da bırak. GET /v2/communities/{id}/emojisreadBir grubun kendi emojileri. PUT /v2/communities/{id}/bellwriteBir grubun sana hangi bildirimleri göndereceğini ayarlamak. POST /v2/invites/{code}/joinwriteBir davet bağlantısıyla gruba katılmak. GET /v2/communities/{id}/botsreadBir grubun botları ve rollerinin izin verdikleri. Kanallar GET /v2/communities/{id}/channelsreadBir grubun gördüğün kanalları, sıralarıyla. GET /v2/channels/{id}/messagesreadBir sohbet kanalının mesajları, en yenisi önce. POST /v2/channels/{id}/messageswriteBir sohbet kanalına mesaj yazmak. POST /v2/channels/{id}/readwriteBir sohbet kanalını belli bir ana kadar okundu işaretlemek. DELETE /v2/channel-messages/{id}writeBir sohbet kanalındaki kendi mesajını silmek. GET /v2/communities/{id}/voicereadBir grubun sesli kanallarında şu an kimlerin olduğu, kanal kanal. Grupları yönetmek POST /v2/communities/{id}/emojisgroupsGruba bir emoji ekle. DELETE /v2/communities/{id}/emojis/{name}groupsGruptan bir emojiyi kaldır. POST /v2/communities/{id}/rolesgroupsBir rol oluşturmak. PUT /v2/roles/{id}groupsBir rolün adını, rengini ve izinlerini değiştirmek. DELETE /v2/roles/{id}groupsBir rolü silmek. PUT /v2/communities/{id}/roles/ordergroupsRollerin sırasını belirlemek. PUT /v2/roles/{id}/members/{member}groupsBir üyeye rol vermek veya almak. POST /v2/communities/{id}/channelsgroupsBir sohbet kanalı oluşturmak. PUT /v2/channels/{id}groupsBir kanalın adını, konusunu ve kategorisini değiştirmek. DELETE /v2/channels/{id}groupsBir sohbet kanalını mesajlarıyla silmek. PUT /v2/communities/{id}/channels/ordergroupsKategorilerin ve sohbet kanallarının sırasını belirlemek. PUT /v2/communities/{id}/channels/shapegroupsGruptaki tüm kanal simgelerinin şeklini belirle. GET /v2/channels/{id}/overridesgroupsRollerin bir kanalda gruptan farklı olarak yapabildikleri. PUT /v2/channels/{id}/overrides/{role}groupsBir rolün bir kanalda farklı olarak neyi yapabileceğini belirlemek. POST /v2/communities/{id}/categoriesgroupsKanallar için bir kategori oluşturmak. PUT /v2/categories/{id}groupsBir kategoriyi yeniden adlandırmak. DELETE /v2/categories/{id}groupsBir kategoriyi silmek. PUT /v2/communities/{id}/feedgroupsBir grubun akış kanalını açmak veya kapatmak. GET /v2/communities/{id}/invitesgroupsBir grubun hâlâ geçerli davet bağlantıları. POST /v2/communities/{id}/invitesgroupsBir davet bağlantısı oluşturmak. DELETE /v2/invites/{code}groupsBir davet bağlantısını geri almak. POST /v2/channel-messages/{id}/removegroupsBaşka bir üyenin mesajını bir kanaldan kaldırmak. POST /v2/communities/{id}/posts/{post}/removegroupsBir gönderiyi gruptan kaldırmak. DELETE /v2/communities/{id}/members/{member}groupsBir üyeyi gruptan at. PUT /v2/communities/{id}/members/{member}/timeoutgroupsBir üyeyi sustur. DELETE /v2/communities/{id}/members/{member}/timeoutgroupsBir susturmayı kaldır. GET /v2/communities/{id}/bansgroupsBir grubun süren yasakları. PUT /v2/communities/{id}/bans/{member}groupsBir üyeyi yasakla. DELETE /v2/communities/{id}/bans/{member}groupsBir yasağı kaldır. GET /v2/communities/{id}/loggroupsYönetimin kaydı: kim neyi neden kaldırdı. POST /v2/communitiesgroupsBir grup kur. id değerini döndürür; kurucusu sensin. PUT /v2/communities/{id}groupsYönettiğin bir grubu değiştir. Belirtmediğin her şey aynı kalır. Botlar GET /v2/eventsreadBotun gruplarındaki olaylar, bir olaydan itibaren sayfa sayfa. GET /v2/events/streamreadBotun gruplarındaki olaylar, gerçekleşir gerçekleşmez (server-sent events). GET /v2/me/commandsreadBotun komutları. PUT /v2/me/commandswriteBotun komutlarını hepsini birden belirle. POST /v2/interactions/{id}/replywriteBir komuta ya da düğmeye yanıt ver. POST /v2/channels/{id}/voicewriteMüzik ya da ses çalmak için sesli kanalda yer al. Keşfet GET /v2/tagsreadŞu anda öne çıkan etiketler. GET /v2/searchreadGönderilerde, adlarda, kısa adlarda ve etiketlerde arama. GET /v2/emojisreadSunucunun kendi emojileri, görsellerinin adresiyle birlikte. GIF’ler ve videolar GET /v2/mediareadPaylaşılan GIF’ler veya videolar, en çok kullanılanlar önce. GET /v2/media/minemediaKendi medya kitaplığın, en yeniler önce. GET /v2/media/{id}readBir GIF veya video; seninki ya da paylaşılan. POST /v2/media/uploadsmediaBir yükleme başlat. PUT /v2/media/uploads/{upload}mediaDosyanın bir parçasını gönder. POST /v2/media/{id}mediaGIF’lerinden veya videolarından birini değiştir. DELETE /v2/media/{id}mediaGIF’lerinden veya videolarından birini kaldır. Hesabın GET /v2/mereadKendi profilin, diğer yolların beklediği id ile. GET /v2/feedreadKendi akışın, uygulamanın derlediği hâliyle. POST /v2/me/pictureswriteBir resmi bayt olarak yükle. id ve url döndürür; sonra id değerini profil resmi, kapak veya gönderide kullanırsın. PUT /v2/me/profileprofileProfilini değiştir: ad, hakkında, profil resmi, kapak ve profil rengi. Belirtmediğin her şey aynı kalır. GET /v2/me/emojisreadKendi emojilerin. POST /v2/me/emojis/picturesprofileKendi emojin için resmi bayt olarak yükle. POST /v2/me/emojisprofileKendi emojini oluştur. Tüm emojilerini döndürür. DELETE /v2/me/emojis/{name}profileKendi emojini kaldır. Kalanları döndürür. PUT /v2/me/emojis/sharingprofileTakipçilerinin emojilerini kendi metinlerinde kullanıp kullanamayacağını belirle. GET /v2/me/webhookswebhooksWebhook’ların ve durumları. POST /v2/me/webhookswebhooksWebhook oluştur. id ve imzaların sırrını yalnızca bu seferlik döndürür. DELETE /v2/me/webhooks/{id}webhooksWebhook’u sil. POST /v2/me/webhooks/{id}/testwebhooksWebhook’a deneme gönder. Bildirimler GET /v2/notificationsreadBildirimlerin, en yenisi önce. POST /v2/notifications/readwriteBildirimlerini okundu olarak işaretlemek. Mesajlar GET /v2/conversationsreadPosta kutun: her sohbet için bir satır, en yenisi önce. GET /v2/conversations/{with}/messagesreadBir sohbetin mesajları, en yenisi önce. POST /v2/conversations/{with}/messageswriteBir sohbete mesaj göndermek. POST /v2/conversations/{with}/readwriteBir sohbetin bütün mesajlarını okundu olarak işaretle. DELETE /v2/conversations/{with}/messages/{id}writeKendi mesajını silmek. POST /v2/conversations/{with}/plannedwriteBir mesajı sonraya planla. Planlanan mesajın id değerini döndürür. GET /v2/me/planned-messagesreadHenüz gönderilecek mesajların, zamana göre sıralı. POST /v2/me/planned-messages/{id}/sendwriteBekletilen veya başarısız olan planlanmış bir mesajı şimdi gönder. DELETE /v2/me/planned-messages/{id}writePlanlanmış bir mesajı gönderilmeden önce sil. İlişkiler POST /v2/relationswriteBeğenmek, kaydetmek, paylaşmak, takip etmek, katılmak, engellemek, sessize almak, kind değerine göre. GET /v2/profiles/{handle}/followersreadBir profili kimlerin takip ettiği, en yeniler önce. GET /v2/profiles/{handle}/followingreadBir profilin kimleri takip ettiği, en yeniler önce. GET /v2/me/relationsreadEngellediğin, sessize aldığın veya yalnızca mesajlarda engellediğin hesaplar, en yeniler önce. Koleksiyonlar GET /v2/me/collectionsreadKoleksiyonların ve içlerindeki gönderi sayısı. POST /v2/me/collectionswriteKoleksiyon oluştur. id değerini döndürür. PUT /v2/me/collections/{id}writeKoleksiyonu yeniden adlandır. DELETE /v2/me/collections/{id}writeKoleksiyonu sil. GET /v2/me/collections/{id}/postsreadBir koleksiyonun gönderileri, kaydedilenler sekmesindeki gibi. POST /v2/me/collections/{id}/postswriteBir gönderiyi koleksiyona koy veya çıkar. Hediyeler GET /v2/partner/quotareadKotanda hediye edilecek ne kaldığı. GET /v2/partner/giftsreadKotandan kime, ne zaman ne verdiğin – en yenisi önce. POST /v2/partner/giftsgiftsKotandan bir üyeye abonelik ayı ya da kıvılcım hediye etmek. GET /v2/gift-dropsreadGönderilerinin altındaki hediyeler: kaç yerin hâlâ boş olduğu ve nasıl ödendiği. POST /v2/gift-dropsgiftsBaşkalarının alabileceği hediyelerle bir gönderi yayımlamak.
Giriş Her programın ilk isteği: anahtar çalışıyor mu, ne yapabilir?
GET /v2API sürümü ve bu sunucunun adı.
Yetki read ETag ile v2.0 sürümünden beri Sonda eğik çizgi olmadan: https://api.tellmelo.com/v2/, 308 ile https://api.tellmelo.com/v2 adresine yönlendirir ve her program bunu izlemez.
Örnek istek curl \
-H "Authorization: Bearer tm_key_…" \
"https://api.tellmelo.com/v2"Yanıt Bir Service ile yanıt verir.
Örnek {
"name": "tellmelo",
"version": "2.20",
"scope": "read write",
"rateLimit": {
"limit": 120,
"remaining": 117
},
"docs": "/developers/docs",
"spec": "/api/v2/openapi.json"
}Olası durumlar: 200304401429
Gönderiler Herkese açık gönderileri okumak, kendi gönderilerini yayımlamak ve yeniden kaldırmak.
GET /v2/postsAçık gönderiler, en yenisi önce.
Yetki read sayfalanabilir ETag ile v2.0 sürümünden beri Açık yollarda counts.likes ve counts.reposts her zaman 0, pinned ise false olur.
Gruplardaki gönderiler burada değil, /communities/{id}/posts altında.
Parametreler Ad Tür Anlamı limitadreste integeristeğe bağlı Sayfa başına kayıt: varsayılan 20, en fazla 50. cursoradreste stringisteğe bağlı Önceki yanıttaki next. Yoksa baştan.
Örnek istek curl \
-H "Authorization: Bearer tm_key_…" \
"https://api.tellmelo.com/v2/posts?limit=20"Yanıt Bir sayfa Post ile yanıt verir, `items` ve `next` olarak.
Örnek {
"items": [
{
"id": "5f0c2a9e-8d41-4b7a-9c3e-2e61d0f4a7b1",
"text": "The bees are back in the garden 🐝 #garden",
"kind": "poll",
"author": {
"id": "a3e1f7c2-54b9-4d0e-8f16-7b2c9d4e1a05",
"handle": "mara",
"name": "Mara 🌻",
"verified": true,
"accountKind": "person"
},
"community": {
"id": "c81d4e2a-0f3b-4a6c-9e57-1d2b3c4a5f60",
"name": "Urban Gardening"
},
"media": [
{
"url": "/api/media?id=b2d7e9f1-3c4a-4e8b-a1f0-6d5c4b3a2918",
"kind": "image",
"poster": null,
"ai": "without"
}
],
"poll": {
"options": [
{
"text": "Lavender",
"votes": 12
},
{
"text": "Sunflowers",
"votes": 7
},
{
"text": "Clover",
"votes": 3
}
],
"total": 22,
"multiple": false,
"endsAt": null,
"running": true,
"resultsVisible": true,
"myVotes": [
0
]
},
"quotes": null,
"continues": null,
"counts": {
"replies": 4,
"likes": 31,
"reposts": 2
},
"pinned": false,
"giftDrop": {
"item": "plan",
"quantity": 3,
"places": 10,
"left": 4,
"audience": "followers",
"newAccounts": false,
"status": "open",
"claimed": true
},
"createdAt": 1758624000000
}
],
"next": "MTc1ODYyNDAwMDAwMDo1ZjBjMmE5ZS04ZDQx"
}Olası durumlar: 200304401429
GET /v2/posts/{id}Tek bir gönderi, id değeriyle.
Yetki read ETag ile v2.0 sürümünden beri Açık yollarda counts.likes ve counts.reposts her zaman 0, pinned ise false olur.
Gruplardaki gönderiler burada değil, /communities/{id}/posts altında.
Parametreler Ad Tür Anlamı idyolda stringzorunlu Bir gönderinin id değeri.
Örnek istek curl \
-H "Authorization: Bearer tm_key_…" \
"https://api.tellmelo.com/v2/posts/5f0c2a9e-8d41-4b7a-9c3e-2e61d0f4a7b1"Yanıt Bir Post ile yanıt verir.
Örnek {
"id": "5f0c2a9e-8d41-4b7a-9c3e-2e61d0f4a7b1",
"text": "The bees are back in the garden 🐝 #garden",
"kind": "poll",
"author": {
"id": "a3e1f7c2-54b9-4d0e-8f16-7b2c9d4e1a05",
"handle": "mara",
"name": "Mara 🌻",
"verified": true,
"accountKind": "person"
},
"community": {
"id": "c81d4e2a-0f3b-4a6c-9e57-1d2b3c4a5f60",
"name": "Urban Gardening"
},
"media": [
{
"url": "/api/media?id=b2d7e9f1-3c4a-4e8b-a1f0-6d5c4b3a2918",
"kind": "image",
"poster": null,
"ai": "without"
}
],
"poll": {
"options": [
{
"text": "Lavender",
"votes": 12
},
{
"text": "Sunflowers",
"votes": 7
},
{
"text": "Clover",
"votes": 3
}
],
"total": 22,
"multiple": false,
"endsAt": null,
"running": true,
"resultsVisible": true,
"myVotes": [
0
]
},
"quotes": null,
"continues": null,
"counts": {
"replies": 4,
"likes": 31,
"reposts": 2
},
"pinned": false,
"giftDrop": {
"item": "plan",
"quantity": 3,
"places": 10,
"left": 4,
"audience": "followers",
"newAccounts": false,
"status": "open",
"claimed": true
},
"createdAt": 1758624000000
}Olası durumlar: 200304400401404429
POST /v2/postsBir gönderi yayımlamak.
Yetki write v2.0 sürümünden beri Bir gönderi metin ya da anket gerektirir. Uzunluğu, seçenekleri ve hızı sunucu belirler; aşılırsa 400 ya da 429 gelir.
media ile resim, bir GIF veya bir video ekle. GIF veya video tek başına durur. Başkalarının paylaştığı GIF ve videoları tellmelo’da kullanabilirsin.
Yakın arkadaşlara özel veya ortak yazarlı bir gönderi hemen yayımlanır; grupta veya planlı olamaz. İkisi aynı anda olmaz.
Parametreler Ad Tür Anlamı textgövdede stringisteğe bağlı Gönderinin, yanıtın ya da mesajın metni. communitygövdede stringisteğe bağlı Gönderinin gideceği akış kanalının grubunun id’si; kanal açık olmalı ve bunun için iznin olmalı. Olmadan gönderi hiçbir grubun içinde olmaz. quotesgövdede stringisteğe bağlı Bu gönderinin alıntıladığı gönderinin id değeri. pollgövdede string[]isteğe bağlı Seçenekler, metin listesi olarak. mediagövdede string[]isteğe bağlı Uygulamada yüklenen resimlerin ya da medya kitaplığındaki bir GIF veya videonun ID’leri (2.14’ten beri). audiencegövdede stringisteğe bağlı Gönderiyi kim görür: everyone görebilen herkes, close yalnızca yakın arkadaşların.everyoneclose coauthorgövdede stringisteğe bağlı Ortak yazar olarak davet ettiğin hesabın id değeri. Birbirinizi takip etmeniz gerekir.
Örnek istek curl -X POST \
-H "Authorization: Bearer tm_key_…" \
-H "Content-Type: application/json" \
-d '{"text":"The bees are back in the garden 🐝 #garden","audience":"everyone"}' \
"https://api.tellmelo.com/v2/posts"Yanıt Bir Created ile yanıt verir.
Örnek {
"id": "5f0c2a9e-8d41-4b7a-9c3e-2e61d0f4a7b1",
"scheduledFor": null,
"deleteAt": null
}Olası durumlar: 200400401403429
DELETE /v2/posts/{id}Kendi gönderilerinden birini kaldırmak.
Yetki write v2.0 sürümünden beri Parametreler Ad Tür Anlamı idyolda stringzorunlu Bir gönderinin id değeri.
Örnek istek curl -X DELETE \
-H "Authorization: Bearer tm_key_…" \
"https://api.tellmelo.com/v2/posts/5f0c2a9e-8d41-4b7a-9c3e-2e61d0f4a7b1"Yanıt Bir Ok ile yanıt verir.
Örnek {
"ok": true
}Olası durumlar: 200400401403404429
GET /v2/me/scheduledHenüz yayımlanmamış gönderilerin ve neyi beklediklerini.
Yetki read ETag ile v2.12 sürümünden beri Örnek istek curl \
-H "Authorization: Bearer tm_key_…" \
"https://api.tellmelo.com/v2/me/scheduled"Yanıt Bir sayfa ScheduledPost ile yanıt verir, `items` ve `next` olarak.
Örnek {
"items": [
{
"id": "5f0c2a9e-8d41-4b7a-9c3e-2e61d0f4a7b1",
"text": "Market day tomorrow – see you at the bee stand! #garden",
"communityId": null,
"publishAt": 1758710400000,
"deleteAt": null,
"waitingFor": "time",
"createdAt": 1758624000000
}
],
"next": null
}Olası durumlar: 200304401429
POST /v2/posts/{id}/schedulePlanlanmış bir gönderinin ne zaman yayımlanacağını ya da bir gönderinin ne zaman kendiliğinden silineceğini değiştirmek.
Yetki write v2.12 sürümünden beri Yalnızca kendi gönderilerin. Bir gönderinin hediyeleri ödenmediği sürece planlanamaz.
Parametreler Ad Tür Anlamı idyolda stringzorunlu Bir gönderinin id değeri. publishAtgövdede integeristeğe bağlı Planlanmış gönderinin yayımlanacağı zaman, 1970’ten beri milisaniye olarak. deleteAtgövdede integeristeğe bağlı Gönderinin kendiliğinden silineceği zaman, 1970’ten beri milisaniye olarak.
Örnek istek curl -X POST \
-H "Authorization: Bearer tm_key_…" \
"https://api.tellmelo.com/v2/posts/5f0c2a9e-8d41-4b7a-9c3e-2e61d0f4a7b1/schedule"Yanıt Bir Ok ile yanıt verir.
Örnek {
"ok": true
}Olası durumlar: 200400401403404429
POST /v2/posts/{id}/editKendi gönderinin metnini değiştirmek.
Yetki write v2.12 sürümünden beri Yalnızca aboneliğinin tanıdığı düzenleme süresi içinde. Planlanmış gönderiler düzenlenemez.
Parametreler Ad Tür Anlamı idyolda stringzorunlu Bir gönderinin id değeri. textgövdede stringzorunlu Gönderinin, yanıtın ya da mesajın metni.
Örnek istek curl -X POST \
-H "Authorization: Bearer tm_key_…" \
-H "Content-Type: application/json" \
-d '{"text":"The bees are back in the garden 🐝🌻 #garden"}' \
"https://api.tellmelo.com/v2/posts/5f0c2a9e-8d41-4b7a-9c3e-2e61d0f4a7b1/edit"Yanıt Bir Ok ile yanıt verir.
Örnek {
"ok": true
}Olası durumlar: 200400401403404429
GET /v2/posts/{id}/reply-settingsKendi gönderine kimlerin yanıt verebileceği, yanıtların onay bekleyip beklemediği ve yavaş mod.
Yetki read ETag ile v2.19 sürümünden beri Parametreler Ad Tür Anlamı idyolda stringzorunlu Bir gönderinin id değeri.
Örnek istek curl \
-H "Authorization: Bearer tm_key_…" \
"https://api.tellmelo.com/v2/posts/5f0c2a9e-8d41-4b7a-9c3e-2e61d0f4a7b1/reply-settings"Yanıt Bir ReplySettings ile yanıt verir.
Örnek {
"audience": "following",
"approval": false,
"slow": "auto"
}Olası durumlar: 200304400401404429
PUT /v2/posts/{id}/reply-settingsKendi gönderinin yanıt ayarlarını değiştir. Belirtmediğin her şey aynı kalır.
Yetki write v2.19 sürümünden beri Yalnızca kendi gönderilerin.
Parametreler Ad Tür Anlamı idyolda stringzorunlu Bir gönderinin id değeri. audiencegövdede stringisteğe bağlı Kimler yanıt verebilir: herkes, takip ettiğin hesaplar, bahsedilenler veya kimse.allfollowingmentionednobody approvalgövdede booleanisteğe bağlı Yanıtların yalnızca senin onayından sonra görünüp görünmeyeceği. slowgövdede stringisteğe bağlı Yavaş mod: auto çok yanıt gelince kendiliğinden açılır, on her zaman, off hiçbir zaman.autoonoff
Örnek istek curl -X PUT \
-H "Authorization: Bearer tm_key_…" \
-H "Content-Type: application/json" \
-d '{"audience":"following","approval":false,"slow":"auto"}' \
"https://api.tellmelo.com/v2/posts/5f0c2a9e-8d41-4b7a-9c3e-2e61d0f4a7b1/reply-settings"Yanıt Bir ReplySettings ile yanıt verir.
Örnek {
"audience": "following",
"approval": false,
"slow": "auto"
}Olası durumlar: 200400401403404429
POST /v2/posts/{id}/coauthorOrtak yazar davetini kabul et veya reddet.
Yetki write v2.19 sürümünden beri Parametreler Ad Tür Anlamı idyolda stringzorunlu Bir gönderinin id değeri. acceptgövdede booleanzorunlu true daveti kabul eder, false reddeder.
Örnek istek curl -X POST \
-H "Authorization: Bearer tm_key_…" \
-H "Content-Type: application/json" \
-d '{"accept":true}' \
"https://api.tellmelo.com/v2/posts/5f0c2a9e-8d41-4b7a-9c3e-2e61d0f4a7b1/coauthor"Yanıt Bir Ok ile yanıt verir.
Örnek {
"ok": true
}Olası durumlar: 200400401403404429
DELETE /v2/posts/{id}/coauthorOrtak yazarlıktan çekil veya yazar olarak ortak yazarı gönderiden çıkar.
Yetki write v2.19 sürümünden beri Ortak yazar ve gönderinin yazarı için.
Parametreler Ad Tür Anlamı idyolda stringzorunlu Bir gönderinin id değeri.
Örnek istek curl -X DELETE \
-H "Authorization: Bearer tm_key_…" \
"https://api.tellmelo.com/v2/posts/5f0c2a9e-8d41-4b7a-9c3e-2e61d0f4a7b1/coauthor"Yanıt Bir Ok ile yanıt verir.
Örnek {
"ok": true
}Olası durumlar: 200400401403404429
POST /v2/posts/{id}/pinKendi gönderini profilinin en üstüne sabitle veya sabitlemeyi kaldır.
Yetki write v2.19 sürümünden beri Yalnızca kendi görünür gönderilerin. Kaç tane sabitleyebileceğin aboneliğe bağlıdır.
Parametreler Ad Tür Anlamı idyolda stringzorunlu Bir gönderinin id değeri. activegövdede booleanzorunlu true gönderiyi sabitler, false sabitlemeyi kaldırır.
Örnek istek curl -X POST \
-H "Authorization: Bearer tm_key_…" \
-H "Content-Type: application/json" \
-d '{"active":true}' \
"https://api.tellmelo.com/v2/posts/5f0c2a9e-8d41-4b7a-9c3e-2e61d0f4a7b1/pin"Yanıt Bir Ok ile yanıt verir.
Örnek {
"ok": true
}Olası durumlar: 200400401403404429
Yanıtlar Bir gönderinin altındaki yanıtlar, parentId içeren bir liste olarak.
GET /v2/posts/{id}/repliesBir gönderiye gelen yanıtlar, engellenen hesaplar hariç.
Yetki read sayfalanabilir ETag ile v2.0 sürümünden beri Liste düzdür ve yazılış sırasındadır; parentId onu ağaca çevirir. Bir sayfa her zaman tam dizileri içerir. Engellenen hesapların yanıtları yer almaz.
Parametreler Ad Tür Anlamı idyolda stringzorunlu Bir gönderinin id değeri. limitadreste integeristeğe bağlı Sayfa başına kayıt: varsayılan 20, en fazla 50. cursoradreste stringisteğe bağlı Önceki yanıttaki next. Yoksa baştan.
Örnek istek curl \
-H "Authorization: Bearer tm_key_…" \
"https://api.tellmelo.com/v2/posts/5f0c2a9e-8d41-4b7a-9c3e-2e61d0f4a7b1/replies?limit=20"Yanıt Bir sayfa Reply ile yanıt verir, `items` ve `next` olarak.
Örnek {
"items": [
{
"id": "9e4b1c7d-2a3f-4d5e-8b6c-0f1e2d3c4b5a",
"text": "Same here, the lavender is full of them.",
"kind": "post",
"author": {
"id": "d4c3b2a1-6e5f-4a7b-9c8d-1e2f3a4b5c6d",
"handle": "jon",
"name": "Jon",
"verified": false,
"accountKind": "person"
},
"community": null,
"media": [],
"poll": null,
"quotes": null,
"continues": null,
"counts": {
"replies": 0,
"likes": 3,
"reposts": 0
},
"pinned": false,
"giftDrop": null,
"createdAt": 1758624600000,
"postId": "5f0c2a9e-8d41-4b7a-9c3e-2e61d0f4a7b1",
"parentId": null
}
],
"next": "MTc1ODYyNDAwMDAwMDo1ZjBjMmE5ZS04ZDQx"
}Olası durumlar: 200304400401404429
POST /v2/posts/{id}/repliesBir gönderiye yanıt vermek.
Yetki write v2.0 sürümünden beri Yavaş modda kişi başına 10 dakikada bir yanıt, yoksa 429. Yazar ve takip ettiği hesaplar muaftır.
media ile en fazla bir resim, GIF veya video.
Parametreler Ad Tür Anlamı idyolda stringzorunlu Bir gönderinin id değeri. textgövdede stringzorunlu Gönderinin, yanıtın ya da mesajın metni. parentIdgövdede stringisteğe bağlı Bu yanıtın yanıtladığı yanıtın id değeri. Verilmezse doğrudan gönderiye. mediagövdede string[]isteğe bağlı Uygulamada yüklenen resimlerin ya da medya kitaplığındaki bir GIF veya videonun ID’leri (2.14’ten beri). publishAtgövdede integeristeğe bağlı Yanıtın ne zaman yayımlanacağı, 1970’ten beri milisaniye olarak. Verilmezse hemen gider.
Örnek istek curl -X POST \
-H "Authorization: Bearer tm_key_…" \
-H "Content-Type: application/json" \
-d '{"text":"Same here, the lavender is full of them."}' \
"https://api.tellmelo.com/v2/posts/5f0c2a9e-8d41-4b7a-9c3e-2e61d0f4a7b1/replies"Yanıt Bir Created ile yanıt verir.
Örnek {
"id": "5f0c2a9e-8d41-4b7a-9c3e-2e61d0f4a7b1",
"scheduledFor": null,
"deleteAt": null
}Olası durumlar: 200400401403404429
POST /v2/replies/{id}/editKendi yanıtının metnini değiştirmek.
Yetki write v2.12 sürümünden beri Parametreler Ad Tür Anlamı idyolda stringzorunlu Yanıtın kimliği. textgövdede stringzorunlu Gönderinin, yanıtın ya da mesajın metni.
Örnek istek curl -X POST \
-H "Authorization: Bearer tm_key_…" \
-H "Content-Type: application/json" \
-d '{"text":"Same here, the lavender and the clover are full of them."}' \
"https://api.tellmelo.com/v2/replies/9e4b1c7d-2a3f-4d5e-8b6c-0f1e2d3c4b5a/edit"Yanıt Bir Ok ile yanıt verir.
Örnek {
"ok": true
}Olası durumlar: 200400401403404429
DELETE /v2/replies/{id}Kendi yanıtını kaldırmak.
Yetki write v2.12 sürümünden beri Parametreler Ad Tür Anlamı idyolda stringzorunlu Yanıtın kimliği.
Örnek istek curl -X DELETE \
-H "Authorization: Bearer tm_key_…" \
"https://api.tellmelo.com/v2/replies/9e4b1c7d-2a3f-4d5e-8b6c-0f1e2d3c4b5a"Yanıt Bir Ok ile yanıt verir.
Örnek {
"ok": true
}Olası durumlar: 200400401403404429
POST /v2/replies/{id}/likeBir yanıta artı oy ver (yanıtlar oylandığından beri beğeni bir artı oydur) ya da artı oyu geri al; eksi oy kalır.
Yetki write v2.12 sürümünden beri eskidi 2.19’dan beri eskidi: POST /replies/{id}/vote kullan. Bu yol şimdilik kalıyor.
Parametreler Ad Tür Anlamı idyolda stringzorunlu Yanıtın kimliği. activegövdede booleanzorunlu true ilişkiyi kurar, false geri alır.
Örnek istek curl -X POST \
-H "Authorization: Bearer tm_key_…" \
-H "Content-Type: application/json" \
-d '{"active":true}' \
"https://api.tellmelo.com/v2/replies/9e4b1c7d-2a3f-4d5e-8b6c-0f1e2d3c4b5a/like"Yanıt Bir Ok ile yanıt verir.
Örnek {
"ok": true
}Olası durumlar: 200400401403404429
POST /v2/replies/{id}/voteBir yanıta artı ya da eksi oy ver veya oyunu geri al. Oyunla birlikte sonraki puanı döndürür.
Yetki write v2.19 sürümünden beri Parametreler Ad Tür Anlamı idyolda stringzorunlu Yanıtın kimliği. votegövdede stringzorunlu up artı oy, down eksi oy verir, none oyunu geri alır.updownnone
Örnek istek curl -X POST \
-H "Authorization: Bearer tm_key_…" \
-H "Content-Type: application/json" \
-d '{"vote":"up"}' \
"https://api.tellmelo.com/v2/replies/9e4b1c7d-2a3f-4d5e-8b6c-0f1e2d3c4b5a/vote"Yanıt Bir ReplyVote ile yanıt verir.
Örnek {
"vote": "up",
"score": 12
}Olası durumlar: 200400401403404429
POST /v2/replies/{id}/pickKendi gönderinin altındaki bir yanıtı en iyisi olarak öne çıkar veya öne çıkarmayı kaldır.
Yetki write v2.19 sürümünden beri Yalnızca kendi gönderilerinin altında ve yalnızca gönderiye doğrudan verilen yanıtlar. Yeni öne çıkarma eskisinin yerini alır.
Parametreler Ad Tür Anlamı idyolda stringzorunlu Yanıtın kimliği. activegövdede booleanzorunlu true yanıtı öne çıkarır, false öne çıkarmayı kaldırır.
Örnek istek curl -X POST \
-H "Authorization: Bearer tm_key_…" \
-H "Content-Type: application/json" \
-d '{"active":true}' \
"https://api.tellmelo.com/v2/replies/9e4b1c7d-2a3f-4d5e-8b6c-0f1e2d3c4b5a/pick"Yanıt Bir Ok ile yanıt verir.
Örnek {
"ok": true
}Olası durumlar: 200400401403404429
GET /v2/posts/{id}/replies/waitingBir gönderinin altında onay bekleyen yanıtlar: kendi gönderinde hepsi, değilse yalnızca seninkiler.
Yetki read ETag ile v2.19 sürümünden beri Yanıtların bekleyip beklemeyeceğini yazar yanıt ayarlarında belirler.
Parametreler Ad Tür Anlamı idyolda stringzorunlu Bir gönderinin id değeri.
Örnek istek curl \
-H "Authorization: Bearer tm_key_…" \
"https://api.tellmelo.com/v2/posts/5f0c2a9e-8d41-4b7a-9c3e-2e61d0f4a7b1/replies/waiting"Yanıt Bir sayfa Reply ile yanıt verir, `items` ve `next` olarak.
Örnek {
"items": [
{
"id": "9e4b1c7d-2a3f-4d5e-8b6c-0f1e2d3c4b5a",
"text": "Same here, the lavender is full of them.",
"kind": "post",
"author": {
"id": "d4c3b2a1-6e5f-4a7b-9c8d-1e2f3a4b5c6d",
"handle": "jon",
"name": "Jon",
"verified": false,
"accountKind": "person"
},
"community": null,
"media": [],
"poll": null,
"quotes": null,
"continues": null,
"counts": {
"replies": 0,
"likes": 3,
"reposts": 0
},
"pinned": false,
"giftDrop": null,
"createdAt": 1758624600000,
"postId": "5f0c2a9e-8d41-4b7a-9c3e-2e61d0f4a7b1",
"parentId": null
}
],
"next": null
}Olası durumlar: 200304400401404429
POST /v2/replies/{id}/decideKendi gönderinin altında bekleyen bir yanıtı onayla veya reddet. Reddedilen yanıt silinir.
Yetki write v2.19 sürümünden beri Parametreler Ad Tür Anlamı idyolda stringzorunlu Yanıtın kimliği. approvegövdede booleanzorunlu true yanıtı onaylar, false reddeder.
Örnek istek curl -X POST \
-H "Authorization: Bearer tm_key_…" \
-H "Content-Type: application/json" \
-d '{"approve":true}' \
"https://api.tellmelo.com/v2/replies/9e4b1c7d-2a3f-4d5e-8b6c-0f1e2d3c4b5a/decide"Yanıt Bir Ok ile yanıt verir.
Örnek {
"ok": true
}Olası durumlar: 200400401403404429
GET /v2/posts/{id}/replies/plannedBir gönderinin altında sonraya planladığın yanıtların.
Yetki read ETag ile v2.19 sürümünden beri Yanıt verirken publishAt ile planlanır. Aynı anda en fazla 20 planlanmış yanıt.
Parametreler Ad Tür Anlamı idyolda stringzorunlu Bir gönderinin id değeri.
Örnek istek curl \
-H "Authorization: Bearer tm_key_…" \
"https://api.tellmelo.com/v2/posts/5f0c2a9e-8d41-4b7a-9c3e-2e61d0f4a7b1/replies/planned"Yanıt Bir sayfa PlannedReply ile yanıt verir, `items` ve `next` olarak.
Örnek {
"items": [
{
"id": "3b2a1c0d-9e8f-4a7b-b6c5-d4e3f2a1b0c9",
"parentId": null,
"text": "Count me in for Saturday!",
"publishAt": 1758710400000,
"state": "waiting"
}
],
"next": null
}Olası durumlar: 200304400401404429
PUT /v2/me/planned-replies/{id}Planlanmış bir yanıtın metnini veya zamanını değiştir. Başarısız olan yeniden bekler.
Yetki write v2.19 sürümünden beri Parametreler Ad Tür Anlamı idyolda stringzorunlu Planlanan yanıtın id değeri. textgövdede stringisteğe bağlı Gönderinin, yanıtın ya da mesajın metni. publishAtgövdede integeristeğe bağlı Yanıtın ne zaman yayımlanacağı, 1970’ten beri milisaniye olarak. Verilmezse hemen gider.
Örnek istek curl -X PUT \
-H "Authorization: Bearer tm_key_…" \
-H "Content-Type: application/json" \
-d '{"text":"See you there!","publishAt":1758700000000}' \
"https://api.tellmelo.com/v2/me/planned-replies/3b2a1c0d-9e8f-4a7b-b6c5-d4e3f2a1b0c9"Yanıt Bir Ok ile yanıt verir.
Örnek {
"ok": true
}Olası durumlar: 200400401403404429
POST /v2/me/planned-replies/{id}/sendPlanlanmış bir yanıtı hemen gönder.
Yetki write v2.19 sürümünden beri Parametreler Ad Tür Anlamı idyolda stringzorunlu Planlanan yanıtın id değeri.
Örnek istek curl -X POST \
-H "Authorization: Bearer tm_key_…" \
"https://api.tellmelo.com/v2/me/planned-replies/3b2a1c0d-9e8f-4a7b-b6c5-d4e3f2a1b0c9/send"Yanıt Bir Ok ile yanıt verir.
Örnek {
"ok": true
}Olası durumlar: 200400401403404429
DELETE /v2/me/planned-replies/{id}Planlanmış bir yanıtı sil.
Yetki write v2.19 sürümünden beri Parametreler Ad Tür Anlamı idyolda stringzorunlu Planlanan yanıtın id değeri.
Örnek istek curl -X DELETE \
-H "Authorization: Bearer tm_key_…" \
"https://api.tellmelo.com/v2/me/planned-replies/3b2a1c0d-9e8f-4a7b-b6c5-d4e3f2a1b0c9"Yanıt Bir Ok ile yanıt verir.
Örnek {
"ok": true
}Olası durumlar: 200400401403404429
Anketler Anket, poll alanı dolu olan bir gönderidir. Oy vermenin kendi yolu vardır.
POST /v2/posts/{id}/voteBir ankete katılmak.
Yetki write v2.0 sürümünden beri Seçenek başına oylar sen oy verene ya da anket bitene kadar null olur. total her zaman vardır.
Parametreler Ad Tür Anlamı idyolda stringzorunlu Bir gönderinin id değeri. optiongövdede integerzorunlu Hangi seçenek, 0’dan sayılır. Çoklu seçimde her seçenek için bir çağrı. retractgövdede booleanisteğe bağlı true oyu geri alır.
Örnek istek curl -X POST \
-H "Authorization: Bearer tm_key_…" \
-H "Content-Type: application/json" \
-d '{"option":0}' \
"https://api.tellmelo.com/v2/posts/5f0c2a9e-8d41-4b7a-9c3e-2e61d0f4a7b1/vote"Yanıt Bir Ok ile yanıt verir.
Örnek {
"ok": true
}Olası durumlar: 200400401403404429
Profiller Kısa adlarıyla herkese açık profiller ve paylaştıkları.
GET /v2/profiles/{handle}Bir profil, kısa adıyla.
Yetki read ETag ile v2.0 sürümünden beri Parametreler Ad Tür Anlamı handleyolda stringzorunlu Bir profilin kısa adı; büyük ya da küçük harf fark etmez.
Örnek istek curl \
-H "Authorization: Bearer tm_key_…" \
"https://api.tellmelo.com/v2/profiles/mara"Yanıt Bir Profile ile yanıt verir.
Örnek {
"id": "a3e1f7c2-54b9-4d0e-8f16-7b2c9d4e1a05",
"handle": "mara",
"name": "Mara 🌻",
"verified": true,
"accountKind": "person",
"about": "Beekeeper, allotment, too many seeds. :tellmelo:",
"website": "https://mara-imkerei.example/",
"websiteVerified": true,
"followers": 148,
"createdAt": 1750848000000
}Olası durumlar: 200304400401404429
GET /v2/profiles/{handle}/postsBir profilin açık gönderileri, en yenisi önce.
Yetki read sayfalanabilir ETag ile v2.0 sürümünden beri Açık yollarda counts.likes ve counts.reposts her zaman 0, pinned ise false olur.
Gruplardaki gönderiler burada değil, /communities/{id}/posts altında.
Parametreler Ad Tür Anlamı handleyolda stringzorunlu Bir profilin kısa adı; büyük ya da küçük harf fark etmez. limitadreste integeristeğe bağlı Sayfa başına kayıt: varsayılan 20, en fazla 50. cursoradreste stringisteğe bağlı Önceki yanıttaki next. Yoksa baştan.
Örnek istek curl \
-H "Authorization: Bearer tm_key_…" \
"https://api.tellmelo.com/v2/profiles/mara/posts?limit=20"Yanıt Bir sayfa Post ile yanıt verir, `items` ve `next` olarak.
Örnek {
"items": [
{
"id": "5f0c2a9e-8d41-4b7a-9c3e-2e61d0f4a7b1",
"text": "The bees are back in the garden 🐝 #garden",
"kind": "poll",
"author": {
"id": "a3e1f7c2-54b9-4d0e-8f16-7b2c9d4e1a05",
"handle": "mara",
"name": "Mara 🌻",
"verified": true,
"accountKind": "person"
},
"community": {
"id": "c81d4e2a-0f3b-4a6c-9e57-1d2b3c4a5f60",
"name": "Urban Gardening"
},
"media": [
{
"url": "/api/media?id=b2d7e9f1-3c4a-4e8b-a1f0-6d5c4b3a2918",
"kind": "image",
"poster": null,
"ai": "without"
}
],
"poll": {
"options": [
{
"text": "Lavender",
"votes": 12
},
{
"text": "Sunflowers",
"votes": 7
},
{
"text": "Clover",
"votes": 3
}
],
"total": 22,
"multiple": false,
"endsAt": null,
"running": true,
"resultsVisible": true,
"myVotes": [
0
]
},
"quotes": null,
"continues": null,
"counts": {
"replies": 4,
"likes": 31,
"reposts": 2
},
"pinned": false,
"giftDrop": {
"item": "plan",
"quantity": 3,
"places": 10,
"left": 4,
"audience": "followers",
"newAccounts": false,
"status": "open",
"claimed": true
},
"createdAt": 1758624000000
}
],
"next": "MTc1ODYyNDAwMDAwMDo1ZjBjMmE5ZS04ZDQx"
}Olası durumlar: 200304400401404429
GET /v2/profiles/{handle}/eventsBir profilin yaklaşan etkinlikleri, en yakınlar önce.
Yetki read ETag ile v2.19 sürümünden beri Yalnızca profilin aboneliği etkinlikleri içerdiği sürece. Birbirini engelleyen hesaplar arasında hiçbir şey.
Parametreler Ad Tür Anlamı handleyolda stringzorunlu Bir profilin kısa adı; büyük ya da küçük harf fark etmez.
Örnek istek curl \
-H "Authorization: Bearer tm_key_…" \
"https://api.tellmelo.com/v2/profiles/mara/events"Yanıt Bir sayfa Event ile yanıt verir, `items` ve `next` olarak.
Örnek {
"items": [
{
"id": "2a3b4c5d-6e7f-4809-9a1b-2c3d4e5f6a7b",
"title": "Seed swap",
"startsAt": 1758883200000,
"endsAt": 1758890400000,
"place": "Community garden",
"description": "Bring seeds, take seeds.",
"signups": {
"count": 14,
"going": true
}
}
],
"next": null
}Olası durumlar: 200304400401404429
POST /v2/me/eventsEtkinlik oluştur. id değerini döndürür.
Yetki write v2.19 sürümünden beri Etkinlikli bir abonelik gerekir, yoksa 403. Kaç tane yaklaşan olabileceği aboneliğe bağlıdır.
Parametreler Ad Tür Anlamı titlegövdede stringzorunlu Başlık. startsAtgövdede integerzorunlu Başlangıç, 1970’ten beri milisaniye olarak. endsAtgövdede integeristeğe bağlı Bitiş, 1970’ten beri milisaniye olarak. İsteğe bağlı. placegövdede stringisteğe bağlı Nerede yapılacağı. descriptiongövdede stringisteğe bağlı Bir açıklama. signupsgövdede booleanisteğe bağlı Kayıt olunup olunamayacağı. Kayıtlı bir abonelik gerekir. capacitygövdede integeristeğe bağlı En fazla kaç kişinin kaydolabileceği. Belirtilmezse sınır yok.
Örnek istek curl -X POST \
-H "Authorization: Bearer tm_key_…" \
-H "Content-Type: application/json" \
-d '{"title":"Seed swap","startsAt":1758700000000,"place":"Community garden","signups":true,"capacity":30}' \
"https://api.tellmelo.com/v2/me/events"Yanıt Bir Made ile yanıt verir.
Örnek {
"id": "0d9c8b7a-6f5e-4d3c-2b1a-0f9e8d7c6b5a"
}Olası durumlar: 200400401403429
PUT /v2/me/events/{id}Etkinliklerinden birini değiştir. Tüm alanlar yeniden ayarlanır.
Yetki write v2.19 sürümünden beri Başlamış bir etkinlik başlangıcını korur.
Parametreler Ad Tür Anlamı idyolda stringzorunlu Etkinliğin id değeri. titlegövdede stringzorunlu Başlık. startsAtgövdede integerzorunlu Başlangıç, 1970’ten beri milisaniye olarak. endsAtgövdede integeristeğe bağlı Bitiş, 1970’ten beri milisaniye olarak. İsteğe bağlı. placegövdede stringisteğe bağlı Nerede yapılacağı. descriptiongövdede stringisteğe bağlı Bir açıklama. signupsgövdede booleanisteğe bağlı Kayıt olunup olunamayacağı. Kayıtlı bir abonelik gerekir. capacitygövdede integeristeğe bağlı En fazla kaç kişinin kaydolabileceği. Belirtilmezse sınır yok.
Örnek istek curl -X PUT \
-H "Authorization: Bearer tm_key_…" \
-H "Content-Type: application/json" \
-d '{"title":"Seed swap","startsAt":1758700000000,"place":"Community garden","signups":true,"capacity":30}' \
"https://api.tellmelo.com/v2/me/events/2a3b4c5d-6e7f-4809-9a1b-2c3d4e5f6a7b"Yanıt Bir Made ile yanıt verir.
Örnek {
"id": "0d9c8b7a-6f5e-4d3c-2b1a-0f9e8d7c6b5a"
}Olası durumlar: 200400401403404429
DELETE /v2/me/events/{id}Etkinliklerinden birini sil.
Yetki write v2.19 sürümünden beri Parametreler Ad Tür Anlamı idyolda stringzorunlu Etkinliğin id değeri.
Örnek istek curl -X DELETE \
-H "Authorization: Bearer tm_key_…" \
"https://api.tellmelo.com/v2/me/events/2a3b4c5d-6e7f-4809-9a1b-2c3d4e5f6a7b"Yanıt Bir Ok ile yanıt verir.
Örnek {
"ok": true
}Olası durumlar: 200400401403404429
GET /v2/me/events/{id}/signupsEtkinliklerinden birine kimlerin kaydolduğu.
Yetki read ETag ile v2.19 sürümünden beri Parametreler Ad Tür Anlamı idyolda stringzorunlu Etkinliğin id değeri.
Örnek istek curl \
-H "Authorization: Bearer tm_key_…" \
"https://api.tellmelo.com/v2/me/events/2a3b4c5d-6e7f-4809-9a1b-2c3d4e5f6a7b/signups"Yanıt Bir sayfa EventSignup ile yanıt verir, `items` ve `next` olarak.
Örnek {
"items": [
{
"id": "a3e1f7c2-54b9-4d0e-8f16-7b2c9d4e1a05",
"handle": "mara",
"name": "Mara 🌻",
"at": 1758624000000
}
],
"next": null
}Olası durumlar: 200304400401404429
POST /v2/events/{id}/signupBir etkinliğe kaydol veya kaydını sil.
Yetki write v2.19 sürümünden beri Yalnızca kayıtlı etkinliklerde, kendi etkinliklerinde değil. Doluysa 409.
Parametreler Ad Tür Anlamı idyolda stringzorunlu Etkinliğin id değeri. goinggövdede booleanzorunlu true seni kaydeder, false kaydını siler.
Örnek istek curl -X POST \
-H "Authorization: Bearer tm_key_…" \
-H "Content-Type: application/json" \
-d '{"going":true}' \
"https://api.tellmelo.com/v2/events/2a3b4c5d-6e7f-4809-9a1b-2c3d4e5f6a7b/signup"Yanıt Bir Ok ile yanıt verir.
Örnek {
"ok": true
}Olası durumlar: 200400401403404429
Gruplar Açık gruplar ve kendi grupların; gönderileri, üyeleri, rolleri ve davet bağlantıları.
GET /v2/communitiesBu sunucunun açık grupları; mine=true ile hesabının grupları.
Yetki read ETag ile v2.0 sürümünden beri Üye sayısına göre sıralıdır ve sayfalanmaz; next her zaman null.
Parametreler Ad Tür Anlamı limitadreste integeristeğe bağlı Sayfa başına kayıt: varsayılan 20, en fazla 50. mineadreste booleanisteğe bağlı Hesabının grupları için true; dahili ve gizli olanlar da, ada göre.
Örnek istek curl \
-H "Authorization: Bearer tm_key_…" \
"https://api.tellmelo.com/v2/communities?limit=20"Yanıt Bir sayfa Community ile yanıt verir, `items` ve `next` olarak.
Örnek {
"items": [
{
"id": "c81d4e2a-0f3b-4a6c-9e57-1d2b3c4a5f60",
"name": "Urban Gardening",
"handle": "urbangardening",
"description": "Balconies, allotments, rooftops: whatever grows.",
"tags": [
"garden",
"bees"
],
"members": 312,
"joinPolicy": "open",
"visibility": "open",
"feedChannel": true,
"sparks": 24,
"perks": [
"tint",
"welcome"
],
"membership": {
"leader": null,
"roles": [
"4e5f6a7b-8c9d-4e0f-a1b2-c3d4e5f6a7b8"
],
"permissions": [
"attach",
"invite",
"send",
"view"
],
"mutedUntil": null
}
}
],
"next": null
}Olası durumlar: 200304401429
GET /v2/communities/{id}Tek bir grup, id değeriyle.
Yetki read ETag ile v2.0 sürümünden beri Dahili ve gizli gruplar yalnızca hesabın üyeyse.
Parametreler Ad Tür Anlamı idyolda stringzorunlu Bir grubun id değeri.
Örnek istek curl \
-H "Authorization: Bearer tm_key_…" \
"https://api.tellmelo.com/v2/communities/c81d4e2a-0f3b-4a6c-9e57-1d2b3c4a5f60"Yanıt Bir Community ile yanıt verir.
Örnek {
"id": "c81d4e2a-0f3b-4a6c-9e57-1d2b3c4a5f60",
"name": "Urban Gardening",
"handle": "urbangardening",
"description": "Balconies, allotments, rooftops: whatever grows.",
"tags": [
"garden",
"bees"
],
"members": 312,
"joinPolicy": "open",
"visibility": "open",
"feedChannel": true,
"sparks": 24,
"perks": [
"tint",
"welcome"
],
"membership": {
"leader": null,
"roles": [
"4e5f6a7b-8c9d-4e0f-a1b2-c3d4e5f6a7b8"
],
"permissions": [
"attach",
"invite",
"send",
"view"
],
"mutedUntil": null
}
}Olası durumlar: 200304400401404429
GET /v2/communities/{id}/postsBir grubun akış kanalındaki gönderiler, en yenisi önce.
Yetki read sayfalanabilir ETag ile v2.0 sürümünden beri Açık yollarda counts.likes ve counts.reposts her zaman 0, pinned ise false olur.
Akış kanalı kapalıysa yol 409 ve feed_off ile yanıt verir.
Parametreler Ad Tür Anlamı idyolda stringzorunlu Bir grubun id değeri. limitadreste integeristeğe bağlı Sayfa başına kayıt: varsayılan 20, en fazla 50. cursoradreste stringisteğe bağlı Önceki yanıttaki next. Yoksa baştan.
Örnek istek curl \
-H "Authorization: Bearer tm_key_…" \
"https://api.tellmelo.com/v2/communities/c81d4e2a-0f3b-4a6c-9e57-1d2b3c4a5f60/posts?limit=20"Yanıt Bir sayfa Post ile yanıt verir, `items` ve `next` olarak.
Örnek {
"items": [
{
"id": "5f0c2a9e-8d41-4b7a-9c3e-2e61d0f4a7b1",
"text": "The bees are back in the garden 🐝 #garden",
"kind": "poll",
"author": {
"id": "a3e1f7c2-54b9-4d0e-8f16-7b2c9d4e1a05",
"handle": "mara",
"name": "Mara 🌻",
"verified": true,
"accountKind": "person"
},
"community": {
"id": "c81d4e2a-0f3b-4a6c-9e57-1d2b3c4a5f60",
"name": "Urban Gardening"
},
"media": [
{
"url": "/api/media?id=b2d7e9f1-3c4a-4e8b-a1f0-6d5c4b3a2918",
"kind": "image",
"poster": null,
"ai": "without"
}
],
"poll": {
"options": [
{
"text": "Lavender",
"votes": 12
},
{
"text": "Sunflowers",
"votes": 7
},
{
"text": "Clover",
"votes": 3
}
],
"total": 22,
"multiple": false,
"endsAt": null,
"running": true,
"resultsVisible": true,
"myVotes": [
0
]
},
"quotes": null,
"continues": null,
"counts": {
"replies": 4,
"likes": 31,
"reposts": 2
},
"pinned": false,
"giftDrop": {
"item": "plan",
"quantity": 3,
"places": 10,
"left": 4,
"audience": "followers",
"newAccounts": false,
"status": "open",
"claimed": true
},
"createdAt": 1758624000000
}
],
"next": "MTc1ODYyNDAwMDAwMDo1ZjBjMmE5ZS04ZDQx"
}Olası durumlar: 200304400401404429
GET /v2/communities/{id}/membersBir grubun üyeleri ve rolleri.
Yetki read ETag ile v2.15 sürümünden beri Önce yönetim, sonra en üst role göre; en fazla 300.
Parametreler Ad Tür Anlamı idyolda stringzorunlu Bir grubun id değeri.
Örnek istek curl \
-H "Authorization: Bearer tm_key_…" \
"https://api.tellmelo.com/v2/communities/c81d4e2a-0f3b-4a6c-9e57-1d2b3c4a5f60/members"Yanıt Bir sayfa GroupMember ile yanıt verir, `items` ve `next` olarak.
Örnek {
"items": [
{
"id": "d4c3b2a1-6e5f-4a7b-9c8d-1e2f3a4b5c6d",
"handle": "jon",
"name": "Jon",
"bot": false,
"leader": null,
"roles": [
"4e5f6a7b-8c9d-4e0f-a1b2-c3d4e5f6a7b8"
],
"mutedUntil": null
}
],
"next": null
}Olası durumlar: 200304400401404429
GET /v2/communities/{id}/rolesBir grubun rolleri, en üstteki önce, @everyone en sonda.
Yetki read ETag ile v2.15 sürümünden beri Parametreler Ad Tür Anlamı idyolda stringzorunlu Bir grubun id değeri.
Örnek istek curl \
-H "Authorization: Bearer tm_key_…" \
"https://api.tellmelo.com/v2/communities/c81d4e2a-0f3b-4a6c-9e57-1d2b3c4a5f60/roles"Yanıt Bir sayfa Role ile yanıt verir, `items` ve `next` olarak.
Örnek {
"items": [
{
"id": "4e5f6a7b-8c9d-4e0f-a1b2-c3d4e5f6a7b8",
"name": "Gardeners",
"everyone": false,
"color": "green",
"permissions": [
"attach",
"invite",
"send",
"view"
],
"members": 24,
"editable": true,
"selfable": false
}
],
"next": null
}Olası durumlar: 200304400401404429
GET /v2/communities/{id}/bellBir grubun sana hangi bildirimleri gönderdiği.
Yetki read ETag ile v2.15 sürümünden beri Parametreler Ad Tür Anlamı idyolda stringzorunlu Bir grubun id değeri.
Örnek istek curl \
-H "Authorization: Bearer tm_key_…" \
"https://api.tellmelo.com/v2/communities/c81d4e2a-0f3b-4a6c-9e57-1d2b3c4a5f60/bell"Yanıt Bir Bell ile yanıt verir.
Örnek {
"level": "important"
}Olası durumlar: 200304400401404429
GET /v2/invites/{code}Bir davet bağlantısının arkasındaki grup, katılmadan önce.
Yetki read ETag ile v2.15 sürümünden beri Parametreler Ad Tür Anlamı codeyolda stringzorunlu Bir davet bağlantısının kodu, adresinin sonu.
Örnek istek curl \
-H "Authorization: Bearer tm_key_…" \
"https://api.tellmelo.com/v2/invites/k7Qm2xPa"Yanıt Bir InvitePreview ile yanıt verir.
Örnek {
"community": {
"id": "c81d4e2a-0f3b-4a6c-9e57-1d2b3c4a5f60",
"name": "Urban Gardening",
"members": 312,
"rules": [
"Be kind.",
"No advertising."
]
},
"member": false
}Olası durumlar: 200304400401404429
PUT /v2/roles/{id}/selfKendi kendine seçilebilir bir rolü al ya da bırak.
Yetki write v2.20 sürümünden beri Yalnızca yönetimin kendi kendine seçilebilir olarak sunduğu roller (selfable) ve yalnızca kendi hesabın için.
Parametreler Ad Tür Anlamı idyolda stringzorunlu Bir rolün id’si. activegövdede booleanisteğe bağlı false rolü alır; aksi halde rol verilir.
Örnek istek curl -X PUT \
-H "Authorization: Bearer tm_key_…" \
-H "Content-Type: application/json" \
-d '{"active":true}' \
"https://api.tellmelo.com/v2/roles/4e5f6a7b-8c9d-4e0f-a1b2-c3d4e5f6a7b8/self"Yanıt Bir Ok ile yanıt verir.
Örnek {
"ok": true
}Olası durumlar: 200400401403404429
GET /v2/communities/{id}/emojisBir grubun kendi emojileri.
Yetki read ETag ile v2.20 sürümünden beri Parametreler Ad Tür Anlamı idyolda stringzorunlu Bir grubun id değeri.
Örnek istek curl \
-H "Authorization: Bearer tm_key_…" \
"https://api.tellmelo.com/v2/communities/c81d4e2a-0f3b-4a6c-9e57-1d2b3c4a5f60/emojis"Yanıt Bir sayfa GroupEmoji ile yanıt verir, `items` ve `next` olarak.
Örnek {
"items": [
{
"name": "seedling",
"url": "/api/media?id=8c7b6a59-4837-4261-9f5e-d4c3b2a1f0e9",
"animated": false
}
],
"next": null
}Olası durumlar: 200304400401404429
PUT /v2/communities/{id}/bellBir grubun sana hangi bildirimleri göndereceğini ayarlamak.
Yetki write v2.15 sürümünden beri Parametreler Ad Tür Anlamı idyolda stringzorunlu Bir grubun id değeri. levelgövdede stringzorunlu Hangi bildirimlerin geleceği.allimportantoff
Örnek istek curl -X PUT \
-H "Authorization: Bearer tm_key_…" \
-H "Content-Type: application/json" \
-d '{"level":"important"}' \
"https://api.tellmelo.com/v2/communities/c81d4e2a-0f3b-4a6c-9e57-1d2b3c4a5f60/bell"Yanıt Bir Bell ile yanıt verir.
Örnek {
"level": "important"
}Olası durumlar: 200400401403404429
POST /v2/invites/{code}/joinBir davet bağlantısıyla gruba katılmak.
Yetki write v2.15 sürümünden beri Parametreler Ad Tür Anlamı codeyolda stringzorunlu Bir davet bağlantısının kodu, adresinin sonu. rulesgövdede booleanisteğe bağlı Grubun kurallarını kabul ediyorsan true; kuralları varsa gerekli.
Örnek istek curl -X POST \
-H "Authorization: Bearer tm_key_…" \
"https://api.tellmelo.com/v2/invites/k7Qm2xPa/join"Yanıt Bir Joined ile yanıt verir.
Örnek {
"community": "c81d4e2a-0f3b-4a6c-9e57-1d2b3c4a5f60"
}Olası durumlar: 200400401403404429
GET /v2/communities/{id}/botsBir grubun botları ve rollerinin izin verdikleri.
Yetki read ETag ile v2.19 sürümünden beri Parametreler Ad Tür Anlamı idyolda stringzorunlu Bir grubun id değeri.
Örnek istek curl \
-H "Authorization: Bearer tm_key_…" \
"https://api.tellmelo.com/v2/communities/c81d4e2a-0f3b-4a6c-9e57-1d2b3c4a5f60/bots"Yanıt Bir sayfa GroupBot ile yanıt verir, `items` ve `next` olarak.
Örnek {
"items": [
{
"id": "a3e1f7c2-54b9-4d0e-8f16-7b2c9d4e1a05",
"handle": "gardenbot",
"name": "Garden bot",
"description": "Reminds the group of watering days.",
"permissions": [
"send",
"view"
]
}
],
"next": null
}Olası durumlar: 200304400401404429
Kanallar Gruplarının kanalları ve sohbetleri: okumak, yazmak, okundu işaretlemek.
GET /v2/communities/{id}/channelsBir grubun gördüğün kanalları, sıralarıyla.
Yetki read ETag ile v2.15 sürümünden beri Akış kanalı (kind: feed) burada yalnızca açıkken yer alır; gönderileri /communities/{id}/posts üzerinden gelir.
Parametreler Ad Tür Anlamı idyolda stringzorunlu Bir grubun id değeri.
Örnek istek curl \
-H "Authorization: Bearer tm_key_…" \
"https://api.tellmelo.com/v2/communities/c81d4e2a-0f3b-4a6c-9e57-1d2b3c4a5f60/channels"Yanıt Bir sayfa Channel ile yanıt verir, `items` ve `next` olarak.
Örnek {
"items": [
{
"id": "0d9c8b7a-6f5e-4d3c-2b1a-0f9e8d7c6b5a",
"kind": "chat",
"name": "harvest",
"topic": "What came in this week",
"category": {
"id": "9a8b7c6d-5e4f-4a3b-8c2d-1e0f9a8b7c6d",
"name": "Garden",
"symbol": {
"emoji": null,
"icon": null,
"image": null,
"color": null,
"shape": null
}
},
"unread": 3,
"permissions": [
"view",
"send"
],
"symbol": {
"emoji": "🌻",
"icon": null,
"image": null,
"color": "amber",
"shape": "circle"
}
}
],
"next": null
}Olası durumlar: 200304400401404429
GET /v2/channels/{id}/messagesBir sohbet kanalının mesajları, en yenisi önce.
Yetki read sayfalanabilir ETag ile v2.15 sürümünden beri Sayfa başına en fazla 50 mesaj. Engellediğin veya seni engelleyen hesapların mesajları yer almaz.
Parametreler Ad Tür Anlamı idyolda stringzorunlu Bir kanalın id’si. cursoradreste stringisteğe bağlı Önceki yanıttaki next. Yoksa baştan. threadadreste stringisteğe bağlı Konusu okunan mesaj: sohbet yerine kendisi ve yanıtları.
Örnek istek curl \
-H "Authorization: Bearer tm_key_…" \
"https://api.tellmelo.com/v2/channels/0d9c8b7a-6f5e-4d3c-2b1a-0f9e8d7c6b5a/messages"Yanıt Bir sayfa ChannelMessage ile yanıt verir, `items` ve `next` olarak.
Örnek {
"items": [
{
"id": "61a2b3c4-d5e6-4f70-8192-a3b4c5d6e7f8",
"text": "@jon the first tomatoes are ripe 🍅",
"author": {
"id": "a3e1f7c2-54b9-4d0e-8f16-7b2c9d4e1a05",
"handle": "mara",
"name": "Mara 🌻",
"bot": false
},
"media": [
{
"url": "/api/media?id=b2d7e9f1-3c4a-4e8b-a1f0-6d5c4b3a2918",
"kind": "image",
"poster": null,
"ai": "without"
}
],
"replyTo": "72b3c4d5-e6f7-4081-92a3-b4c5d6e7f809",
"roleColor": "green",
"threadOf": null,
"threadCount": 3,
"card": null,
"buttons": [],
"createdAt": 1758631200000
}
],
"next": "MTc1ODYyNDAwMDAwMDo1ZjBjMmE5ZS04ZDQx"
}Olası durumlar: 200304400401404429
POST /v2/channels/{id}/messagesBir sohbet kanalına mesaj yazmak.
Yetki write v2.15 sürümünden beri @ad bir üyeyi bilgilendirir, @everyone iznin varsa herkesi, saatte en fazla altı kez.
Parametreler Ad Tür Anlamı idyolda stringzorunlu Bir kanalın id’si. textgövdede stringisteğe bağlı Gönderinin, yanıtın ya da mesajın metni. replyTogövdede stringisteğe bağlı Aynı kanalda yanıtladığın mesajın id’si. mediagövdede string[]isteğe bağlı Uygulamada yüklenen resimlerin ya da medya kitaplığındaki bir GIF veya videonun ID’leri (2.14’ten beri). threadgövdede stringisteğe bağlı Konusunda yanıt verilen sohbet mesajı; o olmadan mesaj sohbete gider. cardgövdede objectisteğe bağlı Bir kart { title, text, color, fields: [{ name, value }] }, en fazla 10 alan. buttonsgövdede object[]isteğe bağlı En fazla 5 düğme, her biri { id, label, style }, style primary, secondary ya da danger. Basış interaction olayı olarak gelir.
Örnek istek curl -X POST \
-H "Authorization: Bearer tm_key_…" \
-H "Content-Type: application/json" \
-d '{"text":"Who has seeds to swap?"}' \
"https://api.tellmelo.com/v2/channels/0d9c8b7a-6f5e-4d3c-2b1a-0f9e8d7c6b5a/messages"Yanıt Bir Made ile yanıt verir.
Örnek {
"id": "0d9c8b7a-6f5e-4d3c-2b1a-0f9e8d7c6b5a"
}Olası durumlar: 200400401403404429
POST /v2/channels/{id}/readBir sohbet kanalını belli bir ana kadar okundu işaretlemek.
Yetki write v2.15 sürümünden beri Parametreler Ad Tür Anlamı idyolda stringzorunlu Bir kanalın id’si. atgövdede integerzorunlu Nereye kadar okunduğu, milisaniye olarak; genellikle en yeni mesajın createdAt değeri.
Örnek istek curl -X POST \
-H "Authorization: Bearer tm_key_…" \
"https://api.tellmelo.com/v2/channels/0d9c8b7a-6f5e-4d3c-2b1a-0f9e8d7c6b5a/read"Yanıt Bir Ok ile yanıt verir.
Örnek {
"ok": true
}Olası durumlar: 200400401403404429
DELETE /v2/channel-messages/{id}Bir sohbet kanalındaki kendi mesajını silmek.
Yetki write v2.15 sürümünden beri Yalnızca kendi mesajların; başkalarının mesajlarını yönetim groups izniyle kaldırır.
Parametreler Ad Tür Anlamı idyolda stringzorunlu Bir sohbet kanalındaki mesajın id’si.
Örnek istek curl -X DELETE \
-H "Authorization: Bearer tm_key_…" \
"https://api.tellmelo.com/v2/channel-messages/61a2b3c4-d5e6-4f70-8192-a3b4c5d6e7f8"Yanıt Bir Ok ile yanıt verir.
Örnek {
"ok": true
}Olası durumlar: 200400401403404429
GET /v2/communities/{id}/voiceBir grubun sesli kanallarında şu an kimlerin olduğu, kanal kanal.
Yetki read ETag ile v2.19 sürümünden beri Yalnızca görebildiğin kanallar. Medya sunucusu yoksa liste boştur.
Parametreler Ad Tür Anlamı idyolda stringzorunlu Bir grubun id değeri.
Örnek istek curl \
-H "Authorization: Bearer tm_key_…" \
"https://api.tellmelo.com/v2/communities/c81d4e2a-0f3b-4a6c-9e57-1d2b3c4a5f60/voice"Yanıt Bir sayfa VoiceRoom ile yanıt verir, `items` ve `next` olarak.
Örnek {
"items": [
{
"channel": "0d9c8b7a-6f5e-4d3c-2b1a-0f9e8d7c6b5a",
"people": [
{
"id": "a3e1f7c2-54b9-4d0e-8f16-7b2c9d4e1a05",
"handle": "mara",
"name": "Mara 🌻",
"muted": false,
"deaf": false,
"camera": false,
"screen": true
}
]
}
],
"next": null
}Olası durumlar: 200304400401404429
Grupları yönetmek Bir grubun ayarlarının uygulamada yapabildikleri, groups izniyle. Hesabının neyi yapabileceğine grup uygulamadaki gibi karar verir: yönetim, roller ve sıraları.
POST /v2/communities/{id}/emojisGruba bir emoji ekle.
Yetki groups v2.20 sürümünden beri Yalnızca grubun kanallarını yönetebilenler. Resim kendi emojin gibi yüklenir (POST /me/emojis/pictures); bir ad tüm emojiler arasında yalnızca bir kez verilir.
Parametreler Ad Tür Anlamı idyolda stringzorunlu Bir grubun id değeri. namegövdede stringzorunlu Emojiyi yazdığın ad, :ad: şeklinde. picturegövdede stringzorunlu POST /me/emojis/pictures yanıtındaki id.
Örnek istek curl -X POST \
-H "Authorization: Bearer tm_key_…" \
-H "Content-Type: application/json" \
-d '{"name":"seedling","picture":"8c7b6a59-4837-4261-9f5e-d4c3b2a1f0e9"}' \
"https://api.tellmelo.com/v2/communities/c81d4e2a-0f3b-4a6c-9e57-1d2b3c4a5f60/emojis"Yanıt Bir sayfa GroupEmoji ile yanıt verir, `items` ve `next` olarak.
Örnek {
"items": [
{
"name": "seedling",
"url": "/api/media?id=8c7b6a59-4837-4261-9f5e-d4c3b2a1f0e9",
"animated": false
}
],
"next": null
}Olası durumlar: 200400401403404429
DELETE /v2/communities/{id}/emojis/{name}Gruptan bir emojiyi kaldır.
Yetki groups v2.20 sürümünden beri Parametreler Ad Tür Anlamı idyolda stringzorunlu Bir grubun id değeri. nameyolda stringzorunlu Emojinin adı, iki nokta olmadan.
Örnek istek curl -X DELETE \
-H "Authorization: Bearer tm_key_…" \
"https://api.tellmelo.com/v2/communities/c81d4e2a-0f3b-4a6c-9e57-1d2b3c4a5f60/emojis/seedling"Yanıt Bir sayfa GroupEmoji ile yanıt verir, `items` ve `next` olarak.
Örnek {
"items": [
{
"name": "seedling",
"url": "/api/media?id=8c7b6a59-4837-4261-9f5e-d4c3b2a1f0e9",
"animated": false
}
],
"next": null
}Olası durumlar: 200400401403404429
POST /v2/communities/{id}/rolesBir rol oluşturmak.
Yetki groups v2.15 sürümünden beri Yalnızca en üst rolünün altındaki roller ve yalnızca kendinde olan izinler; yönetim hepsinin üstündedir.
Parametreler Ad Tür Anlamı idyolda stringzorunlu Bir grubun id değeri. namegövdede stringisteğe bağlı Rolün adı; @everyone kendi adını korur. colorgövdede stringisteğe bağlı Renk; hiçbiri için boş.indigovioletroseambergreenteal permissionsgövdede string[]isteğe bağlı Yetkiler: view, send, attach, post_feed, invite, mention_everyone, moderate, timeout_members, kick_members, ban_members, manage_channels, manage_roles. selfablegövdede booleanisteğe bağlı true: üyeler rolü kendileri alır. Yalnızca katılmaktan fazlasına izin vermeyen roller için (view, send, attach, voice_connect, voice_speak, voice_video).
Örnek istek curl -X POST \
-H "Authorization: Bearer tm_key_…" \
-H "Content-Type: application/json" \
-d '{"name":"Gardeners","permissions":["view","send","invite"],"selfable":false}' \
"https://api.tellmelo.com/v2/communities/c81d4e2a-0f3b-4a6c-9e57-1d2b3c4a5f60/roles"Yanıt Bir Made ile yanıt verir.
Örnek {
"id": "0d9c8b7a-6f5e-4d3c-2b1a-0f9e8d7c6b5a"
}Olası durumlar: 200400401403404429
PUT /v2/roles/{id}Bir rolün adını, rengini ve izinlerini değiştirmek.
Yetki groups v2.15 sürümünden beri Adı, rengi ve izinleri değiştirir; bıraktığın alan boş olur.
Yalnızca en üst rolünün altındaki roller ve yalnızca kendinde olan izinler; yönetim hepsinin üstündedir.
Parametreler Ad Tür Anlamı idyolda stringzorunlu Bir rolün id’si. namegövdede stringisteğe bağlı Rolün adı; @everyone kendi adını korur. colorgövdede stringisteğe bağlı Renk; hiçbiri için boş.indigovioletroseambergreenteal permissionsgövdede string[]isteğe bağlı Yetkiler: view, send, attach, post_feed, invite, mention_everyone, moderate, timeout_members, kick_members, ban_members, manage_channels, manage_roles. selfablegövdede booleanisteğe bağlı true: üyeler rolü kendileri alır. Yalnızca katılmaktan fazlasına izin vermeyen roller için (view, send, attach, voice_connect, voice_speak, voice_video).
Örnek istek curl -X PUT \
-H "Authorization: Bearer tm_key_…" \
-H "Content-Type: application/json" \
-d '{"name":"Gardeners","permissions":["view","send","invite"],"selfable":false}' \
"https://api.tellmelo.com/v2/roles/4e5f6a7b-8c9d-4e0f-a1b2-c3d4e5f6a7b8"Yanıt Bir Made ile yanıt verir.
Örnek {
"id": "0d9c8b7a-6f5e-4d3c-2b1a-0f9e8d7c6b5a"
}Olası durumlar: 200400401403404429
DELETE /v2/roles/{id}Bir rolü silmek.
Yetki groups v2.15 sürümünden beri Parametreler Ad Tür Anlamı idyolda stringzorunlu Bir rolün id’si.
Örnek istek curl -X DELETE \
-H "Authorization: Bearer tm_key_…" \
"https://api.tellmelo.com/v2/roles/4e5f6a7b-8c9d-4e0f-a1b2-c3d4e5f6a7b8"Yanıt Bir Ok ile yanıt verir.
Örnek {
"ok": true
}Olası durumlar: 200400401403404429
PUT /v2/communities/{id}/roles/orderRollerin sırasını belirlemek.
Yetki groups v2.15 sürümünden beri Parametreler Ad Tür Anlamı idyolda stringzorunlu Bir grubun id değeri. rolesgövdede string[]zorunlu Kendi en yüksek rolünün altındaki tüm rollerin id değerleri, en yüksek olan önce; yönetim için @everyone dışındaki tümü.
Örnek istek curl -X PUT \
-H "Authorization: Bearer tm_key_…" \
"https://api.tellmelo.com/v2/communities/c81d4e2a-0f3b-4a6c-9e57-1d2b3c4a5f60/roles/order"Yanıt Bir Ok ile yanıt verir.
Örnek {
"ok": true
}Olası durumlar: 200400401403404429
PUT /v2/roles/{id}/members/{member}Bir üyeye rol vermek veya almak.
Yetki groups v2.15 sürümünden beri Parametreler Ad Tür Anlamı idyolda stringzorunlu Bir rolün id’si. memberyolda stringzorunlu Bir üyenin hesabının id’si. activegövdede booleanisteğe bağlı false rolü alır; aksi halde rol verilir.
Örnek istek curl -X PUT \
-H "Authorization: Bearer tm_key_…" \
-H "Content-Type: application/json" \
-d '{"active":true}' \
"https://api.tellmelo.com/v2/roles/4e5f6a7b-8c9d-4e0f-a1b2-c3d4e5f6a7b8/members/d4c3b2a1-6e5f-4a7b-9c8d-1e2f3a4b5c6d"Yanıt Bir Ok ile yanıt verir.
Örnek {
"ok": true
}Olası durumlar: 200400401403404429
POST /v2/communities/{id}/channelsBir sohbet kanalı oluşturmak.
Yetki groups v2.15 sürümünden beri Parametreler Ad Tür Anlamı idyolda stringzorunlu Bir grubun id değeri. namegövdede stringisteğe bağlı Ad, # olmadan; uygulamanın her dilde verdiği ad için boş. topicgövdede stringisteğe bağlı Kanalın üstünde görünen konu. categorygövdede stringisteğe bağlı Kanalın gireceği kategorinin id’si; hiçbiri için boş. emojigövdede stringisteğe bağlı Simge olarak bir emoji. icongövdede stringisteğe bağlı Uygulamanın setinden bir simge, adıyla.homehashmegaphonevolumemessagehelpinfobellcalendarbookbookmarkpinshieldstarheartsparklesflamezaptrophygiftrocketlightbulbcodewrenchbriefcasegraduationpalettecamerafilmmusicgamepaddumbbellleafflowerpawsunmooncloudglobemapcoffeepizzasmile imagegövdede stringisteğe bağlı /media/emoji ile yüklediğin bir resmin kimliği.colorgövdede stringisteğe bağlı Kutucuğun rengi.brandindigovioletroseambergreentealred shapegövdede stringisteğe bağlı Kutucuğun şekli; yoksa daire.circlesquaretrianglediamondhexagonoctagonshieldstar
Örnek istek curl -X POST \
-H "Authorization: Bearer tm_key_…" \
-H "Content-Type: application/json" \
-d '{"name":"harvest","emoji":"🌻","color":"amber"}' \
"https://api.tellmelo.com/v2/communities/c81d4e2a-0f3b-4a6c-9e57-1d2b3c4a5f60/channels"Yanıt Bir Made ile yanıt verir.
Örnek {
"id": "0d9c8b7a-6f5e-4d3c-2b1a-0f9e8d7c6b5a"
}Olası durumlar: 200400401403404429
PUT /v2/channels/{id}Bir kanalın adını, konusunu ve kategorisini değiştirmek.
Yetki groups v2.15 sürümünden beri Adı, konuyu ve kategoriyi değiştirir; bıraktığın alan boş olur.
Parametreler Ad Tür Anlamı idyolda stringzorunlu Bir kanalın id’si. namegövdede stringisteğe bağlı Ad, # olmadan; uygulamanın her dilde verdiği ad için boş. topicgövdede stringisteğe bağlı Kanalın üstünde görünen konu. categorygövdede stringisteğe bağlı Kanalın gireceği kategorinin id’si; hiçbiri için boş. emojigövdede stringisteğe bağlı Simge olarak bir emoji. icongövdede stringisteğe bağlı Uygulamanın setinden bir simge, adıyla.homehashmegaphonevolumemessagehelpinfobellcalendarbookbookmarkpinshieldstarheartsparklesflamezaptrophygiftrocketlightbulbcodewrenchbriefcasegraduationpalettecamerafilmmusicgamepaddumbbellleafflowerpawsunmooncloudglobemapcoffeepizzasmile imagegövdede stringisteğe bağlı /media/emoji ile yüklediğin bir resmin kimliği.colorgövdede stringisteğe bağlı Kutucuğun rengi.brandindigovioletroseambergreentealred shapegövdede stringisteğe bağlı Kutucuğun şekli; yoksa daire.circlesquaretrianglediamondhexagonoctagonshieldstar
Örnek istek curl -X PUT \
-H "Authorization: Bearer tm_key_…" \
-H "Content-Type: application/json" \
-d '{"name":"harvest","emoji":"🌻","color":"amber"}' \
"https://api.tellmelo.com/v2/channels/0d9c8b7a-6f5e-4d3c-2b1a-0f9e8d7c6b5a"Yanıt Bir Made ile yanıt verir.
Örnek {
"id": "0d9c8b7a-6f5e-4d3c-2b1a-0f9e8d7c6b5a"
}Olası durumlar: 200400401403404429
DELETE /v2/channels/{id}Bir sohbet kanalını mesajlarıyla silmek.
Yetki groups v2.15 sürümünden beri Akış kanalı silinemez, yalnızca kapatılabilir.
Parametreler Ad Tür Anlamı idyolda stringzorunlu Bir kanalın id’si.
Örnek istek curl -X DELETE \
-H "Authorization: Bearer tm_key_…" \
"https://api.tellmelo.com/v2/channels/0d9c8b7a-6f5e-4d3c-2b1a-0f9e8d7c6b5a"Yanıt Bir Ok ile yanıt verir.
Örnek {
"ok": true
}Olası durumlar: 200400401403404429
PUT /v2/communities/{id}/channels/orderKategorilerin ve sohbet kanallarının sırasını belirlemek.
Yetki groups v2.15 sürümünden beri Parametreler Ad Tür Anlamı idyolda stringzorunlu Bir grubun id değeri. categoriesgövdede string[]zorunlu Grubun tüm kategorilerinin id’leri, yeni sırayla. channelsgövdede string[]zorunlu Grubun tüm sohbet kanallarının id’leri, yeni sırayla.
Örnek istek curl -X PUT \
-H "Authorization: Bearer tm_key_…" \
"https://api.tellmelo.com/v2/communities/c81d4e2a-0f3b-4a6c-9e57-1d2b3c4a5f60/channels/order"Yanıt Bir Ok ile yanıt verir.
Örnek {
"ok": true
}Olası durumlar: 200400401403404429
PUT /v2/communities/{id}/channels/shapeGruptaki tüm kanal simgelerinin şeklini belirle.
Yetki groups v2.20 sürümünden beri Yalnızca grubun yönetimi.
Parametreler Ad Tür Anlamı idyolda stringzorunlu Bir grubun id değeri. shapegövdede stringisteğe bağlı Gruptaki tüm simgelerin şekli; verilmezse her kanalın kendi şekli olur.circlesquaretrianglediamondhexagonoctagonshieldstar
Örnek istek curl -X PUT \
-H "Authorization: Bearer tm_key_…" \
"https://api.tellmelo.com/v2/communities/c81d4e2a-0f3b-4a6c-9e57-1d2b3c4a5f60/channels/shape"Yanıt Bir Ok ile yanıt verir.
Örnek {
"ok": true
}Olası durumlar: 200400401403404429
GET /v2/channels/{id}/overridesRollerin bir kanalda gruptan farklı olarak yapabildikleri.
Yetki groups ETag ile v2.15 sürümünden beri Parametreler Ad Tür Anlamı idyolda stringzorunlu Bir kanalın id’si.
Örnek istek curl \
-H "Authorization: Bearer tm_key_…" \
"https://api.tellmelo.com/v2/channels/0d9c8b7a-6f5e-4d3c-2b1a-0f9e8d7c6b5a/overrides"Yanıt Bir sayfa ChannelOverride ile yanıt verir, `items` ve `next` olarak.
Örnek {
"items": [
{
"role": "4e5f6a7b-8c9d-4e0f-a1b2-c3d4e5f6a7b8",
"allow": [
"send"
],
"deny": []
}
],
"next": null
}Olası durumlar: 200304400401403404429
PUT /v2/channels/{id}/overrides/{role}Bir rolün bir kanalda farklı olarak neyi yapabileceğini belirlemek.
Yetki groups v2.15 sürümünden beri Senin en üst rolüne eşit veya üstündeki roller için değil.
Parametreler Ad Tür Anlamı idyolda stringzorunlu Bir kanalın id’si. roleyolda stringzorunlu Bir rolün id’si. allowgövdede string[]isteğe bağlı Rolün burada ek olarak yapabildikleri: sohbette view, send, attach, mention_everyone, moderate, akış kanalında view ve post_feed. denygövdede string[]isteğe bağlı Rolün burada yapamadıkları, aynı izinlerden. İki liste de boşsa fark kalkar.
Örnek istek curl -X PUT \
-H "Authorization: Bearer tm_key_…" \
-H "Content-Type: application/json" \
-d '{"allow":["view"],"deny":["send"]}' \
"https://api.tellmelo.com/v2/channels/0d9c8b7a-6f5e-4d3c-2b1a-0f9e8d7c6b5a/overrides/4e5f6a7b-8c9d-4e0f-a1b2-c3d4e5f6a7b8"Yanıt Bir Ok ile yanıt verir.
Örnek {
"ok": true
}Olası durumlar: 200400401403404429
POST /v2/communities/{id}/categoriesKanallar için bir kategori oluşturmak.
Yetki groups v2.15 sürümünden beri Parametreler Ad Tür Anlamı idyolda stringzorunlu Bir grubun id değeri. namegövdede stringzorunlu Kategorinin adı. emojigövdede stringisteğe bağlı Simge olarak bir emoji. icongövdede stringisteğe bağlı Uygulamanın setinden bir simge, adıyla.homehashmegaphonevolumemessagehelpinfobellcalendarbookbookmarkpinshieldstarheartsparklesflamezaptrophygiftrocketlightbulbcodewrenchbriefcasegraduationpalettecamerafilmmusicgamepaddumbbellleafflowerpawsunmooncloudglobemapcoffeepizzasmile imagegövdede stringisteğe bağlı /media/emoji ile yüklediğin bir resmin kimliği.colorgövdede stringisteğe bağlı Kutucuğun rengi.brandindigovioletroseambergreentealred
Örnek istek curl -X POST \
-H "Authorization: Bearer tm_key_…" \
-H "Content-Type: application/json" \
-d '{"name":"Garden","emoji":"🌻","color":"amber"}' \
"https://api.tellmelo.com/v2/communities/c81d4e2a-0f3b-4a6c-9e57-1d2b3c4a5f60/categories"Yanıt Bir Made ile yanıt verir.
Örnek {
"id": "0d9c8b7a-6f5e-4d3c-2b1a-0f9e8d7c6b5a"
}Olası durumlar: 200400401403404429
PUT /v2/categories/{id}Bir kategoriyi yeniden adlandırmak.
Yetki groups v2.15 sürümünden beri Parametreler Ad Tür Anlamı idyolda stringzorunlu Bir kategorinin id’si. namegövdede stringzorunlu Kategorinin adı. emojigövdede stringisteğe bağlı Simge olarak bir emoji. icongövdede stringisteğe bağlı Uygulamanın setinden bir simge, adıyla.homehashmegaphonevolumemessagehelpinfobellcalendarbookbookmarkpinshieldstarheartsparklesflamezaptrophygiftrocketlightbulbcodewrenchbriefcasegraduationpalettecamerafilmmusicgamepaddumbbellleafflowerpawsunmooncloudglobemapcoffeepizzasmile imagegövdede stringisteğe bağlı /media/emoji ile yüklediğin bir resmin kimliği.colorgövdede stringisteğe bağlı Kutucuğun rengi.brandindigovioletroseambergreentealred
Örnek istek curl -X PUT \
-H "Authorization: Bearer tm_key_…" \
-H "Content-Type: application/json" \
-d '{"name":"Garden","emoji":"🌻","color":"amber"}' \
"https://api.tellmelo.com/v2/categories/9a8b7c6d-5e4f-4a3b-8c2d-1e0f9a8b7c6d"Yanıt Bir Made ile yanıt verir.
Örnek {
"id": "0d9c8b7a-6f5e-4d3c-2b1a-0f9e8d7c6b5a"
}Olası durumlar: 200400401403404429
DELETE /v2/categories/{id}Bir kategoriyi silmek.
Yetki groups v2.15 sürümünden beri Kanalları kategorisiz olarak kalır.
Parametreler Ad Tür Anlamı idyolda stringzorunlu Bir kategorinin id’si.
Örnek istek curl -X DELETE \
-H "Authorization: Bearer tm_key_…" \
"https://api.tellmelo.com/v2/categories/9a8b7c6d-5e4f-4a3b-8c2d-1e0f9a8b7c6d"Yanıt Bir Ok ile yanıt verir.
Örnek {
"ok": true
}Olası durumlar: 200400401403404429
PUT /v2/communities/{id}/feedBir grubun akış kanalını açmak veya kapatmak.
Yetki groups v2.15 sürümünden beri Kapalıyken gönderiler saklı kalır ama yalnızca yazarları görür.
Parametreler Ad Tür Anlamı idyolda stringzorunlu Bir grubun id değeri. ongövdede booleanzorunlu true akış kanalını açar, false kapatır.
Örnek istek curl -X PUT \
-H "Authorization: Bearer tm_key_…" \
"https://api.tellmelo.com/v2/communities/c81d4e2a-0f3b-4a6c-9e57-1d2b3c4a5f60/feed"Yanıt Bir Ok ile yanıt verir.
Örnek {
"ok": true
}Olası durumlar: 200400401403404429
GET /v2/communities/{id}/invitesBir grubun hâlâ geçerli davet bağlantıları.
Yetki groups ETag ile v2.15 sürümünden beri Yönetim hepsini görür, diğerleri yalnızca kendilerininkini.
Parametreler Ad Tür Anlamı idyolda stringzorunlu Bir grubun id değeri.
Örnek istek curl \
-H "Authorization: Bearer tm_key_…" \
"https://api.tellmelo.com/v2/communities/c81d4e2a-0f3b-4a6c-9e57-1d2b3c4a5f60/invites"Yanıt Bir sayfa InviteLink ile yanıt verir, `items` ve `next` olarak.
Örnek {
"items": [
{
"code": "k7Qm2xPa",
"url": "https://tellmelo.com/groups?join=k7Qm2xPa",
"createdBy": {
"id": "d4c3b2a1-6e5f-4a7b-9c8d-1e2f3a4b5c6d",
"handle": "jon",
"name": "Jon",
"bot": false
},
"createdAt": 1758624000000,
"expiresAt": 1759228800000,
"uses": 3,
"maxUses": 10
}
],
"next": null
}Olası durumlar: 200304400401403404429
POST /v2/communities/{id}/invitesBir davet bağlantısı oluşturmak.
Yetki groups v2.15 sürümünden beri Bir bağlantı yalnızca davet edebildiğin sürece geçerlidir ve ayrıldığında silinir.
Parametreler Ad Tür Anlamı idyolda stringzorunlu Bir grubun id değeri. daysgövdede integeristeğe bağlı Bağlantının kaç gün geçerli olduğu; olmadan geri alınana kadar.1730 usesgövdede integeristeğe bağlı Bağlantının kaç kez kullanılabileceği; olmadan sınırsız.151025100
Örnek istek curl -X POST \
-H "Authorization: Bearer tm_key_…" \
-H "Content-Type: application/json" \
-d '{"days":7,"uses":10}' \
"https://api.tellmelo.com/v2/communities/c81d4e2a-0f3b-4a6c-9e57-1d2b3c4a5f60/invites"Yanıt Bir Made ile yanıt verir.
Örnek {
"id": "0d9c8b7a-6f5e-4d3c-2b1a-0f9e8d7c6b5a"
}Olası durumlar: 200400401403404429
DELETE /v2/invites/{code}Bir davet bağlantısını geri almak.
Yetki groups v2.15 sürümünden beri Parametreler Ad Tür Anlamı codeyolda stringzorunlu Bir davet bağlantısının kodu, adresinin sonu.
Örnek istek curl -X DELETE \
-H "Authorization: Bearer tm_key_…" \
"https://api.tellmelo.com/v2/invites/k7Qm2xPa"Yanıt Bir Ok ile yanıt verir.
Örnek {
"ok": true
}Olası durumlar: 200400401403404429
POST /v2/channel-messages/{id}/removeBaşka bir üyenin mesajını bir kanaldan kaldırmak.
Yetki groups v2.15 sürümünden beri Uygulamadaki gibi grubun kaydına yazılır ve saatte en fazla 60.
Parametreler Ad Tür Anlamı idyolda stringzorunlu Bir sohbet kanalındaki mesajın id’si.
Örnek istek curl -X POST \
-H "Authorization: Bearer tm_key_…" \
"https://api.tellmelo.com/v2/channel-messages/61a2b3c4-d5e6-4f70-8192-a3b4c5d6e7f8/remove"Yanıt Bir Ok ile yanıt verir.
Örnek {
"ok": true
}Olası durumlar: 200400401403404429
POST /v2/communities/{id}/posts/{post}/removeBir gönderiyi gruptan kaldırmak.
Yetki groups v2.15 sürümünden beri Uygulamadaki gibi grubun kaydına yazılır ve saatte en fazla 60.
Parametreler Ad Tür Anlamı idyolda stringzorunlu Bir grubun id değeri. postyolda stringzorunlu Bir gönderinin id değeri. reasongövdede stringzorunlu Üyenin okuyacağı gerekçe.
Örnek istek curl -X POST \
-H "Authorization: Bearer tm_key_…" \
-H "Content-Type: application/json" \
-d '{"reason":"Advertising for another site, despite rule 2."}' \
"https://api.tellmelo.com/v2/communities/c81d4e2a-0f3b-4a6c-9e57-1d2b3c4a5f60/posts/post/remove"Yanıt Bir Ok ile yanıt verir.
Örnek {
"ok": true
}Olası durumlar: 200400401403404429
DELETE /v2/communities/{id}/members/{member}Bir üyeyi gruptan at.
Yetki groups v2.15 sürümünden beri 2.16'dan beri bir atma: Üye yeniden katılabilir. Dışarıda kalması gereken yasaklanır.
Yalnızca ilgili yetkiyle ve yalnızca kendi en yüksek rolünün altındaki üyelerde; eş yönetimde yalnızca kurucu olarak.
Uygulamadaki gibi grubun kaydına yazılır ve saatte en fazla 60.
Parametreler Ad Tür Anlamı idyolda stringzorunlu Bir grubun id değeri. memberyolda stringzorunlu Bir üyenin hesabının id’si. reasongövdede stringzorunlu Üyenin okuyacağı gerekçe.
Örnek istek curl -X DELETE \
-H "Authorization: Bearer tm_key_…" \
-H "Content-Type: application/json" \
-d '{"reason":"Advertising for another site, despite rule 2."}' \
"https://api.tellmelo.com/v2/communities/c81d4e2a-0f3b-4a6c-9e57-1d2b3c4a5f60/members/d4c3b2a1-6e5f-4a7b-9c8d-1e2f3a4b5c6d"Yanıt Bir Ok ile yanıt verir.
Örnek {
"ok": true
}Olası durumlar: 200400401403404429
PUT /v2/communities/{id}/members/{member}/timeoutBir üyeyi sustur.
Yetki groups v2.16 sürümünden beri Yeni bir susturma, sürmekte olanın yerini alır. Çıkıp yeniden katılmak onu bitirmez.
Yalnızca ilgili yetkiyle ve yalnızca kendi en yüksek rolünün altındaki üyelerde; eş yönetimde yalnızca kurucu olarak.
Uygulamadaki gibi grubun kaydına yazılır ve saatte en fazla 60.
Parametreler Ad Tür Anlamı idyolda stringzorunlu Bir grubun id değeri. memberyolda stringzorunlu Bir üyenin hesabının id’si. secondsgövdede integerzorunlu Ne kadar süre, saniye olarak.60300600360086400604800 reasongövdede stringisteğe bağlı Üyenin okuduğu bir gerekçe; isteğe bağlı.
Örnek istek curl -X PUT \
-H "Authorization: Bearer tm_key_…" \
-H "Content-Type: application/json" \
-d '{"seconds":600}' \
"https://api.tellmelo.com/v2/communities/c81d4e2a-0f3b-4a6c-9e57-1d2b3c4a5f60/members/d4c3b2a1-6e5f-4a7b-9c8d-1e2f3a4b5c6d/timeout"Yanıt Bir Until ile yanıt verir.
Örnek {
"until": 1758624600000
}Olası durumlar: 200400401403404429
DELETE /v2/communities/{id}/members/{member}/timeoutBir susturmayı kaldır.
Yetki groups v2.16 sürümünden beri Parametreler Ad Tür Anlamı idyolda stringzorunlu Bir grubun id değeri. memberyolda stringzorunlu Bir üyenin hesabının id’si.
Örnek istek curl -X DELETE \
-H "Authorization: Bearer tm_key_…" \
"https://api.tellmelo.com/v2/communities/c81d4e2a-0f3b-4a6c-9e57-1d2b3c4a5f60/members/d4c3b2a1-6e5f-4a7b-9c8d-1e2f3a4b5c6d/timeout"Yanıt Bir Until ile yanıt verir.
Örnek {
"until": 1758624600000
}Olası durumlar: 200400401403404429
GET /v2/communities/{id}/bansBir grubun süren yasakları.
Yetki groups ETag ile v2.16 sürümünden beri Parametreler Ad Tür Anlamı idyolda stringzorunlu Bir grubun id değeri.
Örnek istek curl \
-H "Authorization: Bearer tm_key_…" \
"https://api.tellmelo.com/v2/communities/c81d4e2a-0f3b-4a6c-9e57-1d2b3c4a5f60/bans"Yanıt Bir sayfa Ban ile yanıt verir, `items` ve `next` olarak.
Örnek {
"items": [
{
"member": {
"id": "d4c3b2a1-6e5f-4a7b-9c8d-1e2f3a4b5c6d",
"handle": "jon",
"name": "Jon",
"bot": false
},
"until": 1759228800000,
"createdAt": 1758624000000,
"by": "Mara 🌻"
}
],
"next": null
}Olası durumlar: 200304400401403404429
PUT /v2/communities/{id}/bans/{member}Bir üyeyi yasakla.
Yetki groups v2.16 sürümünden beri days olmadan yasak, kaldırılana kadar sürer.
Yalnızca ilgili yetkiyle ve yalnızca kendi en yüksek rolünün altındaki üyelerde; eş yönetimde yalnızca kurucu olarak.
Uygulamadaki gibi grubun kaydına yazılır ve saatte en fazla 60.
Parametreler Ad Tür Anlamı idyolda stringzorunlu Bir grubun id değeri. memberyolda stringzorunlu Bir üyenin hesabının id’si. daysgövdede integeristeğe bağlı Ne kadar süre, gün olarak; süresiz bir yasak için boş bırak.1730 reasongövdede stringzorunlu Üyenin okuyacağı gerekçe.
Örnek istek curl -X PUT \
-H "Authorization: Bearer tm_key_…" \
-H "Content-Type: application/json" \
-d '{"days":7,"reason":"Advertising for another site, despite rule 2."}' \
"https://api.tellmelo.com/v2/communities/c81d4e2a-0f3b-4a6c-9e57-1d2b3c4a5f60/bans/d4c3b2a1-6e5f-4a7b-9c8d-1e2f3a4b5c6d"Yanıt Bir Until ile yanıt verir.
Örnek {
"until": 1758624600000
}Olası durumlar: 200400401403404429
DELETE /v2/communities/{id}/bans/{member}Bir yasağı kaldır.
Yetki groups v2.16 sürümünden beri Parametreler Ad Tür Anlamı idyolda stringzorunlu Bir grubun id değeri. memberyolda stringzorunlu Bir üyenin hesabının id’si.
Örnek istek curl -X DELETE \
-H "Authorization: Bearer tm_key_…" \
"https://api.tellmelo.com/v2/communities/c81d4e2a-0f3b-4a6c-9e57-1d2b3c4a5f60/bans/d4c3b2a1-6e5f-4a7b-9c8d-1e2f3a4b5c6d"Yanıt Bir Ok ile yanıt verir.
Örnek {
"ok": true
}Olası durumlar: 200400401403404429
GET /v2/communities/{id}/logYönetimin kaydı: kim neyi neden kaldırdı.
Yetki groups ETag ile v2.15 sürümünden beri Parametreler Ad Tür Anlamı idyolda stringzorunlu Bir grubun id değeri.
Örnek istek curl \
-H "Authorization: Bearer tm_key_…" \
"https://api.tellmelo.com/v2/communities/c81d4e2a-0f3b-4a6c-9e57-1d2b3c4a5f60/log"Yanıt Bir sayfa LogEntry ile yanıt verir, `items` ve `next` olarak.
Örnek {
"items": [
{
"id": "8f7e6d5c-4b3a-4291-8f7e-6d5c4b3a2918",
"action": "message_removed",
"member": {
"id": "d4c3b2a1-6e5f-4a7b-9c8d-1e2f3a4b5c6d",
"handle": "jon",
"name": "Jon",
"bot": false
},
"reason": "",
"by": "Mara 🌻",
"createdAt": 1758710400000
}
],
"next": null
}Olası durumlar: 200304400401403404429
POST /v2/communitiesBir grup kur. id değerini döndürür; kurucusu sensin.
Yetki groups v2.19 sürümünden beri groups izni gerekir. Belirtilmezse grup internal olur ve serbestçe katılınır; gizli bir grup yalnızca davetle. Üyelerin grup kurup kuramayacağına işletmeci karar verir.
Parametreler Ad Tür Anlamı namegövdede stringzorunlu Ad, en fazla 60 karakter. descriptiongövdede stringisteğe bağlı Açıklama, en fazla 240 karakter. handlegövdede stringisteğe bağlı @# bahsetmeleri ve bağlantı için kısa ad: 3 ila 30 küçük harf, rakam veya _. tagsgövdede string[]isteğe bağlı Grubun konusu hakkında en fazla 5 #etiket. joinPolicygövdede stringisteğe bağlı Nasıl katılınır: open serbestçe, application başvuruyla, invite yalnızca davetle.openapplicationinvite visibilitygövdede stringisteğe bağlı Grubu kim görür: open herkes, internal içeriğini yalnızca üyeler, hidden hiç yalnızca üyeler.openinternalhidden
Örnek istek curl -X POST \
-H "Authorization: Bearer tm_key_…" \
-H "Content-Type: application/json" \
-d '{"name":"Seed swap","handle":"seedswap","tags":["garden","seeds"],"joinPolicy":"open","visibility":"open"}' \
"https://api.tellmelo.com/v2/communities"Yanıt Bir Made ile yanıt verir.
Örnek {
"id": "0d9c8b7a-6f5e-4d3c-2b1a-0f9e8d7c6b5a"
}Olası durumlar: 200400401403429
PUT /v2/communities/{id}Yönettiğin bir grubu değiştir. Belirtmediğin her şey aynı kalır.
Yetki groups v2.19 sürümünden beri groups izni ve grubun yönetimi gerekir. Yönetim, dağıtma ve kıvılcım avantajları uygulamada kalır.
Parametreler Ad Tür Anlamı idyolda stringzorunlu Bir grubun id değeri. namegövdede stringisteğe bağlı Ad, en fazla 60 karakter. descriptiongövdede stringisteğe bağlı Açıklama, en fazla 240 karakter. handlegövdede stringisteğe bağlı @# bahsetmeleri ve bağlantı için kısa ad: 3 ila 30 küçük harf, rakam veya _. tagsgövdede string[]isteğe bağlı Grubun konusu hakkında en fazla 5 #etiket. joinPolicygövdede stringisteğe bağlı Nasıl katılınır: open serbestçe, application başvuruyla, invite yalnızca davetle.openapplicationinvite visibilitygövdede stringisteğe bağlı Grubu kim görür: open herkes, internal içeriğini yalnızca üyeler, hidden hiç yalnızca üyeler.openinternalhidden imagegövdede stringisteğe bağlı Grup resmi olarak yüklenmiş bir resmin (POST /me/pictures) id değeri. Boş bırakılırsa kaldırılır. bannergövdede stringisteğe bağlı Grup kapağı olarak yüklenmiş bir resmin id değeri. Boş bırakılırsa kaldırılır.
Örnek istek curl -X PUT \
-H "Authorization: Bearer tm_key_…" \
-H "Content-Type: application/json" \
-d '{"name":"Seed swap","handle":"seedswap","tags":["garden","seeds"],"joinPolicy":"open","visibility":"open"}' \
"https://api.tellmelo.com/v2/communities/c81d4e2a-0f3b-4a6c-9e57-1d2b3c4a5f60"Yanıt Bir Ok ile yanıt verir.
Örnek {
"ok": true
}Olası durumlar: 200400401403404429
Botlar Bir botun gruplarında olanlar, gerçek zamanlı: akış olarak, sayfa sayfa ya da bir adrese teslim.
GET /v2/eventsBotun gruplarındaki olaylar, bir olaydan itibaren sayfa sayfa.
Yetki read v2.20 sürümünden beri Yalnızca bir botun tokenıyla. Bir kanalın olayları yalnızca bot onu görebiliyorsa.
Olaylar bir gün tutulur. next sonuncunun numarasıdır; sonraki sayfa için since olarak.
Parametreler Ad Tür Anlamı sinceadreste stringisteğe bağlı Botun zaten sahip olduğu son olayın numarası. Olmadan akış şimdi, liste en eskiden başlar.
Örnek istek curl \
-H "Authorization: Bearer tm_key_…" \
"https://api.tellmelo.com/v2/events?since=0"Yanıt Bir sayfa BotEvent ile yanıt verir, `items` ve `next` olarak.
Örnek {
"items": [
{
"id": "4711",
"type": "message.created",
"community": "c81d4e2a-0f3b-4a6c-9e57-1d2b3c4a5f60",
"channel": "0d9c8b7a-6f5e-4d3c-2b1a-0f9e8d7c6b5a",
"createdAt": 1758634800000,
"data": {
"message": {
"id": "61a2b3c4-d5e6-4f70-8192-a3b4c5d6e7f8",
"text": "/dice 6",
"author": {
"id": "a3e1f7c2-54b9-4d0e-8f16-7b2c9d4e1a05",
"handle": "mara",
"name": "Mara 🌻",
"bot": false
},
"media": 0,
"replyTo": null,
"threadOf": null,
"createdAt": 1758634800000
}
}
}
],
"next": null
}Olası durumlar: 200401429
GET /v2/events/streamBotun gruplarındaki olaylar, gerçekleşir gerçekleşmez (server-sent events).
Yetki read ETag ile v2.20 sürümünden beri Bağlantı açık kalır ve on dakika sonra kapanır; istemci yeniden bağlanır ve Last-Event-ID gönderir.
Yalnızca bir botun tokenıyla. Bir kanalın olayları yalnızca bot onu görebiliyorsa.
Parametreler Ad Tür Anlamı sinceadreste stringisteğe bağlı Botun zaten sahip olduğu son olayın numarası. Olmadan akış şimdi, liste en eskiden başlar.
Örnek istek curl \
-H "Authorization: Bearer tm_key_…" \
"https://api.tellmelo.com/v2/events/stream?since=0"Yanıt Bir BotEvent ile yanıt verir.
Örnek {
"id": "4711",
"type": "message.created",
"community": "c81d4e2a-0f3b-4a6c-9e57-1d2b3c4a5f60",
"channel": "0d9c8b7a-6f5e-4d3c-2b1a-0f9e8d7c6b5a",
"createdAt": 1758634800000,
"data": {
"message": {
"id": "61a2b3c4-d5e6-4f70-8192-a3b4c5d6e7f8",
"text": "/dice 6",
"author": {
"id": "a3e1f7c2-54b9-4d0e-8f16-7b2c9d4e1a05",
"handle": "mara",
"name": "Mara 🌻",
"bot": false
},
"media": 0,
"replyTo": null,
"threadOf": null,
"createdAt": 1758634800000
}
}
}Olası durumlar: 200304401429
GET /v2/me/commandsBotun komutları.
Yetki read ETag ile v2.20 sürümünden beri Yalnızca bir botun tokenıyla. Bir kanalın olayları yalnızca bot onu görebiliyorsa.
Örnek istek curl \
-H "Authorization: Bearer tm_key_…" \
"https://api.tellmelo.com/v2/me/commands"Yanıt Bir sayfa BotCommand ile yanıt verir, `items` ve `next` olarak.
Örnek {
"items": [
{
"name": "dice",
"description": "Rolls a die"
}
],
"next": null
}Olası durumlar: 200304401429
PUT /v2/me/commandsBotun komutlarını hepsini birden belirle.
Yetki write v2.20 sürümünden beri Tüm komutların yerine geçer; boş liste onları kaldırır. Botun görebildiği sohbetlerde giriş alanı onları “/” sonrasında önerir.
Parametreler Ad Tür Anlamı commandsgövdede object[]zorunlu En fazla 25 komut, her biri { name, description }.
Örnek istek curl -X PUT \
-H "Authorization: Bearer tm_key_…" \
-H "Content-Type: application/json" \
-d '{"commands":[{"name":"dice","description":"Rolls a die"}]}' \
"https://api.tellmelo.com/v2/me/commands"Yanıt Bir sayfa BotCommand ile yanıt verir, `items` ve `next` olarak.
Örnek {
"items": [
{
"name": "dice",
"description": "Rolls a die"
}
],
"next": null
}Olası durumlar: 200400401403429
POST /v2/interactions/{id}/replyBir komuta ya da düğmeye yanıt ver.
Yetki write v2.20 sürümünden beri command ya da interaction olayından sonraki 15 dakika içinde; private ile yanıtı yalnızca komutu ya da düğmeyi kullanan görür.
Parametreler Ad Tür Anlamı idyolda stringzorunlu Olaydaki kimlik (data.interaction). textgövdede stringisteğe bağlı Gönderinin, yanıtın ya da mesajın metni. privategövdede booleanisteğe bağlı true: yanıtı bir gün boyunca yalnızca komutu ya da düğmeyi kullanan görür.cardgövdede objectisteğe bağlı Bir kart { title, text, color, fields: [{ name, value }] }, en fazla 10 alan. buttonsgövdede object[]isteğe bağlı En fazla 5 düğme, her biri { id, label, style }, style primary, secondary ya da danger. Basış interaction olayı olarak gelir.
Örnek istek curl -X POST \
-H "Authorization: Bearer tm_key_…" \
-H "Content-Type: application/json" \
-d '{"text":"You rolled a 4.","private":true}' \
"https://api.tellmelo.com/v2/interactions/9b8c7d6e-5f4a-4b3c-8d2e-1f0a9b8c7d6e/reply"Yanıt Bir Made ile yanıt verir.
Örnek {
"id": "0d9c8b7a-6f5e-4d3c-2b1a-0f9e8d7c6b5a"
}Olası durumlar: 200400401403404429
POST /v2/channels/{id}/voiceMüzik ya da ses çalmak için sesli kanalda yer al.
Yetki write v2.20 sürümünden beri Yalnızca bir botun tokenıyla, botun kanaldaki rolünün izin verdiği kadar. Program bir LiveKit SDK ile bağlanır ve sesini mikrofon olarak gönderir; herkes ses düzeyini kendisi ayarlar.
Parametreler Ad Tür Anlamı idyolda stringzorunlu Bir kanalın id’si.
Örnek istek curl -X POST \
-H "Authorization: Bearer tm_key_…" \
"https://api.tellmelo.com/v2/channels/0d9c8b7a-6f5e-4d3c-2b1a-0f9e8d7c6b5a/voice"Yanıt Bir VoiceSeat ile yanıt verir.
Örnek {
"url": "wss://voice.example.org",
"token": "eyJhbGciOiJIUzI1NiJ9…",
"iceServers": [
{
"urls": [
"stun:turn.example.org:3478"
]
}
],
"speak": true,
"video": false
}Olası durumlar: 200400401403404429
Keşfet Gündem, arama ve sunucunun özel emojileri.
GET /v2/tagsŞu anda öne çıkan etiketler.
Yetki read ETag ile v2.0 sürümünden beri Puana göre en fazla 10 gündem etiketi: her kullanım 1 sayılır ve 3 günde bir yarıya iner, bir hesap günde en fazla 3 sayılır. posts yuvarlanmış puandır. limit yalnızca listeyi kısaltır. Ekibin öne çıkardığı etiketler daha üstte yer alabilir.
Parametreler Ad Tür Anlamı limitadreste integeristeğe bağlı Sayfa başına kayıt: varsayılan 20, en fazla 50.
Örnek istek curl \
-H "Authorization: Bearer tm_key_…" \
"https://api.tellmelo.com/v2/tags?limit=10"Yanıt Bir sayfa Tag ile yanıt verir, `items` ve `next` olarak.
Örnek {
"items": [
{
"tag": "garden",
"posts": 58
}
],
"next": null
}Olası durumlar: 200304401429
GET /v2/searchGönderilerde, adlarda, kısa adlarda ve etiketlerde arama.
Yetki read ETag ile v2.0 sürümünden beri Yalnızca açık içerikte arar: grup dışı gönderiler, profiller ve etiketler. limit tür başına geçerlidir.
Parametreler Ad Tür Anlamı qadreste stringzorunlu Aranan sözcükler. typeadreste stringisteğe bağlı Hangi tür sonuç. Verilmezse her tür.allpostsprofilestags limitadreste integeristeğe bağlı Sayfa başına kayıt: varsayılan 20, en fazla 50.
Örnek istek curl \
-H "Authorization: Bearer tm_key_…" \
"https://api.tellmelo.com/v2/search?q=garden&type=posts"Yanıt Bir SearchResult ile yanıt verir.
Örnek {
"posts": [
{
"id": "5f0c2a9e-8d41-4b7a-9c3e-2e61d0f4a7b1",
"text": "The bees are back in the garden 🐝 #garden",
"kind": "poll",
"author": {
"id": "a3e1f7c2-54b9-4d0e-8f16-7b2c9d4e1a05",
"handle": "mara",
"name": "Mara 🌻",
"verified": true,
"accountKind": "person"
},
"community": {
"id": "c81d4e2a-0f3b-4a6c-9e57-1d2b3c4a5f60",
"name": "Urban Gardening"
},
"media": [
{
"url": "/api/media?id=b2d7e9f1-3c4a-4e8b-a1f0-6d5c4b3a2918",
"kind": "image",
"poster": null,
"ai": "without"
}
],
"poll": {
"options": [
{
"text": "Lavender",
"votes": 12
},
{
"text": "Sunflowers",
"votes": 7
},
{
"text": "Clover",
"votes": 3
}
],
"total": 22,
"multiple": false,
"endsAt": null,
"running": true,
"resultsVisible": true,
"myVotes": [
0
]
},
"quotes": null,
"continues": null,
"counts": {
"replies": 4,
"likes": 31,
"reposts": 2
},
"pinned": false,
"giftDrop": {
"item": "plan",
"quantity": 3,
"places": 10,
"left": 4,
"audience": "followers",
"newAccounts": false,
"status": "open",
"claimed": true
},
"createdAt": 1758624000000
}
],
"profiles": [
{
"id": "a3e1f7c2-54b9-4d0e-8f16-7b2c9d4e1a05",
"handle": "mara",
"name": "Mara 🌻",
"verified": true,
"accountKind": "person"
}
],
"tags": [
{
"tag": "garden",
"posts": 58
}
]
}Olası durumlar: 200304400401429
GET /v2/emojisSunucunun kendi emojileri, görsellerinin adresiyle birlikte.
Yetki read ETag ile v2.1 sürümünden beri Metinlerde emoji :name: olarak görünür. Onu bu listedeki görselle değiştir; bilinmeyen adlar metin olarak kalır.
Örnek istek curl \
-H "Authorization: Bearer tm_key_…" \
"https://api.tellmelo.com/v2/emojis"Yanıt Bir sayfa Emoji ile yanıt verir, `items` ve `next` olarak.
Örnek {
"items": [
{
"name": "tellmelo",
"url": "/api/media?id=e1f2a3b4-c5d6-4e7f-8a9b-0c1d2e3f4a5b"
}
],
"next": null
}Olası durumlar: 200304401429
GIF’ler ve videolar Medya kitaplığı: paylaşılan GIF ve videoları bul, kendi dosyalarını yükle ve yönet, diğer web sitelerine yerleştir.
GET /v2/mediaPaylaşılan GIF’ler veya videolar, en çok kullanılanlar önce.
Yetki read sayfalanabilir ETag ile v2.14 sürümünden beri Engellediğin veya seni engelleyen hesaplar hariç. tellmelo’daki gönderiler için url ve poster dosyalarını başlıktaki anahtarla yükle.
Diğer web siteleri için yalnızca embed içerenler: Bunların adresleri anahtarsız, her tarayıcıda çalışır.
Parametreler Ad Tür Anlamı kindadreste stringisteğe bağlı gif veya video; belirtilmezse gif.gifvideoqadreste stringisteğe bağlı Adda veya anahtar kelimelerde geçen kelimeler. anywhereadreste booleanisteğe bağlı true: yalnızca diğer web sitelerinde de görünebilenler.limitadreste integeristeğe bağlı Sayfa başına kayıt: varsayılan 20, en fazla 50. cursoradreste stringisteğe bağlı Önceki yanıttaki next. Yoksa baştan.
Örnek istek curl \
-H "Authorization: Bearer tm_key_…" \
"https://api.tellmelo.com/v2/media?kind=gif&q=bees&anywhere=true&limit=20"Yanıt Bir sayfa MediaItem ile yanıt verir, `items` ve `next` olarak.
Örnek {
"items": [
{
"id": "b2d7e9f1-3c4a-4e8b-a1f0-6d5c4b3a2918",
"kind": "gif",
"name": "Happy bees",
"keywords": "bees garden happy",
"width": 480,
"height": 270,
"seconds": 0,
"url": "/api/media?id=b2d7e9f1-3c4a-4e8b-a1f0-6d5c4b3a2918",
"poster": "/api/media?id=b2d7e9f1-3c4a-4e8b-a1f0-6d5c4b3a2918&poster=1",
"uploader": {
"handle": "mara",
"name": "Mara 🌻"
},
"mine": false,
"shared": true,
"anywhere": true,
"embed": {
"page": "https://tellmelo.com/media-embed/b2d7e9f1-3c4a-4e8b-a1f0-6d5c4b3a2918",
"file": "https://tellmelo.com/media-embed/b2d7e9f1-3c4a-4e8b-a1f0-6d5c4b3a2918/file",
"poster": "https://tellmelo.com/media-embed/b2d7e9f1-3c4a-4e8b-a1f0-6d5c4b3a2918/poster",
"code": "<iframe src=\"https://tellmelo.com/media-embed/b2d7e9f1-3c4a-4e8b-a1f0-6d5c4b3a2918\" width=\"480\" height=\"300\" title=\"Happy bees\" style=\"border:0;max-width:100%\" loading=\"lazy\" allowfullscreen></iframe>"
}
}
],
"next": "MTc1ODYyNDAwMDAwMDo1ZjBjMmE5ZS04ZDQx"
}Olası durumlar: 200304400401429
GET /v2/media/mineKendi medya kitaplığın, en yeniler önce.
Yetki media sayfalanabilir ETag ile v2.14 sürümünden beri Parametreler Ad Tür Anlamı kindadreste stringisteğe bağlı gif veya video; belirtilmezse gif.gifvideoqadreste stringisteğe bağlı Adda veya anahtar kelimelerde geçen kelimeler. limitadreste integeristeğe bağlı Sayfa başına kayıt: varsayılan 20, en fazla 50. cursoradreste stringisteğe bağlı Önceki yanıttaki next. Yoksa baştan.
Örnek istek curl \
-H "Authorization: Bearer tm_key_…" \
"https://api.tellmelo.com/v2/media/mine?kind=gif&q=bees&limit=20"Yanıt Bir sayfa MediaItem ile yanıt verir, `items` ve `next` olarak.
Örnek {
"items": [
{
"id": "b2d7e9f1-3c4a-4e8b-a1f0-6d5c4b3a2918",
"kind": "gif",
"name": "Happy bees",
"keywords": "bees garden happy",
"width": 480,
"height": 270,
"seconds": 0,
"url": "/api/media?id=b2d7e9f1-3c4a-4e8b-a1f0-6d5c4b3a2918",
"poster": "/api/media?id=b2d7e9f1-3c4a-4e8b-a1f0-6d5c4b3a2918&poster=1",
"uploader": {
"handle": "mara",
"name": "Mara 🌻"
},
"mine": false,
"shared": true,
"anywhere": true,
"embed": {
"page": "https://tellmelo.com/media-embed/b2d7e9f1-3c4a-4e8b-a1f0-6d5c4b3a2918",
"file": "https://tellmelo.com/media-embed/b2d7e9f1-3c4a-4e8b-a1f0-6d5c4b3a2918/file",
"poster": "https://tellmelo.com/media-embed/b2d7e9f1-3c4a-4e8b-a1f0-6d5c4b3a2918/poster",
"code": "<iframe src=\"https://tellmelo.com/media-embed/b2d7e9f1-3c4a-4e8b-a1f0-6d5c4b3a2918\" width=\"480\" height=\"300\" title=\"Happy bees\" style=\"border:0;max-width:100%\" loading=\"lazy\" allowfullscreen></iframe>"
}
}
],
"next": "MTc1ODYyNDAwMDAwMDo1ZjBjMmE5ZS04ZDQx"
}Olası durumlar: 200304400401403429
GET /v2/media/{id}Bir GIF veya video; seninki ya da paylaşılan.
Yetki read ETag ile v2.14 sürümünden beri Parametreler Ad Tür Anlamı idyolda stringzorunlu GIF’in veya videonun ID’si.
Örnek istek curl \
-H "Authorization: Bearer tm_key_…" \
"https://api.tellmelo.com/v2/media/b2d7e9f1-3c4a-4e8b-a1f0-6d5c4b3a2918"Yanıt Bir MediaItem ile yanıt verir.
Örnek {
"id": "b2d7e9f1-3c4a-4e8b-a1f0-6d5c4b3a2918",
"kind": "gif",
"name": "Happy bees",
"keywords": "bees garden happy",
"width": 480,
"height": 270,
"seconds": 0,
"url": "/api/media?id=b2d7e9f1-3c4a-4e8b-a1f0-6d5c4b3a2918",
"poster": "/api/media?id=b2d7e9f1-3c4a-4e8b-a1f0-6d5c4b3a2918&poster=1",
"uploader": {
"handle": "mara",
"name": "Mara 🌻"
},
"mine": false,
"shared": true,
"anywhere": true,
"embed": {
"page": "https://tellmelo.com/media-embed/b2d7e9f1-3c4a-4e8b-a1f0-6d5c4b3a2918",
"file": "https://tellmelo.com/media-embed/b2d7e9f1-3c4a-4e8b-a1f0-6d5c4b3a2918/file",
"poster": "https://tellmelo.com/media-embed/b2d7e9f1-3c4a-4e8b-a1f0-6d5c4b3a2918/poster",
"code": "<iframe src=\"https://tellmelo.com/media-embed/b2d7e9f1-3c4a-4e8b-a1f0-6d5c4b3a2918\" width=\"480\" height=\"300\" title=\"Happy bees\" style=\"border:0;max-width:100%\" loading=\"lazy\" allowfullscreen></iframe>"
}
}Olası durumlar: 200304400401404429
POST /v2/media/uploadsBir yükleme başlat.
Yetki media v2.14 sürümünden beri Ardından dosyayı en fazla piece baytlık parçalar halinde /media/uploads/{upload} adresine gönder. Yeni parça gelmezse yükleme 15 dakika sonra sona erer.
Uygulamanın sınırları geçerlidir: 15 MB’a kadar GIF’ler, aboneliğe göre boyut ve uzunlukta videolar, günlük GIF sayısı, özel GIF’ler, haftalık video puanları. Aksi halde 409, 413 veya 429 döner.
Parametreler Ad Tür Anlamı kindgövdede stringzorunlu gif veya video; belirtilmezse gif.gifvideosizegövdede integerzorunlu Dosyanın tamamının bayt cinsinden boyutu. namegövdede stringzorunlu Bulunacağı ad: 2 ile 40 karakter arası. keywordsgövdede stringisteğe bağlı Arama için anahtar kelimeler, boşlukla ayrılmış. sharedgövdede booleanisteğe bağlı true: tellmelo’da herkesle paylaşıldı.anywheregövdede booleanisteğe bağlı true: paylaşıldı ve diğer web sitelerinde de izin verildi. Yalnızca shared ile birlikte.
Örnek istek curl -X POST \
-H "Authorization: Bearer tm_key_…" \
-H "Content-Type: application/json" \
-d '{"kind":"gif","size":2400000,"name":"Happy bees","keywords":"bees garden","shared":true,"anywhere":false}' \
"https://api.tellmelo.com/v2/media/uploads"Yanıt Bir UploadStarted ile yanıt verir.
Örnek {
"upload": "e7c1a2b3-4d5e-4f60-8a9b-0c1d2e3f4a5b",
"piece": 4194304
}Olası durumlar: 200400401403429
PUT /v2/media/uploads/{upload}Dosyanın bir parçasını gönder.
Yetki media v2.14 sürümünden beri Gövde parçanın kendisidir (application/octet-stream), JSON değil. Devamı değilse 409 ile received döner: Oradan göndermeye devam et. Son parçadan sonra dosya dönüştürülür; yanıtta o zaman item bulunur.
Parametreler Ad Tür Anlamı uploadyolda stringzorunlu Başlangıçta gelen upload. offsetadreste integerzorunlu Parçanın dosyada başladığı yer, bayt cinsinden; ilki için 0.
Örnek istek curl -X PUT \
-H "Authorization: Bearer tm_key_…" \
-H "Content-Type: application/octet-stream" \
--data-binary @piece \
"https://api.tellmelo.com/v2/media/uploads/e7c1a2b3-4d5e-4f60-8a9b-0c1d2e3f4a5b?offset=0"Yanıt Bir UploadPiece ile yanıt verir.
Örnek {
"received": 4194304,
"item": null
}Olası durumlar: 200400401403404429
POST /v2/media/{id}GIF’lerinden veya videolarından birini değiştir.
Yetki media v2.14 sürümünden beri Parametreler Ad Tür Anlamı idyolda stringzorunlu GIF’in veya videonun ID’si. namegövdede stringisteğe bağlı Bulunacağı ad: 2 ile 40 karakter arası. keywordsgövdede stringisteğe bağlı Arama için anahtar kelimeler, boşlukla ayrılmış. sharedgövdede booleanisteğe bağlı true: tellmelo’da herkesle paylaşıldı.anywheregövdede booleanisteğe bağlı true: paylaşıldı ve diğer web sitelerinde de izin verildi. Yalnızca shared ile birlikte.
Örnek istek curl -X POST \
-H "Authorization: Bearer tm_key_…" \
-H "Content-Type: application/json" \
-d '{"name":"Happy bees","anywhere":true}' \
"https://api.tellmelo.com/v2/media/b2d7e9f1-3c4a-4e8b-a1f0-6d5c4b3a2918"Yanıt Bir Ok ile yanıt verir.
Örnek {
"ok": true
}Olası durumlar: 200400401403404429
DELETE /v2/media/{id}GIF’lerinden veya videolarından birini kaldır.
Yetki media v2.14 sürümünden beri Onu zaten gösteren gönderiler korur. Diğer web sitelerinde birkaç dakika içinde kaybolur.
Parametreler Ad Tür Anlamı idyolda stringzorunlu GIF’in veya videonun ID’si.
Örnek istek curl -X DELETE \
-H "Authorization: Bearer tm_key_…" \
"https://api.tellmelo.com/v2/media/b2d7e9f1-3c4a-4e8b-a1f0-6d5c4b3a2918"Yanıt Bir Ok ile yanıt verir.
Örnek {
"ok": true
}Olası durumlar: 200400401403404429
Hesabın Profilin, akışın, kendi emojilerin ve webhook’ların.
GET /v2/meKendi profilin, diğer yolların beklediği id ile.
Yetki read ETag ile v2.0 sürümünden beri Örnek istek curl \
-H "Authorization: Bearer tm_key_…" \
"https://api.tellmelo.com/v2/me"Yanıt Bir Profile ile yanıt verir.
Örnek {
"id": "a3e1f7c2-54b9-4d0e-8f16-7b2c9d4e1a05",
"handle": "mara",
"name": "Mara 🌻",
"verified": true,
"accountKind": "person",
"about": "Beekeeper, allotment, too many seeds. :tellmelo:",
"website": "https://mara-imkerei.example/",
"websiteVerified": true,
"followers": 148,
"createdAt": 1750848000000
}Olası durumlar: 200304401429
GET /v2/feedKendi akışın, uygulamanın derlediği hâliyle.
Yetki read sayfalanabilir v2.0 sürümünden beri Sıralama sürekli değiştiği için ETag yok. Başlanan bir liste sonuna kadar aynı kalır.
Parametreler Ad Tür Anlamı tabadreste stringisteğe bağlı Hangi akış: for-you, following, latest ya da bookmarks. Varsayılan latest.for-youfollowinglatestbookmarks tagadreste stringisteğe bağlı Yalnızca bu etiketle ilgili gönderiler: onunla yazılmış ya da sunucunun içinde tanıdığı. Verilmezse süzgeç yok. limitadreste integeristeğe bağlı Sayfa başına kayıt: varsayılan 20, en fazla 50. cursoradreste stringisteğe bağlı Önceki yanıttaki next. Yoksa baştan.
Örnek istek curl \
-H "Authorization: Bearer tm_key_…" \
"https://api.tellmelo.com/v2/feed?tab=following&limit=20"Yanıt Bir sayfa Post ile yanıt verir, `items` ve `next` olarak.
Örnek {
"items": [
{
"id": "5f0c2a9e-8d41-4b7a-9c3e-2e61d0f4a7b1",
"text": "The bees are back in the garden 🐝 #garden",
"kind": "poll",
"author": {
"id": "a3e1f7c2-54b9-4d0e-8f16-7b2c9d4e1a05",
"handle": "mara",
"name": "Mara 🌻",
"verified": true,
"accountKind": "person"
},
"community": {
"id": "c81d4e2a-0f3b-4a6c-9e57-1d2b3c4a5f60",
"name": "Urban Gardening"
},
"media": [
{
"url": "/api/media?id=b2d7e9f1-3c4a-4e8b-a1f0-6d5c4b3a2918",
"kind": "image",
"poster": null,
"ai": "without"
}
],
"poll": {
"options": [
{
"text": "Lavender",
"votes": 12
},
{
"text": "Sunflowers",
"votes": 7
},
{
"text": "Clover",
"votes": 3
}
],
"total": 22,
"multiple": false,
"endsAt": null,
"running": true,
"resultsVisible": true,
"myVotes": [
0
]
},
"quotes": null,
"continues": null,
"counts": {
"replies": 4,
"likes": 31,
"reposts": 2
},
"pinned": false,
"giftDrop": {
"item": "plan",
"quantity": 3,
"places": 10,
"left": 4,
"audience": "followers",
"newAccounts": false,
"status": "open",
"claimed": true
},
"createdAt": 1758624000000
}
],
"next": "MTc1ODYyNDAwMDAwMDo1ZjBjMmE5ZS04ZDQx"
}Olası durumlar: 200400401429
POST /v2/me/picturesBir resmi bayt olarak yükle. id ve url döndürür; sonra id değerini profil resmi, kapak veya gönderide kullanırsın.
Yetki write v2.19 sürümünden beri PNG, JPEG, WebP veya GIF, ilk baytlarından tanınır; meta veriler olmadan yeniden kaydedilir. Hiçbir yerde kullanılmayan resim daha sonra silinir.
Örnek istek curl -X POST \
-H "Authorization: Bearer tm_key_…" \
-H "Content-Type: application/octet-stream" \
--data-binary @picture.png \
"https://api.tellmelo.com/v2/me/pictures"Yanıt Bir Picture ile yanıt verir.
Örnek {
"id": "8c7b6a59-4837-4261-9f5e-d4c3b2a1f0e9",
"url": "/api/media?id=8c7b6a59-4837-4261-9f5e-d4c3b2a1f0e9"
}Olası durumlar: 200401403429
PUT /v2/me/profileProfilini değiştir: ad, hakkında, profil resmi, kapak ve profil rengi. Belirtmediğin her şey aynı kalır.
Yetki profile v2.19 sürümünden beri profile izni gerekir. @adın uygulamada kalır: aynı zamanda giriş adındır.
Parametreler Ad Tür Anlamı namegövdede stringisteğe bağlı Görünen ad, en fazla 60 karakter. aboutgövdede stringisteğe bağlı “Hakkında” metni. avatargövdede stringisteğe bağlı Profil resmi olarak yüklenmiş bir resmin id değeri. Boş bırakılırsa kaldırılır. bannergövdede stringisteğe bağlı Kapak olarak yüklenmiş bir resmin id değeri. Boş bırakılırsa kaldırılır. colorgövdede stringisteğe bağlı Profil rengi, abonelikle. null kaldırır.indigovioletrosecoralamberlimegreentealskyslatesandnight
Örnek istek curl -X PUT \
-H "Authorization: Bearer tm_key_…" \
-H "Content-Type: application/json" \
-d '{"name":"Mara 🌻","about":"Gardening in the city.","avatar":"8c7b6a59-4837-4261-9f5e-d4c3b2a1f0e9"}' \
"https://api.tellmelo.com/v2/me/profile"Yanıt Bir Ok ile yanıt verir.
Örnek {
"ok": true
}Olası durumlar: 200400401403429
GET /v2/me/emojisKendi emojilerin.
Yetki read ETag ile v2.19 sürümünden beri Örnek istek curl \
-H "Authorization: Bearer tm_key_…" \
"https://api.tellmelo.com/v2/me/emojis"Yanıt Bir sayfa OwnEmoji ile yanıt verir, `items` ve `next` olarak.
Örnek {
"items": [
{
"name": "sunflower",
"url": "/api/media?id=8c7b6a59-4837-4261-9f5e-d4c3b2a1f0e9",
"animated": false,
"resting": false
}
],
"next": null
}Olası durumlar: 200304401429
POST /v2/me/emojis/picturesKendi emojin için resmi bayt olarak yükle.
Yetki profile v2.19 sürümünden beri Hareketli emojiler abonelik gerektirir. Dönüştürüldükten sonra çok büyükse resim reddedilir.
Örnek istek curl -X POST \
-H "Authorization: Bearer tm_key_…" \
-H "Content-Type: application/octet-stream" \
--data-binary @picture.png \
"https://api.tellmelo.com/v2/me/emojis/pictures"Yanıt Bir EmojiPicture ile yanıt verir.
Örnek {
"id": "8c7b6a59-4837-4261-9f5e-d4c3b2a1f0e9",
"url": "/api/media?id=8c7b6a59-4837-4261-9f5e-d4c3b2a1f0e9",
"animated": false
}Olası durumlar: 200401403429
POST /v2/me/emojisKendi emojini oluştur. Tüm emojilerini döndürür.
Yetki profile v2.19 sürümünden beri Kaç emoji oluşturabileceğin aboneliğe bağlıdır.
Parametreler Ad Tür Anlamı namegövdede stringzorunlu Emojiyi yazdığın ad, :ad: şeklinde. picturegövdede stringzorunlu POST /me/emojis/pictures yanıtındaki id.
Örnek istek curl -X POST \
-H "Authorization: Bearer tm_key_…" \
-H "Content-Type: application/json" \
-d '{"name":"sunflower","picture":"8c7b6a59-4837-4261-9f5e-d4c3b2a1f0e9"}' \
"https://api.tellmelo.com/v2/me/emojis"Yanıt Bir sayfa OwnEmoji ile yanıt verir, `items` ve `next` olarak.
Örnek {
"items": [
{
"name": "sunflower",
"url": "/api/media?id=8c7b6a59-4837-4261-9f5e-d4c3b2a1f0e9",
"animated": false,
"resting": false
}
],
"next": null
}Olası durumlar: 200400401403429
DELETE /v2/me/emojis/{name}Kendi emojini kaldır. Kalanları döndürür.
Yetki profile v2.19 sürümünden beri Parametreler Ad Tür Anlamı nameyolda stringzorunlu Emojinin adı, iki nokta olmadan.
Örnek istek curl -X DELETE \
-H "Authorization: Bearer tm_key_…" \
"https://api.tellmelo.com/v2/me/emojis/sunflower"Yanıt Bir sayfa OwnEmoji ile yanıt verir, `items` ve `next` olarak.
Örnek {
"items": [
{
"name": "sunflower",
"url": "/api/media?id=8c7b6a59-4837-4261-9f5e-d4c3b2a1f0e9",
"animated": false,
"resting": false
}
],
"next": null
}Olası durumlar: 200400401403404429
PUT /v2/me/emojis/sharingTakipçilerinin emojilerini kendi metinlerinde kullanıp kullanamayacağını belirle.
Yetki profile v2.19 sürümünden beri Parametreler Ad Tür Anlamı sharedgövdede booleanzorunlu true emojilerini takipçilerinle paylaşır, false paylaşmaz.
Örnek istek curl -X PUT \
-H "Authorization: Bearer tm_key_…" \
-H "Content-Type: application/json" \
-d '{"shared":true}' \
"https://api.tellmelo.com/v2/me/emojis/sharing"Yanıt Bir Ok ile yanıt verir.
Örnek {
"ok": true
}Olası durumlar: 200400401403429
GET /v2/me/webhooksWebhook’ların ve durumları.
Yetki webhooks ETag ile v2.19 sürümünden beri webhooks izni gerekir. Webhook’lar kurum aboneliğiyle veya ortak olarak gelir.
Örnek istek curl \
-H "Authorization: Bearer tm_key_…" \
"https://api.tellmelo.com/v2/me/webhooks"Yanıt Bir sayfa Webhook ile yanıt verir, `items` ve `next` olarak.
Örnek {
"items": [
{
"id": "1f2e3d4c-5b6a-4798-8a7b-6c5d4e3f2a1b",
"url": "https://example.org/tellmelo-hook",
"kinds": [
"reply",
"mention"
],
"active": true,
"lastStatus": 200,
"lastAt": 1758624000000,
"failures": 0
}
],
"next": null
}Olası durumlar: 200304401403429
POST /v2/me/webhooksWebhook oluştur. id ve imzaların sırrını yalnızca bu seferlik döndürür.
Yetki webhooks v2.19 sürümünden beri Her teslimat sırla imzalanır (X-Tellmelo-Signature). Sakla; bir daha gösterilmez.
Parametreler Ad Tür Anlamı urlgövdede stringzorunlu Yerel ağların dışında, kimlik bilgisi içermeyen bir HTTPS adresi. kindsgövdede string[]zorunlu Webhook’a nelerin bildirileceği. Hangi türlerin açık olduğu aboneliğine ve ortaklığına bağlıdır.replymentiongroup_mentionfollowlikerepostmessagequota_changedquota_giftdrop_claimeddrop_empty
Örnek istek curl -X POST \
-H "Authorization: Bearer tm_key_…" \
-H "Content-Type: application/json" \
-d '{"url":"https://example.org/tellmelo-hook","kinds":["reply","mention"]}' \
"https://api.tellmelo.com/v2/me/webhooks"Yanıt Bir WebhookCreated ile yanıt verir.
Örnek {
"id": "1f2e3d4c-5b6a-4798-8a7b-6c5d4e3f2a1b",
"secret": "whsec_3f9a…"
}Olası durumlar: 200400401403429
DELETE /v2/me/webhooks/{id}Webhook’u sil.
Yetki webhooks v2.19 sürümünden beri Parametreler Ad Tür Anlamı idyolda stringzorunlu Webhook’un id değeri.
Örnek istek curl -X DELETE \
-H "Authorization: Bearer tm_key_…" \
"https://api.tellmelo.com/v2/me/webhooks/1f2e3d4c-5b6a-4798-8a7b-6c5d4e3f2a1b"Yanıt Bir Ok ile yanıt verir.
Örnek {
"ok": true
}Olası durumlar: 200400401403404429
POST /v2/me/webhooks/{id}/testWebhook’a deneme gönder.
Yetki webhooks v2.19 sürümünden beri Parametreler Ad Tür Anlamı idyolda stringzorunlu Webhook’un id değeri.
Örnek istek curl -X POST \
-H "Authorization: Bearer tm_key_…" \
"https://api.tellmelo.com/v2/me/webhooks/1f2e3d4c-5b6a-4798-8a7b-6c5d4e3f2a1b/test"Yanıt Bir Ok ile yanıt verir.
Örnek {
"ok": true
}Olası durumlar: 200400401403404429
Bildirimler Hesabın çevresinde olanlar, sayfa sayfa.
GET /v2/notificationsBildirimlerin, en yenisi önce.
Yetki read sayfalanabilir ETag ile v2.0 sürümünden beri Okumak hiçbir şeyi okundu işaretlemez; bunu POST /notifications/read yapar. Aynı gönderideki aynı türden olaylar tek satırdadır; more kaç tane olduğunu söyler.
Parametreler Ad Tür Anlamı limitadreste integeristeğe bağlı Sayfa başına kayıt: varsayılan 20, en fazla 50. cursoradreste stringisteğe bağlı Önceki yanıttaki next. Yoksa baştan.
Örnek istek curl \
-H "Authorization: Bearer tm_key_…" \
"https://api.tellmelo.com/v2/notifications?limit=20"Yanıt Bir sayfa Notification ile yanıt verir, `items` ve `next` olarak.
Örnek {
"items": [
{
"id": "3f2e1d0c-9b8a-4765-8432-10fedcba9876",
"kind": "like",
"text": null,
"actor": {
"handle": "jon",
"name": "Jon"
},
"postId": "5f0c2a9e-8d41-4b7a-9c3e-2e61d0f4a7b1",
"read": false,
"more": 2,
"createdAt": 1758624300000,
"updatedAt": 1758624900000
}
],
"next": "MTc1ODYyNDAwMDAwMDo1ZjBjMmE5ZS04ZDQx"
}Olası durumlar: 200304401429
POST /v2/notifications/readBildirimlerini okundu olarak işaretlemek.
Yetki write v2.0 sürümünden beri Örnek istek curl -X POST \
-H "Authorization: Bearer tm_key_…" \
"https://api.tellmelo.com/v2/notifications/read"Yanıt Bir Ok ile yanıt verir.
Örnek {
"ok": true
}Olası durumlar: 200401403429
Mesajlar Gelen kutun ve sohbetlerin. Bir sohbet diğer hesabın adını taşır.
GET /v2/conversationsPosta kutun: her sohbet için bir satır, en yenisi önce.
Yetki read sayfalanabilir ETag ile v2.0 sürümünden beri Parametreler Ad Tür Anlamı limitadreste integeristeğe bağlı Sayfa başına kayıt: varsayılan 20, en fazla 50. cursoradreste stringisteğe bağlı Önceki yanıttaki next. Yoksa baştan.
Örnek istek curl \
-H "Authorization: Bearer tm_key_…" \
"https://api.tellmelo.com/v2/conversations?limit=20"Yanıt Bir sayfa Conversation ile yanıt verir, `items` ve `next` olarak.
Örnek {
"items": [
{
"with": "d4c3b2a1-6e5f-4a7b-9c8d-1e2f3a4b5c6d",
"handle": "jon",
"name": "Jon",
"excerpt": "See you on Saturday at the market!",
"truncated": false,
"fromMe": true,
"lastMessageId": "7c6b5a49-3827-4165-9f0e-d1c2b3a49586",
"unread": 0,
"updatedAt": 1758624060000
}
],
"next": "MTc1ODYyNDAwMDAwMDo1ZjBjMmE5ZS04ZDQx"
}Olası durumlar: 200304401429
GET /v2/conversations/{with}/messagesBir sohbetin mesajları, en yenisi önce.
Yetki read sayfalanabilir ETag ile v2.0 sürümünden beri Okumak hiçbir şeyi okundu işaretlemez; bunu POST /conversations/{with}/read yapar.
Parametreler Ad Tür Anlamı withyolda stringzorunlu Diğer hesabın id değeri. Bir sohbetin kendi id değeri yoktur. limitadreste integeristeğe bağlı Sayfa başına kayıt: varsayılan 20, en fazla 50. cursoradreste stringisteğe bağlı Önceki yanıttaki next. Yoksa baştan.
Örnek istek curl \
-H "Authorization: Bearer tm_key_…" \
"https://api.tellmelo.com/v2/conversations/a3e1f7c2-54b9-4d0e-8f16-7b2c9d4e1a05/messages?limit=20"Yanıt Bir sayfa Message ile yanıt verir, `items` ve `next` olarak.
Örnek {
"items": [
{
"id": "7c6b5a49-3827-4165-9f0e-d1c2b3a49586",
"text": "See you on Saturday at the market!",
"from": "a3e1f7c2-54b9-4d0e-8f16-7b2c9d4e1a05",
"to": "d4c3b2a1-6e5f-4a7b-9c8d-1e2f3a4b5c6d",
"read": true,
"media": [],
"replyTo": null,
"createdAt": 1758624060000
}
],
"next": "MTc1ODYyNDAwMDAwMDo1ZjBjMmE5ZS04ZDQx"
}Olası durumlar: 200304400401404429
POST /v2/conversations/{with}/messagesBir sohbete mesaj göndermek.
Yetki write v2.0 sürümünden beri Uygulamanın kuralları geçerlidir: seni engelleyen kişiye ulaşılamaz ve karşı tarafın ayarları geçerlidir.
Görseller, GIF’ler ve videolar mesajlara API üzerinden eklenemez, yalnızca uygulamada.
Parametreler Ad Tür Anlamı withyolda stringzorunlu Diğer hesabın id değeri. Bir sohbetin kendi id değeri yoktur. textgövdede stringzorunlu Gönderinin, yanıtın ya da mesajın metni. replyTogövdede stringisteğe bağlı Bu mesajın yanıt verdiği, bu konuşmadaki önceki bir mesajın id değeri. 2.2’den beri.
Örnek istek curl -X POST \
-H "Authorization: Bearer tm_key_…" \
-H "Content-Type: application/json" \
-d '{"text":"See you on Saturday at the market!"}' \
"https://api.tellmelo.com/v2/conversations/a3e1f7c2-54b9-4d0e-8f16-7b2c9d4e1a05/messages"Yanıt Bir Ok ile yanıt verir.
Örnek {
"ok": true
}Olası durumlar: 200400401403404429
POST /v2/conversations/{with}/readBir sohbetin bütün mesajlarını okundu olarak işaretle.
Yetki write v2.1 sürümünden beri Parametreler Ad Tür Anlamı withyolda stringzorunlu Diğer hesabın id değeri. Bir sohbetin kendi id değeri yoktur.
Örnek istek curl -X POST \
-H "Authorization: Bearer tm_key_…" \
"https://api.tellmelo.com/v2/conversations/a3e1f7c2-54b9-4d0e-8f16-7b2c9d4e1a05/read"Yanıt Bir Ok ile yanıt verir.
Örnek {
"ok": true
}Olası durumlar: 200400401403404429
DELETE /v2/conversations/{with}/messages/{id}Kendi mesajını silmek.
Yetki write v2.12 sürümünden beri Yalnızca kendi mesajların ve yalnızca gönderdikten sonraki 24 saat içinde.
Parametreler Ad Tür Anlamı withyolda stringzorunlu Diğer hesabın id değeri. Bir sohbetin kendi id değeri yoktur. idyolda stringzorunlu Mesajın kimliği.
Örnek istek curl -X DELETE \
-H "Authorization: Bearer tm_key_…" \
"https://api.tellmelo.com/v2/conversations/a3e1f7c2-54b9-4d0e-8f16-7b2c9d4e1a05/messages/7c6b5a49-3827-4165-9f0e-d1c2b3a49586"Yanıt Bir Ok ile yanıt verir.
Örnek {
"ok": true
}Olası durumlar: 200400401403404429
POST /v2/conversations/{with}/plannedBir mesajı sonraya planla. Planlanan mesajın id değerini döndürür.
Yetki write v2.19 sürümünden beri Planlanmış mesajları içeren bir abonelik gerekir, yoksa 403. İki tarafta da uçtan uca şifreleme açıksa yalnızca uygulamada çalışır.
Parametreler Ad Tür Anlamı withyolda stringzorunlu Diğer hesabın id değeri. Bir sohbetin kendi id değeri yoktur. textgövdede stringzorunlu Gönderinin, yanıtın ya da mesajın metni. sendAtgövdede integerzorunlu Mesajın ne zaman gönderileceği, 1970’ten beri milisaniye olarak.
Örnek istek curl -X POST \
-H "Authorization: Bearer tm_key_…" \
-H "Content-Type: application/json" \
-d '{"text":"Happy birthday! 🎂","sendAt":1758700000000}' \
"https://api.tellmelo.com/v2/conversations/a3e1f7c2-54b9-4d0e-8f16-7b2c9d4e1a05/planned"Yanıt Bir Made ile yanıt verir.
Örnek {
"id": "0d9c8b7a-6f5e-4d3c-2b1a-0f9e8d7c6b5a"
}Olası durumlar: 200400401403404429
GET /v2/me/planned-messagesHenüz gönderilecek mesajların, zamana göre sıralı.
Yetki read ETag ile v2.19 sürümünden beri Parametreler Ad Tür Anlamı withadreste stringisteğe bağlı Yalnızca bu hesaba giden mesajlar (id değeri).
Örnek istek curl \
-H "Authorization: Bearer tm_key_…" \
"https://api.tellmelo.com/v2/me/planned-messages"Yanıt Bir sayfa PlannedMessage ile yanıt verir, `items` ve `next` olarak.
Örnek {
"items": [
{
"id": "3b2a1c0d-9e8f-4a7b-b6c5-d4e3f2a1b0c9",
"to": "a3e1f7c2-54b9-4d0e-8f16-7b2c9d4e1a05",
"text": "Happy birthday! 🎂",
"sendAt": 1758710400000,
"state": "waiting"
}
],
"next": null
}Olası durumlar: 200304401429
POST /v2/me/planned-messages/{id}/sendBekletilen veya başarısız olan planlanmış bir mesajı şimdi gönder.
Yetki write v2.19 sürümünden beri Parametreler Ad Tür Anlamı idyolda stringzorunlu Planlanan mesajın id değeri.
Örnek istek curl -X POST \
-H "Authorization: Bearer tm_key_…" \
"https://api.tellmelo.com/v2/me/planned-messages/3b2a1c0d-9e8f-4a7b-b6c5-d4e3f2a1b0c9/send"Yanıt Bir Ok ile yanıt verir.
Örnek {
"ok": true
}Olası durumlar: 200400401403404429
DELETE /v2/me/planned-messages/{id}Planlanmış bir mesajı gönderilmeden önce sil.
Yetki write v2.19 sürümünden beri Parametreler Ad Tür Anlamı idyolda stringzorunlu Planlanan mesajın id değeri.
Örnek istek curl -X DELETE \
-H "Authorization: Bearer tm_key_…" \
"https://api.tellmelo.com/v2/me/planned-messages/3b2a1c0d-9e8f-4a7b-b6c5-d4e3f2a1b0c9"Yanıt Bir Ok ile yanıt verir.
Örnek {
"ok": true
}Olası durumlar: 200400401403404429
İlişkiler Beğen, kaydet, paylaş, takip et, katıl, engelle: tek yol, active ile kurulur ve geri alınır. 2.19’dan beri listeler de: takipçiler, takip edilenler ve kendi engellemelerin ile sessize aldıkların.
POST /v2/relationsBeğenmek, kaydetmek, paylaşmak, takip etmek, katılmak, engellemek, sessize almak, kind değerine göre.
Yetki write v2.0 sürümünden beri target, like, save ve repost için bir gönderi, join için bir grup, follow, block ve mute için bir hesaptır. active: false ilişkiyi geri alır.
Parametreler Ad Tür Anlamı kindgövdede stringzorunlu Hangi ilişki: like, save, repost, follow, join, block ya da mute (2.2 sürümünden beri).likesaverepostfollowjoinblockmute targetgövdede stringzorunlu kind değerine göre gönderinin, profilin ya da grubun id değeri.activegövdede booleanisteğe bağlı true ilişkiyi kurar, false geri alır.
Örnek istek curl -X POST \
-H "Authorization: Bearer tm_key_…" \
-H "Content-Type: application/json" \
-d '{"kind":"like","target":"5f0c2a9e-8d41-4b7a-9c3e-2e61d0f4a7b1","active":true}' \
"https://api.tellmelo.com/v2/relations"Yanıt Bir Ok ile yanıt verir.
Örnek {
"ok": true
}Olası durumlar: 200400401403429
GET /v2/profiles/{handle}/followersBir profili kimlerin takip ettiği, en yeniler önce.
Yetki read sayfalanabilir ETag ile v2.19 sürümünden beri Parametreler Ad Tür Anlamı handleyolda stringzorunlu Bir profilin kısa adı; büyük ya da küçük harf fark etmez. limitadreste integeristeğe bağlı Sayfa başına kayıt: varsayılan 20, en fazla 50. cursoradreste stringisteğe bağlı Önceki yanıttaki next. Yoksa baştan.
Örnek istek curl \
-H "Authorization: Bearer tm_key_…" \
"https://api.tellmelo.com/v2/profiles/mara/followers?limit=20"Yanıt Bir sayfa ProfileBrief ile yanıt verir, `items` ve `next` olarak.
Örnek {
"items": [
{
"id": "a3e1f7c2-54b9-4d0e-8f16-7b2c9d4e1a05",
"handle": "mara",
"name": "Mara 🌻",
"verified": true,
"accountKind": "person"
}
],
"next": "MTc1ODYyNDAwMDAwMDo1ZjBjMmE5ZS04ZDQx"
}Olası durumlar: 200304400401404429
GET /v2/profiles/{handle}/followingBir profilin kimleri takip ettiği, en yeniler önce.
Yetki read sayfalanabilir ETag ile v2.19 sürümünden beri Parametreler Ad Tür Anlamı handleyolda stringzorunlu Bir profilin kısa adı; büyük ya da küçük harf fark etmez. limitadreste integeristeğe bağlı Sayfa başına kayıt: varsayılan 20, en fazla 50. cursoradreste stringisteğe bağlı Önceki yanıttaki next. Yoksa baştan.
Örnek istek curl \
-H "Authorization: Bearer tm_key_…" \
"https://api.tellmelo.com/v2/profiles/mara/following?limit=20"Yanıt Bir sayfa ProfileBrief ile yanıt verir, `items` ve `next` olarak.
Örnek {
"items": [
{
"id": "a3e1f7c2-54b9-4d0e-8f16-7b2c9d4e1a05",
"handle": "mara",
"name": "Mara 🌻",
"verified": true,
"accountKind": "person"
}
],
"next": "MTc1ODYyNDAwMDAwMDo1ZjBjMmE5ZS04ZDQx"
}Olası durumlar: 200304400401404429
GET /v2/me/relationsEngellediğin, sessize aldığın veya yalnızca mesajlarda engellediğin hesaplar, en yeniler önce.
Yetki read sayfalanabilir ETag ile v2.19 sürümünden beri Yalnızca kendi listelerin. Kurma ve geri alma POST /relations ile.
Parametreler Ad Tür Anlamı kindadreste stringzorunlu block engellenenler, mute sessize alınanlar, dm_block yalnızca mesajlarda engellenenler.blockmutedm_blocklimitadreste integeristeğe bağlı Sayfa başına kayıt: varsayılan 20, en fazla 50. cursoradreste stringisteğe bağlı Önceki yanıttaki next. Yoksa baştan.
Örnek istek curl \
-H "Authorization: Bearer tm_key_…" \
"https://api.tellmelo.com/v2/me/relations?kind=mute&limit=20"Yanıt Bir sayfa ProfileBrief ile yanıt verir, `items` ve `next` olarak.
Örnek {
"items": [
{
"id": "a3e1f7c2-54b9-4d0e-8f16-7b2c9d4e1a05",
"handle": "mara",
"name": "Mara 🌻",
"verified": true,
"accountKind": "person"
}
],
"next": "MTc1ODYyNDAwMDAwMDo1ZjBjMmE5ZS04ZDQx"
}Olası durumlar: 200304400401429
Koleksiyonlar Kaydettiğin gönderileri kendi koleksiyonlarına ayır. Bir gönderi birden fazla koleksiyonda olabilir; koleksiyondan çıkarılan gönderi kayıtlı kalır.
GET /v2/me/collectionsKoleksiyonların ve içlerindeki gönderi sayısı.
Yetki read ETag ile v2.19 sürümünden beri Örnek istek curl \
-H "Authorization: Bearer tm_key_…" \
"https://api.tellmelo.com/v2/me/collections"Yanıt Bir sayfa Collection ile yanıt verir, `items` ve `next` olarak.
Örnek {
"items": [
{
"id": "6d5c4b3a-2918-4e7f-a1b2-c3d4e5f60718",
"name": "Recipes",
"count": 12
}
],
"next": null
}Olası durumlar: 200304401429
POST /v2/me/collectionsKoleksiyon oluştur. id değerini döndürür.
Yetki write v2.19 sürümünden beri Kaç koleksiyon oluşturabileceğin aboneliğe bağlıdır.
Parametreler Ad Tür Anlamı namegövdede stringzorunlu Ad, en fazla 40 karakter. Büyük-küçük harf gözetmeksizin hesap başına benzersiz.
Örnek istek curl -X POST \
-H "Authorization: Bearer tm_key_…" \
-H "Content-Type: application/json" \
-d '{"name":"Recipes"}' \
"https://api.tellmelo.com/v2/me/collections"Yanıt Bir Made ile yanıt verir.
Örnek {
"id": "0d9c8b7a-6f5e-4d3c-2b1a-0f9e8d7c6b5a"
}Olası durumlar: 200400401403429
PUT /v2/me/collections/{id}Koleksiyonu yeniden adlandır.
Yetki write v2.19 sürümünden beri Parametreler Ad Tür Anlamı idyolda stringzorunlu Koleksiyonun id değeri. namegövdede stringzorunlu Ad, en fazla 40 karakter. Büyük-küçük harf gözetmeksizin hesap başına benzersiz.
Örnek istek curl -X PUT \
-H "Authorization: Bearer tm_key_…" \
-H "Content-Type: application/json" \
-d '{"name":"Baking"}' \
"https://api.tellmelo.com/v2/me/collections/6d5c4b3a-2918-4e7f-a1b2-c3d4e5f60718"Yanıt Bir Ok ile yanıt verir.
Örnek {
"ok": true
}Olası durumlar: 200400401403404429
DELETE /v2/me/collections/{id}Koleksiyonu sil.
Yetki write v2.19 sürümünden beri İçindeki gönderiler kayıtlı kalır.
Parametreler Ad Tür Anlamı idyolda stringzorunlu Koleksiyonun id değeri.
Örnek istek curl -X DELETE \
-H "Authorization: Bearer tm_key_…" \
"https://api.tellmelo.com/v2/me/collections/6d5c4b3a-2918-4e7f-a1b2-c3d4e5f60718"Yanıt Bir Ok ile yanıt verir.
Örnek {
"ok": true
}Olası durumlar: 200400401403404429
GET /v2/me/collections/{id}/postsBir koleksiyonun gönderileri, kaydedilenler sekmesindeki gibi.
Yetki read sayfalanabilir v2.19 sürümünden beri Parametreler Ad Tür Anlamı idyolda stringzorunlu Koleksiyonun id değeri. limitadreste integeristeğe bağlı Sayfa başına kayıt: varsayılan 20, en fazla 50. cursoradreste stringisteğe bağlı Önceki yanıttaki next. Yoksa baştan.
Örnek istek curl \
-H "Authorization: Bearer tm_key_…" \
"https://api.tellmelo.com/v2/me/collections/6d5c4b3a-2918-4e7f-a1b2-c3d4e5f60718/posts?limit=20"Yanıt Bir sayfa Post ile yanıt verir, `items` ve `next` olarak.
Örnek {
"items": [
{
"id": "5f0c2a9e-8d41-4b7a-9c3e-2e61d0f4a7b1",
"text": "The bees are back in the garden 🐝 #garden",
"kind": "poll",
"author": {
"id": "a3e1f7c2-54b9-4d0e-8f16-7b2c9d4e1a05",
"handle": "mara",
"name": "Mara 🌻",
"verified": true,
"accountKind": "person"
},
"community": {
"id": "c81d4e2a-0f3b-4a6c-9e57-1d2b3c4a5f60",
"name": "Urban Gardening"
},
"media": [
{
"url": "/api/media?id=b2d7e9f1-3c4a-4e8b-a1f0-6d5c4b3a2918",
"kind": "image",
"poster": null,
"ai": "without"
}
],
"poll": {
"options": [
{
"text": "Lavender",
"votes": 12
},
{
"text": "Sunflowers",
"votes": 7
},
{
"text": "Clover",
"votes": 3
}
],
"total": 22,
"multiple": false,
"endsAt": null,
"running": true,
"resultsVisible": true,
"myVotes": [
0
]
},
"quotes": null,
"continues": null,
"counts": {
"replies": 4,
"likes": 31,
"reposts": 2
},
"pinned": false,
"giftDrop": {
"item": "plan",
"quantity": 3,
"places": 10,
"left": 4,
"audience": "followers",
"newAccounts": false,
"status": "open",
"claimed": true
},
"createdAt": 1758624000000
}
],
"next": "MTc1ODYyNDAwMDAwMDo1ZjBjMmE5ZS04ZDQx"
}Olası durumlar: 200400401404429
POST /v2/me/collections/{id}/postsBir gönderiyi koleksiyona koy veya çıkar.
Yetki write v2.19 sürümünden beri Gönderiyi koymak onu kaydeder de. Yalnızca görünür gönderiler.
Parametreler Ad Tür Anlamı idyolda stringzorunlu Koleksiyonun id değeri. postgövdede stringzorunlu Gönderinin id değeri. insidegövdede booleanisteğe bağlı true gönderiyi koyar (varsayılan), false çıkarır.
Örnek istek curl -X POST \
-H "Authorization: Bearer tm_key_…" \
-H "Content-Type: application/json" \
-d '{"post":"5f0c2a9e-8d41-4b7a-9c3e-2e61d0f4a7b1","inside":true}' \
"https://api.tellmelo.com/v2/me/collections/6d5c4b3a-2918-4e7f-a1b2-c3d4e5f60718/posts"Yanıt Bir Ok ile yanıt verir.
Örnek {
"ok": true
}Olası durumlar: 200400401403404429
Hediyeler Bir partnerin kotasını okumak ve ondan hediye vermek, gönderilerin altına hediye koymak ve takip etmek. Hediyeleri almak, uygulamadaki insanlara özeldir.
GET /v2/partner/quotaKotanda hediye edilecek ne kaldığı.
Yetki read ETag ile v2.12 sürümünden beri Yalnızca kotası olan partnerler için; diğer herkes 403 alır.
Örnek istek curl \
-H "Authorization: Bearer tm_key_…" \
"https://api.tellmelo.com/v2/partner/quota"Yanıt Bir Quota ile yanıt verir.
Örnek {
"months": 120,
"sparks": 500,
"looks": [
{
"id": "frame-gold",
"name": "Goldring",
"kind": "frame",
"quantity": 25
}
]
}Olası durumlar: 200304401429
GET /v2/partner/giftsKotandan kime, ne zaman ne verdiğin – en yenisi önce.
Yetki read sayfalanabilir ETag ile v2.12 sürümünden beri Yalnızca kotası olan partnerler için; diğer herkes 403 alır.
Parametreler Ad Tür Anlamı limitadreste integeristeğe bağlı Sayfa başına kayıt: varsayılan 20, en fazla 50. cursoradreste stringisteğe bağlı Önceki yanıttaki next. Yoksa baştan.
Örnek istek curl \
-H "Authorization: Bearer tm_key_…" \
"https://api.tellmelo.com/v2/partner/gifts?limit=20"Yanıt Bir sayfa QuotaGift ile yanıt verir, `items` ve `next` olarak.
Örnek {
"items": [
{
"item": "plan",
"quantity": 3,
"itemId": null,
"recipient": {
"handle": "jon",
"name": "Jon"
},
"createdAt": 1758627600000
}
],
"next": "MTc1ODYyNDAwMDAwMDo1ZjBjMmE5ZS04ZDQx"
}Olası durumlar: 200304401429
POST /v2/partner/giftsKotandan bir üyeye abonelik ayı ya da kıvılcım hediye etmek.
Yetki gifts v2.12 sürümünden beri Yalnızca kotası olan partnerler için; diğer herkes 403 alır.
Uygulamadaki gibi, üye hediyenin kimden geldiğini görür. Saatte en fazla 60 hediye.
Parametreler Ad Tür Anlamı handlegövdede stringzorunlu Hediye ettiğin üyenin @adı, @ ile ya da @ olmadan. itemgövdede stringzorunlu Abonelik ayları için plan, kıvılcımlar için sparks, stokundan bir görünüm için shop (2.13 sürümünden beri).plansparksshop quantitygövdede integeristeğe bağlı Ne kadar: hediye başına en fazla 12 ay ya da 35 kıvılcım. itemIdgövdede stringisteğe bağlı shop için: kotadaki looks onu nasıl adlandırıyorsa, görünümün kimliği. Hediye başına bir adet; bu durumda quantity geçerli değildir.
Örnek istek curl -X POST \
-H "Authorization: Bearer tm_key_…" \
-H "Content-Type: application/json" \
-d '{"handle":"jon","item":"plan","quantity":3,"itemId":"frame-gold"}' \
"https://api.tellmelo.com/v2/partner/gifts"Yanıt Bir Quota ile yanıt verir.
Örnek {
"months": 120,
"sparks": 500,
"looks": [
{
"id": "frame-gold",
"name": "Goldring",
"kind": "frame",
"quantity": 25
}
]
}Olası durumlar: 200400401403429
GET /v2/gift-dropsGönderilerinin altındaki hediyeler: kaç yerin hâlâ boş olduğu ve nasıl ödendiği.
Yetki read sayfalanabilir ETag ile v2.12 sürümünden beri Parametreler Ad Tür Anlamı limitadreste integeristeğe bağlı Sayfa başına kayıt: varsayılan 20, en fazla 50. cursoradreste stringisteğe bağlı Önceki yanıttaki next. Yoksa baştan.
Örnek istek curl \
-H "Authorization: Bearer tm_key_…" \
"https://api.tellmelo.com/v2/gift-drops?limit=20"Yanıt Bir sayfa OwnGiftDrop ile yanıt verir, `items` ve `next` olarak.
Örnek {
"items": [
{
"item": "plan",
"quantity": 3,
"places": 10,
"left": 4,
"audience": "followers",
"newAccounts": false,
"status": "open",
"claimed": false,
"postId": "5f0c2a9e-8d41-4b7a-9c3e-2e61d0f4a7b1",
"funding": "quota",
"createdAt": 1758624000000
}
],
"next": "MTc1ODYyNDAwMDAwMDo1ZjBjMmE5ZS04ZDQx"
}Olası durumlar: 200304401429
POST /v2/gift-dropsBaşkalarının alabileceği hediyelerle bir gönderi yayımlamak.
Yetki gifts v2.12 sürümünden beri Sahip ve bu izne sahip ekip üyeleri için ücretsiz, diğer durumlarda kotandan. Ödeme gerektirecek her şey 422 ile reddedilir – ödeme yalnızca uygulamada yapılır.
Hediyeler yalnızca uygulamada alınabilir; böylece hiçbir program tüm yerleri kapamaz. Kaç yerin boş olduğu gönderinin giftDrop alanındadır.
Parametreler Ad Tür Anlamı textgövdede stringisteğe bağlı Gönderinin, yanıtın ya da mesajın metni. communitygövdede stringisteğe bağlı Gönderinin gideceği akış kanalının grubunun id’si; kanal açık olmalı ve bunun için iznin olmalı. Olmadan gönderi hiçbir grubun içinde olmaz. itemgövdede stringzorunlu Abonelik ayları için plan, kıvılcımlar için sparks.plansparks quantitygövdede integerzorunlu Her yerin içinde ne olduğu: en fazla 12 ay ya da 35 kıvılcım. placesgövdede integerzorunlu Kaç kişi için, en fazla 10.000. audiencegövdede stringisteğe bağlı Kimler alabilir: all herkes, followers yalnızca takipçilerin, group yalnızca grubun üyeleri (yalnızca community ile birlikte).allfollowersgroup newAccountsgövdede booleanisteğe bağlı true, 7 günden yeni hesapların da almasına izin verir. Belirtmezsen dışarıda kalırlar.
Örnek istek curl -X POST \
-H "Authorization: Bearer tm_key_…" \
-H "Content-Type: application/json" \
-d '{"text":"Ten times three months of Supporter – first come, first served! 🎁","item":"plan","quantity":3,"places":10,"audience":"all","newAccounts":false}' \
"https://api.tellmelo.com/v2/gift-drops"Yanıt Bir DropCreated ile yanıt verir.
Örnek {
"id": "5f0c2a9e-8d41-4b7a-9c3e-2e61d0f4a7b1",
"funding": "quota"
}Olası durumlar: 200400401403429
Nesneler Tüm nesneler, alan alan. [] liste demektir.
ServiceKökün yanıtı: kimin yanıt verdiği ve bu anahtarın neler yapabildiği.
Alan Tür Anlamı namestringHer zaman tellmelo. versionstringAPI’nin sürümü, örneğin 2.1. scopestringBu anahtarın neler yapabildiği: read ya da read write. rateLimitRateLimitBu anahtarın kotası. docsstringBu belgelerin nerede olduğu, bu sunucuda bir yol olarak. specstringMakinece okunabilir açıklamanın nerede olduğu.
Örnek {
"name": "tellmelo",
"version": "2.20",
"scope": "read write",
"rateLimit": {
"limit": 120,
"remaining": 117
},
"docs": "/developers/docs",
"spec": "/api/v2/openapi.json"
}RateLimitBu anahtarın içinde bulunulan dakikadaki kotası.
Alan Tür Anlamı limitintegerDakikadaki istek sayısı. remainingintegerBu dakikada kaç tane kaldığı.
Örnek {
"limit": 120,
"remaining": 117
}PostBir gönderi, her yerde aynı biçimde.
Alan Tür Anlamı idstringGönderinin kimliği. textstringya da null Yazıldığı haliyle metin (yalnızca anket ya da yalnızca görsellerden oluşan bir gönderide null). kindstringGönderinin ne olduğu.post — Metin, görsel ya da alıntı içeren bir gönderi.poll — Anket içeren bir gönderi. authorProfileBriefKimin yazdığı. communityCommunityBriefya da null Yazıldığı grup (hiçbir grubun içinde değilse null). mediaMedia[]Görselleri, sırasıyla; yoksa boş. pollPollya da null Anket (yoksa null). quotesstringya da null Bu gönderinin alıntıladığı gönderinin kimliği. continuesstringya da null Bu gönderinin ek olarak devam ettirdiği gönderinin kimliği. countsCountsYanıtlar, beğeniler ve yeniden paylaşımlar. pinnedbooleanYazarının profilinin en üstüne sabitlenip sabitlenmediği. giftDropGiftDropya da null Gönderinin altında alınabilecek hediyeler (yoksa null). createdAtintegerNe zaman yazıldığı.
Örnek {
"id": "5f0c2a9e-8d41-4b7a-9c3e-2e61d0f4a7b1",
"text": "The bees are back in the garden 🐝 #garden",
"kind": "poll",
"author": {
"id": "a3e1f7c2-54b9-4d0e-8f16-7b2c9d4e1a05",
"handle": "mara",
"name": "Mara 🌻",
"verified": true,
"accountKind": "person"
},
"community": {
"id": "c81d4e2a-0f3b-4a6c-9e57-1d2b3c4a5f60",
"name": "Urban Gardening"
},
"media": [
{
"url": "/api/media?id=b2d7e9f1-3c4a-4e8b-a1f0-6d5c4b3a2918",
"kind": "image",
"poster": null,
"ai": "without"
}
],
"poll": {
"options": [
{
"text": "Lavender",
"votes": 12
},
{
"text": "Sunflowers",
"votes": 7
},
{
"text": "Clover",
"votes": 3
}
],
"total": 22,
"multiple": false,
"endsAt": null,
"running": true,
"resultsVisible": true,
"myVotes": [
0
]
},
"quotes": null,
"continues": null,
"counts": {
"replies": 4,
"likes": 31,
"reposts": 2
},
"pinned": false,
"giftDrop": {
"item": "plan",
"quantity": 3,
"places": 10,
"left": 4,
"audience": "followers",
"newAccounts": false,
"status": "open",
"claimed": true
},
"createdAt": 1758624000000
}ReplyBir gönderinin altındaki yanıt: iki alanı fazla olan bir gönderi.
Post nesnesinin her alanı, ayrıca:
Alan Tür Anlamı postIdstringBütün sohbetin bağlı olduğu gönderi. parentIdstringya da null Bu yanıtın yanıt verdiği yanıt (doğrudan gönderiye yanıt veriyorsa null).
Örnek {
"id": "9e4b1c7d-2a3f-4d5e-8b6c-0f1e2d3c4b5a",
"text": "Same here, the lavender is full of them.",
"kind": "post",
"author": {
"id": "d4c3b2a1-6e5f-4a7b-9c8d-1e2f3a4b5c6d",
"handle": "jon",
"name": "Jon",
"verified": false,
"accountKind": "person"
},
"community": null,
"media": [],
"poll": null,
"quotes": null,
"continues": null,
"counts": {
"replies": 0,
"likes": 3,
"reposts": 0
},
"pinned": false,
"giftDrop": null,
"createdAt": 1758624600000,
"postId": "5f0c2a9e-8d41-4b7a-9c3e-2e61d0f4a7b1",
"parentId": null
}ReplyVoteBir yanıta verdiğin oy ve yanıtın puanı.
Alan Tür Anlamı votestringOyun.up — Artı oy.down — Eksi oy.none — Oy yok. scoreintegerArtı oylar eksi eksi oylar, sıfırın altında da olabilir.
Örnek {
"vote": "up",
"score": 12
}PlannedReplySonraya planladığın bir yanıt.
Alan Tür Anlamı idstringPlanlanan yanıtın id değeri. parentIdstringya da null Yanıtlayacağı yanıt (doğrudan gönderiye yanıtsa null). textstringMetin. publishAtintegerNe zaman yayımlanacağı. statestringDurumu.waiting — Zamanını bekliyor.failed — Gönderilemedi, örneğin gönderi artık yok.
Örnek {
"id": "3b2a1c0d-9e8f-4a7b-b6c5-d4e3f2a1b0c9",
"parentId": null,
"text": "Count me in for Saturday!",
"publishAt": 1758710400000,
"state": "waiting"
}ReplySettingsGönderilerinden birinin yanıt ayarları.
Alan Tür Anlamı audiencestringKimler yanıt verebilir.all — Herkes.following — Takip ettiğin hesaplar.mentioned — Gönderide bahsedilenler.nobody — Senden başka kimse. approvalbooleanYanıtların onayını bekleyip beklemediği. slowstringYavaş mod.auto — Çok yanıt gelince kendiliğinden açılır.on — Her zaman açık.off — Kapalı.
Örnek {
"audience": "following",
"approval": false,
"slow": "auto"
}CountsBir gönderinin kaç yanıtı, beğenisi ve yeniden paylaşımı olduğu.
Alan Tür Anlamı repliesintegerYanıtlar, bütün düzeyler birlikte. likesintegerBeğeniler. repostsintegerYeniden paylaşımlar.
Örnek {
"replies": 4,
"likes": 31,
"reposts": 2
}PollBir gönderinin anketi.
Alan Tür Anlamı optionsPollOption[]Seçenekler, sırasıyla. Oy verirken option 0’dan sayılır. totalintegerToplam oy, her zaman vardır. multiplebooleanBirden fazla seçenek seçilip seçilemeyeceği. endsAtintegerya da null Anketin ne zaman bittiği (sonu yoksa null). runningbooleanHâlâ oy verilip verilemeyeceği. resultsVisiblebooleanSeçenek başına oyların gösterilip gösterilmediği (bkz). votes. myVotesinteger[]Seçtiğin seçenekler, 0’dan sayılarak.
Örnek {
"options": [
{
"text": "Lavender",
"votes": 12
},
{
"text": "Sunflowers",
"votes": 7
},
{
"text": "Clover",
"votes": 3
}
],
"total": 22,
"multiple": false,
"endsAt": null,
"running": true,
"resultsVisible": true,
"myVotes": [
0
]
}PollOptionBir anketin bir seçeneği.
Alan Tür Anlamı textstringSeçenek. votesintegerya da null Aldığı oylar (sonuç saklandığı sürece null).
Örnek {
"text": "Lavender",
"votes": 12
}ProfileBriefBaşka nesnelerin içinde göründüğü haliyle bir profil: yazar olarak, bir aramada.
Alan Tür Anlamı idstringHesabın kimliği: /relations ve /conversations/{with} yollarının beklediği değer. handlestring@ olmadan kısa ad, üyenin seçtiği şekilde yazılır.namestringGörünen ad. :name: dahil emoji içerebilir. verifiedbooleanHesabın doğrulanıp doğrulanmadığı. accountKindstringNe tür bir hesap olduğu.person — Bir kişi.business — Bir işletme.association — Bir dernek.automated — Bot gibi otomatik bir hesap.bot — Kendi anahtarıyla bir programın çalıştırdığı grup botu (2.18’den beri).
Örnek {
"id": "a3e1f7c2-54b9-4d0e-8f16-7b2c9d4e1a05",
"handle": "mara",
"name": "Mara 🌻",
"verified": true,
"accountKind": "person"
}ProfileAçıklaması ve takipçileriyle tek başına bir profil.
ProfileBrief nesnesinin her alanı, ayrıca:
Alan Tür Anlamı aboutstringya da null Açıklama (yoksa null). websitestringya da null Profilin web sitesi (yoksa null). 2.3 sürümünden beri. websiteVerifiedbooleanWeb sitesinin rel=me ile bu profile bağlantı verip vermediği, haftalık kontrol edilir. 2.3 sürümünden beri. followersintegerKaç hesabın onu takip ettiği. createdAtintegerya da null Hesabın ne zaman oluşturulduğu (üye katılma tarihini gizlediği sürece null; 2.9’dan beri).
Örnek {
"id": "a3e1f7c2-54b9-4d0e-8f16-7b2c9d4e1a05",
"handle": "mara",
"name": "Mara 🌻",
"verified": true,
"accountKind": "person",
"about": "Beekeeper, allotment, too many seeds. :tellmelo:",
"website": "https://mara-imkerei.example/",
"websiteVerified": true,
"followers": 148,
"createdAt": 1750848000000
}MembershipHesabının grupta ne olduğu ve neyi yapabildiği.
Alan Tür Anlamı leaderstringya da null Grubu kurduysan veya birlikte yönetiyorsan; değilse null.founder — Kurucu.manager — Ortak yönetici. rolesstring[]Rollerinin id’leri, en üstteki önce. permissionsstring[]Grupta neleri yapabildiğin. mutedUntilintegerya da null Bir susturmanın seni burada ne zamana kadar susturduğu; yoksa null.
Örnek {
"leader": null,
"roles": [
"4e5f6a7b-8c9d-4e0f-a1b2-c3d4e5f6a7b8"
],
"permissions": [
"attach",
"invite",
"send",
"view"
],
"mutedUntil": null
}PersonKısaca bir üye.
Alan Tür Anlamı idstringHesabın id’si. handlestringKullanıcı adı, @ olmadan. namestringGörünen ad. botbooleanHesabın bot olup olmadığı (2.18’den beri).
Örnek {
"id": "d4c3b2a1-6e5f-4a7b-9c8d-1e2f3a4b5c6d",
"handle": "jon",
"name": "Jon",
"bot": false
}ChannelBir grubun kanalı.
Alan Tür Anlamı idstringid.kindstringKanalın türü.feed — Gönderileri herkese açık akışta da görünen akış kanalı.chat — Bir sohbet.voice — Bir ses kanalı; konuşma yalnızca uygulamada olur.hub — Grubun merkezi: grubu anlatan sayfası. Her zaman vardır, mesajsızdır. namestringya da null # olmadan ad; uygulamanın her dilde verdiği ad için null.topicstringKonu; yoksa boş. categoryChannelCategoryya da null Kategori; yoksa null. unreadintegerBaşkalarının henüz okumadığın mesaj sayısı, en fazla 100. permissionsstring[]Bu kanalda neleri yapabildiğin. symbolChannelSymbolSimgesi; grup bir şekil belirlerse şekil zaten grubunkidir.
Örnek {
"id": "0d9c8b7a-6f5e-4d3c-2b1a-0f9e8d7c6b5a",
"kind": "chat",
"name": "harvest",
"topic": "What came in this week",
"category": {
"id": "9a8b7c6d-5e4f-4a3b-8c2d-1e0f9a8b7c6d",
"name": "Garden",
"symbol": {
"emoji": null,
"icon": null,
"image": null,
"color": null,
"shape": null
}
},
"unread": 3,
"permissions": [
"view",
"send"
],
"symbol": {
"emoji": "🌻",
"icon": null,
"image": null,
"color": "amber",
"shape": "circle"
}
}ChannelCategoryBir kanalın bulunduğu kategori.
Örnek {
"id": "9a8b7c6d-5e4f-4a3b-8c2d-1e0f9a8b7c6d",
"name": "Garden",
"symbol": {
"emoji": null,
"icon": null,
"image": null,
"color": null,
"shape": null
}
}ChannelSymbolBir kanalın ya da kategorinin simgesi: emoji, simge ve resimden en fazla biri, yoksa türünün işareti.
Alan Tür Anlamı emojistringya da null Emoji; yoksa null. iconstringya da null Uygulama setindeki simgenin adı; yoksa null. imagestringya da null Kendi resminin adresi; yoksa null. colorstringya da null Kutucuğun rengi; türünün rengi için null. shapestringya da null Kutucuğun şekli; daire için null.
Örnek {
"emoji": "🌻",
"icon": null,
"image": null,
"color": "amber",
"shape": "circle"
}ChannelMessageBir sohbet kanalındaki mesaj.
Alan Tür Anlamı idstringid.textstringya da null Metin (yalnızca görsel veya ses içeren mesajda null). authorPersonKimin yazdığı. mediaMedia[]Görselleri ve sesli mesajları; yoksa boş. replyTostringya da null Yanıtladığı mesajın id’si; yoksa null. roleColorstringya da null Yazarın rengi olan en yüksek rolünün rengi; yoksa null. threadOfstringya da null Bu mesajın konusunda yanıt verdiği mesaj; sohbette null. threadCountintegerBu mesajın konusunda kaç yanıt olduğu. cardobjectya da null Bir botun kartı: title, text, color ve fields; yoksa null. buttonsobject[]Bir botun düğmeleri: her biri id, label ve style. createdAtintegerNe zaman yazıldığı.
Örnek {
"id": "61a2b3c4-d5e6-4f70-8192-a3b4c5d6e7f8",
"text": "@jon the first tomatoes are ripe 🍅",
"author": {
"id": "a3e1f7c2-54b9-4d0e-8f16-7b2c9d4e1a05",
"handle": "mara",
"name": "Mara 🌻",
"bot": false
},
"media": [
{
"url": "/api/media?id=b2d7e9f1-3c4a-4e8b-a1f0-6d5c4b3a2918",
"kind": "image",
"poster": null,
"ai": "without"
}
],
"replyTo": "72b3c4d5-e6f7-4081-92a3-b4c5d6e7f809",
"roleColor": "green",
"threadOf": null,
"threadCount": 3,
"card": null,
"buttons": [],
"createdAt": 1758631200000
}RoleBir grubun rolü.
Alan Tür Anlamı idstringid.namestringya da null Ad; @everyone için null. everyonebooleanTüm üyelerin rolü olan @everyone olup olmadığı. colorstringya da null Renk: indigo, violet, rose, amber, green veya teal; yoksa null. permissionsstring[]İzinleri. membersintegerKaç kişide olduğu; @everyone için tüm üyeler. editablebooleanHesabının onu değiştirip değiştiremeyeceği. selfablebooleanÜyelerin rolü kendilerinin alıp bırakıp bırakmadığı.
Örnek {
"id": "4e5f6a7b-8c9d-4e0f-a1b2-c3d4e5f6a7b8",
"name": "Gardeners",
"everyone": false,
"color": "green",
"permissions": [
"attach",
"invite",
"send",
"view"
],
"members": 24,
"editable": true,
"selfable": false
}GroupMemberBir grubun üyesi ve rolleri.
Person nesnesinin her alanı, ayrıca:
Alan Tür Anlamı leaderstringya da null Üye grubu kurduysa veya birlikte yönetiyorsa; değilse null.founder — Kurucu.manager — Ortak yönetici. rolesstring[]Rollerinin id’leri, en üstteki önce. mutedUntilintegerya da null Hesabın susturma verebiliyorsa üyenin ne zamana kadar susturulduğu; aksi halde null.
Örnek {
"id": "d4c3b2a1-6e5f-4a7b-9c8d-1e2f3a4b5c6d",
"handle": "jon",
"name": "Jon",
"bot": false,
"leader": null,
"roles": [
"4e5f6a7b-8c9d-4e0f-a1b2-c3d4e5f6a7b8"
],
"mutedUntil": null
}ChannelOverrideBir rolün bir kanalda gruptan farklı olarak yapabildikleri.
Alan Tür Anlamı rolestringRolün id’si. allowstring[]Burada ek olarak yapabildikleri. denystring[]Burada yapamadıkları.
Örnek {
"role": "4e5f6a7b-8c9d-4e0f-a1b2-c3d4e5f6a7b8",
"allow": [
"send"
],
"deny": []
}BellBir grubun zili.
Alan Tür Anlamı levelstringHangi bildirimlerin geldiği.all — Akış kanalındaki her yeni gönderi, artı @everyone.important — Yönetimin akış kanalındaki gönderileri, artı @everyone.off — Hiçbir şey; @ad ile anılırsan hariç.
Örnek {
"level": "important"
}InviteLinkBir grubun davet bağlantısı.
Alan Tür Anlamı codestringKod. urlstringPaylaşılacak adres. createdByPersonya da null Kimin oluşturduğu; hesap silinmişse null. createdAtintegerNe zaman oluşturulduğu. expiresAtintegerya da null Ne zamana kadar geçerli olduğu; süresizse null. usesintegerKaç kez kullanıldığı. maxUsesintegerya da null Kaç kez kullanılabileceği; sınırsızsa null.
Örnek {
"code": "k7Qm2xPa",
"url": "https://tellmelo.com/groups?join=k7Qm2xPa",
"createdBy": {
"id": "d4c3b2a1-6e5f-4a7b-9c8d-1e2f3a4b5c6d",
"handle": "jon",
"name": "Jon",
"bot": false
},
"createdAt": 1758624000000,
"expiresAt": 1759228800000,
"uses": 3,
"maxUses": 10
}InvitePreviewBir davet bağlantısının nereye götürdüğü.
Alan Tür Anlamı communityInviteGroupGrup. memberbooleanHesabının zaten üye olup olmadığı.
Örnek {
"community": {
"id": "c81d4e2a-0f3b-4a6c-9e57-1d2b3c4a5f60",
"name": "Urban Gardening",
"members": 312,
"rules": [
"Be kind.",
"No advertising."
]
},
"member": false
}InviteGroupBir davet bağlantısının arkasındaki grup.
Alan Tür Anlamı idstringid.namestringAd. membersintegerKaç üyesi olduğu. rulesstring[]Katılırken kabul edilen kuralları; yoksa boş.
Örnek {
"id": "c81d4e2a-0f3b-4a6c-9e57-1d2b3c4a5f60",
"name": "Urban Gardening",
"members": 312,
"rules": [
"Be kind.",
"No advertising."
]
}JoinedBir davet bağlantısıyla katılım.
Alan Tür Anlamı communitystringGrubun id’si.
Örnek {
"community": "c81d4e2a-0f3b-4a6c-9e57-1d2b3c4a5f60"
}LogEntryYönetimin kaydındaki bir giriş.
Alan Tür Anlamı idstringid.actionstringNe olduğu.post_removed — Bir gönderi.member_removed — Bir üye çıkarıldı, 2.16 öncesi (90 gün dışarıda).message_removed — Bir sohbet kanalındaki mesaj.member_kicked — Bir atma.member_banned — Bir yasak.member_unbanned — Kaldırılan bir yasak.member_timed_out — Bir susturma.timeout_lifted — Kaldırılan bir susturma.voice_muted — Bir ses kanalında susturuldu.voice_removed — Bir ses kanalından çıkarıldı.bot_added — Gruba bir bot eklendi (2.18’den beri).bot_removed — Gruptan bir bot çıkarıldı (2.18’den beri). memberPersonKimi ilgilendirdiği. reasonstringGerekçe; mesajlarda ve verilmediğinde boş. bystringya da null Yapanın adı; hesap silindiyse null. createdAtintegerNe zaman.
Örnek {
"id": "8f7e6d5c-4b3a-4291-8f7e-6d5c4b3a2918",
"action": "message_removed",
"member": {
"id": "d4c3b2a1-6e5f-4a7b-9c8d-1e2f3a4b5c6d",
"handle": "jon",
"name": "Jon",
"bot": false
},
"reason": "",
"by": "Mara 🌻",
"createdAt": 1758710400000
}BanBir gruptan yasak.
Alan Tür Anlamı memberPersonKimin yasaklı olduğu. untilintegerya da null Ne zamana kadar; kaldırılana kadar null. createdAtintegerya da null Ne zamandan beri; 2.16 öncesi yasaklarda null. bystringya da null Yasaklayanın adı; bilinmiyorsa null.
Örnek {
"member": {
"id": "d4c3b2a1-6e5f-4a7b-9c8d-1e2f3a4b5c6d",
"handle": "jon",
"name": "Jon",
"bot": false
},
"until": 1759228800000,
"createdAt": 1758624000000,
"by": "Mara 🌻"
}UntilBir susturmanın ya da yasağın ne zaman bittiği.
Alan Tür Anlamı untilintegerya da null Zaman; süresiz bir yasakta ya da kaldırılan bir susturmada null.
Örnek {
"until": 1758624600000
}TagBir etiket ve onu taşıyan gönderi sayısı.
Alan Tür Anlamı tagstring# olmadan etiket.postsintegerOnu taşıyan yakın tarihli gönderi sayısı.
Örnek {
"tag": "garden",
"posts": 58
}SearchResultÜç liste, boş olabilir.
Alan Tür Anlamı postsPost[]Eşleşen gönderiler, en yeni önce. profilesProfileBrief[]Eşleşen profiller, kısa ada göre. tagsTag[]Eşleşen etiketler, en çok kullanılan önce.
Örnek {
"posts": [
{
"id": "5f0c2a9e-8d41-4b7a-9c3e-2e61d0f4a7b1",
"text": "The bees are back in the garden 🐝 #garden",
"kind": "poll",
"author": {
"id": "a3e1f7c2-54b9-4d0e-8f16-7b2c9d4e1a05",
"handle": "mara",
"name": "Mara 🌻",
"verified": true,
"accountKind": "person"
},
"community": {
"id": "c81d4e2a-0f3b-4a6c-9e57-1d2b3c4a5f60",
"name": "Urban Gardening"
},
"media": [
{
"url": "/api/media?id=b2d7e9f1-3c4a-4e8b-a1f0-6d5c4b3a2918",
"kind": "image",
"poster": null,
"ai": "without"
}
],
"poll": {
"options": [
{
"text": "Lavender",
"votes": 12
},
{
"text": "Sunflowers",
"votes": 7
},
{
"text": "Clover",
"votes": 3
}
],
"total": 22,
"multiple": false,
"endsAt": null,
"running": true,
"resultsVisible": true,
"myVotes": [
0
]
},
"quotes": null,
"continues": null,
"counts": {
"replies": 4,
"likes": 31,
"reposts": 2
},
"pinned": false,
"giftDrop": {
"item": "plan",
"quantity": 3,
"places": 10,
"left": 4,
"audience": "followers",
"newAccounts": false,
"status": "open",
"claimed": true
},
"createdAt": 1758624000000
}
],
"profiles": [
{
"id": "a3e1f7c2-54b9-4d0e-8f16-7b2c9d4e1a05",
"handle": "mara",
"name": "Mara 🌻",
"verified": true,
"accountKind": "person"
}
],
"tags": [
{
"tag": "garden",
"posts": 58
}
]
}EmojiBu sunucunun bir emojisi.
Alan Tür Anlamı namestringİki nokta üst üste arasında durduğu haliyle ad. urlstringGörselin bu sunucuya göre göreli adresi.
Örnek {
"name": "tellmelo",
"url": "/api/media?id=e1f2a3b4-c5d6-4e7f-8a9b-0c1d2e3f4a5b"
}NotificationBir bildirim. Bir satır aynı türden birkaç olayı toplayabilir.
Alan Tür Anlamı idstringBildirimin kimliği. kindstringNe olduğu.reply — Biri sana yanıt verdi.like — Biri gönderini beğendi.reply_like — Biri yanıtına artı oy veriyor.duel — Biri sana Akış Düellosu’nda meydan okuyor ya da meydan okuman oynandı.reply_pick — Bir gönderinin sahibi yanıtını öne çıkarıyor.repost — Biri gönderini yeniden paylaştı.follow — Biri seni takip ediyor.mention — Biri senden bahsetti.group_mention — Biri yönettiğin bir gruptan bahsetti; text onun adıdır.channel_mention — Biri gruplarından birinin sohbet kanalında senden bahsetti, @everyone dahil; üye actor olarak yer alır, cümle kanalı ve grubu adlandırır, mesajı asla.message — Biri sana mesaj yazdı.scheduled — Zamanlanmış bir gönderin yayımlandı.video — Videosunu bekleyen bir gönderin yayımlandı ya da yeniden taslak oldu.reminder — Kaydedilen bir gönderi için hatırlatma zamanı geldi.report — Gönderdiğin bir şikâyetin ne olduğu.moderation — Hesabınla ilgili bir karar: bir uyarı, bir kısıtlama, bir itiraz.team — Ekip için yeni iş (yalnızca sahipler, yöneticiler ve moderatörler).reward — Bir davet ödülü kaybolmak üzere ya da kayboldu.gift — Ekipten bir hediye: bir abonelik ya da sana veya yönettiğin bir gruba kıvılcım.present — Bir üyeden hediye: kıvılcım ya da abonelik süresi; üye actor olarak görünür.spark — Kıvılcımların süresi yakında doluyor ya da yönettiğin bir grubun kıvılcımları artık avantajlarına yetmiyor.loyalty — Sadakat ritmiyle ilgili: aktif bir hafta sayıldı ya da bir günü eksik, bir ödül yeni ya da kaybolmak üzere.impact — On iki saatlik gönderilerinin bir gün sonra nasıl karşılandığı, tek bir bildirimde.discovery — Keşfedildi programına bir davet ya da oradaki bir yerin başladığı veya bittiği.group_post — Zili bunun için çalan bir grupta yeni bir gönderi.group_moderation — Bir grubun yönetimi gönderilerinden birini ya da seni gruptan kaldırdı.group — Bir üyenin bir grupta seninle ilgili yaptığı bir şey: davet etmek, kabul etmek ya da reddetmek, yardımcı yönetici yapmak, grubu devretmek ya da dağıtmak veya grubuna başvurmak; üye actor olarak görünür, grubun adı cümlenin sonunda yer alır.coauthor — Biri seni bir gönderinin ortak yazarı olarak davet etti.partner — Partner programından bir hatırlatma ya da partner rozetinin sona ermesi.news — Takip ettiğin bir bölgede yeni bir makale.pick — Bir gönderin haftanın ya da yılın gönderisi için aday ya da kazandı.advent — Advent takviminde yeni bir kapı açık, bir kapı açıldı ya da bugünkü hâlâ bekliyor.team_message — tellmelo ekibinin seçilen üyelere yazdığı bir mesaj.challenge — Haftanın yeni bir meydan okuması başladı.nudge — Bir kez: henüz kimsenin yanıtlamadığı bir gönderi ya da süren meydan okuma.signin — Bir bilgisayar, orada şu anda giriş yapanın sen olup olmadığını soruyor. textstringya da null Yalnızca şikâyet ve moderasyonda ilgili metin, aksi hâlde null. actorActorKimin yaptığı. postIdstringya da null İlgili gönderi (hiçbir gönderiyle ilgili değilse null). readbooleanOkundu olarak işaretlenip işaretlenmediği. moreintegerBu satırın, adı geçen olayın ötesinde kaç olay daha temsil ettiği. createdAtintegerİlk ne zaman olduğu. updatedAtintegerSon kez ne zaman bir olay daha topladığı. Liste buna göre sıralanır.
Örnek {
"id": "3f2e1d0c-9b8a-4765-8432-10fedcba9876",
"kind": "like",
"text": null,
"actor": {
"handle": "jon",
"name": "Jon"
},
"postId": "5f0c2a9e-8d41-4b7a-9c3e-2e61d0f4a7b1",
"read": false,
"more": 2,
"createdAt": 1758624300000,
"updatedAt": 1758624900000
}ActorBir bildirimi kimin tetiklediği.
Alan Tür Anlamı handlestringKısa ad. namestringGörünen ad.
Örnek {
"handle": "jon",
"name": "Jon"
}ConversationGelen kutunun bir satırı.
Alan Tür Anlamı withstringDiğer hesabın kimliği: /conversations/{with}/messages yolunun beklediği değer. handlestringOnun kısa adı. namestringOnun görünen adı. excerptstringya da null Son mesajın başı (metni yoksa null). truncatedbooleanAlıntının kısaltılıp kısaltılmadığı. fromMebooleanSon mesajın senden olup olmadığı. lastMessageIdstringSon mesajın kimliği. unreadintegerOnun mesajlarından kaçını henüz okumadığın. updatedAtintegerSon mesajın ne zaman yazıldığı.
Örnek {
"with": "d4c3b2a1-6e5f-4a7b-9c8d-1e2f3a4b5c6d",
"handle": "jon",
"name": "Jon",
"excerpt": "See you on Saturday at the market!",
"truncated": false,
"fromMe": true,
"lastMessageId": "7c6b5a49-3827-4165-9f0e-d1c2b3a49586",
"unread": 0,
"updatedAt": 1758624060000
}MessageBir sohbetteki mesaj.
Alan Tür Anlamı idstringMesajın kimliği. textstringya da null Metin (yalnızca görsellerden oluşan bir mesajda null). fromstringOnu yazan hesabın kimliği. tostringKime yazıldığı, hesabın kimliği olarak. readbooleanAlıcının onu okuyup okumadığı. mediaMedia[]Görselleri; yoksa boş. replyTostringya da null Bu mesajın yanıtladığı mesajın id değeri (hiçbirini yanıtlamıyorsa null). 2.2 sürümünden beri. createdAtintegerNe zaman gönderildiği.
Örnek {
"id": "7c6b5a49-3827-4165-9f0e-d1c2b3a49586",
"text": "See you on Saturday at the market!",
"from": "a3e1f7c2-54b9-4d0e-8f16-7b2c9d4e1a05",
"to": "d4c3b2a1-6e5f-4a7b-9c8d-1e2f3a4b5c6d",
"read": true,
"media": [],
"replyTo": null,
"createdAt": 1758624060000
}PlannedMessageSonraya planladığın bir mesaj.
Alan Tür Anlamı idstringPlanlanan mesajın id değeri. tostringMesajı alacak hesabın id değeri. textstringya da null Metin; uçtan uca şifrelemede null. sendAtintegerNe zaman gönderileceği. statestringDurumu.waiting — Zamanını bekliyor.held — Abonelik bittiği için bekletiliyor. Kendin gönderebilir veya silebilirsin.failed — Gönderilemedi.
Örnek {
"id": "3b2a1c0d-9e8f-4a7b-b6c5-d4e3f2a1b0c9",
"to": "a3e1f7c2-54b9-4d0e-8f16-7b2c9d4e1a05",
"text": "Happy birthday! 🎂",
"sendAt": 1758710400000,
"state": "waiting"
}ScheduledPostHenüz yayımlanmamış bir gönderin.
Alan Tür Anlamı idstringGönderinin kimliği. textstringya da null Metin. communityIdstringya da null Yayımlanacağı grup (gruplar dışında null). publishAtintegerya da null Ne zaman yayımlanacağı (başka bir şey beklerken null). deleteAtintegerya da null Ne zaman kendiliğinden silineceği (null: hiçbir zaman). waitingForstringNeyi beklediği.time — Zamanını.review — İnceleme için yazılmış bir metnin onayını.check — Otomatik moderasyonun kontrolünü.payment — Hediyelerinin ödemesini. createdAtintegerNe zaman yazıldığı.
Örnek {
"id": "5f0c2a9e-8d41-4b7a-9c3e-2e61d0f4a7b1",
"text": "Market day tomorrow – see you at the bee stand! #garden",
"communityId": null,
"publishAt": 1758710400000,
"deleteAt": null,
"waitingFor": "time",
"createdAt": 1758624000000
}CollectionKaydedilmiş gönderilerden bir koleksiyon.
Alan Tür Anlamı idstringKoleksiyonun id değeri. namestringAdı. countintegerİçinde kaç gönderi olduğu.
Örnek {
"id": "6d5c4b3a-2918-4e7f-a1b2-c3d4e5f60718",
"name": "Recipes",
"count": 12
}EventBir profilin yaklaşan etkinliği.
Alan Tür Anlamı idstringEtkinliğin id değeri. titlestringBaşlık. startsAtintegerBaşlangıç. endsAtintegerya da null Bitiş; bitişsiz ise null. placestringya da null Yer. descriptionstringya da null Açıklama. signupsEventSignupsya da null Kayıtlar; kayıtsız ise null.
Örnek {
"id": "2a3b4c5d-6e7f-4809-9a1b-2c3d4e5f6a7b",
"title": "Seed swap",
"startsAt": 1758883200000,
"endsAt": 1758890400000,
"place": "Community garden",
"description": "Bring seeds, take seeds.",
"signups": {
"count": 14,
"going": true
}
}EventSignupsKaç kişinin kaydolduğu.
Alan Tür Anlamı countintegerKayıt sayısı. goingbooleanKayıtlı olup olmadığın.
Örnek {
"count": 14,
"going": true
}EventSignupEtkinliklerinden birine kaydolan biri.
Alan Tür Anlamı idstringHesabın id değeri. handlestringKullanıcı adı. namestringGörünen ad. atintegerNe zaman kaydolduğu.
Örnek {
"id": "a3e1f7c2-54b9-4d0e-8f16-7b2c9d4e1a05",
"handle": "mara",
"name": "Mara 🌻",
"at": 1758624000000
}PictureYüklenmiş bir resim.
Alan Tür Anlamı idstringResmin id değeri. urlstringNerede görülebileceği.
Örnek {
"id": "8c7b6a59-4837-4261-9f5e-d4c3b2a1f0e9",
"url": "/api/media?id=8c7b6a59-4837-4261-9f5e-d4c3b2a1f0e9"
}EmojiPictureBir emojinin yüklenmiş resmi.
Alan Tür Anlamı idstringResmin id değeri. urlstringNerede görülebileceği. animatedbooleanHareketli olup olmadığı.
Örnek {
"id": "8c7b6a59-4837-4261-9f5e-d4c3b2a1f0e9",
"url": "/api/media?id=8c7b6a59-4837-4261-9f5e-d4c3b2a1f0e9",
"animated": false
}OwnEmojiKendi emojilerinden biri.
Alan Tür Anlamı namestringAdı. urlstringResmi. animatedbooleanHareketli olup olmadığı. restingbooleanAbonelik şu an daha az emojiye izin verdiği için dinleniyor: kalır ama kullanılamaz.
Örnek {
"name": "sunflower",
"url": "/api/media?id=8c7b6a59-4837-4261-9f5e-d4c3b2a1f0e9",
"animated": false,
"resting": false
}GroupEmojiBir grubun emojisi.
Alan Tür Anlamı namestringAdı. urlstringResmi. animatedbooleanHareketli olup olmadığı.
Örnek {
"name": "seedling",
"url": "/api/media?id=8c7b6a59-4837-4261-9f5e-d4c3b2a1f0e9",
"animated": false
}BotEventBotun bir grubundaki olay.
Alan Tür Anlamı idstringNumarası, artan; devam etmek onunla olur (since, Last-Event-ID). typestringNe olduğu.message.created — Bir mesaj yazıldı.message.deleted — Bir mesaj silindi.member.joined — Biri katıldı.member.left — Biri ayrıldı ya da çıkarıldı.voice.joined — Biri bir sesli kanala katıldı.command — Biri botun bir komutunu kullandı.interaction — Biri botun bir mesajındaki düğmeye bastı. communitystringGrup. channelstringya da null Kanal; tüm grup için null. createdAtintegerNe zaman olduğu. dataobjectTüre göre ilgili veriler: message, member (reason ile), command ya da interaction.
Örnek {
"id": "4711",
"type": "message.created",
"community": "c81d4e2a-0f3b-4a6c-9e57-1d2b3c4a5f60",
"channel": "0d9c8b7a-6f5e-4d3c-2b1a-0f9e8d7c6b5a",
"createdAt": 1758634800000,
"data": {
"message": {
"id": "61a2b3c4-d5e6-4f70-8192-a3b4c5d6e7f8",
"text": "/dice 6",
"author": {
"id": "a3e1f7c2-54b9-4d0e-8f16-7b2c9d4e1a05",
"handle": "mara",
"name": "Mara 🌻",
"bot": false
},
"media": 0,
"replyTo": null,
"threadOf": null,
"createdAt": 1758634800000
}
}
}BotCommandBir botun komutu.
Alan Tür Anlamı namestringAdı, “/” olmadan. descriptionstringNe yaptığı.
Örnek {
"name": "dice",
"description": "Rolls a die"
}VoiceSeatSesli kanalda bir yer.
Alan Tür Anlamı urlstringMedya sunucusunun adresi (LiveKit). tokenstringBu kanalın tokenı, birkaç dakika geçerli. iceServersobject[]Bağlantı için STUN ve TURN sunucuları. speakbooleanBotun orada ses gönderip gönderemeyeceği. videobooleanBotun orada görüntü gönderip gönderemeyeceği.
Örnek {
"url": "wss://voice.example.org",
"token": "eyJhbGciOiJIUzI1NiJ9…",
"iceServers": [
{
"urls": [
"stun:turn.example.org:3478"
]
}
],
"speak": true,
"video": false
}WebhookWebhook’larından biri.
Alan Tür Anlamı idstringWebhook’un id değeri. urlstringAdresi. kindsstring[]Nelerin bildirildiği. activebooleanTeslimat alıp almadığı. Arka arkaya çok hata olursa kapatılır. lastStatusintegerya da null Son teslimatın HTTP durumu. lastAtintegerya da null Son teslimatın zamanı. failuresintegerArka arkaya hatalar.
Örnek {
"id": "1f2e3d4c-5b6a-4798-8a7b-6c5d4e3f2a1b",
"url": "https://example.org/tellmelo-hook",
"kinds": [
"reply",
"mention"
],
"active": true,
"lastStatus": 200,
"lastAt": 1758624000000,
"failures": 0
}WebhookCreatedSırrıyla birlikte yeni bir webhook.
Alan Tür Anlamı idstringWebhook’un id değeri. secretstringİmzaların sırrı, yalnızca bu seferlik.
Örnek {
"id": "1f2e3d4c-5b6a-4798-8a7b-6c5d4e3f2a1b",
"secret": "whsec_3f9a…"
}GroupBotBir grubun botu.
Alan Tür Anlamı idstringBot hesabının id değeri. handlestringKısa adı. namestringAdı. descriptionstringSahibinin sözleriyle ne yaptığı. permissionsstring[]Gruptaki rolünün izin verdikleri.
Örnek {
"id": "a3e1f7c2-54b9-4d0e-8f16-7b2c9d4e1a05",
"handle": "gardenbot",
"name": "Garden bot",
"description": "Reminds the group of watering days.",
"permissions": [
"send",
"view"
]
}VoiceRoomİçindeki kişilerle bir sesli kanal.
Alan Tür Anlamı channelstringKanalın id değeri. peopleVoicePerson[]Şu an içinde kimlerin olduğu.
Örnek {
"channel": "0d9c8b7a-6f5e-4d3c-2b1a-0f9e8d7c6b5a",
"people": [
{
"id": "a3e1f7c2-54b9-4d0e-8f16-7b2c9d4e1a05",
"handle": "mara",
"name": "Mara 🌻",
"muted": false,
"deaf": false,
"camera": false,
"screen": true
}
]
}VoicePersonSesli kanaldaki biri.
Alan Tür Anlamı idstringHesabın id değeri. handlestringKısa ad. namestringGörünen ad. mutedbooleanMikrofonunun kapalı olup olmadığı. deafbooleanHiçbir şey duymayıp duymadığı (kendi seçimi). camerabooleanKamerasının açık olup olmadığı. screenbooleanEkran paylaşıp paylaşmadığı.
Örnek {
"id": "a3e1f7c2-54b9-4d0e-8f16-7b2c9d4e1a05",
"handle": "mara",
"name": "Mara 🌻",
"muted": true,
"deaf": false,
"camera": false,
"screen": false
}GiftDropBir gönderinin altındaki hediyeler – alanların adları asla yer almaz.
Alan Tür Anlamı itemstringBir yerin içinde ne olduğu.plan — Abonelik ayları (Destekçi).sparks — Kıvılcımlar. quantityintegerHer yerde ne kadar olduğu: ay ya da kıvılcım. placesintegerToplam kaç yer olduğu. leftintegerKaç yerin hâlâ boş olduğu. audiencestringKimlerin alabileceği.all — Herkes.followers — Yalnızca hediye verenin takipçileri.group — Yalnızca gönderinin grubundaki üyeler. newAccountsboolean7 günden yeni hesapların da alıp alamayacağı. statusstringDurum.awaiting_payment — Ödeme bekleniyor; gönderi henüz yayımlanmadı.open — Hâlâ alınacak yerler var.closed — Bitti: hepsi alındı, ödeme iade edildi ya da gönderi silindi. claimedbooleanSenin de bir yerin olup olmadığı (herkese açık yollarda her zaman false).
Örnek {
"item": "plan",
"quantity": 3,
"places": 10,
"left": 4,
"audience": "followers",
"newAccounts": false,
"status": "open",
"claimed": true
}OwnGiftDropBir gönderinin altındaki hediyelerin, gönderi ve ödeme bilgisiyle.
GiftDrop nesnesinin her alanı, ayrıca:
Alan Tür Anlamı postIdstringAltında bulundukları gönderi. fundingstringNasıl ödendikleri.free — Ücretsiz.quota — Kotadan.payment — Ödendi. createdAtintegerNe zaman oluşturuldukları.
Örnek {
"item": "plan",
"quantity": 3,
"places": 10,
"left": 4,
"audience": "followers",
"newAccounts": false,
"status": "open",
"claimed": false,
"postId": "5f0c2a9e-8d41-4b7a-9c3e-2e61d0f4a7b1",
"funding": "quota",
"createdAt": 1758624000000
}QuotaBir kotada ne olduğu.
Alan Tür Anlamı monthsintegerHâlâ hediye edilebilecek abonelik ayları. sparksintegerHâlâ hediye edilebilecek kıvılcımlar. looksQuotaLook[]Stokta hâlâ hediye edilebilecek görünümler (2.13 sürümünden beri).
Örnek {
"months": 120,
"sparks": 500,
"looks": [
{
"id": "frame-gold",
"name": "Goldring",
"kind": "frame",
"quantity": 25
}
]
}QuotaLookBir partnerin stokundaki bir görünüm, kalan adetleriyle (2.13 sürümünden beri).
Alan Tür Anlamı idstringGörünümün kimliği; hediye ederken itemId olarak gönder. namestringGörünümün adı. kindstringGörünümün türü.frame — Profil çerçevesi.background — Kapak efekti.card — Profil kartı. quantityintegerKaç adet kaldığı.
Örnek {
"id": "frame-gold",
"name": "Goldring",
"kind": "frame",
"quantity": 25
}QuotaGiftKotadan verilmiş bir hediye.
Alan Tür Anlamı itemstringNe hediye edildiği.plan — Abonelik ayları (Destekçi).sparks — Kıvılcımlar.shop — Stoktan bir görünüm (2.13 sürümünden beri). quantityintegerNe kadar. itemIdstringya da null item shop olduğunda hediye edilen görünüm; aksi halde null.recipientActorKime. createdAtintegerNe zaman.
Örnek {
"item": "plan",
"quantity": 3,
"itemId": null,
"recipient": {
"handle": "jon",
"name": "Jon"
},
"createdAt": 1758627600000
}EmbedDiğer web siteleri için adresler. Anahtarsız çalışırlar.
Alan Tür Anlamı pagestringBir <iframe> için oynatıcı. filestringKendi oynatıcın için MP4 dosyası. posterstringÖnizleme resmi. codestringHazır yerleştirme kodu.
Örnek {
"page": "https://tellmelo.com/media-embed/b2d7e9f1-3c4a-4e8b-a1f0-6d5c4b3a2918",
"file": "https://tellmelo.com/media-embed/b2d7e9f1-3c4a-4e8b-a1f0-6d5c4b3a2918/file",
"poster": "https://tellmelo.com/media-embed/b2d7e9f1-3c4a-4e8b-a1f0-6d5c4b3a2918/poster",
"code": "<iframe src=\"https://tellmelo.com/media-embed/b2d7e9f1-3c4a-4e8b-a1f0-6d5c4b3a2918\" width=\"480\" height=\"300\" title=\"Happy bees\" style=\"border:0;max-width:100%\" loading=\"lazy\" allowfullscreen></iframe>"
}UploadStartedBaşlatılmış bir yükleme.
Alan Tür Anlamı uploadstringBu yüklemenin ID’si. pieceintegerBir parçanın en fazla kaç bayt olabileceği.
Örnek {
"upload": "e7c1a2b3-4d5e-4f60-8a9b-0c1d2e3f4a5b",
"piece": 4194304
}UploadPieceGelen bir parça.
Alan Tür Anlamı receivedintegerKaç baytın geldiği. itemMediaItemya da null Son parçadan sonra yeni GIF veya video, aksi halde null.
Örnek {
"received": 4194304,
"item": null
}CreatedBir şey oluşturan yazma işleminin yanıtı.
Alan Tür Anlamı idstringOluşturulan şeyin kimliği. scheduledForintegerya da null Yayın zamanlandıysa ne zaman görüneceği (aksi halde null). deleteAtintegerya da null Ayarlandıysa kendini ne zaman sileceği (aksi halde null).
Örnek {
"id": "5f0c2a9e-8d41-4b7a-9c3e-2e61d0f4a7b1",
"scheduledFor": null,
"deleteAt": null
}DropCreatedHediyeli bir gönderi oluşturulduğunda gelen yanıt.
Alan Tür Anlamı idstringYeni gönderinin kimliği. fundingstringHediyelerin nasıl ödendiği.free — Ücretsiz.quota — Kotadan.
Örnek {
"id": "5f0c2a9e-8d41-4b7a-9c3e-2e61d0f4a7b1",
"funding": "quota"
}MadeAz önce oluşturulan veya değiştirilen şey.
Alan Tür Anlamı idstringid; davet bağlantısında kodu.
Örnek {
"id": "0d9c8b7a-6f5e-4d3c-2b1a-0f9e8d7c6b5a"
}OkGeri verecek bir şeyi olmayan yazma işleminin yanıtı.
Alan Tür Anlamı okbooleanHer zaman true.
Örnek {
"ok": true
}Makinenin okuyabildiği tanım Bu sayfanın dayandığı tablo OpenAPI olarak https://api.tellmelo.com/v2/openapi.json adresinde.
https://api.tellmelo.com/v2/openapi.jsonDiğer web sitelerinde GIF’ler ve videolar Bir üyenin paylaştığı ve diğer web sitelerinde de izin verdiği içeriği her web sitesi gösterebilir: anywhere=true ile arama onu bulur ve embed alanında adresler bulunur. Üye bunu geri alırsa, oradan birkaç dakika içinde kaybolur.
Parça parça yükleme Önce başlat, sonra dosyayı parçalar halinde gönder. Daha büyük bir dosyayı piece baytlık parçalara böl; her parçada offset o parçanın konumunu belirtsin. Son parçadan sonra hazır GIF veya video gelir.
curl -X POST -H "Authorization: Bearer tm_key_…" \
-H "Content-Type: application/json" \
-d '{"kind":"gif","size":2400000,"name":"Happy bees","shared":true,"anywhere":true}' \
"https://api.tellmelo.com/v2/media/uploads"
→ { "upload": "e7c1a2b3-4d5e-4f60-8a9b-0c1d2e3f4a5b", "piece": 4194304 }
curl -X PUT -H "Authorization: Bearer tm_key_…" \
-H "Content-Type: application/octet-stream" \
--data-binary @bees.gif \
"https://api.tellmelo.com/v2/media/uploads/e7c1a2b3-4d5e-4f60-8a9b-0c1d2e3f4a5b?offset=0"
→ { "received": 2400000, "item": { "id": "…", "embed": { … } } }Yerleştirme Oynatıcı GIF’i döngüde, videoyu kontrollerle gösterir; altında adı ve kimin paylaştığı yer alır. embed.code içindeki kodu sayfaya koy:
<iframe src="https://tellmelo.com/media-embed/b2d7e9f1-3c4a-4e8b-a1f0-6d5c4b3a2918" width="480" height="300" title="Happy bees" style="border:0;max-width:100%" loading="lazy" allowfullscreen></iframe>oEmbed’i tanıyan forumlar ve programlar, oynatıcının adresi verildiğinde kodu kendileri alır:
https://tellmelo.com/api/oembed?url=https%3A%2F%2Ftellmelo.com%2Fmedia-embed%2Fb2d7e9f1-3c4a-4e8b-a1f0-6d5c4b3a2918Anahtar senin sunucunda durmalı, asla bir web sayfasının kodunda değil. Aramayı ve yüklemeyi sunucun üzerinden yap; embed içindeki adreslerin anahtara ihtiyacı yok.
Web siten için GIF seçici Bir site anahtarıyla (Geliştirici alanı → Web siten için GIF seçici ) web siten hazır bir arama kazanır: sayfaya iki satır eklersin, düğmeye bir tıklama aramayı açar. Anahtar herkese açıktır ve yalnızca onun için girdiğin adreslerde çalışır. Seçici yalnızca üyelerin diğer web sitelerinde izin verdiklerini gösterir.
<script src="https://tellmelo.com/picker.js" data-key="tmsk_…" defer></script>
<button type="button" data-tellmelo-picker>GIF</button>Bir şey seçildiğinde düğme, seçilen öğeyle birlikte tellmelo:pick olayını tetikler: yerleştirmek için code, ayrıca file, poster, name ve author. data-target="#field" ile code değerini doğrudan bir metin alanına ekler, data-kind="video" ile video arar. Dosyayı kendin yerleştirirsen onu paylaşan kişinin adını göster.
document.addEventListener('tellmelo:pick', (event) => {
const { code, file, name, author } = event.detail;
});tellmelo ile giriş Başka siteler, üyelerin OpenID Connect ile tellmelo hesaplarıyla giriş yapmasını sağlar (PKCE ile yetkilendirme kodu). Site yalnızca kullanıcı adını, onaylanmış e-posta adresini ve her üye için kendine özel bir kimliği (sub) alır.
Uygulama başvurusunu “Geliştirici alanı → tellmelo ile giriş” altından yaparsın. Ekip her uygulamayı inceler; ardından orada istemci kimliğini görürsün ve sunuculu uygulamalar için bir kez gösterilen istemci gizli anahtarını oluşturursun.
Bir kütüphanenin ihtiyaç duyduğu her şey keşif belgesinde:
https://tellmelo.com/.well-known/openid-configurationÜyeyi response_type=code, client_id, redirect_uri (kayıtlı olduğu gibi), scope=openid profile email, state, nonce ve code_challenge_method=S256 ile birlikte code_challenge ile /oauth/authorize adresine gönder. Kodu bir dakika içinde /oauth/token adresinde değiştir: grant_type=authorization_code, code, redirect_uri ve code_verifier; sunuculu uygulamalar ayrıca gizli anahtarı Basic kimlik doğrulamayla ya da formda gönderir. Kimlik token’ı (RS256, anahtarlar /oauth/jwks adresinde) sub içerir; profile ile preferred_username, email ile email ve email_verified de gelir. Erişim token’ı 10 dakika geçerlidir ve yalnızca /oauth/userinfo okur. https://tellmelo.com/oauth/authorize?response_type=code&client_id=tm_…
&redirect_uri=https%3A%2F%2Fexample.com%2Fcallback&scope=openid%20profile%20email
&state=…&nonce=…&code_challenge=…&code_challenge_method=S256
curl -u "tm_…:tms_…" https://tellmelo.com/oauth/token \
-d grant_type=authorization_code -d code=… \
-d redirect_uri=https://example.com/callback -d code_verifier=…{
"iss": "https://example.social",
"sub": "Xq3vR0b8yJm1cW4tZ2kPn6sLd9fHa7gE5uTo0iBeVxY",
"aud": "tm_5f2c9e1a7b3d4c6e8f0a1b2c",
"iat": 1760432400,
"exp": 1760433000,
"nonce": "n-0S6_WzA2Mj",
"at_hash": "HK6E_P6Dh8Y93mRNtsDB1Q",
"preferred_username": "anna",
"email": "anna@example.com",
"email_verified": true
}Yenileme token’ı yoktur: tellmelo giriş yaptırır, kalıcı erişim vermez. Bir üye siteyi kaldırırsa ya da ekip uygulamayı askıya alırsa /oauth/userinfo hemen 401 döner. prompt=none sayfa göstermeden kontrol eder, prompt=consent yeniden sorar.
Beklediğimiz Her yerdeki kurallar geçerli: taciz yok, spam yok, hakkın olmayan içerik yok. Anahtarının yazdıklarından sen sorumlusun.
Başkalarının GIF ve videolarını web sitende yalnızca embed içeriyorlarsa, bu adresler üzerinden ve paylaşan kişinin adıyla göster. Bir şey artık mevcut değilse göstermeyi bırak. Dosyaları kendi koleksiyonuna kopyalama.