POST /v1/graph/query
Reverse-index the business graph: "which firms use tech X in state Y." This is the query a stateless scraper cannot answer. It only works on a compounding, fused local-business graph. Returns clean-title facts only (never owner PII, never raw source data).
Request
POST /v1/graph/query
Content-Type: application/json
x-api-key: YOUR_KEYAt least one selective filter is required (tech, techAny, industry, state, or city).
hasDomain and notTech alone are not selective enough; this bounds the query cost.
Body
| Field | Type | Description |
|---|---|---|
tech | string | string[] | Firms using this technology (all of, when an array). |
techAny | string[] | Firms using any of these technologies. |
notTech | string[] | Exclude firms using these. |
industry | string | Industry / NAICS title filter. |
state | string | Two-letter state. |
city | string | City. |
hasDomain | boolean | Only firms with (or without) a website. |
limit | number | Max results. Default 50, clamped to 200. |
Arrays are capped at 25 terms each.
Example
curl -X POST https://api.superscraper.dev/v1/graph/query \
-H "x-api-key: ss_live_xxxxxxxxxxxxxxxxxxxx" \
-H "Content-Type: application/json" \
-d '{"tech": "servicetitan", "state": "TX", "limit": 50}'Response
{
"count": 128,
"results": [
{
"domain": "acmehvac.com",
"name": "Acme HVAC LLC",
"industry": "HVAC Contractors",
"naics": "238220",
"tech_stack": ["servicetitan", "wordpress"],
"city": "Austin",
"state": "TX",
"employee_band": "11-50",
"_freshness": "2026-07-10T00:00:00.000Z"
}
],
"criteria": { "tech": "servicetitan", "state": "TX", "limit": 50 }
}Every row is a clean-title business fact. The projection never returns raw_data, owner records,
phone, or email; those are stripped at the API boundary.
Errors
| Status | Cause |
|---|---|
| 400 | no selective filter (provide tech, techAny, industry, state, or city) |
| 400 | invalid JSON |
| 503 | graph disabled (GRAPH_ENABLED not set) |
Read a single record
GET /v1/graph/business/:idOrDomain returns one fused business (PII-stripped: clean-title facts +
marketing summary + a signal count, never owner PII or raw payloads).
curl https://api.superscraper.dev/v1/graph/business/acmehvac.com -H "x-api-key: ss_live_..."Notes
- This is the reverse-index over the same graph Resolve writes to. The more you resolve and enrich, the richer this query gets.
- Requires
GRAPH_ENABLED=trueon the deployment.