List Firearms
Returns a paginated list of firearms with optional filters. Filters combine with AND; features takes comma-separated slugs that must all match.
- stringHeadererforderlich
Ihr API-Schlüssel.
Authorization: Bearer <key>wird ebenfalls akzeptiert.
- integerstandard
1Page number, from 1 to 10,000
- Bereich
- 1 – 10000
- Beispiel
- integerstandard
20Items per page (max 100)
- Bereich
- 1 – 100
- Beispiel
- stringstandard
nameSort field
- Akzeptiert
- Beispiel
- stringstandard
ascSort order
- Akzeptiert
- Beispiel
- string
Comma-separated list of fields to include
- Beispiel
- string
Filter by manufacturer slug
- Max. Länge
- 100
- Beispiel
- string
Filter by caliber slug
- Beispiel
- string
Filter by category slug
- Max. Länge
- 100
- Beispiel
- string
Filter by action type, as stored and underscored. The vocabulary is /v1/firearms/action-types
- Beispiel
- string
Filter by ISO 3166-1 alpha-2 country code
- Beispiel
- integer
Minimum year introduced
- integer
Maximum year introduced
- number
Minimum empty weight (grams)
- number
Maximum empty weight (grams)
- number
Minimum barrel length (mm)
- string
Filter by production status
- Akzeptiert
- string
Comma-separated feature slugs; all must match
- Beispiel
- string
Only firearms with (or without) a 3D model
- Akzeptiert
- string
Only firearms with (or without) real imagery: a render or a photograph, ignoring the line-art silhouette every firearm has
- Akzeptiert
- string
Only records added after this ISO 8601 timestamp
- string
Only records added before this ISO 8601 timestamp
- FirearmListItem[]
One page of results
- string
URL-safe slug identifying the firearm, e.g.
glock-17-gen5. Stable: it is what a mirror keys on. - string
Display name, as the maker writes it.
- string
Slug of the manufacturer that makes it. Resolve against
/v1/manufacturers/{id}. - string
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.
- FirearmStatus | null
Production status, one of
in_production,discontinued,out_of_production,in_service,limited_production,prototype. Discontinued records are kept deliberately: a rifle built in 2004 wears parts nobody sells today. - string | null
ISO 3166-1 alpha-2 code of where it was designed, e.g.
AT. - string | null
How the action cycles:
short_recoil,gas_operated,blowback,bolt_actionand so on. An open vocabulary: the values in use are published on the schema asx-gunspec-vocabulary, andGET /v1/firearms/action-typesis the live list. - number | null
Unloaded weight in grams, without magazine.
- number | null
Barrel length in millimetres, measured from the breech face.
- InlineMediaItem[]
Every image this firearm has, silhouette first. Empty when none are on file.
- 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.
- string
When the record was first added,
YYYY-MM-DD HH:MM:SSin UTC. - string | null
Line-art silhouette, or null where none has been drawn.
- string | null
GLB model, or null where none is on file.
- integer
How many accounts have favorited this record.
- string
When a field we serve last changed. Maintained by the database rather than by whatever wrote the row, so it moves for a corrected specification and does not move for a re-run of the importer.
- string | null
Opaque fingerprint of this record. It changes when and only when a field we serve changes, so a client holding the same value already has the record and need not fetch it. Equality is the only supported operation: do not parse it, and do not assume how it is computed. Null means the record has not been written since versioning began, not that it is unchanged.
- 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
- Mindeststufe
- Explorer+
- Monatskontingent
- 200/mo
- Anfragerate
- 10/min
- Tageslimit
- 50
Die Werte gelten für die Mindeststufe dieses Endpunkts. Höhere Stufen erhöhen alle Limits.
Dieser Aufruf beantwortet bedingte Anfragen. Speichern Sie das ETag einer Antwort und senden Sie es als If-None-Match zurueck: ein unveraenderter Datensatz liefert 304 Not Modified ohne Body. Das zaehlt auf Ihr Minutenlimit, aber nicht auf Ihr Tageskontingent.