Create Fact
const url = 'https://api.cloud.agentums.ru/v1/facts';const options = { method: 'POST', headers: {Authorization: 'Bearer <token>', 'Content-Type': 'application/json'}, body: '{"fact":"example","object_id":"2489E9AD-2EE2-8E00-8EC9-32D5F69181C0","subject":""}'};
try { const response = await fetch(url, options); const data = await response.json(); console.log(data);} catch (error) { console.error(error);}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: копий не плодим, а сообщать об ошибке там, где пользователь получил ровно то, чего хотел, незачем.
Authorizations
Заголовок раздела «Authorizations»Request Bodyrequired
Заголовок раздела «Request Bodyrequired»Факт «Что ИИ о вас знает», добавленный человеком руками.
Поля kind тут нет НАМЕРЕННО: вид фиксирован сервисом. Иначе факт можно было бы создать
общим POST /v1/corrections в обход remember_fact — мимо дедупа, вытеснения по
субъекту и отсева секретов, которые живут только там.
Responses
Заголовок раздела «Responses»Successful Response
object
Example
{ "actor": "", "criticality": "normal", "note": "", "status": "applied"}Validation Error
object
object
object
Examplegenerated
{ "detail": [ { "ctx": {}, "input": "example", "loc": [ "example" ], "msg": "example", "type": "example" } ]}