Skip to main content
Rate limit tier: general, 600 requests/min. See Rate limits. Sets the value of one field of one extraction, as a person reviewing it in the app would, and answers 204 No Content. extraction_id is the id of an entry of results.extractions in Get run. One extraction belongs to one workflow version, so a name picks exactly one field.

Naming the field

Name the field by its key in the results (sanitized_name) or by its persistent_id, not both. Send the key you just read, or the persistent_id if you keep ids: it survives a rename. A field’s persistent_id is the one Get workflow returns for it. A column key is unique only within its table, so column goes with the table’s sanitized_name. row_index counts from 0. A cell of a table is named by a column and a row: the table alone, or a column without its row_index, answers 422.

The value

value is required. Send null to empty the field. Today the API takes the value as a string or null, the form Get run returns. Treat value as the field’s value in whatever type results return for it: a later release can accept numbers, booleans, dates and lists in the same key, and refuse a value that does not fit the field’s type. A value that is the same text as the original verifies the field. Any other value marks it human_edited. A yes/no field set back to its original answer still counts as an edit when the text differs, such as "true" and "True". value_unit is not part of the public request.

What else the edit does

  • On a dataset document whose extraction is fully verified, the edit rewrites the document’s ground truth.
  • A document with an assigned verifier refuses every other user with 403 NOT_ASSIGNED_VERIFIER. The key acts as its owner.
  • The edit changes the stored results only. It does not run the workflow again.

Errors