Notice

New Media API EndpointPull newly uploaded firearm images and rendersAll Media API Endpoint

The firearms API

Specifications for 9,162 firearms, 605 cartridges and 1,003 manufacturers, with ballistics, attachment fitment and rankings, as JSON from 134 public endpoints.

One call, one firearm

The same request in three languages. Every sample in the reference is run against production, and the result is published beside it.

The Explorer plan is free: 200 requests a month at 10 a minute, and no card.

curl --request GET \  --url 'https://api.gunspec.io/v1/firearms/ak-47' \  --header 'X-API-Key: your_key'

What it answers

100 catalogue operations in 14 groups, read from the spec the API serves. Each row names a few of its paths.

Read the API reference
Firearms/firearms /firearms/search /firearms/resolve16ops
Firearm Discovery/firearms/random /firearms/top /firearms/head-to-head14ops
Statistics/stats/summary /stats/production-status /stats/field-coverage14ops
Data Quality/data/coverage /data/gaps /data/tasks9ops
Compatibility/firearms/{id}/interfaces /firearms/{id}/attachments /attachments9ops
Ammunition/firearms/{id}/calculate /firearms/{id}/load /calibers/{id}/ammunition7ops
Calibers/calibers /calibers/compare /calibers/ballistics7ops
Firearm Analysis/firearms/{id}/game-profile /firearms/{id}/dimensions /firearms/{id}/family-tree5ops
Manufacturers/manufacturers /manufacturers/{id} /manufacturers/{id}/firearms5ops
Game/game/balance-report /game/tier-list /game/matchups5ops
Game Stats/firearms/{id}/game-stats /game-stats/versions /game-stats/versions/{version}/firearms4ops
Categories/categories /categories/{slug}/firearms2ops
Countries/countries /countries/{code}/arsenal2ops
Conflicts/conflicts1ops

Ways in

Call it over REST, from an SDK with typed models, or from an agent through the hosted MCP server. One key works for all three.

Read the SDK guide
@buun_group/gunspec-sdkOn npm, for Node.js 18+0.12.0
gunspecOn PyPI, for Python 3.9+0.6.0
MCP serverFor Claude, Cursor and any MCP client40tools
RESTJSON over HTTPS, with ETags and change webhooks134endpoints

The data is the product, so it is the thing we maintain

A specification database is only worth the state it is in today. Keeping it consistent is where the engineering goes, and these are the figures it produces rather than a claim about effort.

See the live health checks
Records citing at least one source page
100%
Records citing two or more
83%
Records citing a maker, a standards body or a government document
34%
Mean confidence across the catalogue
74%
  • Every record is validated before it shipsTypes, units and vocabularies are checked in CI. A barrel length is millimetres or the build fails.
  • Nothing automated writes to the catalogueAgents and checks file proposals against a record. A person decides what lands.
  • Every change is dated and addressableRecords carry updatedAt and a content hash, so you can tell what moved and fetch only that.

Questions about the firearms API

What people ask before they sign up.

The API

Is there a free firearms API?

Yes. The Explorer plan costs nothing and allows 200 requests a month at 10 a minute, across the list endpoints.

Read more in the docs
What data does the API return for a firearm?

Dimensions and weight, barrel length, action and firing mechanism, capacity, the cartridges it is chambered in, its maker and country, years of production, service history and the sources each record cites.

How many firearms are in the API?

9,162 firearms from 1,003 manufacturers, with 605 cartridges and their ballistics.

Read more in the docs
Is there an SDK?

Yes: @buun_group/gunspec-sdk 0.12.0 and gunspec 0.6.0. Both wrap every public endpoint with typed models, retries and conditional requests.

Can an AI agent use the API?

Yes. The hosted MCP server exposes 40 tools over the same data, with the same API key.

Read more in the docs