Skip to main content
POST
Run multi-provider web research

Authorizations

Authorization
string
header
required

Tenant secret key (lcr_…). Server-side only.

Headers

X-Locus-Session-Id
string

Required only when the end-user JWT carries sid. Send the original high-entropy session value; sid is its SHA-256 fingerprint. Ignored for secret-key authentication.

Required string length: 16 - 128
Pattern: ^[A-Za-z0-9][A-Za-z0-9._:-]{15,127}$
Idempotency-Key
string
required

Reuse the same value only when retrying the same logical request.

Required string length: 1 - 255

Body

application/json
query
string
required
Required string length: 1 - 400
mode
enum<string>
Available options:
fast,
balanced,
comprehensive
maxResults
integer
default:10
Required range: 1 <= x <= 20
maxProviders
integer
Required range: 1 <= x <= 13
strategy
enum<string>
deprecated

Legacy v1 selector. Accepted for compatibility; prefer mode.

Available options:
balanced,
cost,
quality,
speed
topic
enum<string>
Available options:
general,
news
recencyDays
integer
Required range: 1 <= x <= 365
country
string
Pattern: ^[A-Za-z]{2}$
includeDomains
string[]
Maximum array length: 20
excludeDomains
string[]
Maximum array length: 20
includeImages
boolean
providers
string[]
Maximum array length: 13
rails
enum<string>[]
deprecated

Legacy v1 payment-path allowlist. Accepted but ignored because Locus chooses each provider payment path internally.

Available options:
api-key,
mpp,
x402
maxCredits

Non-negative exact decimal string with at most six fractional digits. Endpoint-specific positivity and amount limits still apply.

Pattern: ^\d+(?:\.\d{1,6})?$
externalUserId
string
attribution
object

Response

Normalized result and billing receipt

The response is of type object.