Dock tiers, their build manifests, the component list and the prestige name ladder.
Index: counts and the list of available endpoints.
Collection sets. Derived from the catalogue, so none is gated on an uncatchable species.
Habitats and BOTH unlock requirements — the server's dock tier and the player's own level.
Every item a player can hold: shop stock (source: 'shop', with a price) and quest/vote rewards
(source: 'reward', priceCoins: null - never for sale). Unpaginated, with total. Filters are
exact-match; an unknown value yields an empty list.
Optionalsource?: FishingItemSourceOptionaltype?: FishingItemTypeRarity tiers and their base weights.
mythic is included with rollable: false — it is never obtainable by casting (boss drops,
seasonal events and collection completion only), and stating that as data means a consumer does
not have to infer it from a missing weight. Per-guild reweights are guild config and are NOT
exposed here.
The species catalogue.
Returned unpaginated — the catalogue is small by design — with total alongside so a consumer
never has to guess whether it was truncated. Filters are exact-match; an unknown value yields an
empty list rather than an error, so you can filter optimistically.
Optionalfamily?: stringOptionalhabitat?: FishingHabitatNameOptionalrarity?: FishingRarityNameOptionalseasonal
PUBLIC fishing catalogue.
Unauthenticated and safe to call from a browser: every endpoint serves static catalogue data — species, items, rarities, collections, habitats and dock tiers — and nothing per-guild or per-user. There is no
authparameter on any method here, which is deliberate rather than an oversight.Namespaced
/minigames/fishing/...because fishing is the FIRST minigame, not the only one; a second game slots in beside it without a breaking path change for existing consumers.Responses are cached for an hour with
stale-while-revalidate, so polling this is cheap.