These examples show how to consume Pulse Intelligence data from analyst tools and SOAR automation. Everything calls the public API with a scoped key and exports indicators into common analyst workflows.
/settings with only the indicators:read scope.
A scoped key is enough for every example here and limits blast radius if it leaks.PULSE_BASE_URL to your host and PULSE_API_KEY to the key. Never commit real keys —
use an env file or your CI secret store.examples/python/export_indicators.py — CSV exportDownloads the JSON view of /api/v1/indicators and writes a CSV to stdout.
set PULSE_BASE_URL=https://your-pulse-host.example
set PULSE_API_KEY=pulse_your_key
python examples/python/export_indicators.py --severity HIGH > high-indicators.csv
examples/python/export_stix.py — STIX 2.1 bundle exportFetches GET /api/v1/indicators?format=stix and writes the STIX 2.1 bundle to a file.
The response is validated against the STIX bundle shape before anything is written.
python examples/python/export_stix.py --severity HIGH -o pulse-indicators.stix.json
examples/curl/export_indicators.sh — raw format downloadsOne-liner downloads for any export format the API supports (csv, stix, misp, snort,
json). Non-JSON formats are full-set exports capped at 50,000 rows server-side; json is
paginated at 100 rows per page.
bash examples/curl/export_indicators.sh csv > pulse-indicators.csv
bash examples/curl/export_indicators.sh stix > pulse-indicators.stix.json
examples/splunk/pulse_indicator_lookup.spl is a lookup-oriented SPL starter query for
normalized Pulse indicator exports.
examples/sentinel/pulse_high_confidence_iocs.kql is a KQL starter query for high-confidence
network and hash indicators after importing Pulse data into a PulseIndicators table.
type,value,confidence,severity,tlp,tags,source,firstSeen,lastSeen; head -n 5 should show it."type": "bundle" and "spec_version": "2.1":
jq -e '.type == "bundle" and .spec_version == "2.1"' pulse-indicators.stix.jsonindicators:read scope. 400: bad format value.docs/API.md and docs/openapi.yaml.