Update Row
Definition
The Update row action in Smartsheet allows you to modify specific cell values within an existing row of a sheet. Instead of creating new entries, this action targets a specific record using its unique identifier and updates only the columns you specify. Key capabilities include:
- Targeting a precise row within any sheet using its unique
Row ID. - Updating one or multiple column values simultaneously within that row.
- Returning the updated row details to confirm the modification.
This action is essential for keeping your Smartsheet data synchronized with other systems, such as updating a project status when a task is completed or modifying customer details when a form is submitted.
Inputs
1. Connection
- Purpose: It authorizes Zenphi to access and modify your sheets securely.
- Practical Guidance: Select an existing connection from the dropdown list. If you haven’t connected Smartsheet yet, click the
+icon to authenticate and create a new connection. - Use Case Context: You need this to ensure the automation has permission to edit the specific sheet you are targeting.
2. Sheet ID
- Purpose: It tells the action exactly which sheet contains the data you want to modify.
- Practical Guidance: Select the specific sheet directly from the dropdown list, which populates once the connection is established. (Note: As with all Smartsheet actions in Zenphi, the sheet must be selected from the dropdown menu).
- Use Case Context: You would use this to select your “Sales Tracker” sheet so the action knows where to look for the row.
3. Row ID
- Purpose: It acts as the unique address for the record, ensuring you update the correct line item without affecting others.
- Practical Guidance:
- Dynamic (Recommended): In most automations, you will not know the
Row IDahead of time. You should use the token picker to map this value from a previous step, such as a Query Collection action (where you filtered to find the specific row) or a trigger that started the flow. - Static (Testing only): To find a static ID, open Smartsheet, right-click a row, select “Properties,” and copy the
Row ID. You can paste this value here, but this is rarely used in production workflows.
- Dynamic (Recommended): In most automations, you will not know the
- Use Case Context: You would map the
Row IDoutput from a Query Collection action to this field to update the specific order status for a customer.
4. Column
- Purpose: It maps the data you want to write into the specific columns of the target row.
- Practical Guidance: Click to add an item to the list. For each item, select the Column name from your sheet that you wish to update. In the Value field, enter the new data. You can type a static value (e.g.,
Completed) or use the token picker to insert dynamic data from a previous step (e.g., a date or a comment from a form). - Use Case Context: You would use this to select the “Status” column and set its value to
Approved, and select the “Comments” column to append a note from an email.
Outputs
1. Row ID
- Data Description: A string of numbers representing the system ID for the row.
- Workflow Utility: This is useful for logging purposes or if you need to perform further actions on the same row immediately after updating it, such as moving it to another sheet using a Move Row action.
2. Row number
- Data Description: A number indicating the row’s position in the sheet (e.g.,
42). - Workflow Utility: This is helpful for human-readable notifications. For example, you can send an email to a manager saying, “Please review the updates on Row 42,” allowing them to find the record quickly.
Example Use Cases
1. Update Project Status: Automatically change the status column of a specific task row to Completed or In Progress based on external triggers like a Jira update or a form submission.
2. Sync CRM Customer Data: Update contact details, such as phone numbers or email addresses, in a master client sheet whenever a change is detected in your CRM platform.
3. Approve Expense Requests: Modify an “Approval Status” column to Approved and insert the approval date once a manager signs off on a request via a workflow.
4. Manage Inventory Levels: Deduct stock quantities in an inventory tracking sheet automatically when a new order is processed and shipped.
5. Record Audit Trails: Append timestamped comments or user information to a “History” column in a row whenever a specific document is accessed or modified.
Example Scenario
Goal
You manage an IT Support Ticket tracker in Smartsheet. When a technician resolves an issue, they submit a simple Zenphi Form containing the Ticket ID and their resolution notes. You want to automatically locate the corresponding ticket in your Smartsheet and update its status to “Resolved” while appending the technician’s notes, ensuring the tracker is always up to date without manual data entry.
Steps to Implement
1. Trigger Selection: Select the Zenphi Form trigger. Design the form to capture the “Ticket ID” and “Resolution Notes”.
2. List Rows (Smartsheet): Add this action to retrieve the rows from your “Support Tickets” sheet so you can search for the matching Ticket ID.
3. Convert JSON to Object: Add this action to parse the raw JSON output from the List Rows step into a structured data collection.
4. Query Collection: Add this action to apply filtering on the parsed list. Configure the conditions to find the row where the “Ticket ID” column matches the “Ticket ID” from the Zenphi Form.
5. Configure the Update row Action: Add the Update row action to modify the identified record.
- Connection: Select your authorized Smartsheet connection.
- Sheet ID: Select the “Support Tickets” sheet from the dropdown menu.
- Row ID: Use the token picker to map the
Row IDoutput from the previous Query Collection action. - Column: Click the plus button to add the columns you wish to modify. For Item 1, select the Status column and enter the static value
Resolved. For Item 2, select the Resolution Notes column and use the token picker to insert the Resolution Notes value from the Zenphi Form trigger.
Outcome
Whenever a technician submits the resolution form, the workflow automatically retrieves and filters the sheet data to identify the correct row based on the Ticket ID. It then updates the status to “Resolved” and records the notes instantly. This eliminates manual searching and editing, ensuring accurate reporting and faster ticket closure times.
Best Practices
1. Dynamically Map Row IDs: Always use the Row Id output from a previous step (like Query Collection or Create Row) rather than hardcoding a value, as Row IDs are unique system generated numbers that are not visible in the sheet interface.
2. Match Data Types: Ensure the data you are writing matches the column type in Smartsheet (e.g., ensure you are sending a valid date format to a Date column) to prevent API errors.
3. Update Only Necessary Columns: You only need to add columns to the configuration that you intend to change; existing data in other columns of the row will remain untouched.
4. Handle Missing Rows: If you are using a search process (List Rows and Query Collection) prior to updating, consider adding an If Condition to check if a Row ID was actually found before attempting the Update row action to prevent workflow failures.