45c73e56-362d-4108-b8c2-460b632c4689). The Read and Writeback steps return it.The app works with every object in your Attio workspace: People, Companies, Deals and your custom objects. Attio's optional Users and Workspaces objects, lists and list entries, notes, tasks and comments are not available in workflow steps.
Field labels are the attribute names you see in Attio. Two kinds of attribute are split into parts:
| Attribute type | Fields in the step |
|---|---|
| Personal name (the Name of a person) | Name: Full name, Name: First name, Name: Last name |
| Location (such as Primary location) | Primary location: Line 1 to Line 4, Locality, Region, Postcode, Country code, Latitude, Longitude |
Every object also has Record ID, which is read-only. Attributes Attio does not let you edit, such as Created at, Created by and interaction dates, can be read but not written.
a; b with Equal to means the record holds both. With Not equal to it matches a record that lacks either value; to find records that have neither, use two Not equal to rules joined by AND. On a field that holds one value, a; b stops the step.2026-10-09, a minute, a second or a millisecond for 2026-10-09T10:04:31.215Z; a value may carry a UTC offset. Latitude and Longitude cannot be used in a rule. A value the field cannot take stops the step with a message naming the field. A blank value on Contains, Starts with or Ends with stops the step too, since it would match every record.| Attribute type | Reads as |
|---|---|
| Select, Status | The option or status title, for example Won 🎉 |
| Currency | The amount only, for example 48000 |
| Several values (Email addresses, Phone numbers, Domains, multi-select, several linked records) | One text, values separated by ; : jane.doe@example.com; jane@example.com |
| Phone numbers | International format, for example +14155550132 |
| Linked records (such as Company on a person, Associated deals) | The Record ID of the linked record, not its name |
| Workspace members (such as Deal owner, Created by) | The member's ID; on a write, the login email of an active member also links them |
| Date | Midnight UTC on that day: 2026-12-15T00:00:00.000Z |
| Date and time | UTC: 2026-09-22T23:40:10.000Z |
| Checkbox | true or false |
| Topic | Behavior |
|---|---|
| Mapped fields | Written. Fields you do not map are left as they are. |
| Several values | Separate them with ;: jane.doe@example.com; jane@example.com writes two email addresses. On Update, the values you send replace the ones the record has. |
| Blank values | An empty value clears the field, on every type. A required field (such as Deal name, Deal stage, Deal owner) cannot be cleared on an update: the step stops naming the field. |
| Numbers | A number, currency or rating takes a number or a numeric text with a dot as the decimal separator (12000, 12,000.50); 12,5 stops the step naming the field. |
| Titles | A select or status title is matched exactly, after leading and trailing spaces are removed. |
| Ratings and checkboxes | A rating is a whole number from 0 to 5. A checkbox takes true or false (any case); other words stop the step naming the field. |
| Email addresses and phone numbers | Each address in a ; list must be an email address and each phone number must start with + and the country code (+14155550199); a value that is not stops the step naming it, and nothing in the list is written. |
| Text | A number or true/false mapped into a text field is written as text. Spaces around a value are removed; a value that is only spaces clears the field. |
| Names | Full name, First name and Last name cannot be mapped to a blank value; a Create step whose every mapped field is blank stops instead of creating an empty record. |
| One value per field | Map one field of a Read step's output to a field, never the whole output; a field that receives an object stops the step naming the field. |
| Unique values | An email address or a company domain that another record already has stops the step naming the value; find that record with a Read step on the field. Two Create steps that race for the same address never both succeed. |
| Locations | Mapping one part of a location (such as City) keeps the other parts; blanks on every part clear the location. Latitude and Longitude are decimal numbers with a dot, Postcode is text (a number is written as text), and Country code is a two-letter code such as CA (lower case is accepted). A value outside those forms stops the step naming the part. |
| Company domains | Domains takes a host (acme.com, www.acme.com) or a URL; Attio keeps the bare host. A domain on a reserved top-level domain stops the step naming the values sent. |
| Date-times | Map a date-time with its zone. A calendar day written to a date-time field lands at that day's midnight UTC, and a value without a zone is read as UTC. |
| Select, Status | Written by the option or status title, exactly as it appears in Attio. The value must already exist: the app does not create options. |
| Name | Map Name: First name and Name: Last name, or Name: Full name. On Update, a part you do not map keeps its current value. |
| Location | On Update, a part you do not map keeps its current value. |
| Linked records | Map the Record ID of the record to link, for example the Record ID from a Read step on Companies. A company can also be linked by its domain (acme.com) and a person by an email address. The exact name of a record links it when exactly one record of that object has that name; a name no record has, or one shared by several records, stops the step. A domain is the bare host (acme.com or www.acme.com, not a URL); email addresses match regardless of case. Several values that resolve to the same record (two addresses of one person) link it once. A Record ID of another object stops the step. |
| Dates | Written as the calendar day (YYYY-MM-DD) the value starts with. |
| Phone numbers | Attio checks that the number is real. Use international format: +14155550132. |
| Currency | The amount only; the currency comes from the attribute's settings in Attio. |
| Required attributes | Attributes your workspace marks as required must be mapped on Create. The standard People object requires none. |
Attio checks every value. When Attio refuses one, for example an option that does not exist or a phone number that is not real, the step stops with a message that names the field; for a select or status value it lists the accepted titles, which are matched exactly, including case and emoji.
Open the Docusign App Center and search for Attio in the search bar.
Click the Attio app card to open its detail page, then click Install App.
Review the access the app requests and click Install and Authorize.
The app now appears with an Installed status.
On the installed app page, click Connect Account.
Connection Visibility: choose how the connection is shared:
Name Connection: enter a name. It appears in workflow steps, so make it easy to identify. Click Log In.
Sign in to Attio if you are not signed in already.
On the Attio access request, the app is named Docusign IAM Workflows. Review the workspace scopes it requests and click Confirm.
If you click Cancel instead, Attio takes you to your workspace home in the same window; the window does not close. This is Attio's standard behavior and no connection is created. Close the window and start again from Connect Account when you are ready to connect.
The connection is added and ready to use in workflow steps. Each connection works with one Attio workspace: the one the access request was confirmed for.
On the Attio app page, open the Manage dropdown.
Select Manage Connections to see every connection.
Use the three-dot (⋮) menu next to a connection:
Use Manage → New Connection on the app page, or + New Connection on the Connections page. Each connection appears separately in workflow steps. To work with a second Attio workspace, add a connection while signed in to that workspace in Attio.
In Attio, open Workspace settings → Apps → Docusign IAM Workflows. The Connections tab lists the access granted to the app, and Uninstall removes the app from the workspace. Every Docusign connection to that workspace then stops working until it is reconnected.
Log in to Docusign and go to Agreements → Workflows.
Click Create Workflow.
Build your workflow using the available steps, including the Attio actions.
Publish the workflow when it is ready.
Click + Add Step and search for Attio:
A typical sales flow:
The Read from Attio step retrieves a record and exposes its fields as workflow variables.
The example below starts the workflow From an API Call with one Text variable, record_email, that carries the person's email address. Any start type works: with a web form, use the form's email field wherever this example uses record_email.
On the workflow canvas, click + Add a step below the start.
Search for Attio and select Read from Attio.
Connection: select the connection you created during installation.
Attio object: choose the object to read. The list holds every object of your workspace. This example uses People.
Click Next.
Click Add or Remove Fields and tick the fields your workflow needs. The selected fields become workflow variables for later steps.
The list shows every attribute of the object in your workspace, custom attributes included, plus Record ID. How each type reads is under Reading Record Data.
Click Next.
Create a rule that tells the step which record to read. In this example, match the person's Email addresses to the record_email start variable:
record_emailUnder How many records should this step return?, pick one:
Use preview this step to check the rule against live data, then click Apply.
Which fields and operators a rule can use is under Searching for a Record.
The Writeback to Attio step creates a record or updates one.
On the workflow canvas, click + Add a step where the writeback belongs, then search for Attio and select Writeback to Attio.
Connection: select your Attio connection.
Attio object: choose the object to write. This walkthrough uses People.
Write settings:
Click Next.
Click Add or Remove Fields and tick the fields you want to write. Only attributes Attio lets you edit are listed: Record ID and fields such as Created at do not appear.
Each selected field gets its own row. Map it to the workflow variable that supplies the value, or type a value.
In this example the step updates the person the Read step found and sets Description to Order form sent for signature.
⚠️ Map from the right source. The variable picker also lists the output of your Read from Attio step. Mapping from there writes the original values back unchanged. Map new values from the step that collected them, such as a start variable or a web form, or type them.
Click Next.
Match the record by Record ID, or by an attribute such as Email addresses:
Click Apply.
With Update or Create, a rule that finds no record creates one; running the workflow again with the same value updates it.
The Attio File Upload step files a document produced earlier in the workflow in a record's Files in Attio. Maximum size is 50 MB.
Add a step after signing completes, search for File Upload, and select the File Upload step with the Attio logo. Searching for "Attio" does not list it.
Choose the file or envelope from an earlier step, for example the Combined Envelope File from Send Documents for Signature.
An empty list means no earlier step in the workflow produced a file.
Select connection: your Attio connection.
Select drive: each drive is one of your Attio objects, such as People (use Record ID as subfolder). Pick the object of the record that should hold the file.
The folder tells the app which record gets the file. Attio creates no folder.
Use the Record ID from an earlier step (recommended, it works for every record the workflow handles):
Click Add Folder, open the Select folder dropdown and pick New Subfolder, the last entry of the list. The New folder dialog opens.
Click Add Variable, choose the step that returns the record, select Record ID (Person / Record ID for a Read step on People) and click Add.
Select folder now shows the Record ID variable. Click Next.
Or pick one record from the list. The Select folder dropdown lists the object's records by name followed by # and the Record ID, for example Jane Doe#45c73e56-362d-4108-b8c2-460b632c4689. A picked record receives the file on every run, so use this only for a workflow that always files to the same record.
The list shows up to 500 records, and a record without a name is listed by its Record ID. Use the Record ID variable for objects with more records.
Build the file name from Add Text and Add Variable. A date or time variable keeps repeat runs apart.
In a variable's value, characters other than letters, digits, . and - are replaced with _: the name Jane Doe becomes Jane_Doe, and a time 10:00:00 becomes 10_00_00. Text you type is kept as it is. The file keeps the document's extension: .pdf is added when the name does not end with it, and never twice. The example above produces Signed MSA - Jane_Doe.pdf.
Click Apply.
After the workflow runs, the document appears in the record's Files in Attio.
A step failed.
The usual causes: a value for a select or status attribute that does not exist in Attio, a phone number Attio does not accept, a Record ID that belongs to another object, a linked record named by a name that no record has or that several records share, a required attribute left unmapped on Create, or an Attio connection that was removed from the workspace.
Can I link a record by name instead of its Record ID?
Yes, when the name belongs to exactly one record of that object. Companies can also be linked by domain and people by email address. For a workflow that handles many records, map the Record ID from a Read step: names can be shared or renamed.
My step uses the User or Workspace object, or a field such as Associated users.
Those objects and their link fields are no longer available in the app. Run Reload Objects on the connection, then delete the step and build it on People, Companies, Deals or a custom object.
A field I expect is missing from the step.
Open Manage Connections, click Reload Objects on the connection, then reopen the step and select the field again.
A step that worked before now fails after I changed an attribute in Attio.
Run Reload Objects. If you changed the attribute's type, delete the step and add it again: a step keeps the fields it was built with.
I clicked Cancel on the Attio access request and the window now shows my Attio workspace.
That is Attio's standard behavior when access is declined: it returns you to your workspace home in the same window instead of closing it. No connection was created. Close the window and click Connect Account again when you want to connect.
The step says the connection must be reconnected.
Attio no longer accepts the connection, usually because the app was removed from the workspace. Click Reconnect under Manage Connections.
A step reports a missing permission.
The Attio app lacks access to that kind of data. Contact Fluidlabs support.
Company or Deal owner reads as a long ID instead of a name.
Linked records and workspace members are read as IDs. Add a Read step on the linked object with its Record ID to get its fields.
My update replaced all the email addresses.
On Update, the values you send for an attribute with several values replace the existing ones. Send every value, separated by
;.
A select or status value is refused.
The value must match an existing option or status title in Attio. The app does not create options.
Why can't I combine Record ID with other conditions?
Record ID fetches exactly one record. Use it alone, or build the rule from other fields.
I only see "Equal to" in the Operator list.
Equal to is the operator the step offers. To narrow a search further, add conditions with AND.
I searched for "Attio" and the File Upload step is missing.
The step is named File Upload. Search for "File Upload" and pick the one with the Attio logo.
The folder list shows long IDs instead of names.
A record without a name is listed by its Record ID. Use the Record ID variable from a Read step instead of picking from the list.
The file picker says no files are available.
No earlier step produced a file. Add the upload after Send Documents for Signature.
The file did not appear on the record.
The folder has to hold the record's Record ID, from a step that runs before the upload, and the drive has to be that record's object.
Book a free 30-minute setup call with a solution consultant. Most setups finish inside the call: the connection, the field mapping, the first run. A larger setup becomes a separate engagement, with a fixed price in writing.
Tell us what happens and we take it from there. The message goes to docusign-support@fluidlabs.com.
Name the app. We answer with the app that already covers it, or a scoped plan for the connection.