Firearm Discovery

Filter by feature

Returns firearms carrying a given feature, e.g. threaded barrel. Each row names the drawn icon for every one of its features (featureIcons), so a list of matches can show the pictures without a second call per firearm.

Requires Builder tier or higher.

get/v1/firearms/by-feature

Request

  • Base URL: https://api.gunspec.io
  • URL: https://api.gunspec.io/v1/firearms/by-feature
  • Auth: one of:
    • API key in header X-API-Key
    • HTTP bearer

Query parameters

featurestring required

Feature name as stored, e.g. threaded barrel. The vocabulary is features on /v1/firearms/filter-options

categorystring

Restrict to a category slug

pageinteger

Page number, from 1 to 10,000

per_pageinteger

Items per page (max 100)

Headers

If-None-Matchstring

The ETag from a previous response. If the body would be byte-identical, the API answers 304 Not Modified with no body. A 304 counts toward the per-minute rate limit but not the daily request allowance.

Response

Filter by feature

successboolean required

Always true on a successful response. Every error carries false and an error object instead.

Example response

{
  "success": true,
  "data": [
    {
      "id": "m16a1",
      "name": "M16A1",
      "manufacturerId": "colt",
      "categoryId": "rifle",
      "features": [
        "threaded_barrel",
        "accessory_rail"
      ],
      "featureIcons": [
        "https://assets.gunspec.io/content/features/simple/threaded_barrel.webp",
        "https://assets.gunspec.io/content/features/simple/accessory_rail.webp"
      ]
    }
  ],
  "pagination": {
    "page": 1,
    "per_page": 20,
    "limit": 20,
    "total": 42,
    "totalPages": 3
  }
}

Changes

No recorded changes to this operation across all 1 revision of this API.