Registry / database / fivetran-connector-sdk

fivetran-connector-sdk

JSON →
library2.9.1pypypi✓ verified 90d ago

Python SDK for building custom Fivetran connectors. Version 2.9.1, requires Python >=3.10. Development is active; new versions released on PyPI regularly.

pip install fivetran-connector-sdk
INSTALL
IMPORT
SIG · FIVETRAN-CONNECTOR
F
fivetran-connector-sdk
databasepythonv2.9.1
harness data pending
Install & Compatibility
Where this runs

No compatibility data collected yet for this library.

Code
Verified usage

Verified import paths — ran on the pinned version, not inferred.

connector
✓ from fivetran_connector_sdk import Connector
✗ import connector
The top-level package is fivetran_connector_sdk, not connector.
UpdateOperation
✓ from fivetran_connector_sdk import Operations as op
✗ from fivetran_connector_sdk import UpdateOperation
Operations are under the `Operations` class; use `op.upsert()` pattern.

Minimal connector that yields one record on each sync.

from fivetran_connector_sdk import Connector from fivetran_connector_sdk import Operations as op import os def update(configuration, state): yield op.upsert("users", {"id": 1, "name": "Alice"}) connector = Connector(update=update) if __name__ == "__main__": connector.run()
Debug
Known issues
breakingIn v2, the `update` function signature changed from `update(config, state)` to `update(configuration, state)`. The config parameter is now a dict-like object.
fix
Update function parameter name and access config values via dict methods.
affects: >=2.0.0
breakingThe `Operations` class replaced individual operation imports like `upsert`, `update`, `delete`. You must import `from fivetran_connector_sdk import Operations as op` and use `op.upsert()`.
fix
Replace `from fivetran_connector_sdk import upsert` with the Operations import.
affects: >=2.0.0
gotchaThe `run()` method blocks indefinitely. For local testing, use `connector.run(connection_type='direct')` or provide a state file to avoid hanging.
fix
Add `connection_type='direct'` to prevent waiting for Fivetran platform.
affects: all
gotchaConfiguration values in `configuration` are strings by default. Convert types explicitly (e.g., `int(configuration.get('start_date', ''))`).
fix
Parse configuration values using `configuration.get('key')` and convert as needed.
affects: all
deprecatedThe `secrets` module in the SDK is deprecated. Use `configuration` dict for secrets instead.
fix
Access secrets via `configuration['secret_key']` in the update function.
affects: >=2.5.0
Errors
Common errors & fixes
ModuleNotFoundError: No module named 'fivetran_connector_sdk'
Installed wrong package or not installed in active environment.
fix
Run `pip install fivetran-connector-sdk` and ensure you use Python 3.10+.
TypeError: update() missing 1 required positional argument: 'state'
Update function signature is missing the second parameter (state).
fix
Define update as `def update(configuration, state):` with both arguments.
AttributeError: module 'fivetran_connector_sdk' has no attribute 'upsert'
Attempting to import upsert directly from the package.
fix
Import Operations: `from fivetran_connector_sdk import Operations as op` and use `op.upsert()`.
fivetran_connector_sdk.exceptions.FivetranConnectorException: Connection refused
Running `run()` without `connection_type='direct'` when not connected to Fivetran platform.
fix
Add `connector.run(connection_type='direct')` for local development.
Upgrade
Version history
2.9.1latest on PyPI · released Jun 5, 2026
Audit
Dependencies

No dependency data recorded yet.

Agent activity
9 hits · last 30 days
node
8
Resources

No resource links recorded.

fivetran-connector-sdk — pip install fivetran-connector-sdk · libregistry