client.attachments.list()
List attachments. fits and only_offered change what the list means: the first runs the fit engine, the second restricts to one seller's stock.
list(params?: ListAttachmentsParams): Promise<PaginatedResponse<Attachment>>- stringheaderrequired
Your API key.
Authorization: Bearer <key>is accepted in its place.
- integerdefault
1Page number, from 1 to 10,000
- Range
- 1 – 10000
- Example
- integerdefault
20Items per page (max 100)
- Range
- 1 – 100
- Example
- string
Attachment category
- Max length
- 100
- Example
- string
Manufacturer slug
- Max length
- 100
- Example
- string
Only attachments that fit this firearm
- Max length
- 100
- Example
- string
Only attachments requiring this interface standard
- Max length
- 80
- Example
- string
Substring match on name
- Max length
- 60
- Example
- boolean
Only factory parts (
true) or only aftermarket (false) - string
Production status. The catalog keeps discontinued parts on purpose, so a store front asks for
in_production- Accepts
- Example
- string
Restrict to one seller.
meresolves to the vendor your key belongs to- Max length
- 64
- Example
- boolean
Drop anything that seller does not currently stock. Needs a resolvable
vendor, and yields nothing without one
- Attachment[]
One page of results
- string
URL-safe slug identifying the part, e.g.
magpul-zhukov-s-stock. - string
Display name, as the maker writes it.
- string
What kind of part it is:
stock,optic,muzzle,magazine,grip. - ManufacturerRef | null
Who makes it.
- string | null
The maker's own SKU, where they publish one.
- number | null
Weight in grams.
- number | null
Length in millimetres.
- integer | null
Magazines only
- number | null
Suppressors and muzzle devices
- string | null
The mount position this part occupies, or null when it takes none.
- boolean
True when the part ships on the firearm from the factory. A factory part carries no
statModsorspecDeltas, because the firearm's own figures already include it. - string | null
The firearm this is the factory part for, when
isFactoryPartis true. - object
Editorial adjustments to the game statistics once fitted, keyed by stat. Same status as
game_*on a firearm: not measured. - object
Specification changes once fitted, keyed by field: a folding stock changes the folded length, for example.
- string | null
Absolute URL of the manufacturer product photo on the assets CDN, ready to render. Null when no photo has been sourced yet.
- AttachmentStatus
Production status of an attachment.
limitedcorresponds to a firearm'slimited_production. - number | null
How completely the record is specified and how well it is sourced, 0 to 1. A record-level completeness and provenance measure, not a per-field probability of correctness. Use it to rank and triage; use
sourcesto verify an individual number. - 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.
- Provenance
Where a record's figures came from and how far they have been checked, in one place.
sourcesare the pages consulted; check a specific figure against those.sourceKindssays what each page is andbestSourceKindthe strongest of them, on the hierarchySourceKinddefines: a maker or standards-body page is evidence for a figure, a retailer or forum page is evidence the item exists.dataConfidenceis the 0 to 1 score set from what was actually sourced and never raised by hand.verifiedAtandverifiedFieldssay when a source was last read against the record and which fields it stated; null means the row is still seed knowledge.updatedAtandversionare the same cache signals the record carries at the top level. - string[]
The pages consulted when the record was compiled, as an array. Check a specific figure against these rather than against
dataConfidence. - object[]
What each cited page is, in
sourcesorder, on theSourceKindhierarchy. A host not in the source map isother, never guessed. - SourceKind | null
The strongest kind among the citations, or null when nothing is cited.
manufacturerorstandards_bodymeans a figure can be checked against an authority;retailerorcommunityalone means the record is still supported by copies of copies. - string | null
The first cited page on the record's own manufacturer's website, or null when it cites none. A page on another maker's site does not count. Cited from the maker is not the same as checked against it:
verifiedFieldsnames the figures that were read against a source. - string
How far the record's figures are backed, strongest first, for a badge:
verifiedwhen at least one figure was read against a source (verifiedFields),makerwhen it cites a page on its own manufacturer's site (makerSource),authoritywhen it cites a maker, standards body or government page,secondarywhen it cites only press, retailers, references or forums,nonewhen it cites nothing. Derived from the fields beside it. - object
The checks the record has been through, on a single record's response only: every task the data agent (Redback) or a person was given about it, what each proposed, the pages it read, and whether a person accepted it. Nothing an agent proposes reaches the record until a person accepts it, so this is the trail behind
verifiedFields. Who reviewed is not published; an agent's instance name is. - number | null
The 0 to 1 score set from what was actually sourced, never raised by hand. See the confidence bands in the docs.
- string | null
When a source was last read against this record. Null means the row is still seed knowledge.
- string[]
Which fields the source stated, as an array. Everything else on a verified row is still unverified. Null where no source has been read.
- string | null
Cartridges only: the page the drawing figures were taken from. Null on every other kind of record.
- string
When a served column last changed; the same value the record carries at the top level.
- string | null
The record's content version, equal to the top-level
version; equal versions mean equal data. - string[]
Standard ids this adds to the firearm once fitted. Resolved to
{ id, name, kind }rows on/v1/attachments/{id}. - 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.