v4

latestOpenAPI 3.1.02026-08-01207318738.7 KB
AI

Pick the best topic for a prompt

Analyze a natural language prompt and determine which topic in the model is the best fit for answering the question. Useful as a preprocessing step before calling generate-query or submitting an AI job, especially when the user's question could relate to multiple topics.

post/api/v1/ai/pick-topic

Request body

branchIdstring uuid

Optional branch ID for the model. Must be a branch of the shared model specified by modelId.

currentTopicNamestring

The name of the current topic to scope query generation. If not provided, AI will automatically select the best topic for your prompt.

modelIdstring uuid required

The UUID of the shared model to query against. Only shared models are supported.

potentialTopicNamesstring[]

Optional list of topic names to limit consideration to. If not provided, all topics the user has access to in the model will be evaluated.

promptstring required

The natural language prompt to analyze. The AI will determine which topic best matches the data described in this prompt.

userIdstring uuid

User ID to evaluate topic access as. Their permissions will be used for permission-aware topic selection. Only valid with organization-scoped API keys. Personal access tokens always act as the authenticated user.

Example request

{
  "branchId": "550e8400-e29b-41d4-a716-446655440000",
  "currentTopicName": "order_items",
  "modelId": "770e8400-e29b-41d4-a716-446655440002",
  "potentialTopicNames": [
    "order_items",
    "customers",
    "products"
  ],
  "prompt": "How many orders were placed last month?",
  "userId": "990e8400-e29b-41d4-a716-446655440004"
}

Response

Topic selected successfully. The returned topicId can be used as the topicName parameter in other AI endpoints.

topicIdstring required

The name of the topic that best matches the prompt. Use this as the topicName parameter when calling generate-query or submitting an AI job.

Example response

{
  "topicId": "order_items"
}