GunSpec

Firearms

Browse, search, compare, and retrieve detailed specifications for over 9,000+ firearms including variants.

Auth RequiredBuilder+

Returns every firearm carrying game stats, classified into archetypes. Filter by archetype to get just that role roster.

GET/v1/firearms/game-meta

  • stringheaderrequired

    Your API key. Authorization: Bearer <key> is accepted in its place.

  • string

    Restrict to a single archetype

    Accepts

  • GameProfile[]

    The response payload.

  • string

    Slug of the firearm this profile is for.

  • string

    Display name, as the maker writes it.

  • integer | null

    Editorial game statistic, 0-100. Not a measured figure. These are balance numbers for game use and are not derived from the ballistics above.

  • integer | null

    Editorial game statistic, 0-100. Not a measured figure.

  • integer | null

    Editorial game statistic, 0-100. Not a measured figure.

  • integer | null

    Editorial game statistic, 0-100. Not a measured figure.

  • integer | null

    Editorial game statistic, 0-100. Not a measured figure.

  • integer | null

    Editorial game statistic, 0-100. Not a measured figure.

  • integer | null

    Editorial game statistic, 0-100. Not a measured figure.

  • integer | null

    Editorial game statistic, 0-100. Not a measured figure.

  • GameArchetype

    The role a firearm's game profile assigns it.

  • string[]

    The statistics this firearm scores highest on.

  • string[]

    The statistics it scores lowest on.

  • 400VALIDATION_ERRORValidation error
  • 401UNAUTHORIZEDAPI key required
  • 403FORBIDDENValid key, not permitted
  • 429RATE_LIMITEDRate limit exceeded
  • 500INTERNAL_ERRORUnexpected server error

Requires Builder tier or higher.

Valid archetypes: sniper, assault, tank, glass-cannon, all-rounder, support, stealth, speedster.

Archetype classification uses weighted scoring across all 8 game stats.

Omit the archetype parameter to retrieve all classified firearms.

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.