mirror of
https://github.com/langgenius/dify.git
synced 2026-05-10 14:14:17 +08:00
Co-authored-by: autofix-ci[bot] <114827586+autofix-ci[bot]@users.noreply.github.com> Co-authored-by: WH-2099 <wh2099@pm.me>
2755 lines
67 KiB
Markdown
2755 lines
67 KiB
Markdown
# Service API
|
|
API for application services
|
|
|
|
## Version: 1.0
|
|
|
|
### Security
|
|
**Bearer**
|
|
|
|
| apiKey | *API Key* |
|
|
| ------ | --------- |
|
|
| Description | Type: Bearer {your-api-key} |
|
|
| In | header |
|
|
| Name | Authorization |
|
|
|
|
---
|
|
## service_api
|
|
Service operations
|
|
|
|
### /
|
|
|
|
#### GET
|
|
##### Responses
|
|
|
|
| Code | Description |
|
|
| ---- | ----------- |
|
|
| 200 | Success |
|
|
|
|
### /app/feedbacks
|
|
|
|
#### GET
|
|
##### Summary
|
|
|
|
Get all feedbacks for the application
|
|
|
|
##### Description
|
|
|
|
Get all feedbacks for the application
|
|
Returns paginated list of all feedback submitted for messages in this app.
|
|
|
|
##### Parameters
|
|
|
|
| Name | Located in | Description | Required | Schema |
|
|
| ---- | ---------- | ----------- | -------- | ------ |
|
|
| payload | body | | Yes | [FeedbackListQuery](#feedbacklistquery) |
|
|
|
|
##### Responses
|
|
|
|
| Code | Description |
|
|
| ---- | ----------- |
|
|
| 200 | Feedbacks retrieved successfully |
|
|
| 401 | Unauthorized - invalid API token |
|
|
|
|
### /apps/annotation-reply/{action}
|
|
|
|
#### POST
|
|
##### Summary
|
|
|
|
Enable or disable annotation reply feature
|
|
|
|
##### Description
|
|
|
|
Enable or disable annotation reply feature
|
|
|
|
##### Parameters
|
|
|
|
| Name | Located in | Description | Required | Schema |
|
|
| ---- | ---------- | ----------- | -------- | ------ |
|
|
| payload | body | | Yes | [AnnotationReplyActionPayload](#annotationreplyactionpayload) |
|
|
| action | path | Action to perform: 'enable' or 'disable' | Yes | string |
|
|
|
|
##### Responses
|
|
|
|
| Code | Description |
|
|
| ---- | ----------- |
|
|
| 200 | Action completed successfully |
|
|
| 401 | Unauthorized - invalid API token |
|
|
|
|
### /apps/annotation-reply/{action}/status/{job_id}
|
|
|
|
#### GET
|
|
##### Summary
|
|
|
|
Get the status of an annotation reply action job
|
|
|
|
##### Description
|
|
|
|
Get the status of an annotation reply action job
|
|
|
|
##### Parameters
|
|
|
|
| Name | Located in | Description | Required | Schema |
|
|
| ---- | ---------- | ----------- | -------- | ------ |
|
|
| action | path | Action type | Yes | string |
|
|
| job_id | path | Job ID | Yes | string |
|
|
|
|
##### Responses
|
|
|
|
| Code | Description |
|
|
| ---- | ----------- |
|
|
| 200 | Job status retrieved successfully |
|
|
| 401 | Unauthorized - invalid API token |
|
|
| 404 | Job not found |
|
|
|
|
### /apps/annotations
|
|
|
|
#### GET
|
|
##### Summary
|
|
|
|
List annotations for the application
|
|
|
|
##### Description
|
|
|
|
List annotations for the application
|
|
|
|
##### Responses
|
|
|
|
| Code | Description | Schema |
|
|
| ---- | ----------- | ------ |
|
|
| 200 | Annotations retrieved successfully | [AnnotationList](#annotationlist) |
|
|
| 401 | Unauthorized - invalid API token | |
|
|
|
|
#### POST
|
|
##### Summary
|
|
|
|
Create a new annotation
|
|
|
|
##### Description
|
|
|
|
Create a new annotation
|
|
|
|
##### Parameters
|
|
|
|
| Name | Located in | Description | Required | Schema |
|
|
| ---- | ---------- | ----------- | -------- | ------ |
|
|
| payload | body | | Yes | [AnnotationCreatePayload](#annotationcreatepayload) |
|
|
|
|
##### Responses
|
|
|
|
| Code | Description | Schema |
|
|
| ---- | ----------- | ------ |
|
|
| 201 | Annotation created successfully | [Annotation](#annotation) |
|
|
| 401 | Unauthorized - invalid API token | |
|
|
|
|
### /apps/annotations/{annotation_id}
|
|
|
|
#### DELETE
|
|
##### Summary
|
|
|
|
Delete an annotation
|
|
|
|
##### Description
|
|
|
|
Delete an annotation
|
|
|
|
##### Parameters
|
|
|
|
| Name | Located in | Description | Required | Schema |
|
|
| ---- | ---------- | ----------- | -------- | ------ |
|
|
| annotation_id | path | Annotation ID | Yes | string |
|
|
|
|
##### Responses
|
|
|
|
| Code | Description |
|
|
| ---- | ----------- |
|
|
| 204 | Annotation deleted successfully |
|
|
| 401 | Unauthorized - invalid API token |
|
|
| 403 | Forbidden - insufficient permissions |
|
|
| 404 | Annotation not found |
|
|
|
|
#### PUT
|
|
##### Summary
|
|
|
|
Update an existing annotation
|
|
|
|
##### Description
|
|
|
|
Update an existing annotation
|
|
|
|
##### Parameters
|
|
|
|
| Name | Located in | Description | Required | Schema |
|
|
| ---- | ---------- | ----------- | -------- | ------ |
|
|
| payload | body | | Yes | [AnnotationCreatePayload](#annotationcreatepayload) |
|
|
| annotation_id | path | Annotation ID | Yes | string |
|
|
|
|
##### Responses
|
|
|
|
| Code | Description | Schema |
|
|
| ---- | ----------- | ------ |
|
|
| 200 | Annotation updated successfully | [Annotation](#annotation) |
|
|
| 401 | Unauthorized - invalid API token | |
|
|
| 403 | Forbidden - insufficient permissions | |
|
|
| 404 | Annotation not found | |
|
|
|
|
### /audio-to-text
|
|
|
|
#### POST
|
|
##### Summary
|
|
|
|
Convert audio to text using speech-to-text
|
|
|
|
##### Description
|
|
|
|
Convert audio to text using speech-to-text
|
|
Accepts an audio file upload and returns the transcribed text.
|
|
|
|
##### Responses
|
|
|
|
| Code | Description |
|
|
| ---- | ----------- |
|
|
| 200 | Audio successfully transcribed |
|
|
| 400 | Bad request - no audio or invalid audio |
|
|
| 401 | Unauthorized - invalid API token |
|
|
| 413 | Audio file too large |
|
|
| 415 | Unsupported audio type |
|
|
| 500 | Internal server error |
|
|
|
|
### /chat-messages
|
|
|
|
#### POST
|
|
##### Summary
|
|
|
|
Send a message in a chat conversation
|
|
|
|
##### Description
|
|
|
|
Send a message in a chat conversation
|
|
This endpoint handles chat messages for chat, agent chat, and advanced chat applications.
|
|
Supports conversation management and both blocking and streaming response modes.
|
|
|
|
##### Parameters
|
|
|
|
| Name | Located in | Description | Required | Schema |
|
|
| ---- | ---------- | ----------- | -------- | ------ |
|
|
| payload | body | | Yes | [ChatRequestPayload](#chatrequestpayload) |
|
|
|
|
##### Responses
|
|
|
|
| Code | Description |
|
|
| ---- | ----------- |
|
|
| 200 | Message sent successfully |
|
|
| 400 | Bad request - invalid parameters or workflow issues |
|
|
| 401 | Unauthorized - invalid API token |
|
|
| 404 | Conversation or workflow not found |
|
|
| 429 | Rate limit exceeded |
|
|
| 500 | Internal server error |
|
|
|
|
### /chat-messages/{task_id}/stop
|
|
|
|
#### POST
|
|
##### Summary
|
|
|
|
Stop a running chat message generation
|
|
|
|
##### Description
|
|
|
|
Stop a running chat message generation
|
|
|
|
##### Parameters
|
|
|
|
| Name | Located in | Description | Required | Schema |
|
|
| ---- | ---------- | ----------- | -------- | ------ |
|
|
| task_id | path | The ID of the task to stop | Yes | string |
|
|
|
|
##### Responses
|
|
|
|
| Code | Description |
|
|
| ---- | ----------- |
|
|
| 200 | Task stopped successfully |
|
|
| 401 | Unauthorized - invalid API token |
|
|
| 404 | Task not found |
|
|
|
|
### /completion-messages
|
|
|
|
#### POST
|
|
##### Summary
|
|
|
|
Create a completion for the given prompt
|
|
|
|
##### Description
|
|
|
|
Create a completion for the given prompt
|
|
This endpoint generates a completion based on the provided inputs and query.
|
|
Supports both blocking and streaming response modes.
|
|
|
|
##### Parameters
|
|
|
|
| Name | Located in | Description | Required | Schema |
|
|
| ---- | ---------- | ----------- | -------- | ------ |
|
|
| payload | body | | Yes | [CompletionRequestPayload](#completionrequestpayload) |
|
|
|
|
##### Responses
|
|
|
|
| Code | Description |
|
|
| ---- | ----------- |
|
|
| 200 | Completion created successfully |
|
|
| 400 | Bad request - invalid parameters |
|
|
| 401 | Unauthorized - invalid API token |
|
|
| 404 | Conversation not found |
|
|
| 500 | Internal server error |
|
|
|
|
### /completion-messages/{task_id}/stop
|
|
|
|
#### POST
|
|
##### Summary
|
|
|
|
Stop a running completion task
|
|
|
|
##### Description
|
|
|
|
Stop a running completion task
|
|
|
|
##### Parameters
|
|
|
|
| Name | Located in | Description | Required | Schema |
|
|
| ---- | ---------- | ----------- | -------- | ------ |
|
|
| task_id | path | The ID of the task to stop | Yes | string |
|
|
|
|
##### Responses
|
|
|
|
| Code | Description |
|
|
| ---- | ----------- |
|
|
| 200 | Task stopped successfully |
|
|
| 401 | Unauthorized - invalid API token |
|
|
| 404 | Task not found |
|
|
|
|
### /conversations
|
|
|
|
#### GET
|
|
##### Summary
|
|
|
|
List all conversations for the current user
|
|
|
|
##### Description
|
|
|
|
List all conversations for the current user
|
|
Supports pagination using last_id and limit parameters.
|
|
|
|
##### Parameters
|
|
|
|
| Name | Located in | Description | Required | Schema |
|
|
| ---- | ---------- | ----------- | -------- | ------ |
|
|
| payload | body | | Yes | [ConversationListQuery](#conversationlistquery) |
|
|
|
|
##### Responses
|
|
|
|
| Code | Description |
|
|
| ---- | ----------- |
|
|
| 200 | Conversations retrieved successfully |
|
|
| 401 | Unauthorized - invalid API token |
|
|
| 404 | Last conversation not found |
|
|
|
|
### /conversations/{c_id}
|
|
|
|
#### DELETE
|
|
##### Summary
|
|
|
|
Delete a specific conversation
|
|
|
|
##### Description
|
|
|
|
Delete a specific conversation
|
|
|
|
##### Parameters
|
|
|
|
| Name | Located in | Description | Required | Schema |
|
|
| ---- | ---------- | ----------- | -------- | ------ |
|
|
| c_id | path | Conversation ID | Yes | string |
|
|
|
|
##### Responses
|
|
|
|
| Code | Description |
|
|
| ---- | ----------- |
|
|
| 204 | Conversation deleted successfully |
|
|
| 401 | Unauthorized - invalid API token |
|
|
| 404 | Conversation not found |
|
|
|
|
### /conversations/{c_id}/name
|
|
|
|
#### POST
|
|
##### Summary
|
|
|
|
Rename a conversation or auto-generate a name
|
|
|
|
##### Description
|
|
|
|
Rename a conversation or auto-generate a name
|
|
|
|
##### Parameters
|
|
|
|
| Name | Located in | Description | Required | Schema |
|
|
| ---- | ---------- | ----------- | -------- | ------ |
|
|
| payload | body | | Yes | [ConversationRenamePayload](#conversationrenamepayload) |
|
|
| c_id | path | Conversation ID | Yes | string |
|
|
|
|
##### Responses
|
|
|
|
| Code | Description |
|
|
| ---- | ----------- |
|
|
| 200 | Conversation renamed successfully |
|
|
| 401 | Unauthorized - invalid API token |
|
|
| 404 | Conversation not found |
|
|
|
|
### /conversations/{c_id}/variables
|
|
|
|
#### GET
|
|
##### Summary
|
|
|
|
List all variables for a conversation
|
|
|
|
##### Description
|
|
|
|
List all variables for a conversation
|
|
Conversational variables are only available for chat applications.
|
|
|
|
##### Parameters
|
|
|
|
| Name | Located in | Description | Required | Schema |
|
|
| ---- | ---------- | ----------- | -------- | ------ |
|
|
| payload | body | | Yes | [ConversationVariablesQuery](#conversationvariablesquery) |
|
|
| c_id | path | Conversation ID | Yes | string |
|
|
|
|
##### Responses
|
|
|
|
| Code | Description | Schema |
|
|
| ---- | ----------- | ------ |
|
|
| 200 | Variables retrieved successfully | [ConversationVariableInfiniteScrollPaginationResponse](#conversationvariableinfinitescrollpaginationresponse) |
|
|
| 401 | Unauthorized - invalid API token | |
|
|
| 404 | Conversation not found | |
|
|
|
|
### /conversations/{c_id}/variables/{variable_id}
|
|
|
|
#### PUT
|
|
##### Summary
|
|
|
|
Update a conversation variable's value
|
|
|
|
##### Description
|
|
|
|
Update a conversation variable's value
|
|
Allows updating the value of a specific conversation variable.
|
|
The value must match the variable's expected type.
|
|
|
|
##### Parameters
|
|
|
|
| Name | Located in | Description | Required | Schema |
|
|
| ---- | ---------- | ----------- | -------- | ------ |
|
|
| payload | body | | Yes | [ConversationVariableUpdatePayload](#conversationvariableupdatepayload) |
|
|
| c_id | path | Conversation ID | Yes | string |
|
|
| variable_id | path | Variable ID | Yes | string |
|
|
|
|
##### Responses
|
|
|
|
| Code | Description | Schema |
|
|
| ---- | ----------- | ------ |
|
|
| 200 | Variable updated successfully | [ConversationVariableResponse](#conversationvariableresponse) |
|
|
| 400 | Bad request - type mismatch | |
|
|
| 401 | Unauthorized - invalid API token | |
|
|
| 404 | Conversation or variable not found | |
|
|
|
|
### /datasets
|
|
|
|
#### GET
|
|
##### Summary
|
|
|
|
Resource for getting datasets
|
|
|
|
##### Description
|
|
|
|
List all datasets
|
|
|
|
##### Responses
|
|
|
|
| Code | Description |
|
|
| ---- | ----------- |
|
|
| 200 | Datasets retrieved successfully |
|
|
| 401 | Unauthorized - invalid API token |
|
|
|
|
#### POST
|
|
##### Summary
|
|
|
|
Resource for creating datasets
|
|
|
|
##### Description
|
|
|
|
Create a new dataset
|
|
|
|
##### Parameters
|
|
|
|
| Name | Located in | Description | Required | Schema |
|
|
| ---- | ---------- | ----------- | -------- | ------ |
|
|
| payload | body | | Yes | [DatasetCreatePayload](#datasetcreatepayload) |
|
|
|
|
##### Responses
|
|
|
|
| Code | Description |
|
|
| ---- | ----------- |
|
|
| 200 | Dataset created successfully |
|
|
| 400 | Bad request - invalid parameters |
|
|
| 401 | Unauthorized - invalid API token |
|
|
|
|
### /datasets/pipeline/file-upload
|
|
|
|
#### POST
|
|
##### Summary
|
|
|
|
Upload a file for use in conversations
|
|
|
|
##### Description
|
|
|
|
Upload a file to a knowledgebase pipeline
|
|
Accepts a single file upload via multipart/form-data.
|
|
|
|
##### Responses
|
|
|
|
| Code | Description |
|
|
| ---- | ----------- |
|
|
| 201 | File uploaded successfully |
|
|
| 400 | Bad request - no file or invalid file |
|
|
| 401 | Unauthorized - invalid API token |
|
|
| 413 | File too large |
|
|
| 415 | Unsupported file type |
|
|
|
|
### /datasets/tags
|
|
|
|
#### DELETE
|
|
##### Summary
|
|
|
|
Delete a knowledge type tag
|
|
|
|
##### Description
|
|
|
|
Delete a knowledge type tag
|
|
|
|
##### Parameters
|
|
|
|
| Name | Located in | Description | Required | Schema |
|
|
| ---- | ---------- | ----------- | -------- | ------ |
|
|
| payload | body | | Yes | [TagDeletePayload](#tagdeletepayload) |
|
|
|
|
##### Responses
|
|
|
|
| Code | Description |
|
|
| ---- | ----------- |
|
|
| 204 | Tag deleted successfully |
|
|
| 401 | Unauthorized - invalid API token |
|
|
| 403 | Forbidden - insufficient permissions |
|
|
|
|
#### GET
|
|
##### Summary
|
|
|
|
Get all knowledge type tags
|
|
|
|
##### Description
|
|
|
|
Get all knowledge type tags
|
|
|
|
##### Responses
|
|
|
|
| Code | Description |
|
|
| ---- | ----------- |
|
|
| 200 | Tags retrieved successfully |
|
|
| 401 | Unauthorized - invalid API token |
|
|
|
|
#### PATCH
|
|
##### Description
|
|
|
|
Update a knowledge type tag
|
|
|
|
##### Parameters
|
|
|
|
| Name | Located in | Description | Required | Schema |
|
|
| ---- | ---------- | ----------- | -------- | ------ |
|
|
| payload | body | | Yes | [TagUpdatePayload](#tagupdatepayload) |
|
|
|
|
##### Responses
|
|
|
|
| Code | Description |
|
|
| ---- | ----------- |
|
|
| 200 | Tag updated successfully |
|
|
| 401 | Unauthorized - invalid API token |
|
|
| 403 | Forbidden - insufficient permissions |
|
|
|
|
#### POST
|
|
##### Summary
|
|
|
|
Add a knowledge type tag
|
|
|
|
##### Description
|
|
|
|
Add a knowledge type tag
|
|
|
|
##### Parameters
|
|
|
|
| Name | Located in | Description | Required | Schema |
|
|
| ---- | ---------- | ----------- | -------- | ------ |
|
|
| payload | body | | Yes | [TagCreatePayload](#tagcreatepayload) |
|
|
|
|
##### Responses
|
|
|
|
| Code | Description |
|
|
| ---- | ----------- |
|
|
| 200 | Tag created successfully |
|
|
| 401 | Unauthorized - invalid API token |
|
|
| 403 | Forbidden - insufficient permissions |
|
|
|
|
### /datasets/tags/binding
|
|
|
|
#### POST
|
|
##### Description
|
|
|
|
Bind tags to a dataset
|
|
|
|
##### Parameters
|
|
|
|
| Name | Located in | Description | Required | Schema |
|
|
| ---- | ---------- | ----------- | -------- | ------ |
|
|
| payload | body | | Yes | [TagBindingPayload](#tagbindingpayload) |
|
|
|
|
##### Responses
|
|
|
|
| Code | Description |
|
|
| ---- | ----------- |
|
|
| 204 | Tags bound successfully |
|
|
| 401 | Unauthorized - invalid API token |
|
|
| 403 | Forbidden - insufficient permissions |
|
|
|
|
### /datasets/tags/unbinding
|
|
|
|
#### POST
|
|
##### Description
|
|
|
|
Unbind tags from a dataset
|
|
|
|
##### Parameters
|
|
|
|
| Name | Located in | Description | Required | Schema |
|
|
| ---- | ---------- | ----------- | -------- | ------ |
|
|
| payload | body | | Yes | [TagUnbindingPayload](#tagunbindingpayload) |
|
|
|
|
##### Responses
|
|
|
|
| Code | Description |
|
|
| ---- | ----------- |
|
|
| 204 | Tags unbound successfully |
|
|
| 401 | Unauthorized - invalid API token |
|
|
| 403 | Forbidden - insufficient permissions |
|
|
|
|
### /datasets/{dataset_id}
|
|
|
|
#### DELETE
|
|
##### Summary
|
|
|
|
Deletes a dataset given its ID
|
|
|
|
##### Description
|
|
|
|
Delete a dataset
|
|
Args:
|
|
_: ignore
|
|
dataset_id (UUID): The ID of the dataset to be deleted.
|
|
|
|
Returns:
|
|
dict: A dictionary with a key 'result' and a value 'success'
|
|
if the dataset was successfully deleted. Omitted in HTTP response.
|
|
int: HTTP status code 204 indicating that the operation was successful.
|
|
|
|
Raises:
|
|
NotFound: If the dataset with the given ID does not exist.
|
|
|
|
##### Parameters
|
|
|
|
| Name | Located in | Description | Required | Schema |
|
|
| ---- | ---------- | ----------- | -------- | ------ |
|
|
| dataset_id | path | Dataset ID | Yes | string |
|
|
|
|
##### Responses
|
|
|
|
| Code | Description |
|
|
| ---- | ----------- |
|
|
| 204 | Dataset deleted successfully |
|
|
| 401 | Unauthorized - invalid API token |
|
|
| 404 | Dataset not found |
|
|
| 409 | Conflict - dataset is in use |
|
|
|
|
#### GET
|
|
##### Description
|
|
|
|
Get a specific dataset by ID
|
|
|
|
##### Parameters
|
|
|
|
| Name | Located in | Description | Required | Schema |
|
|
| ---- | ---------- | ----------- | -------- | ------ |
|
|
| dataset_id | path | Dataset ID | Yes | string |
|
|
|
|
##### Responses
|
|
|
|
| Code | Description |
|
|
| ---- | ----------- |
|
|
| 200 | Dataset retrieved successfully |
|
|
| 401 | Unauthorized - invalid API token |
|
|
| 403 | Forbidden - insufficient permissions |
|
|
| 404 | Dataset not found |
|
|
|
|
#### PATCH
|
|
##### Description
|
|
|
|
Update an existing dataset
|
|
|
|
##### Parameters
|
|
|
|
| Name | Located in | Description | Required | Schema |
|
|
| ---- | ---------- | ----------- | -------- | ------ |
|
|
| payload | body | | Yes | [DatasetUpdatePayload](#datasetupdatepayload) |
|
|
| dataset_id | path | Dataset ID | Yes | string |
|
|
|
|
##### Responses
|
|
|
|
| Code | Description |
|
|
| ---- | ----------- |
|
|
| 200 | Dataset updated successfully |
|
|
| 401 | Unauthorized - invalid API token |
|
|
| 403 | Forbidden - insufficient permissions |
|
|
| 404 | Dataset not found |
|
|
|
|
### /datasets/{dataset_id}/document/create-by-file
|
|
|
|
#### POST
|
|
##### Description
|
|
|
|
Create a new document by uploading a file
|
|
|
|
##### Parameters
|
|
|
|
| Name | Located in | Description | Required | Schema |
|
|
| ---- | ---------- | ----------- | -------- | ------ |
|
|
| dataset_id | path | Dataset ID | Yes | string |
|
|
|
|
##### Responses
|
|
|
|
| Code | Description |
|
|
| ---- | ----------- |
|
|
| 200 | Document created successfully |
|
|
| 400 | Bad request - invalid file or parameters |
|
|
| 401 | Unauthorized - invalid API token |
|
|
|
|
### /datasets/{dataset_id}/document/create-by-text
|
|
|
|
#### POST
|
|
##### Description
|
|
|
|
Create a new document by providing text content
|
|
|
|
##### Parameters
|
|
|
|
| Name | Located in | Description | Required | Schema |
|
|
| ---- | ---------- | ----------- | -------- | ------ |
|
|
| payload | body | | Yes | [DocumentTextCreatePayload](#documenttextcreatepayload) |
|
|
| dataset_id | path | Dataset ID | Yes | string |
|
|
|
|
##### Responses
|
|
|
|
| Code | Description |
|
|
| ---- | ----------- |
|
|
| 200 | Document created successfully |
|
|
| 400 | Bad request - invalid parameters |
|
|
| 401 | Unauthorized - invalid API token |
|
|
|
|
### /datasets/{dataset_id}/document/create_by_file
|
|
|
|
#### POST
|
|
##### Description
|
|
|
|
Create a new document by uploading a file
|
|
|
|
##### Parameters
|
|
|
|
| Name | Located in | Description | Required | Schema |
|
|
| ---- | ---------- | ----------- | -------- | ------ |
|
|
| dataset_id | path | Dataset ID | Yes | string |
|
|
|
|
##### Responses
|
|
|
|
| Code | Description |
|
|
| ---- | ----------- |
|
|
| 200 | Document created successfully |
|
|
| 400 | Bad request - invalid file or parameters |
|
|
| 401 | Unauthorized - invalid API token |
|
|
|
|
### /datasets/{dataset_id}/document/create_by_text
|
|
|
|
#### POST
|
|
***DEPRECATED***
|
|
##### Description
|
|
|
|
Deprecated legacy alias for creating a new document by providing text content. Use /datasets/{dataset_id}/document/create-by-text instead.
|
|
|
|
##### Parameters
|
|
|
|
| Name | Located in | Description | Required | Schema |
|
|
| ---- | ---------- | ----------- | -------- | ------ |
|
|
| payload | body | | Yes | [DocumentTextCreatePayload](#documenttextcreatepayload) |
|
|
| dataset_id | path | Dataset ID | Yes | string |
|
|
|
|
##### Responses
|
|
|
|
| Code | Description |
|
|
| ---- | ----------- |
|
|
| 200 | Document created successfully |
|
|
| 400 | Bad request - invalid parameters |
|
|
| 401 | Unauthorized - invalid API token |
|
|
|
|
### /datasets/{dataset_id}/documents
|
|
|
|
#### GET
|
|
##### Description
|
|
|
|
List all documents in a dataset
|
|
|
|
##### Parameters
|
|
|
|
| Name | Located in | Description | Required | Schema |
|
|
| ---- | ---------- | ----------- | -------- | ------ |
|
|
| dataset_id | path | Dataset ID | Yes | string |
|
|
|
|
##### Responses
|
|
|
|
| Code | Description |
|
|
| ---- | ----------- |
|
|
| 200 | Documents retrieved successfully |
|
|
| 401 | Unauthorized - invalid API token |
|
|
| 404 | Dataset not found |
|
|
|
|
### /datasets/{dataset_id}/documents/download-zip
|
|
|
|
#### POST
|
|
##### Description
|
|
|
|
Download selected uploaded documents as a single ZIP archive
|
|
|
|
##### Parameters
|
|
|
|
| Name | Located in | Description | Required | Schema |
|
|
| ---- | ---------- | ----------- | -------- | ------ |
|
|
| payload | body | | Yes | [DocumentBatchDownloadZipPayload](#documentbatchdownloadzippayload) |
|
|
| dataset_id | path | Dataset ID | Yes | string |
|
|
|
|
##### Responses
|
|
|
|
| Code | Description |
|
|
| ---- | ----------- |
|
|
| 200 | ZIP archive generated successfully |
|
|
| 401 | Unauthorized - invalid API token |
|
|
| 403 | Forbidden - insufficient permissions |
|
|
| 404 | Document or dataset not found |
|
|
|
|
### /datasets/{dataset_id}/documents/metadata
|
|
|
|
#### POST
|
|
##### Summary
|
|
|
|
Update metadata for multiple documents
|
|
|
|
##### Description
|
|
|
|
Update metadata for multiple documents
|
|
|
|
##### Parameters
|
|
|
|
| Name | Located in | Description | Required | Schema |
|
|
| ---- | ---------- | ----------- | -------- | ------ |
|
|
| payload | body | | Yes | [MetadataOperationData](#metadataoperationdata) |
|
|
| dataset_id | path | Dataset ID | Yes | string |
|
|
|
|
##### Responses
|
|
|
|
| Code | Description |
|
|
| ---- | ----------- |
|
|
| 200 | Documents metadata updated successfully |
|
|
| 401 | Unauthorized - invalid API token |
|
|
| 404 | Dataset not found |
|
|
|
|
### /datasets/{dataset_id}/documents/status/{action}
|
|
|
|
#### PATCH
|
|
##### Summary
|
|
|
|
Batch update document status
|
|
|
|
##### Description
|
|
|
|
Batch update document status
|
|
Args:
|
|
tenant_id: tenant id
|
|
dataset_id: dataset id
|
|
action: action to perform (Literal["enable", "disable", "archive", "un_archive"])
|
|
|
|
Returns:
|
|
dict: A dictionary with a key 'result' and a value 'success'
|
|
int: HTTP status code 200 indicating that the operation was successful.
|
|
|
|
Raises:
|
|
NotFound: If the dataset with the given ID does not exist.
|
|
Forbidden: If the user does not have permission.
|
|
InvalidActionError: If the action is invalid or cannot be performed.
|
|
|
|
##### Parameters
|
|
|
|
| Name | Located in | Description | Required | Schema |
|
|
| ---- | ---------- | ----------- | -------- | ------ |
|
|
| action | path | Action to perform: 'enable', 'disable', 'archive', or 'un_archive' | Yes | string |
|
|
| dataset_id | path | Dataset ID | Yes | string |
|
|
|
|
##### Responses
|
|
|
|
| Code | Description |
|
|
| ---- | ----------- |
|
|
| 200 | Document status updated successfully |
|
|
| 400 | Bad request - invalid action |
|
|
| 401 | Unauthorized - invalid API token |
|
|
| 403 | Forbidden - insufficient permissions |
|
|
| 404 | Dataset not found |
|
|
|
|
### /datasets/{dataset_id}/documents/{batch}/indexing-status
|
|
|
|
#### GET
|
|
##### Description
|
|
|
|
Get indexing status for documents in a batch
|
|
|
|
##### Parameters
|
|
|
|
| Name | Located in | Description | Required | Schema |
|
|
| ---- | ---------- | ----------- | -------- | ------ |
|
|
| batch | path | Batch ID | Yes | string |
|
|
| dataset_id | path | Dataset ID | Yes | string |
|
|
|
|
##### Responses
|
|
|
|
| Code | Description |
|
|
| ---- | ----------- |
|
|
| 200 | Indexing status retrieved successfully |
|
|
| 401 | Unauthorized - invalid API token |
|
|
| 404 | Dataset or documents not found |
|
|
|
|
### /datasets/{dataset_id}/documents/{document_id}
|
|
|
|
#### DELETE
|
|
##### Summary
|
|
|
|
Delete document
|
|
|
|
##### Description
|
|
|
|
Delete a document
|
|
|
|
##### Parameters
|
|
|
|
| Name | Located in | Description | Required | Schema |
|
|
| ---- | ---------- | ----------- | -------- | ------ |
|
|
| dataset_id | path | Dataset ID | Yes | string |
|
|
| document_id | path | Document ID | Yes | string |
|
|
|
|
##### Responses
|
|
|
|
| Code | Description |
|
|
| ---- | ----------- |
|
|
| 204 | Document deleted successfully |
|
|
| 401 | Unauthorized - invalid API token |
|
|
| 403 | Forbidden - document is archived |
|
|
| 404 | Document not found |
|
|
|
|
#### GET
|
|
##### Description
|
|
|
|
Get a specific document by ID
|
|
|
|
##### Parameters
|
|
|
|
| Name | Located in | Description | Required | Schema |
|
|
| ---- | ---------- | ----------- | -------- | ------ |
|
|
| dataset_id | path | Dataset ID | Yes | string |
|
|
| document_id | path | Document ID | Yes | string |
|
|
|
|
##### Responses
|
|
|
|
| Code | Description |
|
|
| ---- | ----------- |
|
|
| 200 | Document retrieved successfully |
|
|
| 401 | Unauthorized - invalid API token |
|
|
| 403 | Forbidden - insufficient permissions |
|
|
| 404 | Document not found |
|
|
|
|
#### PATCH
|
|
##### Description
|
|
|
|
Update an existing document by uploading a file
|
|
|
|
##### Parameters
|
|
|
|
| Name | Located in | Description | Required | Schema |
|
|
| ---- | ---------- | ----------- | -------- | ------ |
|
|
| dataset_id | path | Dataset ID | Yes | string |
|
|
| document_id | path | Document ID | Yes | string |
|
|
|
|
##### Responses
|
|
|
|
| Code | Description |
|
|
| ---- | ----------- |
|
|
| 200 | Document updated successfully |
|
|
| 401 | Unauthorized - invalid API token |
|
|
| 404 | Document not found |
|
|
|
|
### /datasets/{dataset_id}/documents/{document_id}/download
|
|
|
|
#### GET
|
|
##### Description
|
|
|
|
Get a signed download URL for a document's original uploaded file
|
|
|
|
##### Parameters
|
|
|
|
| Name | Located in | Description | Required | Schema |
|
|
| ---- | ---------- | ----------- | -------- | ------ |
|
|
| dataset_id | path | Dataset ID | Yes | string |
|
|
| document_id | path | Document ID | Yes | string |
|
|
|
|
##### Responses
|
|
|
|
| Code | Description |
|
|
| ---- | ----------- |
|
|
| 200 | Download URL generated successfully |
|
|
| 401 | Unauthorized - invalid API token |
|
|
| 403 | Forbidden - insufficient permissions |
|
|
| 404 | Document or upload file not found |
|
|
|
|
### /datasets/{dataset_id}/documents/{document_id}/segments
|
|
|
|
#### GET
|
|
##### Description
|
|
|
|
List segments in a document
|
|
|
|
##### Parameters
|
|
|
|
| Name | Located in | Description | Required | Schema |
|
|
| ---- | ---------- | ----------- | -------- | ------ |
|
|
| payload | body | | Yes | [SegmentListQuery](#segmentlistquery) |
|
|
| dataset_id | path | Dataset ID | Yes | string |
|
|
| document_id | path | Document ID | Yes | string |
|
|
|
|
##### Responses
|
|
|
|
| Code | Description |
|
|
| ---- | ----------- |
|
|
| 200 | Segments retrieved successfully |
|
|
| 401 | Unauthorized - invalid API token |
|
|
| 404 | Dataset or document not found |
|
|
|
|
#### POST
|
|
##### Description
|
|
|
|
Create segments in a document
|
|
|
|
##### Parameters
|
|
|
|
| Name | Located in | Description | Required | Schema |
|
|
| ---- | ---------- | ----------- | -------- | ------ |
|
|
| payload | body | | Yes | [SegmentCreatePayload](#segmentcreatepayload) |
|
|
| dataset_id | path | Dataset ID | Yes | string |
|
|
| document_id | path | Document ID | Yes | string |
|
|
|
|
##### Responses
|
|
|
|
| Code | Description |
|
|
| ---- | ----------- |
|
|
| 200 | Segments created successfully |
|
|
| 400 | Bad request - segments data is missing |
|
|
| 401 | Unauthorized - invalid API token |
|
|
| 404 | Dataset or document not found |
|
|
|
|
### /datasets/{dataset_id}/documents/{document_id}/segments/{segment_id}
|
|
|
|
#### DELETE
|
|
##### Description
|
|
|
|
Delete a specific segment
|
|
|
|
##### Parameters
|
|
|
|
| Name | Located in | Description | Required | Schema |
|
|
| ---- | ---------- | ----------- | -------- | ------ |
|
|
| dataset_id | path | Dataset ID | Yes | string |
|
|
| document_id | path | Document ID | Yes | string |
|
|
| segment_id | path | Segment ID to delete | Yes | string |
|
|
|
|
##### Responses
|
|
|
|
| Code | Description |
|
|
| ---- | ----------- |
|
|
| 204 | Segment deleted successfully |
|
|
| 401 | Unauthorized - invalid API token |
|
|
| 404 | Dataset, document, or segment not found |
|
|
|
|
#### GET
|
|
##### Description
|
|
|
|
Get a specific segment by ID
|
|
|
|
##### Parameters
|
|
|
|
| Name | Located in | Description | Required | Schema |
|
|
| ---- | ---------- | ----------- | -------- | ------ |
|
|
| dataset_id | path | | Yes | string |
|
|
| document_id | path | | Yes | string |
|
|
| segment_id | path | | Yes | string |
|
|
|
|
##### Responses
|
|
|
|
| Code | Description |
|
|
| ---- | ----------- |
|
|
| 200 | Segment retrieved successfully |
|
|
| 401 | Unauthorized - invalid API token |
|
|
| 404 | Dataset, document, or segment not found |
|
|
|
|
#### POST
|
|
##### Description
|
|
|
|
Update a specific segment
|
|
|
|
##### Parameters
|
|
|
|
| Name | Located in | Description | Required | Schema |
|
|
| ---- | ---------- | ----------- | -------- | ------ |
|
|
| payload | body | | Yes | [SegmentUpdatePayload](#segmentupdatepayload) |
|
|
| dataset_id | path | Dataset ID | Yes | string |
|
|
| document_id | path | Document ID | Yes | string |
|
|
| segment_id | path | Segment ID to update | Yes | string |
|
|
|
|
##### Responses
|
|
|
|
| Code | Description |
|
|
| ---- | ----------- |
|
|
| 200 | Segment updated successfully |
|
|
| 401 | Unauthorized - invalid API token |
|
|
| 404 | Dataset, document, or segment not found |
|
|
|
|
### /datasets/{dataset_id}/documents/{document_id}/segments/{segment_id}/child_chunks
|
|
|
|
#### GET
|
|
##### Description
|
|
|
|
List child chunks for a segment
|
|
|
|
##### Parameters
|
|
|
|
| Name | Located in | Description | Required | Schema |
|
|
| ---- | ---------- | ----------- | -------- | ------ |
|
|
| payload | body | | Yes | [ChildChunkListQuery](#childchunklistquery) |
|
|
| dataset_id | path | Dataset ID | Yes | string |
|
|
| document_id | path | Document ID | Yes | string |
|
|
| segment_id | path | Parent segment ID | Yes | string |
|
|
|
|
##### Responses
|
|
|
|
| Code | Description |
|
|
| ---- | ----------- |
|
|
| 200 | Child chunks retrieved successfully |
|
|
| 401 | Unauthorized - invalid API token |
|
|
| 404 | Dataset, document, or segment not found |
|
|
|
|
#### POST
|
|
##### Description
|
|
|
|
Create a new child chunk for a segment
|
|
|
|
##### Parameters
|
|
|
|
| Name | Located in | Description | Required | Schema |
|
|
| ---- | ---------- | ----------- | -------- | ------ |
|
|
| payload | body | | Yes | [ChildChunkCreatePayload](#childchunkcreatepayload) |
|
|
| dataset_id | path | Dataset ID | Yes | string |
|
|
| document_id | path | Document ID | Yes | string |
|
|
| segment_id | path | Parent segment ID | Yes | string |
|
|
|
|
##### Responses
|
|
|
|
| Code | Description |
|
|
| ---- | ----------- |
|
|
| 200 | Child chunk created successfully |
|
|
| 401 | Unauthorized - invalid API token |
|
|
| 404 | Dataset, document, or segment not found |
|
|
|
|
### /datasets/{dataset_id}/documents/{document_id}/segments/{segment_id}/child_chunks/{child_chunk_id}
|
|
|
|
#### DELETE
|
|
##### Description
|
|
|
|
Delete a specific child chunk
|
|
|
|
##### Parameters
|
|
|
|
| Name | Located in | Description | Required | Schema |
|
|
| ---- | ---------- | ----------- | -------- | ------ |
|
|
| child_chunk_id | path | Child chunk ID to delete | Yes | string |
|
|
| dataset_id | path | Dataset ID | Yes | string |
|
|
| document_id | path | Document ID | Yes | string |
|
|
| segment_id | path | Parent segment ID | Yes | string |
|
|
|
|
##### Responses
|
|
|
|
| Code | Description |
|
|
| ---- | ----------- |
|
|
| 204 | Child chunk deleted successfully |
|
|
| 401 | Unauthorized - invalid API token |
|
|
| 404 | Dataset, document, segment, or child chunk not found |
|
|
|
|
#### PATCH
|
|
##### Description
|
|
|
|
Update a specific child chunk
|
|
|
|
##### Parameters
|
|
|
|
| Name | Located in | Description | Required | Schema |
|
|
| ---- | ---------- | ----------- | -------- | ------ |
|
|
| payload | body | | Yes | [ChildChunkUpdatePayload](#childchunkupdatepayload) |
|
|
| child_chunk_id | path | Child chunk ID to update | Yes | string |
|
|
| dataset_id | path | Dataset ID | Yes | string |
|
|
| document_id | path | Document ID | Yes | string |
|
|
| segment_id | path | Parent segment ID | Yes | string |
|
|
|
|
##### Responses
|
|
|
|
| Code | Description |
|
|
| ---- | ----------- |
|
|
| 200 | Child chunk updated successfully |
|
|
| 401 | Unauthorized - invalid API token |
|
|
| 404 | Dataset, document, segment, or child chunk not found |
|
|
|
|
### /datasets/{dataset_id}/documents/{document_id}/update-by-file
|
|
|
|
#### POST
|
|
***DEPRECATED***
|
|
##### Description
|
|
|
|
Deprecated legacy alias for updating an existing document by uploading a file. Use PATCH /datasets/{dataset_id}/documents/{document_id} instead.
|
|
|
|
##### Parameters
|
|
|
|
| Name | Located in | Description | Required | Schema |
|
|
| ---- | ---------- | ----------- | -------- | ------ |
|
|
| dataset_id | path | Dataset ID | Yes | string |
|
|
| document_id | path | Document ID | Yes | string |
|
|
|
|
##### Responses
|
|
|
|
| Code | Description |
|
|
| ---- | ----------- |
|
|
| 200 | Document updated successfully |
|
|
| 401 | Unauthorized - invalid API token |
|
|
| 404 | Document not found |
|
|
|
|
### /datasets/{dataset_id}/documents/{document_id}/update-by-text
|
|
|
|
#### POST
|
|
##### Description
|
|
|
|
Update an existing document by providing text content
|
|
|
|
##### Parameters
|
|
|
|
| Name | Located in | Description | Required | Schema |
|
|
| ---- | ---------- | ----------- | -------- | ------ |
|
|
| payload | body | | Yes | [DocumentTextUpdate](#documenttextupdate) |
|
|
| dataset_id | path | Dataset ID | Yes | string |
|
|
| document_id | path | Document ID | Yes | string |
|
|
|
|
##### Responses
|
|
|
|
| Code | Description |
|
|
| ---- | ----------- |
|
|
| 200 | Document updated successfully |
|
|
| 401 | Unauthorized - invalid API token |
|
|
| 404 | Document not found |
|
|
|
|
### /datasets/{dataset_id}/documents/{document_id}/update_by_file
|
|
|
|
#### POST
|
|
***DEPRECATED***
|
|
##### Description
|
|
|
|
Deprecated legacy alias for updating an existing document by uploading a file. Use PATCH /datasets/{dataset_id}/documents/{document_id} instead.
|
|
|
|
##### Parameters
|
|
|
|
| Name | Located in | Description | Required | Schema |
|
|
| ---- | ---------- | ----------- | -------- | ------ |
|
|
| dataset_id | path | Dataset ID | Yes | string |
|
|
| document_id | path | Document ID | Yes | string |
|
|
|
|
##### Responses
|
|
|
|
| Code | Description |
|
|
| ---- | ----------- |
|
|
| 200 | Document updated successfully |
|
|
| 401 | Unauthorized - invalid API token |
|
|
| 404 | Document not found |
|
|
|
|
### /datasets/{dataset_id}/documents/{document_id}/update_by_text
|
|
|
|
#### POST
|
|
***DEPRECATED***
|
|
##### Description
|
|
|
|
Deprecated legacy alias for updating an existing document by providing text content. Use /datasets/{dataset_id}/documents/{document_id}/update-by-text instead.
|
|
|
|
##### Parameters
|
|
|
|
| Name | Located in | Description | Required | Schema |
|
|
| ---- | ---------- | ----------- | -------- | ------ |
|
|
| payload | body | | Yes | [DocumentTextUpdate](#documenttextupdate) |
|
|
| dataset_id | path | Dataset ID | Yes | string |
|
|
| document_id | path | Document ID | Yes | string |
|
|
|
|
##### Responses
|
|
|
|
| Code | Description |
|
|
| ---- | ----------- |
|
|
| 200 | Document updated successfully |
|
|
| 401 | Unauthorized - invalid API token |
|
|
| 404 | Document not found |
|
|
|
|
### /datasets/{dataset_id}/hit-testing
|
|
|
|
#### POST
|
|
##### Summary
|
|
|
|
Perform hit testing on a dataset
|
|
|
|
##### Description
|
|
|
|
Perform hit testing on a dataset
|
|
Tests retrieval performance for the specified dataset.
|
|
|
|
##### Parameters
|
|
|
|
| Name | Located in | Description | Required | Schema |
|
|
| ---- | ---------- | ----------- | -------- | ------ |
|
|
| payload | body | | Yes | [HitTestingPayload](#hittestingpayload) |
|
|
| dataset_id | path | Dataset ID | Yes | string |
|
|
|
|
##### Responses
|
|
|
|
| Code | Description |
|
|
| ---- | ----------- |
|
|
| 200 | Hit testing results |
|
|
| 401 | Unauthorized - invalid API token |
|
|
| 404 | Dataset not found |
|
|
|
|
### /datasets/{dataset_id}/metadata
|
|
|
|
#### GET
|
|
##### Summary
|
|
|
|
Get all metadata for a dataset
|
|
|
|
##### Description
|
|
|
|
Get all metadata for a dataset
|
|
|
|
##### Parameters
|
|
|
|
| Name | Located in | Description | Required | Schema |
|
|
| ---- | ---------- | ----------- | -------- | ------ |
|
|
| dataset_id | path | Dataset ID | Yes | string |
|
|
|
|
##### Responses
|
|
|
|
| Code | Description |
|
|
| ---- | ----------- |
|
|
| 200 | Metadata retrieved successfully |
|
|
| 401 | Unauthorized - invalid API token |
|
|
| 404 | Dataset not found |
|
|
|
|
#### POST
|
|
##### Summary
|
|
|
|
Create metadata for a dataset
|
|
|
|
##### Description
|
|
|
|
Create metadata for a dataset
|
|
|
|
##### Parameters
|
|
|
|
| Name | Located in | Description | Required | Schema |
|
|
| ---- | ---------- | ----------- | -------- | ------ |
|
|
| payload | body | | Yes | [MetadataArgs](#metadataargs) |
|
|
| dataset_id | path | Dataset ID | Yes | string |
|
|
|
|
##### Responses
|
|
|
|
| Code | Description |
|
|
| ---- | ----------- |
|
|
| 201 | Metadata created successfully |
|
|
| 401 | Unauthorized - invalid API token |
|
|
| 404 | Dataset not found |
|
|
|
|
### /datasets/{dataset_id}/metadata/built-in
|
|
|
|
#### GET
|
|
##### Summary
|
|
|
|
Get all built-in metadata fields
|
|
|
|
##### Description
|
|
|
|
Get all built-in metadata fields
|
|
|
|
##### Parameters
|
|
|
|
| Name | Located in | Description | Required | Schema |
|
|
| ---- | ---------- | ----------- | -------- | ------ |
|
|
| dataset_id | path | | Yes | string |
|
|
|
|
##### Responses
|
|
|
|
| Code | Description |
|
|
| ---- | ----------- |
|
|
| 200 | Built-in fields retrieved successfully |
|
|
| 401 | Unauthorized - invalid API token |
|
|
|
|
### /datasets/{dataset_id}/metadata/built-in/{action}
|
|
|
|
#### POST
|
|
##### Summary
|
|
|
|
Enable or disable built-in metadata field
|
|
|
|
##### Description
|
|
|
|
Enable or disable built-in metadata field
|
|
|
|
##### Parameters
|
|
|
|
| Name | Located in | Description | Required | Schema |
|
|
| ---- | ---------- | ----------- | -------- | ------ |
|
|
| action | path | Action to perform: 'enable' or 'disable' | Yes | string |
|
|
| dataset_id | path | Dataset ID | Yes | string |
|
|
|
|
##### Responses
|
|
|
|
| Code | Description |
|
|
| ---- | ----------- |
|
|
| 200 | Action completed successfully |
|
|
| 401 | Unauthorized - invalid API token |
|
|
| 404 | Dataset not found |
|
|
|
|
### /datasets/{dataset_id}/metadata/{metadata_id}
|
|
|
|
#### DELETE
|
|
##### Summary
|
|
|
|
Delete metadata
|
|
|
|
##### Description
|
|
|
|
Delete metadata
|
|
|
|
##### Parameters
|
|
|
|
| Name | Located in | Description | Required | Schema |
|
|
| ---- | ---------- | ----------- | -------- | ------ |
|
|
| dataset_id | path | Dataset ID | Yes | string |
|
|
| metadata_id | path | Metadata ID | Yes | string |
|
|
|
|
##### Responses
|
|
|
|
| Code | Description |
|
|
| ---- | ----------- |
|
|
| 204 | Metadata deleted successfully |
|
|
| 401 | Unauthorized - invalid API token |
|
|
| 404 | Dataset or metadata not found |
|
|
|
|
#### PATCH
|
|
##### Summary
|
|
|
|
Update metadata name
|
|
|
|
##### Description
|
|
|
|
Update metadata name
|
|
|
|
##### Parameters
|
|
|
|
| Name | Located in | Description | Required | Schema |
|
|
| ---- | ---------- | ----------- | -------- | ------ |
|
|
| payload | body | | Yes | [MetadataUpdatePayload](#metadataupdatepayload) |
|
|
| dataset_id | path | Dataset ID | Yes | string |
|
|
| metadata_id | path | Metadata ID | Yes | string |
|
|
|
|
##### Responses
|
|
|
|
| Code | Description |
|
|
| ---- | ----------- |
|
|
| 200 | Metadata updated successfully |
|
|
| 401 | Unauthorized - invalid API token |
|
|
| 404 | Dataset or metadata not found |
|
|
|
|
### /datasets/{dataset_id}/pipeline/datasource-plugins
|
|
|
|
#### GET
|
|
##### Summary
|
|
|
|
Resource for getting datasource plugins
|
|
|
|
##### Description
|
|
|
|
List all datasource plugins for a rag pipeline
|
|
|
|
##### Parameters
|
|
|
|
| Name | Located in | Description | Required | Schema |
|
|
| ---- | ---------- | ----------- | -------- | ------ |
|
|
| dataset_id | path | | Yes | string |
|
|
| is_published | query | Whether to get published or draft datasource plugins (true for published, false for draft, default: true) | No | string |
|
|
|
|
##### Responses
|
|
|
|
| Code | Description |
|
|
| ---- | ----------- |
|
|
| 200 | Datasource plugins retrieved successfully |
|
|
| 401 | Unauthorized - invalid API token |
|
|
|
|
### /datasets/{dataset_id}/pipeline/datasource/nodes/{node_id}/run
|
|
|
|
#### POST
|
|
##### Summary
|
|
|
|
Resource for getting datasource plugins
|
|
|
|
##### Description
|
|
|
|
Run a datasource node for a rag pipeline
|
|
|
|
##### Parameters
|
|
|
|
| Name | Located in | Description | Required | Schema |
|
|
| ---- | ---------- | ----------- | -------- | ------ |
|
|
| dataset_id | path | | Yes | string |
|
|
| node_id | path | | Yes | string |
|
|
|
|
##### Responses
|
|
|
|
| Code | Description |
|
|
| ---- | ----------- |
|
|
| 200 | Datasource node run successfully |
|
|
| 401 | Unauthorized - invalid API token |
|
|
|
|
### /datasets/{dataset_id}/pipeline/run
|
|
|
|
#### POST
|
|
##### Summary
|
|
|
|
Resource for running a rag pipeline
|
|
|
|
##### Description
|
|
|
|
Run a datasource node for a rag pipeline
|
|
|
|
##### Parameters
|
|
|
|
| Name | Located in | Description | Required | Schema |
|
|
| ---- | ---------- | ----------- | -------- | ------ |
|
|
| dataset_id | path | | Yes | string |
|
|
|
|
##### Responses
|
|
|
|
| Code | Description |
|
|
| ---- | ----------- |
|
|
| 200 | Pipeline run successfully |
|
|
| 401 | Unauthorized - invalid API token |
|
|
|
|
### /datasets/{dataset_id}/retrieve
|
|
|
|
#### POST
|
|
##### Summary
|
|
|
|
Perform hit testing on a dataset
|
|
|
|
##### Description
|
|
|
|
Perform hit testing on a dataset
|
|
Tests retrieval performance for the specified dataset.
|
|
|
|
##### Parameters
|
|
|
|
| Name | Located in | Description | Required | Schema |
|
|
| ---- | ---------- | ----------- | -------- | ------ |
|
|
| payload | body | | Yes | [HitTestingPayload](#hittestingpayload) |
|
|
| dataset_id | path | Dataset ID | Yes | string |
|
|
|
|
##### Responses
|
|
|
|
| Code | Description |
|
|
| ---- | ----------- |
|
|
| 200 | Hit testing results |
|
|
| 401 | Unauthorized - invalid API token |
|
|
| 404 | Dataset not found |
|
|
|
|
### /datasets/{dataset_id}/tags
|
|
|
|
#### GET
|
|
##### Summary
|
|
|
|
Get all knowledge type tags
|
|
|
|
##### Description
|
|
|
|
Get tags bound to a specific dataset
|
|
|
|
##### Parameters
|
|
|
|
| Name | Located in | Description | Required | Schema |
|
|
| ---- | ---------- | ----------- | -------- | ------ |
|
|
| dataset_id | path | Dataset ID | Yes | string |
|
|
|
|
##### Responses
|
|
|
|
| Code | Description |
|
|
| ---- | ----------- |
|
|
| 200 | Tags retrieved successfully |
|
|
| 401 | Unauthorized - invalid API token |
|
|
|
|
### /end-users/{end_user_id}
|
|
|
|
#### GET
|
|
##### Summary
|
|
|
|
Get end user detail
|
|
|
|
##### Description
|
|
|
|
Get an end user by ID
|
|
This endpoint is scoped to the current app token's tenant/app to prevent
|
|
cross-tenant/app access when an end-user ID is known.
|
|
|
|
##### Parameters
|
|
|
|
| Name | Located in | Description | Required | Schema |
|
|
| ---- | ---------- | ----------- | -------- | ------ |
|
|
| end_user_id | path | End user ID | Yes | string |
|
|
|
|
##### Responses
|
|
|
|
| Code | Description |
|
|
| ---- | ----------- |
|
|
| 200 | End user retrieved successfully |
|
|
| 401 | Unauthorized - invalid API token |
|
|
| 404 | End user not found |
|
|
|
|
### /files/upload
|
|
|
|
#### POST
|
|
##### Summary
|
|
|
|
Upload a file for use in conversations
|
|
|
|
##### Description
|
|
|
|
Upload a file for use in conversations
|
|
Accepts a single file upload via multipart/form-data.
|
|
|
|
##### Responses
|
|
|
|
| Code | Description | Schema |
|
|
| ---- | ----------- | ------ |
|
|
| 201 | File uploaded successfully | [FileResponse](#fileresponse) |
|
|
| 400 | Bad request - no file or invalid file | |
|
|
| 401 | Unauthorized - invalid API token | |
|
|
| 413 | File too large | |
|
|
| 415 | Unsupported file type | |
|
|
|
|
### /files/{file_id}/preview
|
|
|
|
#### GET
|
|
##### Summary
|
|
|
|
Preview/Download a file that was uploaded via Service API
|
|
|
|
##### Description
|
|
|
|
Preview or download a file uploaded via Service API
|
|
Provides secure file preview/download functionality.
|
|
Files can only be accessed if they belong to messages within the requesting app's context.
|
|
|
|
##### Parameters
|
|
|
|
| Name | Located in | Description | Required | Schema |
|
|
| ---- | ---------- | ----------- | -------- | ------ |
|
|
| payload | body | | Yes | [FilePreviewQuery](#filepreviewquery) |
|
|
| file_id | path | UUID of the file to preview | Yes | string |
|
|
|
|
##### Responses
|
|
|
|
| Code | Description |
|
|
| ---- | ----------- |
|
|
| 200 | File retrieved successfully |
|
|
| 401 | Unauthorized - invalid API token |
|
|
| 403 | Forbidden - file access denied |
|
|
| 404 | File not found |
|
|
|
|
### /form/human_input/{form_token}
|
|
|
|
#### GET
|
|
##### Description
|
|
|
|
Get a paused human input form by token
|
|
|
|
##### Parameters
|
|
|
|
| Name | Located in | Description | Required | Schema |
|
|
| ---- | ---------- | ----------- | -------- | ------ |
|
|
| form_token | path | Human input form token | Yes | string |
|
|
|
|
##### Responses
|
|
|
|
| Code | Description |
|
|
| ---- | ----------- |
|
|
| 200 | Form retrieved successfully |
|
|
| 401 | Unauthorized - invalid API token |
|
|
| 404 | Form not found |
|
|
| 412 | Form already submitted or expired |
|
|
|
|
#### POST
|
|
##### Description
|
|
|
|
Submit a paused human input form by token
|
|
|
|
##### Parameters
|
|
|
|
| Name | Located in | Description | Required | Schema |
|
|
| ---- | ---------- | ----------- | -------- | ------ |
|
|
| payload | body | | Yes | [HumanInputFormSubmitPayload](#humaninputformsubmitpayload) |
|
|
| form_token | path | Human input form token | Yes | string |
|
|
|
|
##### Responses
|
|
|
|
| Code | Description |
|
|
| ---- | ----------- |
|
|
| 200 | Form submitted successfully |
|
|
| 400 | Bad request - invalid submission data |
|
|
| 401 | Unauthorized - invalid API token |
|
|
| 404 | Form not found |
|
|
| 412 | Form already submitted or expired |
|
|
|
|
### /info
|
|
|
|
#### GET
|
|
##### Summary
|
|
|
|
Get app information
|
|
|
|
##### Description
|
|
|
|
Get basic application information
|
|
Returns basic information about the application including name, description, tags, and mode.
|
|
|
|
##### Responses
|
|
|
|
| Code | Description |
|
|
| ---- | ----------- |
|
|
| 200 | Application info retrieved successfully |
|
|
| 401 | Unauthorized - invalid API token |
|
|
| 404 | Application not found |
|
|
|
|
### /messages
|
|
|
|
#### GET
|
|
##### Summary
|
|
|
|
List messages in a conversation
|
|
|
|
##### Description
|
|
|
|
List messages in a conversation
|
|
Retrieves messages with pagination support using first_id.
|
|
|
|
##### Parameters
|
|
|
|
| Name | Located in | Description | Required | Schema |
|
|
| ---- | ---------- | ----------- | -------- | ------ |
|
|
| payload | body | | Yes | [MessageListQuery](#messagelistquery) |
|
|
|
|
##### Responses
|
|
|
|
| Code | Description |
|
|
| ---- | ----------- |
|
|
| 200 | Messages retrieved successfully |
|
|
| 401 | Unauthorized - invalid API token |
|
|
| 404 | Conversation or first message not found |
|
|
|
|
### /messages/{message_id}/feedbacks
|
|
|
|
#### POST
|
|
##### Summary
|
|
|
|
Submit feedback for a message
|
|
|
|
##### Description
|
|
|
|
Submit feedback for a message
|
|
Allows users to rate messages as like/dislike and provide optional feedback content.
|
|
|
|
##### Parameters
|
|
|
|
| Name | Located in | Description | Required | Schema |
|
|
| ---- | ---------- | ----------- | -------- | ------ |
|
|
| payload | body | | Yes | [MessageFeedbackPayload](#messagefeedbackpayload) |
|
|
| message_id | path | Message ID | Yes | string |
|
|
|
|
##### Responses
|
|
|
|
| Code | Description |
|
|
| ---- | ----------- |
|
|
| 200 | Feedback submitted successfully |
|
|
| 401 | Unauthorized - invalid API token |
|
|
| 404 | Message not found |
|
|
|
|
### /messages/{message_id}/suggested
|
|
|
|
#### GET
|
|
##### Summary
|
|
|
|
Get suggested follow-up questions for a message
|
|
|
|
##### Description
|
|
|
|
Get suggested follow-up questions for a message
|
|
Returns AI-generated follow-up questions based on the message content.
|
|
|
|
##### Parameters
|
|
|
|
| Name | Located in | Description | Required | Schema |
|
|
| ---- | ---------- | ----------- | -------- | ------ |
|
|
| message_id | path | Message ID | Yes | string |
|
|
|
|
##### Responses
|
|
|
|
| Code | Description |
|
|
| ---- | ----------- |
|
|
| 200 | Suggested questions retrieved successfully |
|
|
| 400 | Suggested questions feature is disabled |
|
|
| 401 | Unauthorized - invalid API token |
|
|
| 404 | Message not found |
|
|
| 500 | Internal server error |
|
|
|
|
### /meta
|
|
|
|
#### GET
|
|
##### Summary
|
|
|
|
Get app metadata
|
|
|
|
##### Description
|
|
|
|
Get application metadata
|
|
Returns metadata about the application including configuration and settings.
|
|
|
|
##### Responses
|
|
|
|
| Code | Description |
|
|
| ---- | ----------- |
|
|
| 200 | Metadata retrieved successfully |
|
|
| 401 | Unauthorized - invalid API token |
|
|
| 404 | Application not found |
|
|
|
|
### /parameters
|
|
|
|
#### GET
|
|
##### Summary
|
|
|
|
Retrieve app parameters
|
|
|
|
##### Description
|
|
|
|
Retrieve application input parameters and configuration
|
|
Returns the input form parameters and configuration for the application.
|
|
|
|
##### Responses
|
|
|
|
| Code | Description |
|
|
| ---- | ----------- |
|
|
| 200 | Parameters retrieved successfully |
|
|
| 401 | Unauthorized - invalid API token |
|
|
| 404 | Application not found |
|
|
|
|
### /site
|
|
|
|
#### GET
|
|
##### Summary
|
|
|
|
Retrieve app site info
|
|
|
|
##### Description
|
|
|
|
Get application site configuration
|
|
Returns the site configuration for the application including theme, icons, and text.
|
|
|
|
##### Responses
|
|
|
|
| Code | Description |
|
|
| ---- | ----------- |
|
|
| 200 | Site configuration retrieved successfully |
|
|
| 401 | Unauthorized - invalid API token |
|
|
| 403 | Forbidden - site not found or tenant archived |
|
|
|
|
### /text-to-audio
|
|
|
|
#### POST
|
|
##### Summary
|
|
|
|
Convert text to audio using text-to-speech
|
|
|
|
##### Description
|
|
|
|
Convert text to audio using text-to-speech
|
|
Converts the provided text to audio using the specified voice.
|
|
|
|
##### Parameters
|
|
|
|
| Name | Located in | Description | Required | Schema |
|
|
| ---- | ---------- | ----------- | -------- | ------ |
|
|
| payload | body | | Yes | [TextToAudioPayload](#texttoaudiopayload) |
|
|
|
|
##### Responses
|
|
|
|
| Code | Description |
|
|
| ---- | ----------- |
|
|
| 200 | Text successfully converted to audio |
|
|
| 400 | Bad request - invalid parameters |
|
|
| 401 | Unauthorized - invalid API token |
|
|
| 500 | Internal server error |
|
|
|
|
### /workflow/{task_id}/events
|
|
|
|
#### GET
|
|
##### Description
|
|
|
|
Get workflow execution events stream after resume
|
|
|
|
##### Parameters
|
|
|
|
| Name | Located in | Description | Required | Schema |
|
|
| ---- | ---------- | ----------- | -------- | ------ |
|
|
| task_id | path | Workflow run ID | Yes | string |
|
|
| continue_on_pause | query | Whether to keep the stream open across workflow_paused events,specify `"true"` to keep the stream open for `workflow_paused` events. | No | string |
|
|
| include_state_snapshot | query | Whether to replay from persisted state snapshot, specify `"true"` to include a status snapshot of executed nodes | No | string |
|
|
| user | query | End user identifier (query param) | No | string |
|
|
|
|
##### Responses
|
|
|
|
| Code | Description |
|
|
| ---- | ----------- |
|
|
| 200 | SSE event stream |
|
|
| 401 | Unauthorized - invalid API token |
|
|
| 404 | Workflow run not found |
|
|
|
|
### /workflows/logs
|
|
|
|
#### GET
|
|
##### Summary
|
|
|
|
Get workflow app logs
|
|
|
|
##### Description
|
|
|
|
Get workflow execution logs
|
|
Returns paginated workflow execution logs with filtering options.
|
|
|
|
##### Parameters
|
|
|
|
| Name | Located in | Description | Required | Schema |
|
|
| ---- | ---------- | ----------- | -------- | ------ |
|
|
| payload | body | | Yes | [WorkflowLogQuery](#workflowlogquery) |
|
|
|
|
##### Responses
|
|
|
|
| Code | Description | Schema |
|
|
| ---- | ----------- | ------ |
|
|
| 200 | Logs retrieved successfully | [WorkflowAppLogPaginationResponse](#workflowapplogpaginationresponse) |
|
|
| 401 | Unauthorized - invalid API token | |
|
|
|
|
### /workflows/run
|
|
|
|
#### POST
|
|
##### Summary
|
|
|
|
Execute a workflow
|
|
|
|
##### Description
|
|
|
|
Execute a workflow
|
|
Runs a workflow with the provided inputs and returns the results.
|
|
Supports both blocking and streaming response modes.
|
|
|
|
##### Parameters
|
|
|
|
| Name | Located in | Description | Required | Schema |
|
|
| ---- | ---------- | ----------- | -------- | ------ |
|
|
| payload | body | | Yes | [WorkflowRunPayload](#workflowrunpayload) |
|
|
|
|
##### Responses
|
|
|
|
| Code | Description |
|
|
| ---- | ----------- |
|
|
| 200 | Workflow executed successfully |
|
|
| 400 | Bad request - invalid parameters or workflow issues |
|
|
| 401 | Unauthorized - invalid API token |
|
|
| 404 | Workflow not found |
|
|
| 429 | Rate limit exceeded |
|
|
| 500 | Internal server error |
|
|
|
|
### /workflows/run/{workflow_run_id}
|
|
|
|
#### GET
|
|
##### Summary
|
|
|
|
Get a workflow task running detail
|
|
|
|
##### Description
|
|
|
|
Get workflow run details
|
|
Returns detailed information about a specific workflow run.
|
|
|
|
##### Parameters
|
|
|
|
| Name | Located in | Description | Required | Schema |
|
|
| ---- | ---------- | ----------- | -------- | ------ |
|
|
| workflow_run_id | path | Workflow run ID | Yes | string |
|
|
|
|
##### Responses
|
|
|
|
| Code | Description | Schema |
|
|
| ---- | ----------- | ------ |
|
|
| 200 | Workflow run details retrieved successfully | [WorkflowRunResponse](#workflowrunresponse) |
|
|
| 401 | Unauthorized - invalid API token | |
|
|
| 404 | Workflow run not found | |
|
|
|
|
### /workflows/tasks/{task_id}/stop
|
|
|
|
#### POST
|
|
##### Summary
|
|
|
|
Stop a running workflow task
|
|
|
|
##### Description
|
|
|
|
Stop a running workflow task
|
|
|
|
##### Parameters
|
|
|
|
| Name | Located in | Description | Required | Schema |
|
|
| ---- | ---------- | ----------- | -------- | ------ |
|
|
| task_id | path | Task ID to stop | Yes | string |
|
|
|
|
##### Responses
|
|
|
|
| Code | Description |
|
|
| ---- | ----------- |
|
|
| 200 | Task stopped successfully |
|
|
| 401 | Unauthorized - invalid API token |
|
|
| 404 | Task not found |
|
|
|
|
### /workflows/{workflow_id}/run
|
|
|
|
#### POST
|
|
##### Summary
|
|
|
|
Run specific workflow by ID
|
|
|
|
##### Description
|
|
|
|
Execute a specific workflow by ID
|
|
Executes a specific workflow version identified by its ID.
|
|
|
|
##### Parameters
|
|
|
|
| Name | Located in | Description | Required | Schema |
|
|
| ---- | ---------- | ----------- | -------- | ------ |
|
|
| payload | body | | Yes | [WorkflowRunPayload](#workflowrunpayload) |
|
|
| workflow_id | path | Workflow ID to execute | Yes | string |
|
|
|
|
##### Responses
|
|
|
|
| Code | Description |
|
|
| ---- | ----------- |
|
|
| 200 | Workflow executed successfully |
|
|
| 400 | Bad request - invalid parameters or workflow issues |
|
|
| 401 | Unauthorized - invalid API token |
|
|
| 404 | Workflow not found |
|
|
| 429 | Rate limit exceeded |
|
|
| 500 | Internal server error |
|
|
|
|
### /workspaces/current/models/model-types/{model_type}
|
|
|
|
#### GET
|
|
##### Summary
|
|
|
|
Get available models by model type
|
|
|
|
##### Description
|
|
|
|
Get available models by model type
|
|
Returns a list of available models for the specified model type.
|
|
|
|
##### Parameters
|
|
|
|
| Name | Located in | Description | Required | Schema |
|
|
| ---- | ---------- | ----------- | -------- | ------ |
|
|
| model_type | path | Type of model to retrieve | Yes | string |
|
|
|
|
##### Responses
|
|
|
|
| Code | Description |
|
|
| ---- | ----------- |
|
|
| 200 | Models retrieved successfully |
|
|
| 401 | Unauthorized - invalid API token |
|
|
|
|
---
|
|
### Models
|
|
|
|
#### Annotation
|
|
|
|
| Name | Type | Description | Required |
|
|
| ---- | ---- | ----------- | -------- |
|
|
| content | | | No |
|
|
| created_at | | | No |
|
|
| hit_count | | | No |
|
|
| id | string | | Yes |
|
|
| question | | | No |
|
|
|
|
#### AnnotationCreatePayload
|
|
|
|
| Name | Type | Description | Required |
|
|
| ---- | ---- | ----------- | -------- |
|
|
| answer | string | Annotation answer | Yes |
|
|
| question | string | Annotation question | Yes |
|
|
|
|
#### AnnotationList
|
|
|
|
| Name | Type | Description | Required |
|
|
| ---- | ---- | ----------- | -------- |
|
|
| data | [ [Annotation](#annotation) ] | | Yes |
|
|
| has_more | boolean | | Yes |
|
|
| limit | integer | | Yes |
|
|
| page | integer | | Yes |
|
|
| total | integer | | Yes |
|
|
|
|
#### AnnotationReplyActionPayload
|
|
|
|
| Name | Type | Description | Required |
|
|
| ---- | ---- | ----------- | -------- |
|
|
| embedding_model_name | string | Embedding model name | Yes |
|
|
| embedding_provider_name | string | Embedding provider name | Yes |
|
|
| score_threshold | number | Score threshold for annotation matching | Yes |
|
|
|
|
#### ChatRequestPayload
|
|
|
|
| Name | Type | Description | Required |
|
|
| ---- | ---- | ----------- | -------- |
|
|
| auto_generate_name | boolean | Auto generate conversation name | No |
|
|
| conversation_id | | Conversation UUID | No |
|
|
| files | | | No |
|
|
| inputs | object | | Yes |
|
|
| query | string | | Yes |
|
|
| response_mode | | | No |
|
|
| retriever_from | string | | No |
|
|
| workflow_id | | Workflow ID for advanced chat | No |
|
|
|
|
#### ChildChunkCreatePayload
|
|
|
|
| Name | Type | Description | Required |
|
|
| ---- | ---- | ----------- | -------- |
|
|
| content | string | | Yes |
|
|
|
|
#### ChildChunkListQuery
|
|
|
|
| Name | Type | Description | Required |
|
|
| ---- | ---- | ----------- | -------- |
|
|
| keyword | | | No |
|
|
| limit | integer | | No |
|
|
| page | integer | | No |
|
|
|
|
#### ChildChunkUpdatePayload
|
|
|
|
| Name | Type | Description | Required |
|
|
| ---- | ---- | ----------- | -------- |
|
|
| content | string | | Yes |
|
|
|
|
#### CompletionRequestPayload
|
|
|
|
| Name | Type | Description | Required |
|
|
| ---- | ---- | ----------- | -------- |
|
|
| files | | | No |
|
|
| inputs | object | | Yes |
|
|
| query | string | | No |
|
|
| response_mode | | | No |
|
|
| retriever_from | string | | No |
|
|
|
|
#### Condition
|
|
|
|
Condition detail
|
|
|
|
| Name | Type | Description | Required |
|
|
| ---- | ---- | ----------- | -------- |
|
|
| comparison_operator | string | *Enum:* `"<"`, `"="`, `">"`, `"after"`, `"before"`, `"contains"`, `"empty"`, `"end with"`, `"in"`, `"is"`, `"is not"`, `"not contains"`, `"not empty"`, `"not in"`, `"start with"`, `"≠"`, `"≤"`, `"≥"` | Yes |
|
|
| name | string | | Yes |
|
|
| value | | | No |
|
|
|
|
#### ConversationListQuery
|
|
|
|
| Name | Type | Description | Required |
|
|
| ---- | ---- | ----------- | -------- |
|
|
| last_id | | Last conversation ID for pagination | No |
|
|
| limit | integer | Number of conversations to return | No |
|
|
| sort_by | string | Sort order for conversations<br>*Enum:* `"-created_at"`, `"-updated_at"`, `"created_at"`, `"updated_at"` | No |
|
|
|
|
#### ConversationRenamePayload
|
|
|
|
| Name | Type | Description | Required |
|
|
| ---- | ---- | ----------- | -------- |
|
|
| auto_generate | boolean | | No |
|
|
| name | | | No |
|
|
|
|
#### ConversationVariableInfiniteScrollPaginationResponse
|
|
|
|
| Name | Type | Description | Required |
|
|
| ---- | ---- | ----------- | -------- |
|
|
| data | [ [ConversationVariableResponse](#conversationvariableresponse) ] | | Yes |
|
|
| has_more | boolean | | Yes |
|
|
| limit | integer | | Yes |
|
|
|
|
#### ConversationVariableResponse
|
|
|
|
| Name | Type | Description | Required |
|
|
| ---- | ---- | ----------- | -------- |
|
|
| created_at | | | No |
|
|
| description | | | No |
|
|
| id | string | | Yes |
|
|
| name | string | | Yes |
|
|
| updated_at | | | No |
|
|
| value | | | No |
|
|
| value_type | string | | Yes |
|
|
|
|
#### ConversationVariableUpdatePayload
|
|
|
|
| Name | Type | Description | Required |
|
|
| ---- | ---- | ----------- | -------- |
|
|
| value | | | Yes |
|
|
|
|
#### ConversationVariablesQuery
|
|
|
|
| Name | Type | Description | Required |
|
|
| ---- | ---- | ----------- | -------- |
|
|
| last_id | | Last variable ID for pagination | No |
|
|
| limit | integer | Number of variables to return | No |
|
|
| variable_name | | Filter variables by name | No |
|
|
|
|
#### DataSetTag
|
|
|
|
| Name | Type | Description | Required |
|
|
| ---- | ---- | ----------- | -------- |
|
|
| binding_count | | | No |
|
|
| id | string | | Yes |
|
|
| name | string | | Yes |
|
|
| type | string | | Yes |
|
|
|
|
#### DatasetCreatePayload
|
|
|
|
| Name | Type | Description | Required |
|
|
| ---- | ---- | ----------- | -------- |
|
|
| description | string | Dataset description (max 400 chars) | No |
|
|
| embedding_model | | | No |
|
|
| embedding_model_provider | | | No |
|
|
| external_knowledge_api_id | | | No |
|
|
| external_knowledge_id | | | No |
|
|
| indexing_technique | | | No |
|
|
| name | string | | Yes |
|
|
| permission | | | No |
|
|
| provider | string | | No |
|
|
| retrieval_model | | | No |
|
|
| summary_index_setting | | | No |
|
|
|
|
#### DatasetListQuery
|
|
|
|
| Name | Type | Description | Required |
|
|
| ---- | ---- | ----------- | -------- |
|
|
| include_all | boolean | Include all datasets | No |
|
|
| keyword | | Search keyword | No |
|
|
| limit | integer | Number of items per page | No |
|
|
| page | integer | Page number | No |
|
|
| tag_ids | [ string ] | Filter by tag IDs | No |
|
|
|
|
#### DatasetPermissionEnum
|
|
|
|
| Name | Type | Description | Required |
|
|
| ---- | ---- | ----------- | -------- |
|
|
| DatasetPermissionEnum | string | | |
|
|
|
|
#### DatasetUpdatePayload
|
|
|
|
| Name | Type | Description | Required |
|
|
| ---- | ---- | ----------- | -------- |
|
|
| description | | Dataset description (max 400 chars) | No |
|
|
| embedding_model | | | No |
|
|
| embedding_model_provider | | | No |
|
|
| external_knowledge_api_id | | | No |
|
|
| external_knowledge_id | | | No |
|
|
| external_retrieval_model | | | No |
|
|
| indexing_technique | | | No |
|
|
| name | | | No |
|
|
| partial_member_list | | | No |
|
|
| permission | | | No |
|
|
| retrieval_model | | | No |
|
|
|
|
#### DatasourceNodeRunPayload
|
|
|
|
| Name | Type | Description | Required |
|
|
| ---- | ---- | ----------- | -------- |
|
|
| credential_id | | | No |
|
|
| datasource_type | string | | Yes |
|
|
| inputs | object | | Yes |
|
|
| is_published | boolean | | Yes |
|
|
|
|
#### DocumentBatchDownloadZipPayload
|
|
|
|
Request payload for bulk downloading documents as a zip archive.
|
|
|
|
| Name | Type | Description | Required |
|
|
| ---- | ---- | ----------- | -------- |
|
|
| document_ids | [ string (uuid) ] | | Yes |
|
|
|
|
#### DocumentListQuery
|
|
|
|
| Name | Type | Description | Required |
|
|
| ---- | ---- | ----------- | -------- |
|
|
| keyword | | Search keyword | No |
|
|
| limit | integer | Number of items per page | No |
|
|
| page | integer | Page number | No |
|
|
| status | | Document status filter | No |
|
|
|
|
#### DocumentMetadataOperation
|
|
|
|
| Name | Type | Description | Required |
|
|
| ---- | ---- | ----------- | -------- |
|
|
| document_id | string | | Yes |
|
|
| metadata_list | [ [MetadataDetail](#metadatadetail) ] | | Yes |
|
|
| partial_update | boolean | | No |
|
|
|
|
#### DocumentTextCreatePayload
|
|
|
|
| Name | Type | Description | Required |
|
|
| ---- | ---- | ----------- | -------- |
|
|
| doc_form | string | | No |
|
|
| doc_language | string | | No |
|
|
| embedding_model | | | No |
|
|
| embedding_model_provider | | | No |
|
|
| indexing_technique | | | No |
|
|
| name | string | | Yes |
|
|
| original_document_id | | | No |
|
|
| process_rule | | | No |
|
|
| retrieval_model | | | No |
|
|
| text | string | | Yes |
|
|
|
|
#### DocumentTextUpdate
|
|
|
|
| Name | Type | Description | Required |
|
|
| ---- | ---- | ----------- | -------- |
|
|
| doc_form | string | | No |
|
|
| doc_language | string | | No |
|
|
| name | | | No |
|
|
| process_rule | | | No |
|
|
| retrieval_model | | | No |
|
|
| text | | | No |
|
|
|
|
#### FeedbackListQuery
|
|
|
|
| Name | Type | Description | Required |
|
|
| ---- | ---- | ----------- | -------- |
|
|
| limit | integer | Number of feedbacks per page | No |
|
|
| page | integer | Page number | No |
|
|
|
|
#### FilePreviewQuery
|
|
|
|
| Name | Type | Description | Required |
|
|
| ---- | ---- | ----------- | -------- |
|
|
| as_attachment | boolean | Download as attachment | No |
|
|
|
|
#### FileResponse
|
|
|
|
| Name | Type | Description | Required |
|
|
| ---- | ---- | ----------- | -------- |
|
|
| conversation_id | | | No |
|
|
| created_at | | | No |
|
|
| created_by | | | No |
|
|
| extension | | | No |
|
|
| file_key | | | No |
|
|
| id | string | | Yes |
|
|
| mime_type | | | No |
|
|
| name | string | | Yes |
|
|
| original_url | | | No |
|
|
| preview_url | | | No |
|
|
| size | integer | | Yes |
|
|
| source_url | | | No |
|
|
| tenant_id | | | No |
|
|
| user_id | | | No |
|
|
|
|
#### HitTestingPayload
|
|
|
|
| Name | Type | Description | Required |
|
|
| ---- | ---- | ----------- | -------- |
|
|
| attachment_ids | | | No |
|
|
| external_retrieval_model | | | No |
|
|
| query | string | | Yes |
|
|
| retrieval_model | | | No |
|
|
|
|
#### HumanInputFormSubmitPayload
|
|
|
|
| Name | Type | Description | Required |
|
|
| ---- | ---- | ----------- | -------- |
|
|
| action | string | | Yes |
|
|
| inputs | object | | Yes |
|
|
|
|
#### JsonValue
|
|
|
|
| Name | Type | Description | Required |
|
|
| ---- | ---- | ----------- | -------- |
|
|
| JsonValue | | | |
|
|
|
|
#### MessageFeedbackPayload
|
|
|
|
| Name | Type | Description | Required |
|
|
| ---- | ---- | ----------- | -------- |
|
|
| content | | | No |
|
|
| rating | | | No |
|
|
|
|
#### MessageListQuery
|
|
|
|
| Name | Type | Description | Required |
|
|
| ---- | ---- | ----------- | -------- |
|
|
| conversation_id | string | Conversation UUID | Yes |
|
|
| first_id | | First message ID for pagination | No |
|
|
| limit | integer | Number of messages to return (1-100) | No |
|
|
|
|
#### MetadataArgs
|
|
|
|
| Name | Type | Description | Required |
|
|
| ---- | ---- | ----------- | -------- |
|
|
| name | string | | Yes |
|
|
| type | string | *Enum:* `"number"`, `"string"`, `"time"` | Yes |
|
|
|
|
#### MetadataDetail
|
|
|
|
| Name | Type | Description | Required |
|
|
| ---- | ---- | ----------- | -------- |
|
|
| id | string | | Yes |
|
|
| name | string | | Yes |
|
|
| value | | | No |
|
|
|
|
#### MetadataFilteringCondition
|
|
|
|
Metadata Filtering Condition.
|
|
|
|
| Name | Type | Description | Required |
|
|
| ---- | ---- | ----------- | -------- |
|
|
| conditions | | | No |
|
|
| logical_operator | | | No |
|
|
|
|
#### MetadataOperationData
|
|
|
|
Metadata operation data
|
|
|
|
| Name | Type | Description | Required |
|
|
| ---- | ---- | ----------- | -------- |
|
|
| operation_data | [ [DocumentMetadataOperation](#documentmetadataoperation) ] | | Yes |
|
|
|
|
#### MetadataUpdatePayload
|
|
|
|
| Name | Type | Description | Required |
|
|
| ---- | ---- | ----------- | -------- |
|
|
| name | string | | Yes |
|
|
|
|
#### PipelineRunApiEntity
|
|
|
|
| Name | Type | Description | Required |
|
|
| ---- | ---- | ----------- | -------- |
|
|
| datasource_info_list | [ object ] | | Yes |
|
|
| datasource_type | string | | Yes |
|
|
| inputs | object | | Yes |
|
|
| is_published | boolean | | Yes |
|
|
| response_mode | string | | Yes |
|
|
| start_node_id | string | | Yes |
|
|
|
|
#### PreProcessingRule
|
|
|
|
| Name | Type | Description | Required |
|
|
| ---- | ---- | ----------- | -------- |
|
|
| enabled | boolean | | Yes |
|
|
| id | string | | Yes |
|
|
|
|
#### ProcessRule
|
|
|
|
| Name | Type | Description | Required |
|
|
| ---- | ---- | ----------- | -------- |
|
|
| mode | string | *Enum:* `"automatic"`, `"custom"`, `"hierarchical"` | Yes |
|
|
| rules | | | No |
|
|
|
|
#### RerankingModel
|
|
|
|
| Name | Type | Description | Required |
|
|
| ---- | ---- | ----------- | -------- |
|
|
| reranking_model_name | | | No |
|
|
| reranking_provider_name | | | No |
|
|
|
|
#### RetrievalMethod
|
|
|
|
| Name | Type | Description | Required |
|
|
| ---- | ---- | ----------- | -------- |
|
|
| RetrievalMethod | string | | |
|
|
|
|
#### RetrievalModel
|
|
|
|
| Name | Type | Description | Required |
|
|
| ---- | ---- | ----------- | -------- |
|
|
| metadata_filtering_conditions | | | No |
|
|
| reranking_enable | boolean | | Yes |
|
|
| reranking_mode | | | No |
|
|
| reranking_model | | | No |
|
|
| score_threshold | | | No |
|
|
| score_threshold_enabled | boolean | | Yes |
|
|
| search_method | [RetrievalMethod](#retrievalmethod) | | Yes |
|
|
| top_k | integer | | Yes |
|
|
| weights | | | No |
|
|
|
|
#### Rule
|
|
|
|
| Name | Type | Description | Required |
|
|
| ---- | ---- | ----------- | -------- |
|
|
| parent_mode | | | No |
|
|
| pre_processing_rules | | | No |
|
|
| segmentation | | | No |
|
|
| subchunk_segmentation | | | No |
|
|
|
|
#### SegmentCreatePayload
|
|
|
|
| Name | Type | Description | Required |
|
|
| ---- | ---- | ----------- | -------- |
|
|
| segments | | | No |
|
|
|
|
#### SegmentListQuery
|
|
|
|
| Name | Type | Description | Required |
|
|
| ---- | ---- | ----------- | -------- |
|
|
| keyword | | | No |
|
|
| status | [ string ] | | No |
|
|
|
|
#### SegmentUpdateArgs
|
|
|
|
| Name | Type | Description | Required |
|
|
| ---- | ---- | ----------- | -------- |
|
|
| answer | | | No |
|
|
| attachment_ids | | | No |
|
|
| content | | | No |
|
|
| enabled | | | No |
|
|
| keywords | | | No |
|
|
| regenerate_child_chunks | boolean | | No |
|
|
| summary | | | No |
|
|
|
|
#### SegmentUpdatePayload
|
|
|
|
| Name | Type | Description | Required |
|
|
| ---- | ---- | ----------- | -------- |
|
|
| segment | [SegmentUpdateArgs](#segmentupdateargs) | | Yes |
|
|
|
|
#### Segmentation
|
|
|
|
| Name | Type | Description | Required |
|
|
| ---- | ---- | ----------- | -------- |
|
|
| chunk_overlap | integer | | No |
|
|
| max_tokens | integer | | Yes |
|
|
| separator | string | | No |
|
|
|
|
#### SimpleAccount
|
|
|
|
| Name | Type | Description | Required |
|
|
| ---- | ---- | ----------- | -------- |
|
|
| email | string | | Yes |
|
|
| id | string | | Yes |
|
|
| name | string | | Yes |
|
|
|
|
#### SimpleEndUser
|
|
|
|
| Name | Type | Description | Required |
|
|
| ---- | ---- | ----------- | -------- |
|
|
| id | string | | Yes |
|
|
| is_anonymous | boolean | | Yes |
|
|
| session_id | | | No |
|
|
| type | string | | Yes |
|
|
|
|
#### TagBindingPayload
|
|
|
|
| Name | Type | Description | Required |
|
|
| ---- | ---- | ----------- | -------- |
|
|
| tag_ids | [ string ] | | Yes |
|
|
| target_id | string | | Yes |
|
|
|
|
#### TagCreatePayload
|
|
|
|
| Name | Type | Description | Required |
|
|
| ---- | ---- | ----------- | -------- |
|
|
| name | string | | Yes |
|
|
|
|
#### TagDeletePayload
|
|
|
|
| Name | Type | Description | Required |
|
|
| ---- | ---- | ----------- | -------- |
|
|
| tag_id | string | | Yes |
|
|
|
|
#### TagUnbindingPayload
|
|
|
|
Accept the legacy single-tag Service API payload while exposing a normalized tag_ids list internally.
|
|
|
|
| Name | Type | Description | Required |
|
|
| ---- | ---- | ----------- | -------- |
|
|
| tag_id | | | No |
|
|
| tag_ids | [ string ] | | No |
|
|
| target_id | string | | Yes |
|
|
|
|
#### TagUpdatePayload
|
|
|
|
| Name | Type | Description | Required |
|
|
| ---- | ---- | ----------- | -------- |
|
|
| name | string | | Yes |
|
|
| tag_id | string | | Yes |
|
|
|
|
#### TextToAudioPayload
|
|
|
|
| Name | Type | Description | Required |
|
|
| ---- | ---- | ----------- | -------- |
|
|
| message_id | | Message ID | No |
|
|
| streaming | | Enable streaming response | No |
|
|
| text | | Text to convert to audio | No |
|
|
| voice | | Voice to use for TTS | No |
|
|
|
|
#### WeightKeywordSetting
|
|
|
|
| Name | Type | Description | Required |
|
|
| ---- | ---- | ----------- | -------- |
|
|
| keyword_weight | number | | Yes |
|
|
|
|
#### WeightModel
|
|
|
|
| Name | Type | Description | Required |
|
|
| ---- | ---- | ----------- | -------- |
|
|
| keyword_setting | | | No |
|
|
| vector_setting | | | No |
|
|
| weight_type | | | No |
|
|
|
|
#### WeightVectorSetting
|
|
|
|
| Name | Type | Description | Required |
|
|
| ---- | ---- | ----------- | -------- |
|
|
| embedding_model_name | string | | Yes |
|
|
| embedding_provider_name | string | | Yes |
|
|
| vector_weight | number | | Yes |
|
|
|
|
#### WorkflowAppLogPaginationResponse
|
|
|
|
| Name | Type | Description | Required |
|
|
| ---- | ---- | ----------- | -------- |
|
|
| data | [ [WorkflowAppLogPartialResponse](#workflowapplogpartialresponse) ] | | Yes |
|
|
| has_more | boolean | | Yes |
|
|
| limit | integer | | Yes |
|
|
| page | integer | | Yes |
|
|
| total | integer | | Yes |
|
|
|
|
#### WorkflowAppLogPartialResponse
|
|
|
|
| Name | Type | Description | Required |
|
|
| ---- | ---- | ----------- | -------- |
|
|
| created_at | | | No |
|
|
| created_by_account | | | No |
|
|
| created_by_end_user | | | No |
|
|
| created_by_role | | | No |
|
|
| created_from | | | No |
|
|
| details | | | No |
|
|
| id | string | | Yes |
|
|
| workflow_run | | | No |
|
|
|
|
#### WorkflowLogQuery
|
|
|
|
| Name | Type | Description | Required |
|
|
| ---- | ---- | ----------- | -------- |
|
|
| created_at__after | | | No |
|
|
| created_at__before | | | No |
|
|
| created_by_account | | | No |
|
|
| created_by_end_user_session_id | | | No |
|
|
| keyword | | | No |
|
|
| limit | integer | | No |
|
|
| page | integer | | No |
|
|
| status | | | No |
|
|
|
|
#### WorkflowRunForLogResponse
|
|
|
|
| Name | Type | Description | Required |
|
|
| ---- | ---- | ----------- | -------- |
|
|
| created_at | | | No |
|
|
| elapsed_time | | | No |
|
|
| error | | | No |
|
|
| exceptions_count | | | No |
|
|
| finished_at | | | No |
|
|
| id | string | | Yes |
|
|
| status | | | No |
|
|
| total_steps | | | No |
|
|
| total_tokens | | | No |
|
|
| triggered_from | | | No |
|
|
| version | | | No |
|
|
|
|
#### WorkflowRunPayload
|
|
|
|
| Name | Type | Description | Required |
|
|
| ---- | ---- | ----------- | -------- |
|
|
| files | | | No |
|
|
| inputs | object | | Yes |
|
|
| response_mode | | | No |
|
|
|
|
#### WorkflowRunResponse
|
|
|
|
| Name | Type | Description | Required |
|
|
| ---- | ---- | ----------- | -------- |
|
|
| created_at | | | No |
|
|
| elapsed_time | | | No |
|
|
| error | | | No |
|
|
| finished_at | | | No |
|
|
| id | string | | Yes |
|
|
| inputs | | | No |
|
|
| outputs | object | | No |
|
|
| status | string | | Yes |
|
|
| total_steps | | | No |
|
|
| total_tokens | | | No |
|
|
| workflow_id | string | | Yes |
|