# Solidworks PDM to ION

## Getting started

Follow the instructions below to automatically sync data from [solidworks-pdm](https://docs.violetlabs.com/apps/s/solidworks-pdm "mention") to [ion](https://docs.violetlabs.com/apps/i/ion "mention").

{% stepper %}
{% step %}

### Create a <img src="https://2091741164-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FvrraExym8pNEUvBDoima%2Fuploads%2FJq3xOadLK94mdK0Htemw%2Fsolidworks-pdm.png?alt=media&#x26;token=ad0ff24a-be5c-41c0-931d-cacb0de1b20f" alt="" data-size="line">Solidworks integration

First, connect Solidworks PDM and create your integration (instructions [here](https://docs.violetlabs.com/apps/s/solidworks-pdm)).

Violet fetches part and assembly data from Solidworks PDM by connecting directly to your PDM server's SQL database. Alternatively, you can manually upload a BOM in .csv format that's been exported from Solidworks.
{% endstep %}

{% step %}

### Create an <img src="https://2091741164-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FvrraExym8pNEUvBDoima%2Fuploads%2FjEUUf71xOyb4XakXE8Lw%2Fion.png?alt=media&#x26;token=b2154d3d-d7c2-49fe-b327-405feddc422e" alt="" data-size="line">ION integration

Next, set up an ION integration, following the instructions [here](https://docs.violetlabs.com/apps/i/ion/generate-api-credentials-in-ion). Configure your data fetch, specifying:

* The types of data you want to fetch (`parts`, `runs`, `purchase orders`, etc).
* Fetch frequency - this is either scheduled, eg. every 1 hour, 10 minutes, etc., or event-driven via webhooks.

Violet will need to fetch whichever data you wish to be synced from Solidworks (eg. `parts`).
{% endstep %}

{% step %}

### Configure sync workflow

Head to [..](https://docs.violetlabs.com/features/workflows "mention") to configure your sync, including desired trigger, property mappings, business logic, etc.
{% endstep %}
{% endstepper %}

### One-time data syncs

Alternatively, you can push assemblies to ION on a one-off basis.

1. Navigate to the desired Solidworks PDM assembly in Violet. Under **Automations**, select your target app and click Push.
2. Once successful, you will now see this assembly in both Violet and ION. Any future pushes will update existing parts and/or create new parts intelligently (it will not duplicate data).

## Observability

To learn more about monitoring performance and health & status of your data syncs, head to [observability](https://docs.violetlabs.com/features/workflows/observability "mention").
