API referencePOST
Explain mention
Generate or fetch the AI relevance reasoning and tags that explain why a mention matched your keywords.
POST
https://ai.redreplier.com/ai-app/api/v1/mentions/{mentionId}/explainGenerate or fetch the AI relevance reasoning and tags that explain why a mention matched your keywords.
Bearer Token (RedReplier API token)
Parameters
mentionId(path, UUID, required): Mention to explain.
Request body
This endpoint does not require a JSON body.
Response
Returns one public Mention object with relevanceReason, tags and aiReplySuggestion, or null if the mention is not available.
id(string): Mention UUID.websiteId(string | null): Website UUID.source(string):REDDIT_POST,REDDIT_COMMENT,TWITTER(X),BLUESKY,HACKERNEWS,FACEBOOK, orFACEBOOK_GROUP.keyword(string | null): Keyword value that matched.title, contentText, url, author, subreddit(string | null): Title/body/link context.subredditholds the subreddit for Reddit sources and the group id forFACEBOOK_GROUP, and isnullfor the other sources.status(string):NEW,APPROVED, orREJECTED.relevanceScore(number | null): AI relevance score from0to100, ornull.relevanceReason(string | null): AI explanation for the match, ornull.aiReplySuggestion(string | null): AI-drafted reply for a person to review before posting, ornull.tags(string[]): AI-generated relevance tags.publishedAt, ingestedAt, reviewedAt, createdAt, updatedAt(ISO string | null): Publication, ingestion, review, creation, and update timestamps in ISO 8601 format, ornull.
Notes
If the explanation does not exist yet, RedReplier generates it lazily. The website needs a description; without one the mention comes back unchanged.
Errors
400 Bad Request: Invalid input, URL, UUID, enum, query parameter, or body.401 Unauthorized: Missing or invalid Bearer token, orcode: "token_issuer_lost_access"when the person who created the API key was deactivated or left the workspace.403 Forbidden:code: "subscription_required"when the workspace plan does not include API access,code: "workspace_access_denied"whenX-Workspace-Idnames a workspace this credential cannot reach, orcode: "permission_denied"when your role in the workspace does not holdredreplier.write(Admin and Editor hold it).404 Not Found: The resource does not exist for the token account.429 Too Many Requests: Rate limit exceeded. Wait the seconds inRetry-After.500 Internal Server Error: Unexpected server error.
Example request (curl)
curl --request POST \
--url https://ai.redreplier.com/ai-app/api/v1/mentions/6a9f0e8b-2c65-44f7-b6e6-7f88a7df8301/explain \
--header 'Authorization: Bearer redreplier_test_1234567890'201
{
"id": "6a9f0e8b-2c65-44f7-b6e6-7f88a7df8301",
"websiteId": "9b0f2b8d-4a76-4f59-9f0b-6b4b6f6c2a10",
"source": "REDDIT_POST",
"keyword": "agency CRM",
"title": "Best CRM for a small agency?",
"contentText": "We need a lightweight CRM for client follow-ups and deal tracking.",
"url": "https://reddit.com/r/sales/comments/example/best_crm_for_a_small_agency",
"author": "agency_ops",
"subreddit": "sales",
"status": "NEW",
"relevanceScore": 86,
"relevanceReason": "The thread asks for an agency CRM, which directly matches the monitored product category.",
"aiReplySuggestion": "We built Acme CRM for small agencies with exactly this problem. Happy to share how teams set up follow-up reminders.",
"tags": ["recommendation-request", "high-intent"],
"publishedAt": "2026-05-29T09:20:00.000Z",
"ingestedAt": "2026-05-29T09:24:12.000Z",
"reviewedAt": null,
"createdAt": "2026-05-29T09:24:12.000Z",
"updatedAt": "2026-05-29T09:24:12.000Z"
}