Update Document
curl --request PUT \
--url https://app.famulor.de/api/user/knowledgebases/{knowledgebaseId}/documents/{documentId} \
--header 'Content-Type: application/json' \
--data '
{
"name": "<string>",
"description": "<string>"
}
'import requests
url = "https://app.famulor.de/api/user/knowledgebases/{knowledgebaseId}/documents/{documentId}"
payload = {
"name": "<string>",
"description": "<string>"
}
headers = {"Content-Type": "application/json"}
response = requests.put(url, json=payload, headers=headers)
print(response.text)const options = {
method: 'PUT',
headers: {'Content-Type': 'application/json'},
body: JSON.stringify({name: '<string>', description: '<string>'})
};
fetch('https://app.famulor.de/api/user/knowledgebases/{knowledgebaseId}/documents/{documentId}', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));<?php
$curl = curl_init();
curl_setopt_array($curl, [
CURLOPT_URL => "https://app.famulor.de/api/user/knowledgebases/{knowledgebaseId}/documents/{documentId}",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "PUT",
CURLOPT_POSTFIELDS => json_encode([
'name' => '<string>',
'description' => '<string>'
]),
CURLOPT_HTTPHEADER => [
"Content-Type: application/json"
],
]);
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}package main
import (
"fmt"
"strings"
"net/http"
"io"
)
func main() {
url := "https://app.famulor.de/api/user/knowledgebases/{knowledgebaseId}/documents/{documentId}"
payload := strings.NewReader("{\n \"name\": \"<string>\",\n \"description\": \"<string>\"\n}")
req, _ := http.NewRequest("PUT", url, payload)
req.Header.Add("Content-Type", "application/json")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}HttpResponse<String> response = Unirest.put("https://app.famulor.de/api/user/knowledgebases/{knowledgebaseId}/documents/{documentId}")
.header("Content-Type", "application/json")
.body("{\n \"name\": \"<string>\",\n \"description\": \"<string>\"\n}")
.asString();require 'uri'
require 'net/http'
url = URI("https://app.famulor.de/api/user/knowledgebases/{knowledgebaseId}/documents/{documentId}")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Put.new(url)
request["Content-Type"] = 'application/json'
request.body = "{\n \"name\": \"<string>\",\n \"description\": \"<string>\"\n}"
response = http.request(request)
puts response.read_body{
"message": "Document updated successfully.",
"data": {
"id": 1,
"name": "Updated Product Handbook",
"description": "Revised user manual with new features",
"type": "pdf",
"type_label": "PDF",
"status": "active",
"status_label": "Active",
"updated_at": "2025-01-08T15:45:00.000000Z"
}
}
{
"error": "Knowledgebase not found."
}
{
"error": "Document not found."
}
{
"message": "The name may not be greater than 255 characters.",
"errors": {
"name": [
"The name may not be greater than 255 characters."
]
}
}
Knowledgebases
Update Document
Update the name or description of a document in a Famulor knowledge base via API. Keep your AI voice agent’s source materials organized and labelled.
PUT
/
api
/
user
/
knowledgebases
/
{knowledgebaseId}
/
documents
/
{documentId}
Update Document
curl --request PUT \
--url https://app.famulor.de/api/user/knowledgebases/{knowledgebaseId}/documents/{documentId} \
--header 'Content-Type: application/json' \
--data '
{
"name": "<string>",
"description": "<string>"
}
'import requests
url = "https://app.famulor.de/api/user/knowledgebases/{knowledgebaseId}/documents/{documentId}"
payload = {
"name": "<string>",
"description": "<string>"
}
headers = {"Content-Type": "application/json"}
response = requests.put(url, json=payload, headers=headers)
print(response.text)const options = {
method: 'PUT',
headers: {'Content-Type': 'application/json'},
body: JSON.stringify({name: '<string>', description: '<string>'})
};
fetch('https://app.famulor.de/api/user/knowledgebases/{knowledgebaseId}/documents/{documentId}', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));<?php
$curl = curl_init();
curl_setopt_array($curl, [
CURLOPT_URL => "https://app.famulor.de/api/user/knowledgebases/{knowledgebaseId}/documents/{documentId}",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "PUT",
CURLOPT_POSTFIELDS => json_encode([
'name' => '<string>',
'description' => '<string>'
]),
CURLOPT_HTTPHEADER => [
"Content-Type: application/json"
],
]);
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}package main
import (
"fmt"
"strings"
"net/http"
"io"
)
func main() {
url := "https://app.famulor.de/api/user/knowledgebases/{knowledgebaseId}/documents/{documentId}"
payload := strings.NewReader("{\n \"name\": \"<string>\",\n \"description\": \"<string>\"\n}")
req, _ := http.NewRequest("PUT", url, payload)
req.Header.Add("Content-Type", "application/json")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}HttpResponse<String> response = Unirest.put("https://app.famulor.de/api/user/knowledgebases/{knowledgebaseId}/documents/{documentId}")
.header("Content-Type", "application/json")
.body("{\n \"name\": \"<string>\",\n \"description\": \"<string>\"\n}")
.asString();require 'uri'
require 'net/http'
url = URI("https://app.famulor.de/api/user/knowledgebases/{knowledgebaseId}/documents/{documentId}")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Put.new(url)
request["Content-Type"] = 'application/json'
request.body = "{\n \"name\": \"<string>\",\n \"description\": \"<string>\"\n}"
response = http.request(request)
puts response.read_body{
"message": "Document updated successfully.",
"data": {
"id": 1,
"name": "Updated Product Handbook",
"description": "Revised user manual with new features",
"type": "pdf",
"type_label": "PDF",
"status": "active",
"status_label": "Active",
"updated_at": "2025-01-08T15:45:00.000000Z"
}
}
{
"error": "Knowledgebase not found."
}
{
"error": "Document not found."
}
{
"message": "The name may not be greater than 255 characters.",
"errors": {
"name": [
"The name may not be greater than 255 characters."
]
}
}
Famulor 1.0 API (legacy). This page applies only to Famulor 1.0 (
app.famulor.de) and is retained for legacy compatibility. For the current platform, use the Famulor 2.0 API reference.Path Parameters
integer
required
The unique identifier of the knowledge base
integer
required
The unique identifier of the document to update
Request Body
string
The new name for the document (max. 255 characters)
string
The new description for the document (max. 255 characters)
Response Fields
string
Success message
object
The updated document object
To update the content of a document, you must delete the existing document and create a new one with the updated content.
{
"message": "Document updated successfully.",
"data": {
"id": 1,
"name": "Updated Product Handbook",
"description": "Revised user manual with new features",
"type": "pdf",
"type_label": "PDF",
"status": "active",
"status_label": "Active",
"updated_at": "2025-01-08T15:45:00.000000Z"
}
}
{
"error": "Knowledgebase not found."
}
{
"error": "Document not found."
}
{
"message": "The name may not be greater than 255 characters.",
"errors": {
"name": [
"The name may not be greater than 255 characters."
]
}
}
Related pages: Introduction and Authentication Guide, and API Integration Examples.
⌘I