Skip to main content
Developers/Docs/Signals API

Signals API

Access real-time intent signals across 43 industry verticals. Signals represent behavioral intent, transactional activity, and self-declared preferences — never FCRA-regulated data.

Signal Categories

CategoryDescriptionExample
switching_intentVendor dissatisfaction or active evaluationComparing CRM alternatives
bant_qualifiedBudget, Authority, Need, Timeline confirmedRFP issued with budget range
funding_maFunding round or M&A activitySeries B announcement
topic_surgeAbnormal research activity on a topic3x increase in cybersecurity research
permit_filedGovernment permit or license filedCommercial building permit
tech_installNew technology adoption detectedSalesforce implementation

Query Signals

GET/api/v1/signals

Query Parameters

ParameterTypeDescription
categorystringSignal category filter
industrystringIndustry vertical
intent_levelstringhot, warm, or cold
statestringTwo-letter state code
sinceISO 8601Only signals after this timestamp
limitintegerResults per page (default 25, max 100)
bash
curl "https://api.siedata.dev/api/v1/signals?category=switching_intent&industry=saas&intent_level=hot" \
  -H "X-API-Key: vpx_live_YOUR_KEY"

Intent Levels

HOT

Active buyer with budget, timeline, and vendor evaluation underway. Premium tier pricing.

WARM

Research phase with timeline or vendor named. Standard tier pricing.

COLD

Early interest signal. Contact with interest indicator only. Basic tier pricing.

Batch Signal Query

POST/api/v1/signals/batch

Query multiple signal categories and geographies in a single request.

json
{
  "queries": [
    { "category": "switching_intent", "industry": "saas", "state": "CA" },
    { "category": "permit_filed", "industry": "home-services", "state": "TX" }
  ],
  "limit_per_query": 25
}

Signal Stream (SSE)

GET/api/v1/signals/stream

Subscribe to a real-time server-sent events (SSE) stream for new signals matching your filters. Requires a Full Access key.

javascript
const source = new EventSource(
  "https://api.siedata.dev/api/v1/signals/stream?category=switching_intent",
  { headers: { "X-API-Key": "vpx_full_YOUR_KEY" } }
);

source.onmessage = (event) => {
  const signal = JSON.parse(event.data);
  console.log("New signal:", signal);
};