Index every firearm that has imagery
Returns each firearm with a render or photograph, and that imagery, as a three-field row. Built for media grids and mirroring jobs: paging the full catalogue with has_image=true returns fifteen fields per row, twelve of which such a caller discards. Silhouettes are excluded; every firearm has one. per_page allows up to 1000 here for the same reason.
- stringheaderrequired
Your API key.
Authorization: Bearer <key>is accepted in its place.
- integerdefault
1Page number
- Range
- 1 – 10000
- Example
- integerdefault
250Firearms per page
- Range
- 1 – 1000
- Example
- string
Restrict the images on each row to one kind
- Accepts
- MediaCatalogEntry[]
One firearm and the real imagery it has. Deliberately three fields: this is the index for a media grid or a mirroring job, not a catalogue row. Silhouettes are excluded: every firearm has one, and they have their own build-time manifest.
- string
Slug of the firearm this row is about.
- string
Display name, as the maker writes it.
- InlineMediaItem[]
The imagery on file for it, silhouette excluded, since every firearm has one of those.
- integer
Autoincrementing image id.
- string
Absolute, directly fetchable URL.
- MediaKind
What kind of asset a media row is.
- string | null
Alt text, where one has been written. Null otherwise, so do not render an empty string.
- integer | null
Pixel width, where it is known.
- integer | null
Pixel height, where it is known.
- number
Current page number
- number
Items per page
- number
Total matching records (Builder and above)
- 400
VALIDATION_ERROR - 401
UNAUTHORIZED - 403
FORBIDDEN - 429
RATE_LIMITED - 500
INTERNAL_ERROR
- Minimum tier
- Explorer+
- Monthly quota
- 200/mo
- Rate limit
- 10/min
- Daily cap
- 50
Figures shown are for this endpoint's minimum tier. Higher tiers raise every limit.
This read answers conditional requests. Keep the ETag from a response and send it back as If-None-Match: an unchanged record returns 304 Not Modified with no body, which counts toward your per-minute rate limit but not your daily allowance.