FIREARMS DATA
FOR BUILDERS.

The firearms specification API for developers

Built for both sides of the counter.

From a single request, every spec, every photo, every variant. Production-grade firearms data that retailers, developers and defense teams trust.

  • 9,162Firearms
  • 1,014Manufacturers
  • 114Endpoints
  • 99.9%Uptime
Sample request
REST
GET /v1/firearms/glock-17-gen5
curl https://api.gunspec.io/v1/firearms/glock-17-gen5 \
  -H "X-API-Key: $GUNSPEC_KEY"
ResponseStudio and up
{
  "success": true,
  "data": {
    "id": "glock-17-gen5",
    "name": "Glock 17 Gen5",
    "parentFirearmId": "glock-17",
    "variantType": "generation",
    "yearIntroduced": 2017,
    "status": "in_production",
    "countryOfOrigin": "AT",
    "weightEmptyG": 625,
    "weightLoadedG": 863,
    "overallLengthMm": 202,
    "barrelLengthMm": 114,
    "heightMm": 138,
    "widthMm": 32,
    "actionType": "short_recoil",
    "firingMechanism": "striker_fired",
    "triggerType": "safe_action",
    "triggerPullN": 28,
    "magazineCapacity": 17,
    "muzzleVelocityMps": 375,
    "muzzleEnergyJ": 519,
    "effectiveRangeM": 50,
    "frameMaterial": "polymer",
    "slideMaterial": "steel",
    "firingModes": "["semi_automatic"]",
    "gameDamage": 42,
    "gameAccuracy": 68,
    "gameRange": 35,
    "gameFireRate": 55,
    "gameMobility": 76,
    "gameRecoilControl": 62,
    "gameReloadSpeed": 72,
    "gameConcealment": 65,
    "dataConfidence": 0.92,
    "has3dModel": 1,
    "svgLineArtUrl": "https://assets.gunspec.io/firearms/line/svg/glock-17-gen5.svg",
    "manufacturer": { "id": "glock", "name": "Glock Ges.m.b.H.", "countryCode": "AT", "foundedYear": 1963 },
    "category": { "id": "pistol", "name": "Pistol" },
    "calibers": [
      { "caliberId": "9x19mm-parabellum", "name": "9x19mm Parabellum", "natoDesignation": "9mm NATO", "isPrimary": 1 }
    ],
    "images": [
      { "id": 2572, "kind": "render", "url": "https://api.gunspec.io/v1/firearms/glock-17-gen5/images/2572" }
    ],
    "schematics": [
      { "id": 41, "title": "Field-strip diagram", "url": "https://assets.gunspec.io/firearms/schematics/glock-17-gen5-field-strip.pdf" }
    ]
  }
}

Pull the picture, not just the numbers.

One call returns a firearm's generated render, line-art silhouette, photographs, schematics and 3D model, each with sizes and a credit block. Drop them into a spec sheet, a product page or a game without hosting a single file.

  • 5Asset kinds
  • 3Sizes per image
  • 24 hEdge-cached
  • Every itemCarries a credit
  1. Accuracy International AWM, generated render
    Accuracy International AWMSniper rifleGET /v1/firearms/accuracy-international-awm/media/render
  2. AK-101, generated render
    AK-101Assault rifleGET /v1/firearms/ak-101/media/render
  3. 2A Armament Balios Lite BLR-16, generated render
    2A Armament Balios Lite BLR-16RifleGET /v1/firearms/2a-balios-lite-blr-16/media/render
  4. Anschütz 1771, generated render
    Anschütz 1771RifleGET /v1/firearms/anschutz-1771/media/render
  5. Astra-Unceta y Cia 357, generated render
    Astra-Unceta y Cia 357RevolverGET /v1/firearms/astra-357/media/render
  6. Abadie M1886, generated render
    Abadie M1886RevolverGET /v1/firearms/abadie-1886/media/render
Embed it
fetch-render.sh
# One request, no lookup first: address the asset by kindcurl -H "X-API-Key: $GUNSPEC_KEY" -o awm.webp \  "https://api.gunspec.io/v1/firearms/accuracy-international-awm/media/render?size=display"
# The silhouette as SVG, restroked white for a dark slidecurl -H "X-API-Key: $GUNSPEC_KEY" -o ak-101.svg \  "https://api.gunspec.io/v1/firearms/ak-101/media/silhouette?stroke_color=white"
200 OKimage/pngcache-control: public, max-age=86400, immutable
  • thumb12 KB
  • display100 KB
  • full480 KB
One media item, inlineBuilder and up
GET /v1/firearms/accuracy-international-awm/media/render?format=datauri
{  "kind": "render",  "format": "datauri",  "mimeType": "image/webp",  "width": 1536,  "height": 1024,  "alt": "Accuracy International AWM, left-side profile render",  "sizes": {    "full": ".../media/2572?size=full",    "display": ".../media/2572?size=display",    "thumb": ".../media/2572?size=thumb"  },  "credit": { "author": "GunSpec", "license": "GunSpec generated" },  "dataUri": "data:image/webp;base64,UklGRi4AAABXRUJQVlA4..."}

format=datauri returns the image inside the JSON, ready for an img tag, a Markdown file or a document export, capped at 256 KB. Leave size off and the largest variant that fits is chosen for you.

  1. Documents and reports

    Ask for a data URI and the image lands inline in the PDF, the Word export or the Google Doc. No asset folder, no broken link when the report is forwarded.

    Analysts · Publishers
  2. Websites and stores

    Thumb, display and full sizes for every render, pre-cut so a listing page pulls 12KB and the detail page pulls the original. Serve through your own route and cache for a day.

    Retail · Media
  3. Games and engines

    Renders straight onto a texture, silhouettes for the loadout screen, and the glTF binary for the model itself. Same slug you already use for the balanced stats.

    Game studios
Read the media referenceBrowse every render

GunSpec renders are free to use with attribution, or without it on any paid plan. Third-party photographs keep their own licence, which the credit block spells out.

GunSpec Certified data

Every specification is sourced from manufacturer datasheets, cross-checked against independent references and reviewed by a person before it ships. That process is what earns a record the mark, and the mark is yours to cite.

  • Manufacturer-sourcedSpecs taken from official datasheets, not scraped guesses or crowd edits.
  • Cross-checkedVerified against multiple independent references before publishing.
  • Human-reviewedA dedicated data team reviews every record. Corrections ship continuously.
Field coverageLive from the catalog, across 9,162+ firearms
Images
28.3%
Specifications
94%
Caliber
100%
Weight
94.3%

Every figure traced to its source

What is moving through GunSpec right now.

Latest additions to the database, and the firearms readers are returning to this week. 9,162 models indexed in total.

Search by what is actually on the gun.

Every firearm in the catalog is tagged across hundreds of manufacturing features. M-Lok rails, billet receivers, ambidextrous controls, nickel-boron bolt carriers. Filter, group, and ship only the firearms that match what your customers ask for.

  1. Billet receiver

    Machined from solid aluminium billet. Tighter tolerances than forged.

  2. Free floating handguard

    Mounted at the receiver only. No barrel contact, no harmonic interference.

  3. M-Lok

    Modular slot system. Rails, lights, grips bolt on, no smith work.

  4. Ambi charging handle

    Pull from either side. Same draw for left-hand and right-hand shooters.

  5. Ambi safety

    Selector mirrored on both sides of the receiver. No re-train for lefties.

  6. Ambi magazine release

    Drop a magazine with either hand. Tactical reload, both sides.

  7. Dual drop bolt release

    Bolt releases from both sides. Faster recovery after a reload.

  8. Mid-length gas

    Gas tube routed mid-barrel. Softer recoil than carbine length.

  9. Adjustable gas block

    Tunable flow. Match the load, suppress the rifle, dial out recoil.

  10. Nickel-boron BCG

    Ni-B coating. Self-lubricating, corrosion-resistant, brighter than nitride.

  11. Fixed stock

    Non-collapsing buttstock. Maximum cheek weld, simplest geometry.

  12. Muzzle brake

    Vented at the muzzle. Redirects gas, kills recoil, controls climb.

Everything teams ask before they ship.

The straight version. No vendor fog, no waiting on sales.

START BUILDING TODAY

Ready to integrate firearms data?

Get your free API key and start building in minutes. No credit card required.