v1

latestOpenAPI 3.1.02026-07-2618690613.4 KB
AI

Generate a query

Generate a structured Omni query from natural language using AI

post/v1/ai/generate-query

Request body

modelIdstring uuid required

The ID of the model to run the query against

currentTopicNamestring

Name of the base topic/table. If left empty, AI will automatically choose a topic based on the question.

promptstring required

Natural language instruction describing the desired query output

workbookUrlboolean

When true, returns an Omni workbook URL that opens and runs the generated query

branchIdstring

The ID of the model branch to use to generate the query. If not provided, the main branch will be used. To retrieve branch IDs, use the List models endpoint with modelKind=BRANCH.

runQueryboolean

When true (default), the generated query is executed against the database and results are included in the response.

When false, only the generated query object is returned without executing it. Set to false to preview what query would be generated without incurring a database query.

contextQueryobject

A query object to provide as context. Use this to reference previous queries or provide additional context for the generation.

queryAllViewsboolean

When true and the model's query_all_views_and_fields setting is enabled, allows the AI to query views that are not included in topics. If the setting is disabled, this parameter has no effect.

When both the API parameter and model setting are enabled:

  • The AI can select from any view in the model, including views not in topics
  • The AI will prefer topic-organized views unless the question clearly targets a standalone view

Note: Users with topic-locked permissions cannot use this parameter, even if the model setting is enabled.

Response

Successfully generated query

topicstring nullable

The name of the topic used for query generation. This will be populated if the AI used a topic and null if the query was generated using a base view.

baseViewstring nullable

The name of the base view used for query generation. This will be populated if the AI used a view outside of a topic and null if the query was generated using a topic.

Example response

{
  "topic": "order_items",
  "baseView": "users"
}