Zrzur Entwickler

Benutzer und Mitglieder

Ein Benutzer ist ein Zrzur-Konto, ein Mitglied ein Benutzer auf einem Server, mit Spitzname, Rollen und Timeout.

Was ein Bot über Menschen sieht

Ein Bot sieht, was Mitglieder desselben Servers sehen: Benutzernamen, Anzeigenamen, Avatar, Abzeichen, Status und das öffentliche Profil. Er sieht nie E-Mail-Adressen, Sitzungen, Einstellungen, Privatsphäre-Entscheidungen oder Freundschaften.

Grenzen der Privatsphäre

Menschen entscheiden, wer ihnen schreiben darf. Ein Bot ist nie ein Freund, also:

Ihre Einstellung „Direktnachrichten“Kann der Bot eine Direktnachricht beginnen?
AlleJa
Gemeinsame (Standard: geteilter Server oder Gruppe)Ja, solange der Bot einen Server mit ihnen teilt
FreundeNein

Blockierte Benutzer bekommen nie Nachrichten eines Bots, und wer dem Bot zuerst geschrieben hat, kann immer eine Antwort bekommen. GET /users/{target}/dm kann gelingen, während das Senden mit 403 DirectMessagesRestricted oder Blocked abgelehnt wird. Wiederhole diese Fehler nicht: Poste stattdessen in einem Serverkanal, ohne private Details.

Gruppeneinladungen haben eine eigene Einstellung; Bots können gar keine Gruppen erstellen oder Leute hinzufügen.

Alterschecks für nicht jugendfreie Kanäle gelten nur für Menschen: Bots haben kein Alter und werden nicht geprüft. Nutze keinen Bot, um Mitgliedern Inhalte zu zeigen, deren Kanäle sie selbst nicht öffnen können.

Mitglieder

Mitglieder-Endpunkte funktionieren auf Servern, auf denen der Bot ist.

Referenz: Benutzer

GET /users/{target}

Fetch User. Retrieve a user's information.

Berechtigungen: User:Access · Ratenlimit: users, 20 / 10 s

PATCH /users/{target}

Edit User. Edit currently authenticated user.

Ratenlimit: user_edit, 2 / 10 s

DELETE /users/{target}/block

Unblock User. Unblock another user by their id.

Für Bots nicht verfügbar.

Ratenlimit: users, 20 / 10 s

PUT /users/{target}/block

Block User. Block another user by their id.

Für Bots nicht verfügbar.

Ratenlimit: users, 20 / 10 s

GET /users/{target}/default_avatar

Fetch Default Avatar. This returns a default avatar based on the given id.

Ratenlimit: default_avatar, 255 / 10 s

GET /users/{target}/dm

Open Direct Message. Open a DM with another user. If the target is oneself, a saved messages channel is returned. Fails with DirectMessagesRestricted when the other user's privacy settings don't let you start a conversation with them.

Berechtigungen: User:SendMessage, Channel:SendMessage · Ratenlimit: users, 20 / 10 s

GET /users/{target}/flags

Fetch User Flags. Retrieve a user's flags.

Ratenlimit: users, 20 / 10 s

DELETE /users/{target}/friend

Deny Friend Request / Remove Friend. Denies another user's friend request or removes an existing friend.

Für Bots nicht verfügbar.

Ratenlimit: users, 20 / 10 s

PUT /users/{target}/friend

Accept Friend Request. Accept another user's friend request.

Für Bots nicht verfügbar.

Ratenlimit: users, 20 / 10 s

GET /users/{target}/mutual

Fetch Mutual Friends, Servers, Groups and DMs. Retrieve a list of mutual friends, servers, groups and DMs with another user.

Berechtigungen: User:ViewProfile · Ratenlimit: users, 20 / 10 s

GET /users/{target}/profile

Fetch User Profile. Retrieve a user's profile data. Will fail if you do not have permission to access the other user's profile.

Berechtigungen: User:ViewProfile · Ratenlimit: users, 20 / 10 s

GET /users/@me

Fetch Self. Retrieve your user information.

Ratenlimit: users, 20 / 10 s

GET /users/@me/change-requests

Change requests. Changes to your account that Zrzur asked you to agree to and that are still waiting for your answer.

Ratenlimit: users, 20 / 10 s

POST /users/@me/change-requests/{id}

Answer a change request. Accept (the change is applied now) or decline (nothing changes).

Ratenlimit: users, 20 / 10 s

GET /users/@me/mentions

Fetch Mentions. Messages from the last 30 days that mention you: by name, by one of your roles, or with @everyone / @here, in channels you can see. Newest first. For people only: the whole messages and their authors would pass a bot's intents.

Für Bots nicht verfügbar.

Berechtigungen: Channel:ViewChannel · Ratenlimit: users, 20 / 10 s

GET /users/@me/privacy

Fetch Privacy Settings. Who can message you and who can add you to group chats.

Für Bots nicht verfügbar.

Ratenlimit: users, 20 / 10 s

PATCH /users/@me/privacy

Edit Privacy Settings. Change who can message you and who can add you to group chats. Fields left out stay the same.

Für Bots nicht verfügbar.

Ratenlimit: user_edit, 2 / 10 s

GET /users/dms

Fetch Direct Message Channels. This fetches your direct messages, including any DM and group DM conversations.

Ratenlimit: users, 20 / 10 s

POST /users/friend

Send Friend Request. Send a friend request to another user.

Für Bots nicht verfügbar.

Ratenlimit: users, 20 / 10 s

Referenz: Mitglieder

POST /servers/{server_id}/lobby/answers

Answer Lobby Question. Add the role attached to a public interest choice to the authenticated member. Existing roles are preserved; answering again is idempotent.

Ratenlimit: servers, 5 / 10 s

DELETE /servers/{server_id}/lobby/answers/{question}/{option}

Remove Lobby Answer. Take back an interest choice: removes the role of that configured answer from the authenticated member. Other roles stay; removing again is idempotent.

Ratenlimit: servers, 5 / 10 s

GET /servers/{server_id}/members/{member_id}

Fetch Member. Retrieve a member.

Ratenlimit: servers, 5 / 10 s

PATCH /servers/{server_id}/members/{member_id}

Edit Member. Edit a member by their id.

Berechtigungen: Channel:ChangeNickname, Channel:ManageNicknames, Channel:ChangeAvatar, Channel:RemoveAvatars, Channel:AssignRoles, Channel:TimeoutMembers, Channel:MuteMembers, Channel:DeafenMembers, Channel:MoveMembers, Channel:Connect, Channel:ManageChannel · Ratenlimit: servers, 5 / 10 s

GET /servers/{target}/invites

Fetch Invites. Fetch all server invites.

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

GET /servers/{target}/join_requests

Fetch Join Requests. Pending requests to join this server, oldest first.

Ratenlimit: servers, 5 / 10 s

POST /servers/{target}/join_requests/{applicant}/approve

Approve Join Request. Make the applicant a member. Fails if the request is no longer pending (already decided by someone else) or the person can't join (banned, server limit, age).

Ratenlimit: servers, 5 / 10 s

POST /servers/{target}/join_requests/{applicant}/reject

Reject Join Request.

Ratenlimit: servers, 5 / 10 s

DELETE /servers/{target}/join_requests/@me

Cancel Own Join Request.

Ratenlimit: servers, 5 / 10 s

GET /servers/{target}/join_requests/@me

Fetch Own Join Request. Where your request to join this server stands.

Ratenlimit: servers, 5 / 10 s

GET /servers/{target}/members

Fetch Members. Fetch server members, a page at a time (limit, after).

Ratenlimit: servers, 5 / 10 s

GET /servers/{target}/members_experimental_query

Query members by name. Query members by a given name, this API is not stable and will be removed in the future.

Ratenlimit: servers, 5 / 10 s

POST /servers/{target}/rules/accept

Accept the rules. Accept the server's rules (rules screening). Members who joined after screening was switched on can talk once they have accepted.

Ratenlimit: servers, 5 / 10 s