Перейти к содержимому

Create Fact

POST
/v1/facts
curl --request POST \
--url https://api.cloud.agentums.ru/v1/facts \
--header 'Authorization: Bearer <token>' \
--header 'Content-Type: application/json' \
--data '{ "fact": "example", "object_id": "2489E9AD-2EE2-8E00-8EC9-32D5F69181C0", "subject": "" }'

Добавить факт о себе руками — раздел «Знания» умел только читать и удалять.

Пишем ЧЕРЕЗ svc.remember_fact, а не INSERT’ом: там живут дедуп полного дубля, вытеснение по субъекту, потолок длины и детерминированный отсев секретов (номер карты, пароль). Ручной путь обязан получать те же рубежи, что инструмент агента и авто-захват, — иначе через форму в вечную память уедет то, что оба других пути не пропускают.

Точный дубль возвращает УЖЕ существующий факт с тем же 201: копий не плодим, а сообщать об ошибке там, где пользователь получил ровно то, чего хотел, незачем.

Media typeapplication/json
FactCreate

Факт «Что ИИ о вас знает», добавленный человеком руками.

Поля kind тут нет НАМЕРЕННО: вид фиксирован сервисом. Иначе факт можно было бы создать общим POST /v1/corrections в обход remember_fact — мимо дедупа, вытеснения по субъекту и отсева секретов, которые живут только там.

object
fact
required
Fact
string
>= 1 characters <= 2000 characters
object_id
Any of:
string format: uuid
subject
Subject
string
"" <= 64 characters

Successful Response

Media typeapplication/json
CorrectionOut
object
actor
Actor
string
""
created_at
required
Created At
string format: date-time
criticality
Criticality
string
default: normal
field
Any of:
string
id
required
Id
string format: uuid
kind
required
Kind
string
new_value
Any of:
New Value
note
Note
string
""
object_id
Any of:
string format: uuid
scope
required
Scope
string
status
Status
string
default: applied
Example
{
"actor": "",
"criticality": "normal",
"note": "",
"status": "applied"
}

Validation Error

Media typeapplication/json
HTTPValidationError
object
detail
Detail
Array<object>
ValidationError
object
ctx
Context
object
input
Input
loc
required
Location
Array
msg
required
Message
string
type
required
Error Type
string
Examplegenerated
{
"detail": [
{
"ctx": {},
"input": "example",
"loc": [
"example"
],
"msg": "example",
"type": "example"
}
]
}