sidequest_common.schemas.role_menus#

Role menu schemas.

Classes#

RoleMenuCreate

Body for POST /role-menus. The bot posts the message afterwards and PATCHes message_id.

RoleMenuOptionSchema

One role button.

RoleMenuOptionUpsert

Body for PUT /role-menus/{menu_id}/options/{role_id}. Discord allows 25 buttons per message.

RoleMenuSchema

A role menu and its options (ordered by position).

RoleMenuUpdate

Partial update for PATCH /role-menus/{menu_id} (exclude_unset).

Module Contents#

class sidequest_common.schemas.role_menus.RoleMenuCreate#

Bases: pydantic.BaseModel

Body for POST /role-menus. The bot posts the message afterwards and PATCHes message_id.

channel_id: int#
description: str | None#
max_roles: int#
title: str#
class sidequest_common.schemas.role_menus.RoleMenuOptionSchema#

Bases: pydantic.BaseModel

One role button.

description: str | None#
emoji: str | None#
label: str#
model_config#
position: int#
role_id: int#
class sidequest_common.schemas.role_menus.RoleMenuOptionUpsert#

Bases: pydantic.BaseModel

Body for PUT /role-menus/{menu_id}/options/{role_id}. Discord allows 25 buttons per message.

description: str | None#
emoji: str | None#
label: str#
position: int | None#
class sidequest_common.schemas.role_menus.RoleMenuSchema#

Bases: pydantic.BaseModel

A role menu and its options (ordered by position).

channel_id: int#
description: str | None#
guild_id: int#
id: uuid.UUID#
max_roles: int#
message_id: int | None#
model_config#
options: list[RoleMenuOptionSchema]#
title: str#
class sidequest_common.schemas.role_menus.RoleMenuUpdate#

Bases: pydantic.BaseModel

Partial update for PATCH /role-menus/{menu_id} (exclude_unset).

channel_id: int | None = None#
description: str | None#
max_roles: int | None#
message_id: int | None = None#
title: str | None#