Skip to main content

@idpass/data-collect-core / ExternalSyncAdapter

Interface: ExternalSyncAdapter

Defined in: interfaces/types.ts:844

External sync adapter interface for third-party system integration.

Implementations handle the specifics of syncing with different external systems.

Deprecated

Use ExternalSyncAdapterV2 for new adapters. V1 is kept for backwards compatibility with adapter-openspp (Odoo V1) and adapter-openfn. New adapters should implement V2 which provides structured SyncResult, config schema validation, and health checks.

Methods

authenticate()?

optional authenticate(credentials?): Promise<boolean>

Defined in: interfaces/types.ts:846

Optional hook to authenticate with the external system before data transfer

Parameters

credentials?

ExternalSyncCredentials

Returns

Promise<boolean>


pushData()

pushData(credentials?): Promise<void | { pushed: number; failed: number; skipped: number; errors: object[]; }>

Defined in: interfaces/types.ts:848

Push local changes to the external system. May return partial results.

Parameters

credentials?

ExternalSyncCredentials

Returns

Promise<void | { pushed: number; failed: number; skipped: number; errors: object[]; }>


pullData()

pullData(credentials?): Promise<void | { pulled: number; failed: number; skipped: number; errors: object[]; }>

Defined in: interfaces/types.ts:850

Pull remote changes from the external system. May return partial results.

Parameters

credentials?

ExternalSyncCredentials

Returns

Promise<void | { pulled: number; failed: number; skipped: number; errors: object[]; }>


sync()?

optional sync(credentials?): Promise<void>

Defined in: interfaces/types.ts:855

Backwards compatibility helper for adapters that implement a combined sync routine. ExternalSyncManager will fall back to this when push/pull are not available.

Parameters

credentials?

ExternalSyncCredentials

Returns

Promise<void>