struct

QBittorrent::Model::MainData

Inherits JSON::Serializable::Unmapped < JSON::Serializable < Struct < Value < Object

The sync/maindata response (see ext/api-map.md §2.3 / §3): a snapshot of everything the WebUI needs, delivered as an incremental delta.

The client feeds the rid of the previous response into the next request; the server then returns only what changed. full_update: true marks a complete payload (typically the first call, rid = 0); otherwise each collection carries only added/changed entries and a matching *_removed array lists the keys/names dropped since the last response id.

Consequently every field is nilable — an absent collection means "unchanged", not "empty" — and JSON::Serializable::Unmapped preserves any keys not modelled here. The torrents values reuse TorrentInfo (already fully nilable, so partial deltas decode cleanly) and categories reuses Category.

Constructors

new(*, __pull_for_json_serializable pull : JSON::PullParser)
Source

Instance methods

categories

Added/changed categories keyed by name.

Source
categories_removed

Names of categories removed since the last response id.

Source
full_update

true when the payload is complete rather than an incremental delta.

Source
rid

Response id to feed into the next sync/maindata request.

Source
server_state

Global server state (partial on a delta).

Source
tags

Tags added since the last response id.

Source
tags_removed

Tags removed since the last response id.

Source
torrents

Added/changed torrents keyed by hash. On a delta each value is a partial TorrentInfo carrying only the fields that changed.

Source
torrents_removed

Hashes of torrents removed since the last response id.

Source
trackers

Tracker URL to the list of torrent hashes announcing to it (qB 5.x).

Source
trackers_removed

Tracker URLs removed since the last response id (qB 5.x).

Source