Fields

Set Field Values Batch

Write custom column values to one OR many rows in a single call.

The batch counterpart of PATCH /fields/{column_id}/values. Each row carries its own record_id and a list of {column_id, value} pairs; every row shares the top-level entity. A single-row update is just a rows list of length one.

Partial success: each row is applied inside its own SAVEPOINT, so a bad row (missing record, unknown column) is reported ok: false in results[] while the remaining rows still commit. Pass value=null (or omit it) on a pair to clear that column for the row.

Limits: 1-500 rows per call; a record_id may appear only once per call (fold that record's writes into one row) - duplicates 400.

Efficiency: all referenced column_ids are resolved in one query and all record_ids are existence-checked in one query, then each row is written with a single multi-column upsert (N+2 statements, not N*M).

patch/fields/values/batch

Request

  • Base URL: https://be.graph8.com/api/v1
  • URL: https://be.graph8.com/api/v1/fields/values/batch
  • Auth: HTTP bearer

Headers

Authorizationstring nullable
X-Target-Org-Idstring nullable

Request body

entitystring

Target entity, SHARED across every row: 'contacts' or 'companies'.

strictboolean

Opt-in status-code semantics. Default false keeps the historical behaviour: always HTTP 200, per-row outcomes in results[]. When true, a batch where EVERY row failed returns 422 and a partially-failed batch returns 207 Multi-Status, so a client that only checks the status code cannot mistake a total failure for success. The response body is identical either way.

Response

Successful Response

Changes

No recorded changes to this operation across all 2 revisions of this API.