Models¶
Response models are pydantic v2 classes. The API is
camelCase; fields are snake_case (aliased automatically).
Torrents¶
pygazelle.models.torrents.Torrent
¶
Bases: GazelleModel
remaster_catalogue_number
class-attribute
instance-attribute
¶
pygazelle.models.torrents.TorrentGroup
¶
Bases: GazelleModel
wiki_bbcode
class-attribute
instance-attribute
¶
wiki_bbcode: str | None = Field(
default=None,
validation_alias=AliasChoices("wikiBBcode", "bbBody"),
)
pygazelle.models.torrents.TorrentResult
¶
Bases: GazelleModel
pygazelle.models.torrents.BrowseTorrent
¶
pygazelle.models.torrents.TorrentFile
¶
pygazelle.models.torrents.CollageRef
¶
Bases: GazelleModel
A collage a torrent group belongs to (id/name/count only).
Lighter than :class:~.collages.Collage (no contents); defined here rather
than reusing Collage to avoid a circular import (collages imports
:class:TorrentGroup).
pygazelle.models.torrents.MusicInfo
¶
Bases: GazelleModel
The group's musicInfo credit block (action=torrent/torrentgroup).
Each role is a list of artist credits. artists is also surfaced at the
top level of :class:TorrentGroup (artists); the other roles are only
available here. Roles a tracker omits default to [] (RED omits
arranger).
with_
class-attribute
instance-attribute
¶
Artists¶
pygazelle.models.artists.Artist
¶
Bases: GazelleModel
discography
class-attribute
instance-attribute
¶
discography: list[ArtistTorrentGroup] = Field(
default_factory=list, alias="torrentgroup"
)
pygazelle.models.artists.ArtistResult
¶
pygazelle.models.artists.ArtistTag
¶
pygazelle.models.artists.ArtistStatistics
¶
Bases: GazelleModel
The statistics block of an action=artist response.
pygazelle.models.artists.ArtistSimilar
¶
Bases: GazelleModel
An entry of the action=artist similarArtists block.
Distinct from :class:SimilarArtist (action=similar_artists): the profile
block keys the artist as artistId and adds a similarId edge id.
pygazelle.models.artists.ArtistTorrentGroup
¶
Bases: GazelleModel
A discography group from action=artist's torrentgroup list.
Note the shape differs from action=torrentgroup (groupId/groupName,
tags as a {tagId: name} map, a singular torrent key), so this is
a dedicated model rather than a reuse of :class:~.torrents.TorrentGroup.
group_category_id
class-attribute
instance-attribute
¶
tags
class-attribute
instance-attribute
¶
extended_artists
class-attribute
instance-attribute
¶
torrents
class-attribute
instance-attribute
¶
torrents: list[DiscographyTorrent] = Field(
default_factory=list, alias="torrent"
)
pygazelle.models.artists.DiscographyTorrent
¶
Bases: GazelleModel
A torrent inside a discography group (the singular torrent entries).
remaster_catalogue_number
class-attribute
instance-attribute
¶
pygazelle.models.artists.DiscographyArtist
¶
User¶
pygazelle.models.user.User
¶
pygazelle.models.user.UserStats
¶
Other¶
pygazelle.models.notifications.Notification
¶
Bases: GazelleModel
pygazelle.models.requests.Request
¶
Bases: GazelleModel
pygazelle.models.requests.RequestResult
¶
pygazelle.models.collages.Collage
¶
Bases: GazelleModel
torrent_groups
class-attribute
instance-attribute
¶
torrent_groups: list[TorrentGroup] = Field(
default_factory=list, alias="torrentgroups"
)
pygazelle.models.inbox.Message
¶
Bases: GazelleModel
Bookmarks¶
pygazelle.models.bookmarks.BookmarkedTorrentGroup
¶
Bases: GazelleModel
A bookmarked release group (action=bookmarks&type=torrents).
pygazelle.models.bookmarks.BookmarkedTorrent
¶
Bases: GazelleModel
A torrent edition within a bookmarked group (action=bookmarks&type=torrents).
pygazelle.models.bookmarks.BookmarkedArtist
¶
Subscriptions¶
pygazelle.models.subscriptions.ForumSubscription
¶
Bases: GazelleModel
A subscribed forum thread (action=subscriptions).
Site¶
pygazelle.models.site.Top10Category
¶
Bases: GazelleModel
One ranked list from action=top10 (e.g. "Most Active Torrents...").
The results items differ by request type (torrents/tags/users), so they
are kept as raw dicts rather than a single typed model.
pygazelle.models.site.Announcements
¶
Bases: GazelleModel
The action=announcements response: site news plus blog posts.
pygazelle.models.site.Announcement
¶
Bases: GazelleModel
pygazelle.models.site.BlogPost
¶
Bases: GazelleModel
Writes¶
pygazelle.models.writes.TagAddition
¶
pygazelle.models.writes.LogAddition
¶
Bases: GazelleModel
Result of action=add_log.
pygazelle.models.writes.LogSummary
¶
Bases: GazelleModel
One log's checker summary inside an action=add_log response.
pygazelle.models.writes.RequestFill
¶
Bases: GazelleModel
Result of action=request_fill.