# Run Step to Smartsheet Sync

### How It Works

When a run step is updated in ION, this integration finds the matching row in your Smartsheet by looking for the step's URL in the configured URL column, then writes the step's status, check-in time, and completion time to the mapped columns.

### Prerequisites

* The Smartsheet must have a column containing the ION run step URL (e.g., `https://app.firstresonance.io/runs/123/steps/456`). The integration matches rows by the `/steps/{stepId}` portion of the URL, so the cell just needs to contain that segment — the full URL is recommended for clarity but not strictly required
* **Run Step Sync Enabled** must be set to `true` on the **Run Step Sync** config page

### Configuration

All settings are on the **Run Step Sync** config page.

| Setting                       | Default        | Description                                                                                                                                                                       |
| ----------------------------- | -------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| **Run Step Sync Enabled**     | `false`        | Master switch for this flow. Must be `true` to enable syncing.                                                                                                                    |
| **Run Step Smartsheet Sheet** | *(required)*   | ID of the Smartsheet sheet to sync into. This should be a **different sheet** than the one configured in Run Sync — run steps track individual step progress, not the run itself. |
| **Run Step URL Column**       | `Run Step URL` | Name of the column in Smartsheet that contains the ION run step URL. Used to match rows.                                                                                          |
| **Run Step Column Mapping**   | See below      | Maps Smartsheet column names to ION run step fields.                                                                                                                              |

#### Default Column Mapping

| Smartsheet Column | ION Field   |
| ----------------- | ----------- |
| `Status`          | `status`    |
| `Check In`        | `startTime` |
| `Completed`       | `endTime`   |

You can rename the Smartsheet columns and update this mapping to match. Valid ION field names are `status`, `startTime`, and `endTime`.

#### Data Written

| ION Field   | Value Written                  | Format                                                                 |
| ----------- | ------------------------------ | ---------------------------------------------------------------------- |
| `status`    | Run step status                | Underscores replaced with spaces (e.g., `IN_PROGRESS` → `IN PROGRESS`) |
| `startTime` | When the step was checked into | `YYYY-MM-DD` in the configured timezone                                |
| `endTime`   | When the step was completed    | `YYYY-MM-DD` in the configured timezone                                |

Only non-null values are written. If a step has no start time yet, that column is left unchanged.

#### Row Matching

The flow scans the sheet for rows where the **Run Step URL Column** contains `/steps/{stepId}`. If multiple rows match, all are updated.

#### Timezone

Dates are formatted using the Timezone setting on the Settings config page (default: `America/Los_Angeles`). Set this to your local IANA timezone (e.g., `America/New_York`, `UTC`) to ensure dates display correctly in Smartsheet.

### Troubleshooting

| Symptom                                                      | Likely Cause                                                                                                                                                                                                                                     |
| ------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ |
| Row not updated                                              | The URL column name doesn't match **Run Step URL Column**, or the cell doesn't contain the full step URL                                                                                                                                         |
| Dates in wrong timezone                                      | **Timezone** setting on the Settings page is incorrect                                                                                                                                                                                           |
| Flow not running                                             | **Run Step Sync Enabled** is `false`                                                                                                                                                                                                             |
| Row not updated after pasting a URL and updating a Run Step. | Smartsheet may not have persisted the cell value yet — if the step is updated in ION immediately after pasting the URL, Smartsheet may still be saving on their end. Wait up to 2 minutes after pasting the URL before triggering a step update. |


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://manual.firstresonance.io/integrations/smartsheet/run-step-to-smartsheet-sync.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
