Skip to main content

Unanswered API

When a visitor asks a question the bot can't answer — no relevant docs, low retrieval confidence, or a refusal — MimicBot records the question, normalizes it, and clusters repeat phrasings together. The resulting list is your feedback loop: high-frequency unanswered questions are the gaps in your content, and dismissing one marks it as handled so it disappears from the inbox view. This endpoint powers the Unanswered tab in the dashboard.

Endpoints

The unanswered question object

FieldTypeDescription
idstring (uuid)Unanswered question id.
botIdstring (uuid)Owning bot.
questionNormalizedstringCanonicalized form used to cluster duplicates.
questionExamplesstring[]Raw phrasings as the visitors asked them.
reason"no_relevant_docs" | "low_confidence" | "refused"Why the bot couldn't answer.
frequencynumberHow many times this normalized question was seen.
firstSeenAtstringISO 8601 of the first occurrence.
lastSeenAtstringISO 8601 of the most recent occurrence.
dismissedAtstring | nullISO 8601 when an operator dismissed it, or null if still open.

List unanswered

GET /api/bots/{botId}/unanswered

Returns every non-dismissed unanswered question for a bot, ordered by frequency descending.

Request

curl https://api.mimicbot.app/api/bots/$BOT_ID/unanswered \
-H "Authorization: Bearer $MIMICBOT_TOKEN"

Response 200

{
"items": [
{
"id": "...",
"botId": "...",
"questionNormalized": "what is the refund policy",
"questionExamples": ["What's your refund policy?", "Can I get a refund?"],
"reason": "no_relevant_docs",
"frequency": 7,
"firstSeenAt": "2026-04-01T10:00:00.000Z",
"lastSeenAt": "2026-04-13T08:45:00.000Z",
"dismissedAt": null
}
]
}

Errors: 401 UNAUTHENTICATED, 403 NO_AGENCY, 404 NOT_FOUND, 429 RATE_LIMITED (see Rate limits). See Errors.

Dismiss an unanswered question

POST /api/bots/{botId}/unanswered/{id}/dismiss

Marks the question as handled. Dismissed rows no longer appear in the list response.

Request

curl -X POST https://api.mimicbot.app/api/bots/$BOT_ID/unanswered/$UNANSWERED_ID/dismiss \
-H "Authorization: Bearer $MIMICBOT_TOKEN"

Response 200

{
"item": {
"id": "...",
"dismissedAt": "2026-04-13T10:00:00.000Z"
}
}

Errors: 401 UNAUTHENTICATED, 403 NO_AGENCY, 404 NOT_FOUND, 429 RATE_LIMITED (see Rate limits). See Errors.