By Conflict
Returns firearms recorded as used in a given armed conflict.
- stringheaderrequired
Your API key.
Authorization: Bearer <key>is accepted in its place.
- stringrequired
Conflict name
- Example
- integerdefault
1Page number, from 1 to 10,000
- Range
- 1 – 10000
- Example
- integerdefault
20Items per page (max 100)
- Range
- 1 – 100
- Example
- object[]
One page of results
- 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. - integer | null
Year it entered production or service. Null where the date is disputed or unknown.
- string | null
Every conflict this firearm is recorded in, comma-separated, not only the one filtered on.
- 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
Requires Studio tier or higher.
Conflict data is extracted from the conflicts JSON field on each firearm record.
Use the /v1/conflicts endpoint to discover available conflict names.
- Minimum tier
- Studio+
- Monthly quota
- 150,000/mo
- Rate limit
- 120/min
- Daily cap
- 10,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.