Skip to content

Opensearch Search

POST
/opensearch/search

Structured search across one of the whitelisted mashup OpenSearch indices.

Use this when the LLM needs to look up enriched person / company records by attribute (domain, industry, country, hem). For the hot HEM-or-IP resolve path, prefer /opensearch/resolve — it’s a single round trip and friendlier to cache. Contact/company mashup searches automatically apply the authenticated organization’s deliverability protection policy.

Authorizations

Parameters

Header Parameters

X-Target-Org-Id
Any of:
string

Request Body required

object
cursor
Any of:
Array
fields
Any of:
Array<string>
filters

Field equality filters. Scalar value -> term, list -> terms (OR). Use this to narrow by COMPANY_DOMAIN, COMPANY_INDUSTRY, hem, etc. Field names are the RAW index fields (UPPERCASE, e.g. COMPANY_INDUSTRY) — not the friendly snake_case names used by /search.

object
key
additional properties
any
index
required

Logical index to search. Maps to a whitelisted physical alias.

string
Allowed values: mashup_contacts mashup_companies hem2contact ip2company
limit

Hard-capped at 200.

integer
default: 50 >= 1 <= 200
sort
Any of:
Array<object>
object
key
additional properties
string
track_total_hits
Any of:
integer
>= 1 <= 1000000

Responses

200

Successful Response

object
data
required
object
cursor
Any of:
Array
hits
Array<object>
default:
object
id
required
string
score
Any of:
number
sort
Any of:
Array
source
object
key
additional properties
any
index
required
string
took_ms
integer
total
integer
pagination
Any of:
object
has_next
required

Whether there are more pages

boolean
limit
required

Items per page

integer
next_cursor
Any of:
string
page
required

Current page number (1-indexed)

integer
total
required

Total number of items

integer

422

Validation Error

object
detail
Array<object>
object
loc
required
Array
msg
required
string
type
required
string