Skip to main content

Set record extra values

Endpoint: PUT /datasets/{dataset_id}/records/{record_id}/extra-values

Description

Writes free-text values for one or more extra columns on a single record in a custom dataset. Merge semantics: only keys present in the request are updated; omitted keys are left unchanged. An empty string ("") clears that key's value. Returned extra_values is the record's full map after the update, with keys ordered to match the dataset's extra_columns definition order (see Get dataset by id).

Sharing rules

Custom datasets only. You must own the dataset or belong to the dataset's organization when it is org-shared.

Parameters

  • Path: dataset_id — integer; record_id — integer.
  • Body — application/json:
{
"values": {
"col_aabbccdd": "Looks good",
"col_eeff0011": ""
}
}
  • values — required object with at least one key. Keys must match col_[0-9a-f]{8}. Values are strings (max 4000 characters after trim).

Error responses

  • 401 — Authentication failed.
  • 400 — Not a custom dataset.
  • 403 — Permission denied (same as Create extra column).
  • 404 — Dataset not found; Extra column '{column_id}' not found.; or Record with id {record_id} not found.
  • 422 — Empty values object; invalid column id format in body: Invalid extra column id '{column_id}'.; value too long: Extra value exceeds the maximum length of 4000 characters.
  • 500 — An error occurred while saving the extra values.

Responses

  • 200 — Updated record extra values.

Example response (200)

{
"record_id": 42,
"extra_values": { "col_aabbccdd": "Looks good" }
}

curl

curl -X PUT "https://api.aegisevals.ai/api/v1/datasets/42/records/1001/extra-values" \
-H "Authorization: Bearer sk_00000000000000000000000000000000" \
-H "Content-Type: application/json" \
-d '{"values": {"col_aabbccdd": "Looks good"}}'