Slug of the firearm this row belongs to.
Feedback and data reports
A wrong figure, a missing record, a bug in an endpoint, a page that did not answer your question: every one of those has a channel, and each one lands with a person.
Which channel
Pick by what you found. Data corrections and support both have an API, so an integration can file them without a browser.
A wrong or missing figure
File a data report against the record and the section it concerns. Reviewed by a person; a correction goes into the catalog through the same path staff use.
How it worksSomething broken or unclear
Open a support ticket. Include the X-Request-Id of a failing call and we can see the request itself.
This documentation
Every page has a helpful / not helpful control and a report link in its footer. Both reach us as tickets with the page and endpoint attached.
How it worksA feature you need
A ticket in the feature-request category. The ones that recur shape the roadmap; a reply tells you when one ships.
How it worksA security weakness
Not a ticket. Email security@gunspec.io privately; the disclosure policy says what to include and what we promise back.
How it worksData reports over the API
POST /v1/me/reports files a correction against a firearm, naming the section and the kind of problem; GET /v1/me/reports lists what you have filed and where each stands. Both need a key that belongs to an account. Full request and response shapes are in the reference.
curl -X POST https://api.gunspec.io/v1/me/reports \ -H "X-API-Key: your_api_key" \ -H "Content-Type: application/json" \ -d '{ "firearmId": "glock-17-gen5", "section": "specs", "issueType": "incorrect", "description": "Barrel length is listed as 114 mm; Glock quotes 114.2 mm.", "suggestedValue": "114.2", "references": ["https://eu.glock.com/en/pistols/g17"] }'Request body
firearmIdstringrequiredsectionenumrequiredWhich part of the record the report is about.
game-statsspecsballisticsbarrelmaterialsoperatingcalibersusersdescription
issueTypeenumrequiredWhat kind of problem:
incorrect,missing,outdated.incorrectmissingoutdated
descriptionstringrequiredProse summary of the record, where one has been written.
suggestedValuestringWhat the reporter believes the value should be.
referencesstring[]Pages the reporter cited in support.
Lifecycle
pendingreviewedresolveddismissed
- One report per account, per firearm, per section every 24 hours; a second one in that window is a 429 REPORT_RATE_LIMITED. Add to the report you already filed instead.
- Cite a source in
referenceswhere you can. A report with a manufacturer page behind it is resolved far faster than a bare number. - When a report is accepted the record's
updatedAtandversionchange, a firearm.updated event fires, and a conditional request stops answering 304.
Support tickets over the API
POST /v1/me/support opens a ticket with a category and a requested priority; GET /v1/me/support lists yours, and replies go to /v1/me/support/{ticketId}/replies. The same tickets appear in your profile on the site. Shapes are in the reference.
curl -X POST https://api.gunspec.io/v1/me/support \ -H "X-API-Key: your_api_key" \ -H "Content-Type: application/json" \ -d '{ "subject": "Webhook deliveries stopped after rotating the secret", "category": "technical", "priority": "normal", "description": "Endpoint ep_… has returned 401 since 09:40 UTC. Request id 8f3c2b1a." }'Request body
subjectstringrequiredOne-line summary of the issue.
descriptionstringrequiredProse summary of the record, where one has been written.
categoryenumWhat the ticket is about. Not a firearm or attachment category.
billingtechnicaldata_qualityfeature_requestother
priorityenumTriage priority you are asking for. Staff may change it.
lownormalhighurgent
Lifecycle
openin_progresswaitingresolvedclosed
- Quote the request id of a failing call. It finds the request, its status and its error code in our logs without a back-and-forth.
- Priority is what you are asking for; staff may change it. Studio and Enterprise plans carry priority and dedicated support respectively.
- Replies from us arrive on the ticket and by email; a reply from you reopens a resolved ticket.
Feedback on these pages
Two controls sit in the footer of every page.
- Was this page helpful: one click, no account. Counted per page so we know which pages need work.
- Report a problem: a short form that opens a support ticket with the page, the endpoint in view and the URL attached, so you never have to describe where you were.
- Every page also has Copy page and Open in ChatGPT / Claude / Perplexity in its header, and a Markdown version, so you can ask an assistant about it and send us what it got wrong.
What happens next
Reports and tickets are reviewed by a person, never applied automatically.
- 1A report is created as
pending. Staff see it in a review queue beside the record it concerns. - 2It moves to
reviewedwhile it is checked against the cited source and the maker's own figures, then toresolvedordismissed, with the reason on the report. - 3An accepted correction is written through the catalog editor: the record's
versionchanges, subscribers are notified, and caches revalidate on the next request. - 4A ticket answers on the ticket itself and by email. Feature requests stay open until they ship or are declined with a reason.
Security issues
Do not file a security weakness as a ticket or a data report. Email security@gunspec.io privately; the disclosure policy covers scope, safe harbour and what you can expect from us.