Browse the api reference

Search Graph Documents

post/v1/graphs/{graph_id}/search

Part of Search.

Shared repositories require a subscription; subscription plan determines search rate limits.

Authentication

Authenticate in any one of these ways — not all of them:

  • API key in the X-API-Key header.
  • Bearer token in the Authorization header.

Path parameters

NameTypeDescription
graph_idrequiredstringGraph Id

Request body

Required, application/json.

FieldTypeDescription
queryrequiredstring

Search query

Constraints: 1–500 characters

entityoptionalstring

Filter by CIK (exactly one filer), ticker, or entity name. A name, or a ticker that is also a word, is a loose word match that can include other filers

form_typeoptionalstring

Filter by SEC form type (10-K, 10-Q)

sectionoptionalstring

Filter by section ID: an Item (item_1, item_1a, item_7, ...) or, for iXBRL disclosures, the element qname (us-gaap:GoodwillDisclosureTextBlock)

elementoptionalstring

Filter by XBRL element qname (e.g., us-gaap:Goodwill)

source_typeoptionalstring

Filter by source type (xbrl_textblock, narrative_section, ixbrl_disclosure, uploaded_doc, connection_doc)

fiscal_yearoptionalinteger

Filter by fiscal year

date_fromoptionalstring

Filter filings on or after date (YYYY-MM-DD)

Constraints: matches ^\d{4}-\d{2}-\d{2}$

date_tooptionalstring

Filter filings on or before date (YYYY-MM-DD)

Constraints: matches ^\d{4}-\d{2}-\d{2}$

semanticoptionalboolean

Enable hybrid semantic search (BM25 + KNN). Default is BM25-only for speed.

Default: false

groupoptionalboolean

Fold hits from successive filings of the same filer and section into the best-ranked one; also_in_filings counts the others. Ignored when entity is set, where a filer's filing history is the point. A grouped page is drawn from the first 100 hits.

Default: false

sizeoptionalinteger

Max results to return

Default: 10

Constraints: 1–50

offsetoptionalinteger

Pagination offset

Default: 0

Constraints: at least 0

snippet_charsoptionalinteger

Approximate snippet budget per hit in characters; the default is three highlight fragments of about 200

Constraints: 80–1500

Example request

curl
curl -X POST "https://api.robosystems.ai/v1/graphs/{graph_id}/search" \
  -H "X-API-Key: $ROBOSYSTEMS_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
  "query": "string"
}'

Responses

200 Successful Response

FieldTypeDescription
totalrequiredinteger

Matching documents before any grouping, as OpenSearch counts them (it stops counting at 10,000). Not the number of distinct results a grouped search can page through.

hitsrequiredSearchHit[]

A single search result with snippet. A long SEC section (an MD&A, a commitments note) is indexed in parts, each a document of its own: part of part_count, parent_document_id shared by the section's parts, next_document_id to read on. On a grouped search, also_in_filings counts the other filings of the same filer whose same section (and part) matched and were folded into this hit.

SearchHit fields
FieldTypeDescription
document_idrequiredstring
scorerequirednumber
source_typerequiredstring
parent_document_idoptionalstring
partoptionalinteger

Default: 1

part_countoptionalinteger

Default: 1

next_document_idoptionalstring
entity_tickeroptionalstring
entity_nameoptionalstring
section_labeloptionalstring
section_idoptionalstring
element_qnameoptionalstring
filing_dateoptionalstring
fiscal_yearoptionalinteger
form_typeoptionalstring
accession_numberoptionalstring
xbrl_elementsoptionalstring[]
snippetrequiredstring
content_lengthoptionalinteger

Default: 0

content_urloptionalstring
document_titleoptionalstring
tagsoptionalstring[]
folderoptionalstring
also_in_filingsoptionalinteger
queryrequiredstring
graph_idrequiredstring
StatusMeaning
400Invalid request
401Authentication required
403Access denied
404Resource not found
422Validation Error
429Rate limit exceeded
500Internal server error
503Text search not available