> ## Documentation Index
> Fetch the complete documentation index at: https://docs.usefini.com/llms.txt
> Use this file to discover all available pages before exploring further.
# Mark feedback resolved
> Mark a negatively rated conversation event as resolved or unresolved.
Updates the resolution flag on one event, then recalculates the parent conversation's `resolved` value from all negatively rated Fini responses in that conversation.
Use [Send conversation feedback](/en/api-reference/send-feedback-conversation) first to record a thumbs-down event, then call this endpoint when the issue behind that feedback has been handled.
## Headers
<ParamField header="Authorization" type="string" required>
Bearer token containing your Fini workspace API key. Format: `Bearer fini_...` The key needs `write` scope.
</ParamField>
<ParamField header="Content-Type" type="string" required>
Send `application/json`.
</ParamField>
## Path parameters
<ParamField path="id" type="string" required>
Conversation ID containing the event.
</ParamField>
## Body parameters
<ParamField body="eventId" type="string" required>
ID of the event to update. The event must belong to the conversation and workspace.
</ParamField>
<ParamField body="resolved" type="boolean" required>
Whether the feedback on this event has been resolved.
</ParamField>
<RequestExample>
~~~bash cURL theme={null}
curl --request POST \
--url 'https://api-prod.usefini.com/v2/hc-interactions/0b8626b0-4cc8-4a3d-8fc2-f18ad1a4a1a8/feedback-resolved/public' \
--header 'Authorization: Bearer fini_your_api_key' \
--header 'Content-Type: application/json' \
--data '{
"eventId": "f61a9a11-2c3b-4704-8f57-7078854d87cf",
"resolved": true
}'
~~~
~~~python Python theme={null}
import requests
conversation_id = "0b8626b0-4cc8-4a3d-8fc2-f18ad1a4a1a8"
response = requests.post(
f"https://api-prod.usefini.com/v2/hc-interactions/{conversation_id}/feedback-resolved/public",
headers={"Authorization": "Bearer fini_your_api_key"},
json={
"eventId": "f61a9a11-2c3b-4704-8f57-7078854d87cf",
"resolved": True,
},
)
result = response.json()
~~~
~~~javascript Node.js theme={null}
const conversationId = "0b8626b0-4cc8-4a3d-8fc2-f18ad1a4a1a8";
const response = await fetch(
`https://api-prod.usefini.com/v2/hc-interactions/${conversationId}/feedback-resolved/public`,
{
method: "POST",
headers: {
Authorization: "Bearer fini_your_api_key",
"Content-Type": "application/json",
},
body: JSON.stringify({
eventId: "f61a9a11-2c3b-4704-8f57-7078854d87cf",
resolved: true,
}),
}
);
const result = await response.json();
~~~
</RequestExample>
## Response
<ResponseField name="success" type="boolean">
`true` after the event and conversation resolution state have been updated.
</ResponseField>
<ResponseExample>
~~~json 200 OK theme={null}
{
"success": true
}
~~~
</ResponseExample>
## Resolution recalculation
After the event is updated, Fini examines all Fini-authored events with `approved=false`:
* no negatively rated Fini events sets the conversation's `resolved` value to `null`
* all negatively rated Fini events resolved sets it to `true`
* any unresolved negatively rated Fini event sets it to `false`
## Errors
<AccordionGroup>
<Accordion title="400 Bad Request" icon="circle-exclamation">
The body fails validation. `eventId` must be a non-empty string, and `resolved` must be a boolean.
</Accordion>
<Accordion title="401 Unauthorized" icon="lock">
The API key is missing, malformed, revoked, or invalid.
</Accordion>
<Accordion title="403 Forbidden" icon="shield-halved">
The API key does not include the `write` scope required for this route.
</Accordion>
<Accordion title="406 Not Acceptable" icon="ban">
The conversation or event is inaccessible, the conversation has no events, or the supplied event does not exist in the conversation.
</Accordion>
<Accordion title="500 Internal Server Error" icon="triangle-exclamation">
Fini could not load or update the requested conversation event.
</Accordion>
</AccordionGroup>
## Related topics
- [Overview](/en/api-reference/conversations.md)
- [API overview](/en/api-reference/overview.md)
- [Send conversation feedback](/en/api-reference/send-feedback-conversation.md)
This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.
Conversations

