Incremental sync
In addition to the full resync, some integrations support incremental sync. It runs in parallel to the full resync, on a shorter interval than a typical full resync. Instead of fetching all data from the third-party source, it fetches only what was created or updated since the last run.
Note that incremental sync complements live events - it backfills changes that webhooks might miss, while the full resync still handles reconciliation.
Incremental sync reuses the same mapping as the full resync, but only for the kinds that support it. Any other kind in your mapping is skipped by incremental sync and continues to be kept up to date by the full resync.
Incremental sync is currently in closed beta and is only available to select organizations. It will be generally available in the upcoming weeks.
Enable incremental sync
For Port-hosted integrations: toggle incremental sync and set the interval in the Advanced Configuration section on the data sources page.
For self-hosted integrations: configure incremental_sync_enabled and incremental_sync_interval in the integration settings. In both cases the interval must be 15, 30, or 60 minutes. The default is 15 minutes.
For the list of kinds that support incremental sync for each integration, see the relevant section in that integration's page, for example GitHub (Ocean).
Limitations
- There is no reconciliation phase in incremental sync. Deletions are only detected and applied during a full resync.
- Incremental sync runs are not yet shown in the event log or the monitoring and sync status view in the UI. The data is still available through the Get an integration's metrics and sync status and Get an integration's event logs API endpoints.
- The first incremental run only looks back one interval - older changes rely on the preceding full resync.