update_cells
Edit an existing row (record) of a table: overwrite the given cells, leave the rest. Use this to change or fix data already in a table; add_row/add_row_batch insert new rows. cellValues maps column names to new values. Values by column type: text/email/url/phone a plain string (no markdown: a cell shows as typed, in documents too); number a number; money with its currency, {“value”: 1200, “code”: “GBP”} or “£1,200” (codes USD, EUR, GBP, JPY, no other; a bare number is stored as USD); date an ISO date “2026-09-28”; time “14:30”; checkbox true/false; select an option label; multiSelect an array of labels (new labels become options); progress a number, “42%” or {“current”: 3, “total”: 10}; location {“mainText”, “secondaryText”, “type”, “lat”, “lng”} with lat and lng filled (an address alone has no coordinates, so it never shows on a map); relation (oneMany) an array of row ids from the linked table; reference a documentId or {“documentId”, “blockId”}. person the email or full name of someone in the project or workspace (anyone else is refused, with who is listed). Pass null or "" to clear a cell. Formula, timer and approval columns cannot be written. To point the row name at another table’s row pass {“linkedTableId”: ”…”, “linkedRowId”: ”…”}. Find the rowId with lookup_table_cells (match on a column) or get_table_data. Values that can’t be written are returned in rejectedValues; the others are still saved.
Parameters
string
required
string
required
object
required
Column name → new value. E.g. {“Salary”: 75000, “Status”: “Done”}.