Documentation IndexFetch the complete documentation index at: /llms.txtUse this file to discover all available pages before exploring further.
Fetch the complete documentation index at: /llms.txt
Use this file to discover all available pages before exploring further.
cURL
curl --request POST \ --url https://{api_base_url}/datasets/{dataset_id}/documents/{document_id}/update-by-text \ --header 'Authorization: Bearer <token>' \ --header 'Content-Type: application/json' \ --data ' { "name": "<string>", "text": "<string>", "doc_form": "text_model", "doc_language": "English" } '
import requests url = "https://{api_base_url}/datasets/{dataset_id}/documents/{document_id}/update-by-text" payload = { "name": "<string>", "text": "<string>", "doc_form": "text_model", "doc_language": "English" } headers = { "Authorization": "Bearer <token>", "Content-Type": "application/json" } response = requests.post(url, json=payload, headers=headers) print(response.text)
const options = { method: 'POST', headers: {Authorization: 'Bearer <token>', 'Content-Type': 'application/json'}, body: JSON.stringify({ name: '<string>', text: '<string>', doc_form: 'text_model', doc_language: 'English' }) }; fetch('https://{api_base_url}/datasets/{dataset_id}/documents/{document_id}/update-by-text', 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://{api_base_url}/datasets/{dataset_id}/documents/{document_id}/update-by-text", CURLOPT_RETURNTRANSFER => true, CURLOPT_ENCODING => "", CURLOPT_MAXREDIRS => 10, CURLOPT_TIMEOUT => 30, CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1, CURLOPT_CUSTOMREQUEST => "POST", CURLOPT_POSTFIELDS => json_encode([ 'name' => '<string>', 'text' => '<string>', 'doc_form' => 'text_model', 'doc_language' => 'English' ]), CURLOPT_HTTPHEADER => [ "Authorization: Bearer <token>", "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://{api_base_url}/datasets/{dataset_id}/documents/{document_id}/update-by-text" payload := strings.NewReader("{\n \"name\": \"<string>\",\n \"text\": \"<string>\",\n \"doc_form\": \"text_model\",\n \"doc_language\": \"English\"\n}") req, _ := http.NewRequest("POST", url, payload) req.Header.Add("Authorization", "Bearer <token>") 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.post("https://{api_base_url}/datasets/{dataset_id}/documents/{document_id}/update-by-text") .header("Authorization", "Bearer <token>") .header("Content-Type", "application/json") .body("{\n \"name\": \"<string>\",\n \"text\": \"<string>\",\n \"doc_form\": \"text_model\",\n \"doc_language\": \"English\"\n}") .asString();
require 'uri' require 'net/http' url = URI("https://{api_base_url}/datasets/{dataset_id}/documents/{document_id}/update-by-text") http = Net::HTTP.new(url.host, url.port) http.use_ssl = true request = Net::HTTP::Post.new(url) request["Authorization"] = 'Bearer <token>' request["Content-Type"] = 'application/json' request.body = "{\n \"name\": \"<string>\",\n \"text\": \"<string>\",\n \"doc_form\": \"text_model\",\n \"doc_language\": \"English\"\n}" response = http.request(request) puts response.read_body
200
响应示例
{ "document": { "id": "a8e0e5b5-78c6-4130-a5ce-25feb0e0b4ac", "position": 1, "data_source_type": "upload_file", "data_source_info": { "upload_file_id": "a1b2c3d4-e5f6-7890-abcd-ef1234567890" }, "data_source_detail_dict": { "upload_file": { "id": "a1b2c3d4-e5f6-7890-abcd-ef1234567890", "name": "guide.txt", "size": 2048, "extension": "txt", "mime_type": "text/plain", "created_by": "ad313dd6-ef04-4dd1-a5b0-c0f0b9e2e7e4", "created_at": 1741267200 } }, "dataset_process_rule_id": "e1f2a3b4-c5d6-7890-ef12-345678901234", "name": "guide.txt", "created_from": "api", "created_by": "ad313dd6-ef04-4dd1-a5b0-c0f0b9e2e7e4", "created_at": 1741267200, "tokens": 512, "indexing_status": "completed", "error": null, "enabled": true, "disabled_at": null, "disabled_by": null, "archived": false, "display_status": "available", "word_count": 350, "hit_count": 0, "doc_form": "text_model", "doc_metadata": [], "summary_index_status": null, "need_summary": false }, "batch": "20250306150245647595" }
更新文档的文本内容、名称或处理配置。文本变更时会重新索引文档。
每个请求都通过 API 密钥认证:Authorization: Bearer {API_KEY}。应用接口使用应用 API 密钥,知识库接口使用知识库 API 密钥(快速开始)。
Authorization: Bearer {API_KEY}
API 密钥应保存在服务端,切勿嵌入客户端代码。缺失或无效的密钥会返回 HTTP 401(unauthorized)。
401
unauthorized
知识库 ID,通过 获取知识库列表 获取。使用限定范围的密钥时,从 Dify 页面 URL 复制 ID。
文档 ID。从 获取知识库的文档列表 获取。
文档名称。当提供 text 时必填。
text
文档文本内容。
分块处理规则。
Show child attributes
text_model 为标准文本分段,hierarchical_model 为父子分段结构,qa_model 为问答对提取。
text_model
hierarchical_model
qa_model
用于处理优化的文档语言。
控制查询此知识库时如何搜索和排序分段。
文档更新成功。
用于跟踪索引进度的批次 ID。