Overview
Submits a multi-turn conversation to the server. The model automatically extracts useful memories, such as people, events, and preferences, and writes them to the specified memory space. The response contains the numbers of memories added, updated, and skipped.
API details
Constraints
- You must have an API key. For more information, see Manage AI API keys.
Request path
POST {BASE_URL}/api/v1/memory/spaces/{spaceId}/memories/extract
Request headers
Name |
Required |
Example value |
Description |
|---|---|---|---|
| Authorization | Yes | Bearer {token} | Authentication information. |
| Content-Type | No | application/json | Request body format. |
| X-OB-Project-ID | Yes | your-project-id | Project ID |
Request parameters
Path parameters
Name |
Type |
Required |
Example value |
Description |
|---|---|---|---|---|
| spaceId | string | Yes | space-123 | Memory space ID. |
Body parameters
Name |
Type |
Required |
Example value |
Description |
|---|---|---|---|---|
| userId | string | Yes | user-001 | Business user ID. |
| agentId | string | Yes | agent-001 | Business Agent ID. |
| sessionId | string | Yes | session-abc123 | Business session ID. |
| messages | array<ChatMessage> |
Yes | [{"role":"user","content":"Hello"}] | List of conversation messages. |
| messages[].role | string | Yes | user | Message role. Valid values: user, assistant, and system. |
| messages[].content | string | Yes | Hello | The content of the message. |
Response
Response parameters
Name |
Type |
Description |
|---|---|---|
| success | boolean | Whether the request was successful |
| code | string | Response code. |
| message | string | Response message. |
| data | object | Response data. |
Data fields
Name |
Type |
Description |
|---|---|---|
| add | integer | Number of memories added. |
| update | integer | Number of memories updated. |
| skip | integer | Number of memories skipped. |
Request example
curl --request POST '{BASE_URL}/api/v1/memory/spaces/space-123/memories/extract' \
--header 'Authorization: Bearer {token}' \
--header 'X-OB-Project-ID: your-project-id' \
--header 'Content-Type: application/json' \
--data '{
"userId": "user-001",
"agentId": "agent-001",
"sessionId": "session-abc123",
"messages": [
{"role": "user", "content": "I like spicy hot pot."},
{"role": "assistant", "content": "Okay, your taste preference has been recorded."}
]
}'
Response example
{
"success": true,
"code": "200",
"message": "successful",
"data": {
"add": 2,
"update": 1,
"skip": 0
}
}
