Public pull feeds#

All feeds require a HashWatch API key (X-API-Key: <key> header; any valid key works), are read-only, and cover the current verified hash set. Poll politely (hourly is plenty — responses are cache-friendly).

FormatURL
JSONhttps://api.hashwatch.us/public/feed.json
RSShttps://api.hashwatch.us/public/feed.rss
STIX 2.1https://api.hashwatch.us/public/feed/stix
TAXII 2.1 (discovery)https://api.hashwatch.us/taxii2/

JSON#

{
  "feed": "hashwatch-verified",
  "date": "2026-06-28",
  "count": 420,
  "transparency": "https://api.hashwatch.us/public/transparency/2026-06-28",
  "records": [
    { "executable_name": "...", "vendor": "...", "version": "...",
      "platform": "windows", "arch": "amd64",
      "sha256": "…", "sha1": "…", "md5": "…", "signer": "…",
      "source_url": "…", "valid_from": "2026-06-28T10:00:00Z" }
  ]
}

Each JSON feed links the matching transparency root.

STIX / TAXII#

Records are emitted as STIX 2.1 indicator objects with indicator_types: ["benign"] and a [file:hashes.'SHA-256' = '…'] pattern — an allowlist of known-good software for suppressing false positives in EDR/SIEM. Object IDs are deterministic, so re-pulls are idempotent.

TAXII 2.1 collection: 5f8a1c3e-0b2d-4e6f-8a1b-2c3d4e5f6a7b (/taxii2/api/collections/{id}/objects/).

Custom HTTP clients must send an Accept header (most clients do by default).

SIEM / EDR connectors#

Any SIEM/EDR can poll these feeds on a schedule and use the hashes as a known-good allowlist (suppress false positives — a file whose SHA-256 is in the feed is a vendor-verified binary). Ready-to-use configs ship with your deployment under integrations/siem/:

ToolFeedHow
Splunkfeed.jsonTA-hashwatch add-on (scripted input → sourcetype=hashwatch:knowngood + a hashwatch_knowngood lookup)
Microsoft SentinelTAXII 2.1Threat Intelligence – TAXII connector → API root https://api.hashwatch.us/taxii2/, collection 5f8a1c3e-…, API key as the Basic password (ARM template included)
Elasticfeed.jsonFilebeat httpjson input → hashwatch-knowngood-* index
IBM QRadarfeed.jsonREST loader → a reference set of known-good SHA-256s

All use the same API key as the feeds. See integrations/siem/README.md for step-by-step setup.