SDK Reference

Plugin Classes

Tap([config, catalog, state, ...])

Abstract base class for taps.

Target([config, parse_env_config, ...])

Abstract base class for targets.

SQLTap([config, catalog, state, ...])

A specialized Tap for extracting from SQL streams.

SQLTarget([config, parse_env_config, ...])

Target implementation for SQL destinations.

InlineMapper([config, parse_env_config, ...])

Abstract base class for inline mappers.

Stream Classes

Stream(tap[, schema, name])

Abstract base class for tap streams.

RESTStream(tap[, name, schema, path])

Abstract base class for REST API streams.

GraphQLStream(tap[, name, schema, path])

Abstract base class for API-type streams.

SQLStream(tap, catalog_entry[, connector])

Base class for SQLAlchemy-based streams.

Sink Classes

Sink(target, stream_name, schema, key_properties)

Abstract base class for target sinks.

RecordSink(target, stream_name, schema, ...)

Base class for singleton record writers.

BatchSink(target, stream_name, schema, ...)

Base class for batched record writers.

SQLSink(target, stream_name, schema, ...[, ...])

SQL-type sink type.

SQL Connector for SQL Taps and Targets

SQLConnector([config, sqlalchemy_url])

Base class for SQLAlchemy-based connectors.

Authenticator Classes

authenticators.APIKeyAuthenticator(stream, ...)

Implements API key authentication for REST Streams.

authenticators.BasicAuthenticator(stream, ...)

Implements basic authentication for REST Streams.


Implements bearer token authentication for REST Streams.

authenticators.OAuthAuthenticator(stream[, ...])

API Authenticator for OAuth 2.0 flows.


API Authenticator for OAuth 2.0 flows which utilize a JWT refresh token.

authenticators.SimpleAuthenticator(stream[, ...])

DEPRECATED: Please use a more specific authenticator.

Exception Types


Raised when a user's config settings fail validation.


Exception raised when a failed request should not be considered retriable.


Exception to raise if sorting errors are found while syncing the records.


Failed map expression evaluation.


Exception to raise if the maximum number of allowable records is exceeded.


Raised if a target receives RECORD messages prior to a SCHEMA message.

exceptions.RetriableAPIError(message[, response])

Exception raised when a failed request can be safely retried.


Raised when a stream map has an invalid configuration.


Exception to raise when stream connection fails or stream is disconnected.


Exception to raise when query returns more records than max_records.

JSON Schema builder classes


Classes and functions to streamline JSONSchema typing.