Skip to main content

Data Questions API

Data Questions are durable Q&A threads for product, domain, and dataset questions. They can be scoped to an organization or to a single space. Space scoped endpoints are available under /api/v1.0/spaces/{slug}/data-questions.

Space-Scoped Threads

MethodEndpointDescription
GET/spaces/{slug}/data-questionsList threads in a space.
POST/spaces/{slug}/data-questionsCreate a thread and first message.
GET/spaces/{slug}/data-questions/{thread_id}Fetch a thread with messages.
PATCH/spaces/{slug}/data-questions/{thread_id}Update thread metadata or status.
GET/spaces/{slug}/data-questions/suggestions?q={query}Suggest products, domains, datasets, and users.

List Filters

ParameterDescription
qText search.
statusopen, answered, or resolved.
domain_idFilter by linked domain.
product_idFilter by linked product.
dataset_idFilter by linked master dataset.
author_idFilter by thread author.
mentioned_user_idFilter by mentioned user.
cross_domainFilter cross-domain threads.
my_mentionsUse the current user as the mention filter.
unansweredShortcut for open/unanswered threads.

List endpoints set pagination headers.

Create Thread

curl -X POST "https://api.qarion.com/api/v1.0/spaces/finance/data-questions" \
-H "Authorization: Bearer YOUR_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"title": "Which table owns net revenue?",
"content_markdown": "I need the certified source for net revenue by month.",
"domain_ids": [],
"product_ids": [],
"dataset_ids": [],
"routed_user_ids": []
}'

Creating or updating a thread queues a background search reindex.

Messages, Votes, and Attachments

MethodEndpointDescription
POST/spaces/{slug}/data-questions/{thread_id}/messagesAdd a message to a thread.
PATCH/spaces/{slug}/data-questions/{thread_id}/messages/{message_id}Update a message authored by the current user.
PATCH/spaces/{slug}/data-questions/{thread_id}/messages/{message_id}/voteSet, change, or clear a vote.
POST/spaces/{slug}/data-questions/{thread_id}/messages/{message_id}/attachmentsUpload an attachment.
GET/spaces/{slug}/data-questions/attachments/{attachment_id}/downloadDownload an attachment.
DELETE/spaces/{slug}/data-questions/attachments/{attachment_id}Delete an attachment.

Adding an answer can trigger automatic summary generation and issue detection, depending on configured trigger settings.

Summaries and Issue Recommendations

MethodEndpointDescription
GET/spaces/{slug}/data-questions/summary-configReturn summary trigger settings.
GET/spaces/{slug}/data-questions/{thread_id}/summaryGet the persisted thread summary.
POST/spaces/{slug}/data-questions/{thread_id}/summaryGenerate or refresh a thread summary.
GET/spaces/{slug}/data-questions/issue-detection-configReturn issue detection settings.
POST/spaces/{slug}/data-questions/{thread_id}/messages/{message_id}/issue-recommendationGenerate or refresh an issue recommendation.
POST/spaces/{slug}/data-questions/{thread_id}/issue-recommendations/{recommendation_id}/dismissDismiss a recommendation.
POST/spaces/{slug}/data-questions/{thread_id}/issue-recommendations/{recommendation_id}/create-issueCreate an issue from a recommendation.

Issue recommendation generation can return both a generic issue recommendation and record-level issue drafts. Record drafts are accepted only for products that are already linked to the thread or for a single unambiguous product inferred from the thread title/messages. If the inferred product is used, Qarion stores a mentioned product link back to the source message so later API reads include that product context.

Organization-Scoped Threads

Organization-scoped endpoints use the organization slug:

MethodEndpointDescription
GET/{slug}/data-questionsList organization threads.
POST/{slug}/data-questionsCreate an organization thread.
GET/{slug}/data-questions/{thread_id}Fetch an organization thread.
PATCH/{slug}/data-questions/{thread_id}Update organization thread metadata or status.
POST/{slug}/data-questions/{thread_id}/messagesAdd a message.
PATCH/{slug}/data-questions/{thread_id}/messages/{message_id}Update a message.
PATCH/{slug}/data-questions/{thread_id}/messages/{message_id}/voteVote on a message.
POST/{slug}/data-questions/{thread_id}/messages/{message_id}/attachmentsUpload an attachment.
GET/{slug}/data-questions/{thread_id}/summaryGet the persisted thread summary.
POST/{slug}/data-questions/{thread_id}/summaryGenerate or refresh a summary.

Use space-scoped endpoints when the question belongs to one workspace. Use organization-scoped endpoints when routing spans spaces or domains.