GunSpec

Calibers

Resource class for interacting with the GunSpec Calibers API. Wraps all /v1/calibers endpoints. Instantiated internally by the GunSpec client and exposed as client.calibers.

Auth RequiredBuilder+

Get ballistics data for a caliber at a specified distance.

ballistics(params: CaliberBallisticsParams): Promise<APIResponse<BallisticsResult>>
GET/v1/calibers/ballistics

  • stringheaderrequired

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

  • stringrequired

    Caliber slug

    Max length
    255
    Example
  • integerdefault100

    Maximum distance in metres

    Range
    1 – 5000
    Example

  • object

    The response payload.

  • object

    The cartridge the profile was computed for.

  • string

    Slug of the cartridge.

  • string

    Display name, as the maker writes it.

  • integer

    The distance the figures below are quoted at, echoing the distance parameter.

  • number | null

    Muzzle velocity in metres per second, for the default load.

  • number | null

    Muzzle energy in joules, for the default load.

  • number | null

    Remaining velocity at distanceM, in metres per second.

  • number | null

    Remaining energy at distanceM, in joules.

  • number | null

    Time of flight to distanceM, in seconds.

  • number | null

    Bullet drop below the line of sight at distanceM, in centimetres.

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

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.