Plugin Capabilities

Base Capabilities

Built-in

The following capabilities are supported by default.

PluginCapabilities.ABOUT = 'about'

Support plugin capability and setting discovery.

PluginCapabilities.STREAM_MAPS = 'stream-maps'

Support inline stream map transforms.

Custom

The following capabilities have to be implemented in the plugin.

PluginCapabilities.ACTIVATE_VERSION = 'activate-version'

Support the ACTIVATE_VERSION extension.

PluginCapabilities.BATCH = 'batch'

Input and output from batched files. A.K.A FAST_SYNC.

Tap Capabilities

Built-in

The following capabilities are supported by default.

TapCapabilities.DISCOVER = 'discover'

Generate a catalog with –discover.

TapCapabilities.CATALOG = 'catalog'

Accept input catalog, apply metadata and selection rules.

TapCapabilities.STATE = 'state'

Incremental refresh by means of state tracking.

TapCapabilities.TEST = 'test'

Automatic connectivity and stream init test via –test.

Custom

The following capabilities have to be implemented in the tap.

TapCapabilities.LOG_BASED = 'log-based'

Support for replication_method: LOG_BASED. You can read more about this feature in MeltanoHub.

TapCapabilities.PROPERTIES = 'properties'

Deprecated. Please use CATALOG instead.

Target Capabilities

Custom

The following capabilities have to be implemented in the target.

TargetCapabilities.SOFT_DELETE = 'soft-delete'

Allows a soft_delete=True config option. Requires a tap stream supporting PluginCapabilities.ACTIVATE_VERSION and/or TapCapabilities.LOG_BASED.

TargetCapabilities.HARD_DELETE = 'hard-delete'

Allows a hard_delete=True config option. Requires a tap stream supporting PluginCapabilities.ACTIVATE_VERSION and/or TapCapabilities.LOG_BASED.

TargetCapabilities.DATATYPE_FAILSAFE = 'datatype-failsafe'

Fail safe for unknown JSON Schema types.

TargetCapabilities.RECORD_FLATTENING = 'record-flattening'

Allow denesting complex properties.