Skip to content

ConnectionSyncModeEnum missing support for 'full_refresh_overwrite_deduped' sync mode #122

Open
@leightonbwelch

Description

@leightonbwelch

Description

The SDK's ConnectionSyncModeEnum doesn't support the full_refresh_overwrite_deduped sync mode that is returned by Airbyte instances, causing connection listing operations to fail.

Steps to Reproduce

  1. Initialize AirbyteAPI client
  2. Call list_connections() on a workspace that has connections using the full_refresh_overwrite_deduped sync mode
  3. Observe the error when trying to deserialize the response

Expected Behavior

The SDK should successfully parse all sync modes returned by the Airbyte API, including full_refresh_overwrite_deduped. See here

Actual Behavior

The SDK throws a ValueError:

ValueError: 'full_refresh_overwrite_deduped' is not a valid ConnectionSyncModeEnum

Verification of Other Endpoints

Using the same client configuration and authentication token, the following endpoints work successfully:

  • list_workspaces() - Returns workspace data correctly, passed into the list_connections call
  • health_check() - Confirms API is accessible and working

This confirms the issue is specifically with the ConnectionSyncModeEnum implementation and not related to authentication, connectivity, or general SDK configuration.

Current SDK Supported Modes

The SDK currently only supports:

  • full_refresh_overwrite
  • full_refresh_append
  • incremental_append
  • incremental_deduped_history

Environment Information

  • SDK Version: 0.52.2
  • Python Version: 3.12
  • Operating System: Darwin 24.4.0

Error Stack Trace

Traceback (most recent call last):
  File "/usr/local/lib/python3.12/enum.py", line 1158, in __new__
    raise ve_exc
ValueError: 'full_refresh_overwrite_deduped' is not a valid ConnectionSyncModeEnum

Additional Context

This appears to be a mismatch between the SDK's enum definitions and the actual sync modes supported by Airbyte instances. The SDK needs to be updated to include all possible sync modes that Airbyte can return.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions