Skip to content

Class: ServerEndpoint ​

Defined in: endpoints/server.ts:26

Constructors ​

Constructor ​

ts
new ServerEndpoint(client): ServerEndpoint;

Defined in: endpoints/server.ts:27

Parameters ​

ParameterType
clientRESTClient

Returns ​

ServerEndpoint

Methods ​

acceptInvite() ​

ts
acceptInvite(inviteId): Promise<IAcceptServerInviteResponse>;

Defined in: endpoints/server.ts:164

join the server an invite is for; only its recipient can

Parameters ​

ParameterType
inviteIdnumber

Returns ​

Promise<IAcceptServerInviteResponse>


ts
createInviteLink(serverId, params): Promise<IServerInviteLinkResponse>;

Defined in: endpoints/server.ts:94

Make a link anyone signed in can join with. expiresInSeconds null never expires; maxUses null has no limit.

Parameters ​

ParameterType
serverIdnumber
params{ expiresInSeconds: number | null; maxUses: number | null; }
params.expiresInSecondsnumber | null
params.maxUsesnumber | null

Returns ​

Promise<IServerInviteLinkResponse>


createServer() ​

ts
createServer(params): Promise<ICreateServerResponse>;

Defined in: endpoints/server.ts:33

Parameters ​

ParameterType
params{ color?: string; description?: string; name: string; }
params.color?string
params.description?string
params.namestring

Returns ​

Promise<ICreateServerResponse>


declineInvite() ​

ts
declineInvite(inviteId): Promise<IDeclineServerInviteResponse>;

Defined in: endpoints/server.ts:169

turn an invite down, which deletes it

Parameters ​

ParameterType
inviteIdnumber

Returns ​

Promise<IDeclineServerInviteResponse>


deleteServer() ​

ts
deleteServer(serverId): Promise<IDeleteServerResponse>;

Defined in: endpoints/server.ts:73

Delete a server and everything in it: channels, messages, roles, members, bans and invites. Only its owner (or an instance admin) can, and there is no undo.

Parameters ​

ParameterType
serverIdnumber

Returns ​

Promise<IDeleteServerResponse>


getAuditLog() ​

ts
getAuditLog(serverId, params?): Promise<IAuditLogResponse>;

Defined in: endpoints/server.ts:126

newest first; pass the last entry's id as before for the next page

Parameters ​

ParameterType
serverIdnumber
params?{ action?: | "server_update" | "ownership_transfer" | "channel_create" | "channel_update" | "channel_delete" | "channel_overrides_update" | "category_create" | "category_update" | "category_delete" | "category_overrides_update" | "role_create" | "role_update" | "role_delete" | "member_roles_update" | "member_nickname_update" | "member_kick" | "member_ban" | "member_unban" | "ban_note_update" | "member_timeout" | "member_timeout_remove" | "member_join_link" | "invite_link_create" | "invite_link_revoke" | "badge_create" | "badge_update" | "badge_delete" | "badge_assign" | "badge_unassign" | "soundboard_create" | "soundboard_update" | "soundboard_delete" | "bot_create" | "bot_update" | "bot_rotate" | "bot_delete"; actorId?: number; before?: number; limit?: number; }
params.action?| "server_update" | "ownership_transfer" | "channel_create" | "channel_update" | "channel_delete" | "channel_overrides_update" | "category_create" | "category_update" | "category_delete" | "category_overrides_update" | "role_create" | "role_update" | "role_delete" | "member_roles_update" | "member_nickname_update" | "member_kick" | "member_ban" | "member_unban" | "ban_note_update" | "member_timeout" | "member_timeout_remove" | "member_join_link" | "invite_link_create" | "invite_link_revoke" | "badge_create" | "badge_update" | "badge_delete" | "badge_assign" | "badge_unassign" | "soundboard_create" | "soundboard_update" | "soundboard_delete" | "bot_create" | "bot_update" | "bot_rotate" | "bot_delete"
params.actorId?number
params.before?number
params.limit?number

Returns ​

Promise<IAuditLogResponse>


getInvitableServers() ​

ts
getInvitableServers(userId): Promise<IInvitableServersResponse>;

Defined in: endpoints/server.ts:154

servers the current user could add userId to, and those userId is banned from

Parameters ​

ParameterType
userIdnumber

Returns ​

Promise<IInvitableServersResponse>


ts
getInviteLink(code, instance?): Promise<IInviteLinkPreviewResponse>;

Defined in: endpoints/server.ts:112

instance is the domain of another instance whose server the invite is to; omit it for this one

Parameters ​

ParameterType
codestring
instance?string | null

Returns ​

Promise<IInviteLinkPreviewResponse>


getServer() ​

ts
getServer(serverId): Promise<ISingleServerResponse>;

Defined in: endpoints/server.ts:37

Parameters ​

ParameterType
serverIdnumber

Returns ​

Promise<ISingleServerResponse>


getServerChannels() ​

ts
getServerChannels(serverId): Promise<IServerChannelsResponse>;

Defined in: endpoints/server.ts:59

Parameters ​

ParameterType
serverIdnumber

Returns ​

Promise<IServerChannelsResponse>


getUserServers() ​

ts
getUserServers(): Promise<IUserServersResponse>;

Defined in: endpoints/server.ts:29

Returns ​

Promise<IUserServersResponse>


inviteUserToServer() ​

ts
inviteUserToServer(serverId, params): Promise<IInviteUserToServerResponse>;

Defined in: endpoints/server.ts:146

Add someone to a server outright, with nothing for them to accept - what an instant invite does. sendInvite asks them first.

Parameters ​

ParameterType
serverIdnumber
params{ userId?: number; username?: string; }
params.userId?number
params.username?string

Returns ​

Promise<IInviteUserToServerResponse>


ts
joinWithInviteLink(code, instance?): Promise<IJoinInviteLinkResponse>;

Defined in: endpoints/server.ts:118

joining a server on another instance (instance) keeps a copy of it on this one

Parameters ​

ParameterType
codestring
instance?string | null

Returns ​

Promise<IJoinInviteLinkResponse>


kickMember() ​

ts
kickMember(serverId, userId): Promise<IKickServerMemberResponse>;

Defined in: endpoints/server.ts:138

Parameters ​

ParameterType
serverIdnumber
userIdnumber

Returns ​

Promise<IKickServerMemberResponse>


leaveServer() ​

ts
leaveServer(serverId): Promise<ILeaveServerResponse>;

Defined in: endpoints/server.ts:64

the owner cannot leave; they delete the server instead

Parameters ​

ParameterType
serverIdnumber

Returns ​

Promise<ILeaveServerResponse>


ts
listInviteLinks(serverId): Promise<IServerInviteLinksResponse>;

Defined in: endpoints/server.ts:102

links still usable: everyone's with manage_invites, otherwise your own

Parameters ​

ParameterType
serverIdnumber

Returns ​

Promise<IServerInviteLinksResponse>


ts
revokeInviteLink(serverId, code): Promise<IApiResponse>;

Defined in: endpoints/server.ts:106

Parameters ​

ParameterType
serverIdnumber
codestring

Returns ​

Promise<IApiResponse>


sendInvite() ​

ts
sendInvite(serverId, userId): Promise<ISendServerInviteResponse>;

Defined in: endpoints/server.ts:159

invite a friend: they get a direct message they can accept or decline

Parameters ​

ParameterType
serverIdnumber
userIdnumber

Returns ​

Promise<ISendServerInviteResponse>


setNickname() ​

ts
setNickname(
   serverId, 
   userId, 
   nickname
): Promise<ISetNicknameResponse>;

Defined in: endpoints/server.ts:86

set a member's nickname here, or null to go back to their username

Parameters ​

ParameterType
serverIdnumber
userIdnumber
nicknamestring | null

Returns ​

Promise<ISetNicknameResponse>


transferOwnership() ​

ts
transferOwnership(serverId, userId): Promise<IApiResponse>;

Defined in: endpoints/server.ts:81

Hand the server to another member. Only the owner can; they keep the Admin role, and can then leave without the server going with them.

Parameters ​

ParameterType
serverIdnumber
userIdnumber

Returns ​

Promise<IApiResponse>


updateServer() ​

ts
updateServer(serverId, params): Promise<IUpdateServerResponse>;

Defined in: endpoints/server.ts:41

Parameters ​

ParameterTypeDescription
serverIdnumber-
params{ afkTimeoutSeconds?: number; banner?: number | null; calendarsEnabled?: boolean; color?: string | null; description?: string | null; icon?: number | null; name?: string; welcomeChannelId?: number | null; }-
params.afkTimeoutSeconds?number-
params.banner?number | null-
params.calendarsEnabled?booleanEnable this server's single shared calendar. Disabled by default.
params.color?string | null-
params.description?string | null-
params.icon?number | null-
params.name?string-
params.welcomeChannelId?number | nullOne text channel belonging to this server, or null to disable welcome messages.

Returns ​

Promise<IUpdateServerResponse>

Released under the GNU Affero General Public License v3.0.