sidequest_common.schemas.addons#

Addon schemas. Files are hosted elsewhere (GitHub releases, CurseForge, Wago); we only store links.

Attributes#

Classes#

AddonCreate

Body for POST /api/addons (officer).

AddonOrigin

Who made the addon: the guild itself, or a community addon it recommends.

AddonSchema

An addon as returned by GET /api/addons.

AddonUpdate

Body for PATCH /api/addons/{id} (officer). Only present fields change.

Module Contents#

class sidequest_common.schemas.addons.AddonCreate#

Bases: pydantic.BaseModel

Body for POST /api/addons (officer).

download_url: str#
homepage_url: str | None#
name: str#
origin: AddonOrigin#
slug: str#
summary: str#
version: str#
class sidequest_common.schemas.addons.AddonOrigin#

Bases: enum.StrEnum

Who made the addon: the guild itself, or a community addon it recommends.

Initialize self. See help(type(self)) for accurate signature.

COMMUNITY = 'community'#
GUILD = 'guild'#
class sidequest_common.schemas.addons.AddonSchema#

Bases: pydantic.BaseModel

An addon as returned by GET /api/addons.

download_url: str#
homepage_url: str | None#
id: uuid.UUID#
model_config#
name: str#
origin: AddonOrigin#
slug: str#
summary: str#
updated_at: datetime.datetime#
version: str#
class sidequest_common.schemas.addons.AddonUpdate#

Bases: pydantic.BaseModel

Body for PATCH /api/addons/{id} (officer). Only present fields change.

download_url: str | None#
homepage_url: str | None#
name: str | None#
origin: AddonOrigin | None#
summary: str | None#
version: str | None#
sidequest_common.schemas.addons.ADDON_ORIGIN_LABELS: dict[AddonOrigin, str]#