Draft an answer for a coverage gap
Beta. A draft answer written only from the assistant’s own sources, with the passages it used, or a plain statement that your content does not say enough.
POST
/
analytics
/
doc-proposals
/
draft
Draft an answer for a coverage gap
curl --request POST \
--url https://app.mithunai.com/mithunai/api/v1/analytics/doc-proposals/draft \
--header 'Authorization: Bearer <token>' \
--header 'Content-Type: application/json' \
--data '
{
"assistant_id": "<string>",
"question": "<string>"
}
'import requests
url = "https://app.mithunai.com/mithunai/api/v1/analytics/doc-proposals/draft"
payload = {
"assistant_id": "<string>",
"question": "<string>"
}
headers = {
"Authorization": "Bearer <token>",
"Content-Type": "application/json"
}
response = requests.post(url, json=payload, headers=headers)
print(response.text)const options = {
method: 'POST',
headers: {Authorization: 'Bearer <token>', 'Content-Type': 'application/json'},
body: JSON.stringify({assistant_id: '<string>', question: '<string>'})
};
fetch('https://app.mithunai.com/mithunai/api/v1/analytics/doc-proposals/draft', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));{
"outcome": "<string>",
"answer": "<string>",
"sources": [
{}
]
}Beta. Asks the assistant the gap’s question through its normal answer path: the same search of its knowledge bases, the same grounding and citation checks, and the same refusal to guess. Nothing is published and no conversation is created. A draft counts as one answer against your monthly allowance. Requires the owner or admin role.
When the sources do not say enough,
outcome is insufficient_content and answer is empty. That is the honest result, not an error: write the answer yourself and publish it, or add a source that covers it.
string
required
The assistant whose knowledge bases the draft is written from (UUID). Another organization’s
assistant returns
404.string
required
The gap’s question, at most 500 characters.
Response
string
required
drafted, or insufficient_content. Treat a value you do not recognise as
insufficient_content.string
required
The draft, without citation markers. Empty unless
drafted.object[]
required
The passages the draft was written from:
title, url (or null) and snippet (or null).Last modified on November 7, 2026
Draft an answer for a coverage gap
curl --request POST \
--url https://app.mithunai.com/mithunai/api/v1/analytics/doc-proposals/draft \
--header 'Authorization: Bearer <token>' \
--header 'Content-Type: application/json' \
--data '
{
"assistant_id": "<string>",
"question": "<string>"
}
'import requests
url = "https://app.mithunai.com/mithunai/api/v1/analytics/doc-proposals/draft"
payload = {
"assistant_id": "<string>",
"question": "<string>"
}
headers = {
"Authorization": "Bearer <token>",
"Content-Type": "application/json"
}
response = requests.post(url, json=payload, headers=headers)
print(response.text)const options = {
method: 'POST',
headers: {Authorization: 'Bearer <token>', 'Content-Type': 'application/json'},
body: JSON.stringify({assistant_id: '<string>', question: '<string>'})
};
fetch('https://app.mithunai.com/mithunai/api/v1/analytics/doc-proposals/draft', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));{
"outcome": "<string>",
"answer": "<string>",
"sources": [
{}
]
}