curl --request PUT \
--url 'https://api-prod.usefini.com/v2/hc-folders/4f5ef695-d03b-4d56-8fef-7f2bd5c17ef3/public' \
--header 'Authorization: Bearer fini_your_api_key' \
--header 'Content-Type: application/json' \
--data '{
"title": "Refund policy",
"description": "Refund-policy conversations to re-check before prompt changes.",
"active": false
}'
const response = await fetch('https://api-prod.usefini.com/v2/hc-folders/4f5ef695-d03b-4d56-8fef-7f2bd5c17ef3/public', {
method: 'PUT',
headers: {
Authorization: 'Bearer fini_your_api_key',
'Content-Type': 'application/json'
},
body: JSON.stringify({
'title': 'Refund policy',
'description': 'Refund-policy conversations to re-check before prompt changes.',
'active': false
}
)
});
const data = await response.json();
import requests
response = requests.put(
"https://api-prod.usefini.com/v2/hc-folders/4f5ef695-d03b-4d56-8fef-7f2bd5c17ef3/public",
headers={"Authorization": "Bearer fini_your_api_key", "Content-Type": "application/json"},
json={
"title": "Refund policy",
"description": "Refund-policy conversations to re-check before prompt changes.",
"active": False
},
)
data = response.json()
{
"id": "0f4da4fe-b2ae-4787-8c3b-854f36d9eb1b",
"title": "Billing",
"description": "Refunds, invoices, and subscription changes.",
"parentFolderId": null,
"active": true,
"botIds": [
"2a1cf0f0-f35d-46ad-8e61-a15c86b2b312"
],
"createdAt": "2026-07-28T08:55:32.000Z",
"updatedAt": "2026-07-28T09:10:18.000Z"
}
Folders & assignments
Update knowledge folder
Update a folder’s title, description, or active state.
PUT
/
v2
/
hc-folders
/
{id}
/
public
curl --request PUT \
--url 'https://api-prod.usefini.com/v2/hc-folders/4f5ef695-d03b-4d56-8fef-7f2bd5c17ef3/public' \
--header 'Authorization: Bearer fini_your_api_key' \
--header 'Content-Type: application/json' \
--data '{
"title": "Refund policy",
"description": "Refund-policy conversations to re-check before prompt changes.",
"active": false
}'
const response = await fetch('https://api-prod.usefini.com/v2/hc-folders/4f5ef695-d03b-4d56-8fef-7f2bd5c17ef3/public', {
method: 'PUT',
headers: {
Authorization: 'Bearer fini_your_api_key',
'Content-Type': 'application/json'
},
body: JSON.stringify({
'title': 'Refund policy',
'description': 'Refund-policy conversations to re-check before prompt changes.',
'active': false
}
)
});
const data = await response.json();
import requests
response = requests.put(
"https://api-prod.usefini.com/v2/hc-folders/4f5ef695-d03b-4d56-8fef-7f2bd5c17ef3/public",
headers={"Authorization": "Bearer fini_your_api_key", "Content-Type": "application/json"},
json={
"title": "Refund policy",
"description": "Refund-policy conversations to re-check before prompt changes.",
"active": False
},
)
data = response.json()
{
"id": "0f4da4fe-b2ae-4787-8c3b-854f36d9eb1b",
"title": "Billing",
"description": "Refunds, invoices, and subscription changes.",
"parentFolderId": null,
"active": true,
"botIds": [
"2a1cf0f0-f35d-46ad-8e61-a15c86b2b312"
],
"createdAt": "2026-07-28T08:55:32.000Z",
"updatedAt": "2026-07-28T09:10:18.000Z"
}
Use this route to update an existing folder in the knowledge tree.
Headers
string
required
Bearer token containing your Fini workspace API key. Format:
Bearer fini_... The key needs write scope.string
required
application/jsonPath parameters
string
required
Folder ID to update.
Body parameters
string
required
Updated folder title.
string
required
Updated folder description.
boolean
required
Whether the folder should remain active.
Response
Returns the full updated knowledge folder object. See Organize knowledge for the shared folder fields.curl --request PUT \
--url 'https://api-prod.usefini.com/v2/hc-folders/4f5ef695-d03b-4d56-8fef-7f2bd5c17ef3/public' \
--header 'Authorization: Bearer fini_your_api_key' \
--header 'Content-Type: application/json' \
--data '{
"title": "Refund policy",
"description": "Refund-policy conversations to re-check before prompt changes.",
"active": false
}'
const response = await fetch('https://api-prod.usefini.com/v2/hc-folders/4f5ef695-d03b-4d56-8fef-7f2bd5c17ef3/public', {
method: 'PUT',
headers: {
Authorization: 'Bearer fini_your_api_key',
'Content-Type': 'application/json'
},
body: JSON.stringify({
'title': 'Refund policy',
'description': 'Refund-policy conversations to re-check before prompt changes.',
'active': false
}
)
});
const data = await response.json();
import requests
response = requests.put(
"https://api-prod.usefini.com/v2/hc-folders/4f5ef695-d03b-4d56-8fef-7f2bd5c17ef3/public",
headers={"Authorization": "Bearer fini_your_api_key", "Content-Type": "application/json"},
json={
"title": "Refund policy",
"description": "Refund-policy conversations to re-check before prompt changes.",
"active": False
},
)
data = response.json()
{
"id": "0f4da4fe-b2ae-4787-8c3b-854f36d9eb1b",
"title": "Billing",
"description": "Refunds, invoices, and subscription changes.",
"parentFolderId": null,
"active": true,
"botIds": [
"2a1cf0f0-f35d-46ad-8e61-a15c86b2b312"
],
"createdAt": "2026-07-28T08:55:32.000Z",
"updatedAt": "2026-07-28T09:10:18.000Z"
}
Errors
400 Bad Request
400 Bad Request
The request body is malformed.
401 Unauthorized
401 Unauthorized
The API key is missing, malformed, revoked, or invalid.
403 Forbidden
403 Forbidden
The API key does not include the
write scope.404 Not Found
404 Not Found
The folder does not exist in the workspace.
Was this page helpful?

