Live Search
Search one source or many, on demand, with the inputs you have.
Live search means running agents at the moment you need an answer — for an applicant, a counterparty, a case number — instead of waiting for a scheduled collection. You send the inputs you have; the agents engineered for each source run immediately; you retrieve structured results.
There's no separate search endpoint. Live search uses the same building blocks as everything else:
| You want to search | Use |
|---|---|
| One source | Start a job on an agent with your inputs. |
| Many sources at once | Run an agent group with your inputs — every member searches in parallel. |
Single-source search
/ api/ scraper-agents/ {externalAgentId}/ start-jobJOB_ID=$(curl -s -X POST "$NEXQDATA_API/api/scraper-agents/$EXTERNAL_AGENT_ID/start-job" \
-H "X-Api-Key: $NEXQDATA_API_KEY" \
-H "Content-Type: application/json" \
-d '{"inputParameters": "{\"FirstName\":\"John\",\"LastName\":\"Doe\",\"Dob\":\"1990-01-01\"}"}' \
| jq -r '.data.agentJobHistoryId')Then follow the job and download its data.
Multi-source search
Group the agents that cover the same kind of record, and run the group. The same inputs go to every source.
Start the search
GROUP_RUN_ID=$(curl -s -X POST "$NEXQDATA_API/api/search-groups/$GROUP_ID/run" \
-H "X-Api-Key: $NEXQDATA_API_KEY" \
-H "Content-Type: application/json" \
-d '{"inputParameters": "{\"LastName\":\"Doe\",\"FirstName\":\"Jane\"}"}' \
| jq -r '.data.groupRunId')Follow each source
curl -s "$NEXQDATA_API/api/search-groups/runs/$GROUP_RUN_ID" \
-H "X-Api-Key: $NEXQDATA_API_KEY" \
| jq '.data | {memberCount, startedCount, failedCount}'Each source reports its own status, so a source that failed is visible, not silent — and you can retry just that one.
Collect the results
curl -s "$NEXQDATA_API/api/scraper-agents/group-runs/$GROUP_RUN_ID/export" \
-H "X-Api-Key: $NEXQDATA_API_KEY" -o results.zipOne file per source.
Results
Each source returns records in the fields agreed when its agent was scoped. Results aren't normalized across sources: a court portal and a licensing board return different fields, and each file keeps its own.
Inputs differ by source
Every agent declares its own input keys (see Inputs). For a group, use keys that every member accepts. Groups NexqData sets up for you are built that way; if you build your own, pick agents that share their input keys.