GunSpec

Calibers

Browse ammunition calibers with ballistic data, dimensions, and linked firearms. Useful for filtering, cross-referencing, and ammunition compatibility checks.

Auth RequiredBuilder+

Returns full specifications for up to 5 cartridges side by side.

GET/v1/calibers/compare

  • stringheaderrequired

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

  • stringrequired

    Comma-separated caliber slugs, maximum 5

    Example

  • object

    The response payload.

  • Caliber[]

    The compared cartridges, in the order their ids were given.

  • string

    URL-safe slug identifying the cartridge, e.g. 9x19mm-parabellum.

  • string

    Display name, as the maker writes it.

  • string | null

    JSON array of aliases

  • string | null

    NATO designation where the cartridge has one, e.g. 9mm NATO. Null otherwise.

  • number | null

    Bullet diameter in millimetres.

  • number | null

    Case neck outside diameter in millimetres.

  • number | null

    Bottleneck cases only.

  • number | null

    Case base diameter in millimetres, ahead of the extractor groove.

  • number | null

    Rim diameter in millimetres.

  • number | null

    Rim thickness in millimetres.

  • number | null

    Case length in millimetres.

  • number | null

    Overall length in millimetres, stock extended where it folds or collapses.

  • object[]

    Per-field differences across the compared cartridges, one entry per numeric field.

  • string

    Which column the row is about, named as the database names it.

  • number | null[]

    This field on each compared cartridge, in the order the ids were given. Null where that record does not carry the field.

  • number | null

    Lowest value across the compared cartridges. Null when fewer than two carry the field.

  • number | null

    Highest value across the compared cartridges. Null when fewer than two carry the field.

  • number | null

    Spread from the lowest value, as a percentage of it. Null when the minimum is zero or fewer than two carry the field.

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

Requires Builder tier or higher.

Maximum of 5 calibers per comparison request.

Deltas are percentage differences relative to the first caliber in the list.

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.