Respond to a review
Post a reply to a Google or Facebook review, as the Respond button does.
POST https://cotlet.dev/api/v1/brightlocal/reviews/{review_id}/replies
Posts the reply under the connected Google Business Profile or Facebook page. It works only for reviews with can_respond true and the status Unread or Action Required. A longer reply is rejected before it is sent, and a review from another site fails with the link to its listing. The reply is public. By default you confirm each call; you can switch that off for this tool.
Parameters
| Name | Type | Description |
|---|---|---|
| review_id string required | string | Review ID from list_reviews. |
| body string required | string | Reply text, up to 350 characters. |
Request
curl -X POST https://cotlet.dev/api/v1/brightlocal/reviews/rv_91c2/replies \
-H "Authorization: Bearer $COTLET_API_KEY" \
-H "Content-Type: application/json" \
-d '{"body":"Thank you, Dana! Dr. Lee and the team are glad the whitening visit went well. See you at your next checkup."}' result = client.call("brightlocal", "respond_to_review", {"review_id":"rv_91c2","body":"Thank you, Dana! Dr. Lee and the team are glad the whitening visit went well. See you at your next checkup."}) const result = await cotlet.call('brightlocal', 'respond_to_review', {"review_id":"rv_91c2","body":"Thank you, Dana! Dr. Lee and the team are glad the whitening visit went well. See you at your next checkup."}); cotlet call brightlocal respond_to_review --data '{"review_id":"rv_91c2","body":"Thank you, Dana! Dr. Lee and the team are glad the whitening visit went well. See you at your next checkup."}' Example response
{
"review_id": "rv_91c2",
"source": "Google",
"reply_length": 107,
"sent_at": "2026-10-22T09:02:00Z"
}