Ana içeriğe geç

Sunucular

Sunucu (guild), kendi kanalları, rolleri, üyeleri, ifadeleri ve ayarları olan bir topluluktur. Bu sayfa sunucu nesnesini ve sunucu düzeyindeki işlemleri kapsar. İlgili kaynaklar kendi sayfalarında yer alır:

Tüm yollar https://tebhos.com/api/v1 adresine görelidir ve kimlik doğrulama gerektirir. Yalnız kullanıcı olarak işaretlenen yollar yalnız kullanıcı oturumu kabul eder; geçerli bir Bot <token> kimlik bilgisi 403 ACCESS_DENIED ile reddedilir. Bu sayfadaki diğer her yol bot token'ı da kabul eder. Geçerli kullanıcının sunucularını listele ve Sunucuyu al ayrıca guilds kapsamlı bir OAuth2 erişim token'ını da kabul eder; diğer her yol geçerli bir erişim token'ını 403 ACCESS_DENIED ile yanıtlar. Hata gövdeleri Hatalar sayfasındaki biçime uyar.

Sunucunun üyesi olmayan bir çağıran 403 FORBIDDEN alır. Üyelik önce denetlendiği için, üye kapsamlı yollarda var olmayan bir sunucu kimliği de 403 döndürür.

İki yol ailesi

TEBHOS sunucu API'sini /guilds/{guild_id}/... altında sunar. Web uygulaması ayrıca TEBHOS'a özgü biçimler döndüren birkaç eski /servers/{guild_id}/... yolunu da kullanır. Bu belge /guilds yollarını açıklar ve bir /servers yolundan yalnız bir özelliğe ulaşmanın tek yolu olduğunda söz eder.

Sunucu nesnesi

Sunucu nesnesi Sunucuyu al, Sunucuyu değiştir, Sunucu oluştur ve Geçerli kullanıcının sunucularını listele tarafından döndürülür; ayrıca Gateway Guild Update olayının yüküdür. Ready yükü her sunucu için aynı alanları taşır.

Yapı

Alan Tür Açıklama
id snowflake Sunucunun kimliği
name string Sunucunun adı (1-100 karakter)
icon ?string Simge hash'i. Hareketli bir simge hash'i a_ ile başlar
banner ?string Afiş hash'i; sunucu bir afiş rengi hazır ayarı kullanıyorsa CSS gradyan dizesi (aşağıya bakın)
banner_width ?integer Piksel cinsinden afiş genişliği
banner_height ?integer Piksel cinsinden afiş yüksekliği
splash ?string Davet arka planı hash'i
splash_width ?integer Piksel cinsinden davet arka planı genişliği
splash_height ?integer Piksel cinsinden davet arka planı yüksekliği
embed_splash ?string Çözümlenmiş davet kartı görsel URL'si: ayarlanmışsa gömme arka planı, aksi halde afiş URL'si
embed_splash_width ?integer Piksel cinsinden gömme arka planı genişliği
embed_splash_height ?integer Piksel cinsinden gömme arka planı yüksekliği
splash_card_alignment integer Davet kartı hizalaması
vanity_url_code ?string Özel davet kodu veya null
owner_id snowflake Sunucu sahibinin kimliği
system_channel_id ?snowflake Üye katılma mesajlarını alan metin kanalı
system_channel_flags integer Sistem kanalı bayrakları
rules_channel_id ?snowflake Kurallar kanalı. Hiçbir HTTP yolu bunu ayarlamaz
afk_channel_id ?snowflake AFK ses kanalı
afk_timeout integer Saniye cinsinden AFK zaman aşımı (hiç ayarlanmamışsa 0)
features array[string] Alfabetik sıralı, etkin sunucu özellikleri
verification_level integer Doğrulama düzeyi
mfa_level integer MFA düzeyi
explicit_content_filter integer Uyumluluk için saklanır (0-2). TEBHOS buna dayalı bir içerik filtresi uygulamaz
default_message_notifications integer Varsayılan mesaj bildirim düzeyi
disabled_operations integer Ayrılmış bit alanı; bir örnek (instance) yöneticisi ayarlamadıkça 0
message_history_cutoff ?ISO8601 zaman damgası READ_MESSAGE_HISTORY izni olmayan bir üyenin okuyabileceği en eski mesaj; null, böyle bir üyenin hiç geçmiş okuyamadığı anlamına gelir
nsfw boolean Her zaman false; TEBHOS'ta yaş kısıtlamalı sunucu yoktur
nsfw_level integer Her zaman 0
content_warning_level integer Her zaman 0
content_warning_text null Her zaman null
member_count ?integer Üye sayısı. Aşağıdaki nota bakın
image_url ?string TEBHOS eki: çözümlenmiş simge URL'si
banner_url ?string TEBHOS eki: çözümlenmiş afiş URL'si veya gradyan dizesi
splash_url ?string TEBHOS eki: çözümlenmiş davet arka planı URL'si
embed_splash_url ?string TEBHOS eki: çözümlenmiş gömme arka planı URL'si
tebhos TEBHOS sunucu ekleri nesnesi TEBHOS eki: standart alanı olmayan ayarlar
permissions? string Çağıranın sunucu düzeyindeki izin maskesi, ondalık dize olarak. Yalnız Geçerli kullanıcının sunucularını listele bunu ayarlar
roles? array[sunucu rolü nesnesi] Yalnız Sunucuyu al bunu ayarlar
emojis? array[object] Yalnız Sunucuyu al bunu ayarlar. Her öğede id, name, animated ve nsfw (her zaman false) bulunur
stickers? array[object] Yalnız Sunucuyu al bunu ayarlar. Her öğede id, name, description, tags, animated ve nsfw (her zaman false) bulunur
channels? array[kanal nesnesi] Yalnız Sunucuyu al bunu ayarlar

member_count, Sunucuyu al yolunda canlı bir sayıdır (sayı okunamazsa null). Sunucuyu değiştir yolunda ve Gateway olaylarında en fazla 30 saniye eski olabilir. Geçerli kullanıcının sunucularını listele bunu içermez; istendiğinde bunun yerine approximate_member_count döndürür.

Afiş rengi hazır ayarları

Yüklenen bir görselin yanı sıra sunucu afişi, uygulamanın renk hazır ayarlarından seçilen bir CSS gradyanı da olabilir. Bu durumda banner ve banner_url gradyan dizesinin kendisini (linear-gradient(, radial-gradient( veya conic-gradient( ile başlar) taşır; banner_width ve banner_height ise null olur.

Görsel hash'leri https://tebhos.com/api/v1/server-icons/{guild_id}/{hash}.webp biçimindeki URL'lere çözümlenir (diğer görseller için server-banners, server-invite-bg, server-embed-bg). Çözümlenmiş *_url alanları tam URL'yi zaten içerir. Bkz. Medya vekili yolları.

TEBHOS sunucu ekleri nesnesi

Alan Tür Açıklama
boost_count integer Sunucudaki etkin ve bekleyen takviyeler
boost_goal integer Sunucunun takviye çubuğunda gösterilen takviye hedefi (varsayılan 25)
boost_bar_enabled boolean Takviye ilerleme çubuğunun kanal listesinde gösterilip gösterilmediği (varsayılan true)
banner_separated boolean Afişin davet arka planından ayrı gösterilip gösterilmediği (DETACHED_BANNER özelliğiyle aynı)
description ?string Sunucu açıklaması
region ?string Sunucunun bölge etiketi
max_members integer Bir yöneticinin belirlediği üye üst sınırı; ayarlanmamışsa 0
is_public boolean Sunucunun keşifte listelenip listelenmediği (DISCOVERABLE özelliğiyle aynı)
invites_disabled boolean Davetlerin duraklatılıp duraklatılmadığı (INVITES_DISABLED özelliğiyle aynı)

Ready yükünde bu nesne properties.tebhos konumunda bulunur; diğer her yerde en üst düzeydeki tebhos alanıdır.

Örnek

{
  "id": "1489002177550843904",
  "name": "Ada's Workshop",
  "icon": "a_9f2c1d4e7b",
  "banner": null,
  "banner_width": null,
  "banner_height": null,
  "splash": null,
  "splash_width": null,
  "splash_height": null,
  "embed_splash": null,
  "embed_splash_width": null,
  "embed_splash_height": null,
  "splash_card_alignment": 0,
  "vanity_url_code": "workshop",
  "owner_id": "1489002177550843905",
  "system_channel_id": "1489002177550843907",
  "system_channel_flags": 0,
  "rules_channel_id": null,
  "afk_channel_id": null,
  "afk_timeout": 300,
  "features": ["ANIMATED_BANNER", "ANIMATED_ICON", "BANNER", "INVITE_SPLASH", "VANITY_URL"],
  "verification_level": 1,
  "mfa_level": 0,
  "explicit_content_filter": 0,
  "default_message_notifications": 1,
  "disabled_operations": 0,
  "message_history_cutoff": null,
  "nsfw": false,
  "nsfw_level": 0,
  "content_warning_level": 0,
  "content_warning_text": null,
  "member_count": 128,
  "image_url": "https://tebhos.com/api/v1/server-icons/1489002177550843904/a_9f2c1d4e7b.webp",
  "banner_url": null,
  "splash_url": null,
  "embed_splash_url": null,
  "tebhos": {
    "boost_count": 27,
    "boost_goal": 25,
    "boost_bar_enabled": true,
    "banner_separated": false,
    "description": "A place to build things",
    "region": "europe",
    "max_members": 0,
    "is_public": false,
    "invites_disabled": false
  }
}

Sunucu özellikleri

features, etkin özellik kümesidir. TEBHOS bunu üç kaynaktan oluşturur.

Sunucunun takviye düzeyinden türetilenler. Bunlar hiç saklanmaz; sunucunun takviye düzeyi yeterince yüksek olduğu sürece görünür. Etkin bir İş Sınıfı aboneliği olan sunucu düzey 2 sayılır.

Özellik Düzey Açtığı
INVITE_SPLASH 1 Davet arka planı (splash)
BANNER 2 Sunucu afişi
VANITY_URL 2 Özel davet kodu
ANIMATED_ICON 2 Hareketli simge
ANIMATED_BANNER 2 Hareketli afiş

Sunucu tarafından açılıp kapatılabilenler. MANAGE_GUILD iznine sahip bir üye bunları Sunucuyu değiştir veya özellik açma/kapama yolları ile ekler ya da kaldırır.

Özellik Etkisi
INVITES_DISABLED Davetler duraklatılır: bir daveti kabul etmek veya keşiften katılmak reddedilir
TEXT_CHANNEL_FLEXIBLE_NAMES İstemciler için saklanır; API kanal adlarını hiçbir yönde yeniden yazmaz
DETACHED_BANNER Afiş davet arka planından ayrı gösterilir
CLONE_EMOJI_DISABLED Diğer sunucular bu sunucunun emojilerini kopyalayamaz
CLONE_STICKER_DISABLED Diğer sunucular bu sunucunun çıkartmalarını kopyalayamaz
HIDE_OWNER_CROWN İstemciler üye listesinde sahip tacını gizler

Örnek tarafından ayarlananlar. DISCOVERABLE, sunucunun keşif başvurusu onaylı olduğu sürece görünür. Örnek yöneticileri başka özellikler de ayarlayabilir. Gateway; UNAVAILABLE_FOR_EVERYONE, UNAVAILABLE_FOR_EVERYONE_BUT_STAFF ve UNAVAILABLE_HIDDEN (sunucu kullanılamaz olarak bildirilir), LARGE_GUILD_OVERRIDE (bildirimler için büyük sunucu işleme) ve VOICE_E2EE özelliklerine göre davranır.

Kopyalamaya varsayılan olarak izin verilir

TEBHOS, devre dışı bırakma (opt-out) özellikleri olan CLONE_EMOJI_DISABLED ve CLONE_STICKER_DISABLED özelliklerini kullanır. İkisine de sahip olmayan bir sunucu, ifadelerinin kopyalanmasına izin verir.

Doğrulama düzeyleri

Değer Ad
0 NONE
1 LOW
2 MEDIUM
3 HIGH

TEBHOS'ta telefon doğrulaması yoktur; bu yüzden telefona dayalı 4 düzeyi yoktur. Eski istemciler için 4 içeren istek kabul edilir ve 3 (HIGH) olarak saklanır; hâlâ 4 tutan bir sunucu her zaman 3 olarak döndürülür.

TEBHOS düzeyi saklar ve döndürür, uygulamalar da bunu sunucu ayarlarında gösterir; ancak API şu an mesajları veya katılımları buna göre kısıtlamaz. Keşifte listelenen bir sunucu düzeyi LOW'un altına indiremez; böyle bir istek 400 INVALID_FORM_BODY ile başarısız olur.

MFA düzeyleri

TEBHOS'ta sunucu düzeyinde çok adımlı doğrulama zorunluluğu yoktur. mfa_level uyumluluk için sunucu nesnesinde kalır ve her zaman 0 (NONE) değerindedir; kimsenin izinlerini kaldırmaz. Hesap düzeyindeki çok adımlı doğrulama bundan etkilenmez.

Varsayılan mesaj bildirim düzeyleri

Değer Ad Açıklama
0 ALL_MESSAGES Üyelere varsayılan olarak her mesaj için bildirim gider
1 ONLY_MENTIONS Üyelere varsayılan olarak yalnız bahsetmelerde bildirim gider

Sistem kanalı bayrakları

Değer Ad Açıklama
1 << 0 SUPPRESS_JOIN_NOTIFICATIONS Bir üye katıldığında sistem kanalına katılma mesajı gönderme

Bayrak ayarlı değilken system_channel_id ayarlıysa TEBHOS, davetle katılan her üye için sistem kanalına bir katılma mesajı (mesaj türü 7) gönderir.

Davet kartı hizalamaları

Değer Ad
0 CENTER
1 LEFT
2 RIGHT

Sunucu oluştur

POST /guilds

Sahibi çağıran olan bir sunucu oluşturur ve sunucu nesnesini 200 durumuyla döndürür. Sahibin diğer oturumları yeni sunucuyu Gateway üzerinden alır.

Bir bot kimlik bilgisinin kimliği doğrulanır, ancak 400 BOTS_CANNOT_CREATE_GUILDS ile reddedilir.

Hız sınırı: guild:create, hesap başına 60 saniyede 10.

JSON gövdesi

Alan Tür Açıklama
name string Sunucu adı, kırpıldıktan sonra 1-100 karakter
icon? ?string Base64 veya data: URL'si olarak simge. PNG, JPEG, GIF veya WebP; çözüldükten sonra en fazla 10 MiB
empty_features? boolean Kabul edilir ve yok sayılır
template? null Şablondan sunucu oluşturma desteklenmez; null olmayan her değer 400 BAD_REQUEST döndürür

Hareketli bir simge takviye düzeyi 2 gerektirir ve yeni bir sunucu hiçbir zaman bu düzeyde olmaz; bu yüzden hareketli bir icon 403 FORBIDDEN döndürür. Hareketli simge daha sonra Sunucuyu değiştir ile yüklenir.

Yeni bir sunucu; genel adlı bir metin kanalı ile Genel adlı bir ses kanalını içeren Genel adlı bir kategori ve varsayılan izin kümesine sahip bir @everyone rolü alır. Ses kanalının bit hızı 64000'dir (64 kbps). Sistem kanalı ayarlanmaz.

Durum Kod Koşul
400 INVALID_FORM_BODY name boş veya 100 karakterden uzun
400 BAD_REQUEST Simge çözülemiyor, çok büyük veya kabul edilen bir biçimde değil; bir şablon verildi ya da çağıran zaten 100 sunucunun üyesi (mesaj MAX_GUILDS)
400 BOTS_CANNOT_CREATE_GUILDS Çağıran bir bot
403 FORBIDDEN Simge hareketli
curl -X POST https://tebhos.com/api/v1/guilds \
  -H "Authorization: Bearer $TEBHOS_TOKEN" \
  -H "Content-Type: application/json" \
  -d '{"name": "Ada'\''s Workshop"}'

Geçerli kullanıcının sunucularını listele

GET /users/@me/guilds

Çağıranın üyesi olduğu her sunucu için bir tane olmak üzere, artan sunucu kimliğine göre sıralanmış bir sunucu nesneleri dizisi döndürür. Her nesne, çağıranın sunucu düzeyindeki maskesi olan permissions alanını içerir. roles, emojis, stickers ve channels dahil edilmez.

guilds kapsamlı bir OAuth2 erişim token'ını da kabul eder; bu kapsamı olmayan bir token 403 MISSING_OAUTH_SCOPE alır.

Hız sınırı: guild:list, hesap başına 10 saniyede 40.

Sorgu parametreleri

Alan Tür Açıklama
before? snowflake Kimliği bu sunucu kimliğinden düşük olan sunucuları döndür
after? snowflake Kimliği bu sunucu kimliğinden yüksek olan sunucuları döndür. before üzerinde önceliklidir
limit? integer Döndürülecek en fazla sunucu sayısı (1-200, varsayılan 200)
with_counts? boolean true (veya 1) olduğunda approximate_member_count dahil edilir. Varsayılan false

Çağıranın içinde bulunmadığı bir sunucuyu belirten imleç yok sayılır. Verisi okunamayan bir sunucu isteği başarısız kılmak yerine atlanır; izinleri hesaplanamayan bir sunucu için permissions dahil edilmez. 1-200 aralığı dışındaki limit 400 INVALID_FORM_BODY döndürür.

curl "https://tebhos.com/api/v1/users/@me/guilds?with_counts=true" \
  -H "Authorization: Bot $TEBHOS_BOT_TOKEN"

Sunucuyu al

GET /guilds/{guild_id}

Sunucu nesnesini roles (azalan konuma göre sıralı), emojis, stickers, channels ve canlı member_count ile birlikte döndürür. Üyelik gerektirir.

guilds kapsamlı bir OAuth2 erişim token'ını da kabul eder; bu kapsamı olmayan bir token 403 MISSING_OAUTH_SCOPE alır.

Hız sınırı: guild:read, hesap ve sunucu başına 10 saniyede 100.

channels görünürlüğe göre filtrelenmez

Bu yoldaki channels dizisi sunucudaki her kanalı içerir. Yalnız çağıranın görüntüleyebildiği kanalları almak için Sunucu kanallarını listele kullanılır.

Sunucuyu değiştir

PATCH /guilds/{guild_id}

Sunucu ayarlarını günceller ve güncellenmiş sunucu nesnesini döndürür. MANAGE_GUILD gerektirir. Her başarılı istek sunucuya Guild Update gönderir ve bir GUILD_UPDATE denetim kaydı girdisi oluşturur.

Hız sınırı: guild:update, hesap ve sunucu başına 10 saniyede 20.

JSON gövdesi

Her alan isteğe bağlıdır. Atlanan alan değerini korur. ? türündeki alanlarda açık bir null değeri temizler.

Alan Tür Açıklama
name? string Sunucu adı, kırpıldıktan sonra 1-100 karakter
icon? ?string Base64 veya data: URL'si olarak yeni simge; kaldırmak için null
banner? ?string Base64 veya data: URL'si olarak yeni afiş görseli, bir CSS gradyan dizesi ya da kaldırmak için null
splash? ?string Yeni davet arka planı (yalnız durağan görsel); kaldırmak için null
embed_splash? ?string Yeni gömme arka planı (yalnız durağan görsel); kaldırmak için null
splash_card_alignment? integer Davet kartı hizalaması, 0-2
system_channel_id? ?snowflake Sistem kanalı; temizlemek için null
system_channel_flags? integer Sistem kanalı bayrakları, negatif olamaz
afk_channel_id? ?snowflake AFK ses kanalı; temizlemek için null
afk_timeout? integer Saniye cinsinden AFK zaman aşımı, 60-3600
default_message_notifications? integer Varsayılan mesaj bildirim düzeyi, 0-1
verification_level? integer Doğrulama düzeyi, 0-3 (4 kabul edilir ve 3 olarak saklanır)
mfa_level? integer Uyumluluk için kabul edilir ve yok sayılır; bkz. MFA düzeyleri
explicit_content_filter? integer 0-2. Yalnız uyumluluk için saklanır
features? array[string] İstenen özellik kümesinin tamamı, en fazla 100 öğe
message_history_cutoff? ?ISO8601 zaman damgası Bkz. sunucu nesnesindeki message_history_cutoff

nsfw, nsfw_level, content_warning_level ve content_warning_text uyumluluk için kabul edilir ve yok sayılır. Sudo alanları (password, mfa_code vb.) da kabul edilir ve yok sayılır.

Görseller; ham base64 ya da data: URL'si olarak gönderilen, çözüldükten sonra en fazla 10 MiB PNG, JPEG, GIF ve WebP kabul eder. Varlık kuralları sunucunun takviye düzeyine bağlıdır:

Alan Gereksinim
icon Her düzey; hareketli simge düzey 2 gerektirir
banner Görsel düzey 2 gerektirir (hareketli olan da); gradyan dizesi düzey gerektirmez
splash Düzey 1; hareketli görseller 400 ile reddedilir
embed_splash Her düzey; hareketli görseller 400 ile reddedilir

Eksik düzey 403 FORBIDDEN döndürür. Simgeyi değiştirmek eski simge dosyasını silinmek üzere zamanlar.

features bir fark değil, sunucunun sahip olması istenen kümenin tamamıdır. Sunucu nesnesindeki dizi, değişiklikler uygulanmış olarak geri gönderilir:

  • Dizide olup sunucuda olmayan bir açılıp kapatılabilen özellik eklenir; sunucuda olup dizide olmayan kaldırılır.
  • Sunucunun etkin kümesinde zaten bulunan bir özellik (BANNER gibi türetilmiş özellikler dahil) kabul edilir ve olduğu gibi bırakılır.
  • Başka herhangi bir özelliği eklemek 400 BAD_REQUEST döndürür.

system_channel_id ve afk_channel_id verildiği gibi saklanır; yol, kanalın var olup olmadığını veya doğru türde olup olmadığını denetlemez.

Keşifte listelenen bir sunucuda verification_level 0 400 INVALID_FORM_BODY döndürür.

Durum Kod Koşul
400 INVALID_FORM_BODY Bir değer aralık dışında, message_history_cutoff bir RFC 3339 zaman damgası değil ya da doğrulama düzeyi keşfedilebilir bir sunucu için çok düşük
400 BAD_REQUEST Bir kimlik snowflake değil, bir görsel geçersiz ya da izin verilmeyen yerde hareketli, veya açılıp kapatılamayan bir özellik eklendi
403 FORBIDDEN MANAGE_GUILD eksik ya da bir takviye düzeyi gereksinimi karşılanmadı
curl -X PATCH https://tebhos.com/api/v1/guilds/1489002177550843904 \
  -H "Authorization: Bot $TEBHOS_BOT_TOKEN" \
  -H "Content-Type: application/json" \
  -d '{"name": "Ada'\''s Lab", "afk_timeout": 600, "system_channel_flags": 1}'

Yalnız TEBHOS'a özgü ayarlar

description, region, boost_goal ve boost_bar_enabled (TEBHOS sunucu ekleri) alanlarının bu yolda karşılığı yoktur. Bunlar MANAGE_GUILD gerektiren, guild:update kovasını paylaşan ve {"message": "..."} döndüren PATCH /servers/{guild_id} ile ayarlanır:

Alan Tür Açıklama
description? string En fazla 1000 karakter
region? string En fazla 50 karakter
boost_goal? integer 1-100000
boost_bar_enabled? boolean Takviye çubuğunun gösterilip gösterilmediği

Değişiklik Guild Update olarak gönderilir.

Sunucu özelliğini aç/kapat

Bu yolların her biri bir açılıp kapatılabilen özelliği ekler veya kaldırır ve güncellenmiş sunucu nesnesini döndürür. MANAGE_GUILD gerektirir ve yalnız kullanıcı içindir. Her biri Guild Update gönderir.

Yol Gövde Özellik
PATCH /guilds/{guild_id}/text-channel-flexible-names {"enabled": boolean} TEXT_CHANNEL_FLEXIBLE_NAMES
PATCH /guilds/{guild_id}/detached-banner {"enabled": boolean} DETACHED_BANNER
PATCH /guilds/{guild_id}/hide-owner-crown {"enabled": boolean} HIDE_OWNER_CROWN
PATCH /guilds/{guild_id}/invites-disabled {"disabled": boolean} INVITES_DISABLED
PATCH /guilds/{guild_id}/clone-emoji-disabled {"disabled": boolean} CLONE_EMOJI_DISABLED
PATCH /guilds/{guild_id}/clone-sticker-disabled {"disabled": boolean} CLONE_STICKER_DISABLED

Eksik veya boolean olmayan bir gövde alanı 400 BAD_REQUEST döndürür.

Sunucuyu sil

POST /guilds/{guild_id}/delete

Sunucuyu kalıcı olarak siler ve 204 döndürür. Yalnız kullanıcı. Sunucuyu yalnız sahibi silebilir; diğer herkes 403 FORBIDDEN alır.

Hız sınırı: guild:delete, hesap ve sunucu başına 60 saniyede 10.

İstek gövdesi yok sayılır; {} gönderilebilir. Parola veya sudo kanıtı gerekmez.

Silme geri alınamaz

Bir sunucuyu silmek; kanallarını, mesajlarını, rollerini, üyeliklerini, davetlerini, keşif listesini ve üyelerin sunucu ayarlarını kaldırır. Sunucudaki etkin bir İş Sınıfı aboneliği geri ödemesiz iptal edilir. Silinmiş bir sunucuyu geri getirmenin yolu yoktur.

Her üye Guild Delete alır, sunucunun ses kanallarındaki üyelerin bağlantısı kesilir ve sunucu aramadan kaldırılır.

Sunucudan ayrıl

DELETE /users/@me/guilds/{guild_id}

Çağıranı sunucudan çıkarır ve 204 döndürür. Çağıranın diğer oturumları Guild Delete, kalan üyeler ise Guild Member Remove alır. Sunucu, çağıranın sunucu klasörlerinden kaldırılır.

Hız sınırı: guild:leave, hesap ve sunucu başına 10 saniyede 10.

Sorgu parametreleri

Alan Tür Açıklama
delete_messages? boolean true olduğunda ayrılmadan önce çağıranın sunucuda yazdığı her mesaj silinir (varsayılan false)

Mesaj silme en iyi çaba esasına göre yapılır: başarısız olursa çağıran yine de sunucudan ayrılır.

Durum Kod Koşul
400 BAD_REQUEST Çağıran sunucu sahibi. Bunun yerine sahiplik devredilir veya sunucu silinir
404 NOT_FOUND Çağıran üye değil

Geçerli kullanıcının sunucu mesajlarını toplu sil

POST /users/@me/guilds/{guild_id}/messages/bulk-delete-mine

Çağıranın sunucunun kanallarında yazdığı her mesajı siler ve gövdesiz 202 döndürür. Çağıran üye olarak kalır. Üyelik ve sudo kipi gerektirir; bir bot token'ı kendi hesabı için sudo kipini karşılar. Etkilenen her kanal bir Message Delete Bulk olayı alır.

Hız sınırı: guild:leave, hesap ve sunucu başına 10 saniyede 10 (Sunucudan ayrıl ile paylaşılır).

Üye olmayan biri 404 NOT_FOUND, sudo yetkisi olmayan bir kullanıcı oturumu 403 SUDO_MODE_REQUIRED alır.

Özel davet URL'si

Takviye düzeyi 2 olan bir sunucu özel bir davet kodu (vanity kodu) alabilir. https://tebhos.com/vanity/{code} ve Daveti al bunu çözümler; bkz. Özel davet URL'leri.

Özel davet URL'si nesnesi

Alan Tür Açıklama
code ?string Geçerli özel davet kodu veya null
uses integer Kodun kaç kez çözümlendiği

Sunucunun özel davet URL'sini al

GET /guilds/{guild_id}/vanity-url

Özel davet URL'si nesnesini döndürür. MANAGE_GUILD gerektirir. Yalnız kullanıcı.

Hız sınırı: guild:vanity_url:get, hesap ve sunucu başına 10 saniyede 100.

Sunucunun özel davet URL'sini değiştir

PATCH /guilds/{guild_id}/vanity-url

Özel davet kodunu ayarlar veya kaldırır ve şu an tutulan kodla {"code": "..."} döndürür (kaldırmadan sonra null). MANAGE_GUILD gerektirir. Yalnız kullanıcı. Guild Update gönderir.

Hız sınırı: guild:vanity_url:patch, istemci ve sunucu başına 60 saniyede 10.

Alan Tür Açıklama
code? ?string Alınacak kod. Null, boş dize veya atlanmış alan geçerli kodu kaldırır

Kod kırpılır ve ASCII harfler, rakamlar, - ve _ karakterlerinden oluşan 2-32 karakter olmalıdır. Kodlar büyük/küçük harften bağımsız olarak benzersizdir ve ayrılmış sözcüklerden oluşan bir liste (admin, api, login, invite, settings gibi) alınamaz. Kodu kaldırmak uses değerini 0'a sıfırlar.

Durum Kod Koşul
400 INVALID_FORM_BODY Kodun uzunluğu veya karakterleri yanlış ya da kod ayrılmış
403 FORBIDDEN MANAGE_GUILD eksik veya sunucu takviye düzeyi 2'nin altında (yalnız ayarlama için; kaldırma her düzeyde çalışır)
409 CONFLICT Kod başka bir sunucuda
curl -X PATCH https://tebhos.com/api/v1/guilds/1489002177550843904/vanity-url \
  -H "Authorization: Bearer $TEBHOS_TOKEN" \
  -H "Content-Type: application/json" \
  -d '{"code": "workshop"}'

Özel davet kodunu çözümle

GET /vanity/{code}/resolve

Özel bir davet kodunu kimlik doğrulama olmadan çözümler. Büyük/küçük harf yok sayılır. Her çağrı kodun uses değerini artırır. camelCase bir nesne döndürür:

Alan Tür Açıklama
serverId snowflake Sunucu kimliği
serverName string Sunucu adı
serverImage string Sunucu simgesi URL'si veya boş dize
memberCount integer Saklanan üye sayısı
vanityUses integer Bu çağrıdan sonraki kullanım sayısı
inviteCode string Sunucunun kendi davet kodu; Daveti kabul et yoluna verilebilir

Bilinmeyen bir kod 404 NOT_FOUND döndürür.

Sunucu görselleri

Sunucuyu değiştir görselleri satır içinde base64 olarak kabul eder. Web uygulaması ise büyük JSON gövdelerinden kaçınmak için bunları iki adımda doğrudan depolamaya yükler. İki adım da yalnız kullanıcı içindir ve MANAGE_GUILD gerektirir (sahip her zaman geçer).

  1. {"filename": string, "content_type": string, "size": integer} ile POST /servers/{guild_id}/{kind}/upload-url. upload_url (300 saniye geçerli, önceden imzalanmış URL), storage_key, url ve expires_in döndürür. 8 MiB'a kadar PNG, JPEG, GIF ve WebP kabul edilir.
  2. Baytlar PUT ile upload_url adresine yüklenir, ardından {"storage_key": string} ile POST /servers/{guild_id}/{kind}/confirm çağrılır.

{kind} değeri icon, banner, invite-bg (davet arka planı, splash) veya embed-bg (embed_splash) olur. Sunucuyu değiştir yolunda olduğu gibi afiş takviye düzeyi 2, davet arka planı düzey 1, hareketli simge veya afiş ise düzey 2 gerektirir. Onaylama Guild Update gönderir. Simge onayı {"icon_hash": string, "image_url": string} döndürür.

Sunucu takviyeleri

Bir sunucunun takviye düzeyi (0, 1 veya 2) etkin takviye sayısından gelir; türetilmiş sunucu özelliklerini, ses bit hızı üst sınırlarını, yükleme sınırlarını ve hareketli emojileri denetler. Takviye yapma, takviye listesi ve fiyatlandırma Sunucu takviyeleri altında belgelenmiştir. Sunucu nesnesindeki tebhos.boost_count geçerli takviye sayısını tutar.

Roller

Rol yolları Roller ve izinler sayfasında belgelenmiştir:

İşlem Yol
Sunucu rollerini listele GET /guilds/{guild_id}/roles
Sunucu rolü oluştur POST /guilds/{guild_id}/roles
Sunucu rolü konumlarını değiştir PATCH /guilds/{guild_id}/roles
Sunucu rolünü değiştir PATCH /guilds/{guild_id}/roles/{role_id}
Sunucu rolünü sil DELETE /guilds/{guild_id}/roles/{role_id}
Rol ayrı gösterim konumlarını değiştir PATCH /guilds/{guild_id}/roles/hoist-positions
Rol ayrı gösterim konumlarını sıfırla DELETE /guilds/{guild_id}/roles/hoist-positions

Bir üyeye tek bir rol ekleme ve kaldırma Sunucu üyeleri sayfasında ele alınır.