Creating Sync Workflows

Key Concepts

Before building a sync workflow, it helps to understand a few terms:

  • Source — the system and record type you're syncing from (e.g., Duro – Part Revision)

  • Target — the system and record type you're syncing to (e.g., ION – Part Revision)

  • Trigger — what causes the sync to generate Pending Changes: either a time schedule, or when Violet identifies changes after fetching new data from the source app

  • Filters — optional conditions that limit which source records get synced (e.g., only sync parts with Status = "Released")

  • Mappings — how properties in the source correspond to properties in the target (e.g., source "Part Number" → target "Item Name")

  • Dependencies — related records synced alongside the main record (e.g., files attached to a part)

  • Pending Changes — a staged preview of what will be created, updated, or deleted before anything is applied to your target system

  • Sync Batch — as Pending Changes are identified, they are gathered into a sync batch. These batches hold all of the Pending Changes for a workflow since the last sync was executed.

  • Change Execution - the actual execution of the changes in the Target system: either a manual approval, a time schedule, or live “on creation” Change Execution. All changes in a Sync Batch will be executed together.

Creating a Sync Workflow

Step 1 — Open the Workflow Builder

Go to the Workflows tab and click + Sync Workflow.

If you previously started a workflow and didn't finish, a Draft available indicator will appear — the builder will automatically restore where you left off.

Step 2 — Name Your Workflow

Enter a descriptive name at the top of the canvas. Choose something that makes it easy to identify later, like "ION → Ramp Purchase Order Sync". We recommend including the source and target app names and the type of records being synchronized in the workflow.

Step 3 — Configure Source and Target

Click the Source node on the canvas and select:

  • The source integration (the system you're syncing from)

  • The source entity type (the kind of record — e.g., Part, Purchase Order, Task)

Then click the Target node and select:

  • The target integration (the system you're syncing to)

  • The target entity type

Step 4 — Set a Trigger

Click the Trigger node and choose how the workflow generate pending changes:

Trigger Type

When it runs

Activity

Automatically when the source integration is fetched or refreshed

Scheduled

On a time interval you choose: every 15 min, 30 min, 1 hr, 2 hrs, 4 hrs, 6 hrs, 12 hrs, daily, or weekly

Step 5 — Add Filters (optional)

Click the Filters node to limit which source records are included in the sync.

For each filter, choose:

  1. A property from the source record (e.g., Status, Lifecycle Phase)

  2. An operator (equals, starts with, ends with, is in, date is after, regex match, and more)

  3. A value to match against

You can add multiple filters. Filters marked must pass act as AND conditions — all of them must be satisfied. Others act as OR conditions.

Step 6 — Map Properties

Click the Mappings node to define how properties from the source translate to properties in the target. Violet will automatically populate likely property mappings between the source and target systems, but you should confirm that they are correct.

  • Properties marked with * are required — they must be mapped before you can save

  • Optional properties can be mapped or left blank as needed. If left blank, syncs will not create or update data in that target property during a sync

  • For select/dropdown proprties, you can also map individual option values (e.g., source status "Released" → target status "Active")

Mapping options:

Option

Description

Direct mapping

Map one source property directly to a target property

Literal value

Set a fixed text value on the target property regardless of source

Concatenation

Combine multiple source properties with separators (e.g., {Part Number} / {Revision})

Transformer

Apply a built-in transformation (e.g., convert to lowercase, extract a date, strip non-numeric characters)

Step 7 — Configure Dependencies (if shown)

Some target entity types have required relationships or related sub-entities. For example, if you're syncing a Purchase Order, the target system may require that it be matched to a Vendor in that system. Similarly, Purchase Order Lines are a sub-entity of the Purchase Order, and they will be synced together.

These dependant syncs appear as additional rows beneath the main sync on the canvas. If your sync has required dependencies, you must configure your integration to fetch those entity types alongside the main entity that you wish to sync (e.g., you must fetch both Purchase Orders and Suppliers/Vendors on the same Integration for both the Source and Target systems). Sub-entities, like Purchase Order Lines, are automatically fetched along with their parent entity - you do not have to do any special configuration to enable this.

For each dependency:

  1. Select the source relationship — if multiple source relationships could apply, choose which one to use

  2. Optionally add Filters and Mappings specific to that dependency

Step 8 — Save

Click Save Workflow when you're done.

If anything required is missing, the affected nodes will show a red border with an error indicator. Click the node to see what needs to be filled in.

On success, you'll be redirected to the Workflows list and the new workflow will appear there.

Step 9 — Choose Sync Change Execution Method

Once you have saved your Sync Workflow, the Target > Source integration pair will appear in the All Integrations list. Click on the integration pair, and then click the gear in the Execution Configuration: block to set up the Sync Change Execution Method.

You can choose to execute the sync changes on a Timer, or On Activity. If you'd like to execute the sync changes On Activity, you can choose between a manual approval, or automatic execution each time the sync change creation workflow completes.


Managing Sync Workflows

From the Workflows list, each workflow card shows its name, source and target integrations, and current status.

  • Edit: To edit a workflow, click anywhere on the worflow card.

  • Manually Stage Changes (): Click the "Create Changes for Full Integration" icon to immediately stage pending sync changes for all records in the source system. You can use this for initial changes when you are first setting up your workflow if you don't want to wait for the next source integration fetch.

  • View run history (): Click on the history icon to view historical syncs. You can see the status of each historical run, as well as the sync'd changes and the status of each change.

  • Delete (): Click the delete icon to delete the Workflow.

Drafts

The builder automatically saves your work as a draft in your browser as you go — no manual save needed.

  • A Draft available badge appears on the Workflows tab if you have an unsaved draft

  • If you navigate away, you'll be asked whether to keep the draft, discard it, or go back

  • You can clear a draft manually at any time using the Clear Draft button inside the builder

Note: Drafts are stored in your browser and will not appear on other devices or after clearing your browser data.

Last updated

Was this helpful?