Integration involves configuring Swapcard to harmonize data between either a source and Swapcard or Swapcard and a destination. The available integration options offer diverse functionalities, covering the source of data, referred to as "Streams," and extending to the model that governs data replication on Swapcard. This encompasses:
Synchronization Schedule: Specifies the timing for periodically synchronizing data.
Stream: Pinpoints the source location for collecting data.
Destination: Specifies the target location where data is recorded.
Sync Mode: Determines how streams are replicated, encompassing both the reading and writing processes.
Synchronizations schedule
Synchronizations can be triggered through either:
A user-initiated request (e.g., clicking the Refresh button in the UI of the integration)
A scheduled synchronization
Upon enabling an integration, the initial synchronization occurs promptly. Subsequent synchronizations are then scheduled based on the time elapsed since the last synchronization, whether initiated manually or through a predefined schedule. For instance, consider the following scenario for clarification:
The default integration schedule is set to 60 minutes, though this may vary based on the capabilities outlined in the integration documentation.
November 1st, 2:00 pm: A user activates an integration, and the default synchronization interval is 60 minutes.
November 1st, 2:01 pm: The initial synchronization job is executed.
November 1st, 3:00 pm: After 60 minutes have passed since the last sync, a scheduled synchronization is triggered.
November 1st, 3:15 pm: The user manually initiates a synchronization from the UI.
November 1st, 3:16 pm: The manual synchronization job runs.
November 1st, 4:00 pm: Another scheduled synchronization is triggered as 60 minutes have elapsed since the last sync.
November 3rd, 5:01 pm: ...
It's important to note that the synchronization time may vary based on factors such as the day and hour of integration execution, as well as external system speeds from which the integration collects data.
Destination
The selection of a destination depends on the integration capabilities, consistently adjusting to the integration capacity of Swapcard. Various destination types are offered, including:
The integrations also support intermediate links between destination types. For instance, linking People with Sessions, Items with Exhibitors, and Exhibitors with People. Refer to Object Model
Sync modes
Synchronization mode dictates how Swapcard interacts with a data source during reading and writing processes. Swapcard offers diverse sync modes to accommodate different use cases.
Full Refresh
The Full Refresh modes represent the most straightforward techniques employed by Swapcard for data synchronization. In these modes, Swapcard consistently retrieves all available information from the source, irrespective of whether it has been previously synced. This stands in contrast to Incremental Sync, which avoids syncing data already processed in previous syncs.
This synchronization mode involves overwriting the existing data mapped by the integration with the latest data obtained from the source.
Incremental Sync
Swapcard facilitates data synchronization in Incremental mode, wherein only new or modified data is replicated. This approach prevents redundant fetching of data already synchronized from the source. In the initial run of the sync, it behaves similarly to a Full Refresh since all data is considered as new.
Similar to Full Refresh, this synchronization mode entails overwriting the data mapped by the integration with the most recent data derived from the source.
Webhook
Swapcard supports the Webhook mode for real-time data synchronization. In this mode, updates are triggered directly from the data source through webhook events, ensuring that only new or modified data is synced as changes occur. This eliminates the need for periodic data polling, making it highly efficient for dynamic environments.
When a webhook event is received, Swapcard retrieves the relevant data from the source and overwrites the existing mapped data in the integration with the most recent information. Similar to Full Refresh and Incremental Overwrite modes, Webhook Overwrite ensures that the latest data is consistently reflected on the platform.
This mode is particularly suitable for use cases where real-time updates are critical.