ACTION_ID: attio_update_record NAME: Attio: Update Record CATEGORY: CRM CREDITS: 0 Update an Attio record by record ID. ================================================================================ PREREQUISITE — USER ACTION REQUIRED ================================================================================ This action only works if the user has connected their Attio workspace in Floqer. The connection cannot be made via the API or by an AI agent. The user must do this themselves before this action will run: 1. Sign in to Floqer at https://app.floqer.com 2. Open the Connections page from the sidebar 3. Click Attio and complete the OAuth flow If the user has not connected Attio, this action will fail with a connection / authentication error. Before configuring or running this action, confirm with the user that the Attio connection exists. INDEX: 1. Inputs 2. Outputs 3. How to configure 4. Key notes 5. Where it fits in a workflow 6. When to use 7. When not to use ================================================================================ 1. INPUTS ================================================================================ record_id (text, required) Record ID. The Attio record ID to update — usually the Record ID from a previous Attio Lookup, Create or Upsert step. Accepts a {{reference}}. attio_object (dynamicDropdown, required) Attio Object. The object the record belongs to (People, Companies, Deals, or any custom object). Value is the object's api_slug. add_attributes_and_their_values (jsonArray, required) Add Attributes and their Values. Select attributes from the object and add their values. Only the attributes listed here are changed. ================================================================================ 2. OUTPUTS ================================================================================ record_id (string) — Record ID. Record ID of the record that was updated. record_url (url) — Record URL. Direct link to the record in Attio. attributes (json) — Attributes. Every attribute on the record after the update, keyed by attribute slug — not just the ones sent. created_at (date) — Created At. When the record was first created in Attio. ================================================================================ 3. HOW TO CONFIGURE ================================================================================ Resolve the dynamic field values via Get Action Field Options before configuring: POST /api/v1/workflows/{workflow_id}/sheets/{sheet_id}/actions/{action_instance_id}/options/attio_object (body: {}) → the objects in the connected Attio workspace. POST .../options/add_attributes_and_their_values (body: { "context": { "attio_object": "companies" } }) → writable attributes on the chosen object, with the Attio `type`, multi-value flag and any `reference` token in `extras`. POST .../options/add_attributes_and_their_values (body: { "context": { "reference": "" } }) → the selectable values behind that token. Configure Action body: { "inputs": { "record_id": "{{attio_lookup_record_1.record_ids}}", "attio_object": "companies", "add_attributes_and_their_values": [ { "name": "categories", "value": "{{classify_1.segment}}" }, { "name": "description", "value": "{{summarize_1.summary}}" } ] } } Field-by-field: - record_id The Attio record UUID. Feed it from a lookup / create / upsert output rather than typing it. - attio_object Object api_slug the record belongs to. A mismatch is a 404 from Attio. - add_attributes_and_their_values `[{name, value}]` — attribute api_slug plus value; `{{ref}}` tokens or literals. ================================================================================ 4. KEY NOTES ================================================================================ - **Listed attributes are OVERWRITTEN, including multi-value ones.** Attio's API offers two modes: PATCH appends to a multiselect and PUT replaces it. This action uses PUT, so sending one value to a multi-value attribute leaves that single value, not the old list plus the new entry. To add to a list, read the current values (from a lookup or this action's `attributes` output) and send the full set. - An attribute the selected object does not have comes back as a `warnings[]` entry (`unknown_field`) from Configure Action, and the row is ignored at run time — check `warnings` after configuring rather than waiting for the run. - Attributes NOT listed are untouched — the overwrite is per attribute, not per record. - The Attio connection must live on the API key's user account. If the connection lives under a different team member, Get Action Field Options returns a 424 — provision the API key from the user who owns the connection. - Read-only attributes (created_at, formulas) are not offered and are rejected by Attio if forced. - Composite attributes take a plain value: "Ada Lovelace" for `name`, "acme.com" for `domains`. The nesting Attio's API expects is built for you. - `record_id` must belong to `attio_object`. Passing a People id with `companies` selected surfaces as a 404, not a silent no-op. ================================================================================ 5. WHERE IT FITS IN A WORKFLOW ================================================================================ Pattern: attio_lookup_record -> enrichment -> attio_update_record (run_if: {{lookup.record_ids}} is not empty). ================================================================================ 6. WHEN TO USE ================================================================================ Use attio_update_record when you already hold the record id and want to write a known set of attributes onto it. ================================================================================ 7. WHEN NOT TO USE ================================================================================ You do not have a record id -> attio_upsert_record (https://floqer.com/docs/action-detail/attio_upsert_record.txt) You want to append to a multi-value attribute rather than replace it -> attio_lookup_record first, then send the merged set here (https://floqer.com/docs/action-detail/attio_lookup_record.txt) ================================================================================ This file is maintained manually. Last updated: 2026-08-11. Full interactive reference: https://floqer.com/docs/reference Action catalog: https://floqer.com/docs/action-catalog.txt