Ir para o conteúdo
Gomind

update

Reescreva um fact existente no lugar.

POST/v1/update

Também existe a ferramenta MCP update.

Encontre o fact com recall primeiro. Todo fact nas respostas tem uma ref, os últimos 5 caracteres do id. Passe subject, predicate e ref do fact, mais o que deve mudar.

CampoTipoObrigatórioDescrição
subjectstringsimSujeito atual, exatamente como está guardado.
predicatestringsimPredicado atual. WorksAt encontra works_at.
refstringsimÚltimos 5 caracteres do id do fact, ou o id completo.
new_subjectstringnãoNovo sujeito. Máximo de 45 caracteres. Liga exatamente à entidade com esse nome.
new_predicatestringnãoNovo predicado.
new_objectstring | JSONnãoNovo objeto: texto, um type:id ou JSON.
contextstringnãoNova nota. Máximo de 4.000 caracteres.
if_objectstring | JSONnãoAplica a atualização só se o objeto guardado ainda for igual a este valor. JSON é comparado pelo conteúdo. Use para contadores e para tudo que dois agentes possam alterar ao mesmo tempo.
collectionstringnãoCódigo da collection. Omita para usar o padrão da conexão. "" força o espaço padrão.

Informe pelo menos um de new_subject, new_predicate, new_object ou context. Os campos omitidos mantêm os valores guardados.

Requisição

{
  "subject": "task:GO-12",
  "predicate": "status",
  "ref": "X2C9A",
  "new_object": "done",
  "if_object": "in_progress"
}

Resposta

{
  "before": { "id": "01KJ8Z3W5Q2YB7N4R6T8VX2C9A", "ref": "X2C9A", "subject": "task:GO-12", "predicate": "status", "value": "in_progress" },
  "after":  { "id": "01KJ8Z3W5Q2YB7N4R6T8VX2C9A", "ref": "X2C9A", "subject": "task:GO-12", "predicate": "status", "value": "done" }
}

Erros

| Status | Quando | |:--|:--| | 400 | Nenhuma alteração pedida, ou ref não tem 5 ou 26 caracteres de id | | 404 | Nenhum fact corresponde a subject, predicate e ref | | 409 | Dois facts têm a mesma ref; passe o id completo em ref | | 409 | if_object não corresponde mais: fact changed: current object is …. Faça o recall e tente de novo |

Para definir um predicado de valor único sem ler antes, use remember com replace: true.