Skip to main content
The intent object describes who you want to find when your application already has structured criteria. Send it alone for a fully structured request, or alongside top-level query when plain English provides useful context and specific fields need to be corrected or constrained. When both are present, Orbit derives a base intent from query and overlays the caller-provided intent. At each supplied field, arrays, scalar values, and null replace the derived value; nested objects merge field by field.
Do not send intent.version. Orbit owns and applies the schema version internally.

Top-level fields

Unknown and server-owned fields are rejected.

Experience

temporalScope accepts current, historical, or both. Use either title or titleAnyOf when possible; sending both is allowed but usually redundant.

Semantic clauses

Use text for one concept or anyOf for alternatives.

Schools

School objects accept school, schoolAnyOf, graduationYear, startYear, endYear, temporalScope, and relation.

Location and demographics

Each range requires both min and max, and min must not exceed max.

Personalization

See Start a search for the complete request contract.