Insert or Update Records

quickbase.upsert_records
ActionDatabases & warehousesconnection required

Calls the Quickbase API with the connection's credentials.

Insert records into a table, or update the ones whose merge field already matches.

Connection

Required
Yes — the node will not save without one
Auth type
API key
Providers
Quickbase
Secret shape
the Quickbase user token, or {"user_token": "…"}
Config it needs
realm_hostname, app_id, base_url
Resolved by
config.connection_id, else node.connection_id

Configuration

4 fields, 2 required. A dotted path is a nested object and name[] an array of objects — the editor renders the same tree.

FieldTypeRequiredDefaultConstraintsExample
table_id
The table to act on, as the table id (dbid) in its URL.
stringYes——bck7gp3q2
data
Records to write, each keyed by field id. A cell may be the plain value or Quickbase's own {"value": …} object.
arrayYes—≥ 1 characters; array of object[{"6":{"value":"Andre Harris"},"7":{"value":10}}]
merge_field_id
Field id to match existing records on. Leave empty to insert every record as new.
numberNo—≥ 1—
fields_to_return
Extra field ids to return for each written record; the record id is always returned.
arrayNo—array of number[6,7]

Example configuration

Every value below is the contract’s own example or default — nothing invented.

{
  "data": [
    {
      "6": {
        "value": "Andre Harris"
      },
      "7": {
        "value": 10
      }
    }
  ],
  "fields_to_return": [
    6,
    7
  ],
  "table_id": "bck7gp3q2"
}

Output

One shape.

result

FieldTypeExample
data
One object per written record, keyed by field id.
array—
metadata
Quickbase's own per-batch metadata block.
object—
created_ids
Record ids Quickbase created.
array—
updated_ids
Record ids Quickbase updated.
array—
unchanged_ids
Record ids that already held these values.
array—
processed
How many records Quickbase processed in total.
number—
line_errors
Errors keyed by the record's position in the request, when rows were refused.
object—
partial
True when at least one record was refused.
boolean—
table_id
The table the records were written to.
string—
{
  "created_ids": [],
  "data": [],
  "line_errors": {},
  "metadata": {},
  "partial": false,
  "processed": 0,
  "table_id": "",
  "unchanged_ids": [],
  "updated_ids": []
}

See Insert or Update Records run in a workflow.

In a technical demo we add the Quickbase connection, drop the node on the canvas and let Workflow Health pre-flight it before the first real run.