client.firearms.top()
Get top firearms ranked by a specific statistic.
top(params: TopFirearmsParams): Promise<APIResponse<Firearm[]>>- stringheaderrequired
Your API key.
Authorization: Bearer <key>is accepted in its place.
- stringrequired
Which superlative to rank by
- Accepts
- Example
- string
Restrict the ranking to a category slug
- Example
- integerdefault
10How many to return
- Range
- 1 – 25
- Example
- TopFirearm[]
The response payload.
- string
Slug of the firearm.
- string
Display name, as the maker writes it.
- string | null
Slug of the manufacturer that makes it. Resolve against
/v1/manufacturers/{id}. - string | null
Slug of the category it belongs to. Resolve against
/v1/categories. - number | null
The figure this ranking is by, in the unit of whichever statistic was requested.
- string
One of g, m, rpm, mm, rounds, J
- 400
VALIDATION_ERROR - 401
UNAUTHORIZED - 403
FORBIDDEN - 429
RATE_LIMITED - 500
INTERNAL_ERROR
- Minimum tier
- Builder+
- Monthly quota
- 25,000/mo
- Rate limit
- 60/min
- Daily cap
- 2,000
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.