Zrzur Entwickler

Server

Ein Bot tritt einem Server bei, wenn ihn jemand mit „Server verwalten“ installiert. Er kann den Server lesen, mit den richtigen Berechtigungen Einstellungen ändern, Emojis verwalten und gehen.

Was ein Bot nicht kann

Servereinstellungen

PATCH /servers/{target} ändert Namen, Beschreibung, Symbol, Banner, Kategorien und Systemnachrichten-Kanäle (braucht „Server verwalten“). Manche Felder (etwa Bestätigungsmarken) ändert nur das Zrzur-Team.

Emojis

Lade das Bild mit dem Tag emojis auf den Dateiserver (standardmäßig bis 500 KB) und erstelle das Emoji dann mit der zurückgegebenen ID:

PUT /custom/emoji/{emoji_id}
{ "name": "party", "parent": { "type": "Server", "id": "<server id>" } }

Braucht „Anpassungen verwalten“. Namen nutzen a-z, 0-9 und _.

Installierte Anwendungen

GET /servers/{server_id}/applications listet die installierten Bots eines Servers, GET /servers/{server_id}/commands die Befehle, die Mitglieder dort nutzen können.

Verlassen

DELETE /servers/{target} lässt den Bot gehen. Mitglieder sehen ServerMemberLeave; der Bot bekommt ServerDelete für diesen Server.

Referenz

DELETE /custom/emoji/{emoji_id}

Delete Emoji. Delete an emoji by its id.

Berechtigungen: Channel:ManageCustomisation · Ratenlimit: any_dlta, 20 / 10 s

GET /custom/emoji/{emoji_id}

Fetch Emoji. Fetch an emoji by its id.

Ratenlimit: any_dlta, 20 / 10 s

PATCH /custom/emoji/{emoji_id}

Edit Emoji. Edit an emoji by its id.

Berechtigungen: Channel:ManageCustomisation · Ratenlimit: any_dlta, 20 / 10 s

PUT /custom/emoji/{emoji_id}

Create New Emoji. Create an emoji by its Autumn upload id.

Berechtigungen: Channel:ManageCustomisation · Ratenlimit: any_dlta, 20 / 10 s

DELETE /invites/{target}

Delete Invite. Delete an invite by its id.

Berechtigungen: Channel:ManageServer, Channel:ManageChannel · Ratenlimit: any_dlta, 20 / 10 s

GET /invites/{target}

Fetch Invite. Fetch an invite by its id.

Ratenlimit: any_dlta, 20 / 10 s

POST /invites/{target}

Join Invite. Join an invite by its ID

Für Bots nicht verfügbar.

Ratenlimit: any_dlta, 20 / 10 s

DELETE /servers/{server_id}/vanity

Remove Custom Invite Link. Remove this server's custom invite link and free its name.

Ratenlimit: servers, 5 / 10 s

PUT /servers/{server_id}/vanity

Claim Custom Invite Link. Claim or change this server's custom invite link (zrzur.cc/<code>). Needs Manage Server and the Wings level that unlocks it.

Ratenlimit: servers, 5 / 10 s

POST /servers/{server}/channels

Create Channel. Create a new Text or Voice channel.

Berechtigungen: Channel:ManageChannel · Ratenlimit: servers, 5 / 10 s

DELETE /servers/{target}

Delete / Leave Server. Deletes a server if owner otherwise leaves. Deleting (as owner) requires a validated MFA ticket (X-MFA-Ticket).

Ratenlimit: servers, 5 / 10 s

GET /servers/{target}

Fetch Server. Fetch a server by its id.

Berechtigungen: Channel:ViewChannel · Ratenlimit: servers, 5 / 10 s

PATCH /servers/{target}

Edit Server. Edit a server by its id.

Berechtigungen: Channel:ManageServer, Channel:ManageChannel, Channel:AssignRoles · Ratenlimit: servers, 5 / 10 s

PUT /servers/{target}/ack

Mark Server As Read. Mark all channels in a server as read.

Für Bots nicht verfügbar.

Ratenlimit: servers, 5 / 10 s

GET /servers/{target}/automod

Fetch AutoMod rules. The server's AutoMod rules. Needs Manage Server.

Berechtigungen: Channel:ManageServer · Ratenlimit: servers, 5 / 10 s

PUT /servers/{target}/automod

Set AutoMod rules. Replace the server's AutoMod rules (at most 10). Needs Manage Server.

Berechtigungen: Channel:ManageServer · Ratenlimit: servers, 5 / 10 s

GET /servers/{target}/emojis

Fetch Server Emoji. Fetch all emoji on a server.

Ratenlimit: servers, 5 / 10 s

GET /servers/{target}/insights

Fetch Server Insights. Daily joins, leaves, members, messages, active members and voice minutes of a server for the last 7, 30 or 90 days, counted in the viewer's time zone, with where joins came from and the busiest channels. Needs Manage Server. Counts are aggregated; messages count only in channels the viewer can see; channel counts, active members and voice minutes of 1 to 4 are null.

Berechtigungen: Channel:ManageServer · Ratenlimit: servers, 5 / 10 s

PUT /servers/{target}/safety/pause

Pause invites or DMs. Security actions: refuse every invite and Discover join, and / or stop DMs between members who aren't friends, for 1, 6, 12 or 24 hours (0 ends a pause). Needs Manage Server.

Berechtigungen: Channel:ManageServer · Ratenlimit: servers, 5 / 10 s

GET /servers/{target}/soundboard

Fetch Soundboard. The sounds of a server and how many it may have.

Ratenlimit: servers, 5 / 10 s

DELETE /servers/{target}/soundboard/{sound_id}

Remove Sound. Remove a sound and its file (needs Manage Soundboard).

Ratenlimit: servers, 5 / 10 s

PATCH /servers/{target}/soundboard/{sound_id}

Edit Sound. Rename a sound, change its emoji or volume (needs Manage Soundboard).

Ratenlimit: servers, 5 / 10 s

PUT /servers/{target}/soundboard/{sound_id}

Add Sound. Add a sound by its Autumn upload id (tag sounds), which becomes its id. Needs Manage Soundboard; a server has 8 sounds, and 8 more per Wings level.

Ratenlimit: servers, 5 / 10 s

PUT /servers/{target}/soundboard/library/{library_id}

Add Sound from the Library. Add a ready-made sound of the sound library (GET /soundboard/library). Needs Manage Soundboard and counts like an upload; each library sound is on a server at most once. The name is the library name in your language unless you give one.

Ratenlimit: servers, 5 / 10 s

POST /servers/create

Create Server. Create a new server, optionally built from a blueprint in this one request.

Für Bots nicht verfügbar.

Ratenlimit: servers, 5 / 10 s

GET /soundboard/library

Fetch Sound Library. The ready-made sounds any server can add to its soundboard, with their names in every language the app has.

Ratenlimit: any_dlta, 20 / 10 s

GET /soundboard/library/{id}/audio

Preview Library Sound. The file of a library sound. Add ?v=<version> from the list: the answer is cached for good.

Ratenlimit: any_dlta, 20 / 10 s