Skip to content

Conversation

@royred98
Copy link

@royred98 royred98 commented Dec 2, 2025

What

  • Initial implementation of the Airbyte source connector for Zoho Creator, including connector code, configuration, tests, documentation, and metadata files.

How

  • Airbyte source connector for Zoho Creator, auth with client creds & app_link_name, and with dynamic data stream generation based on metadata api call.

Review guide

source_zoho_creator/spec.yaml

defines the 7-field Zoho Creator config schema plus OAuth2 advanced auth mapping for Airbyte Cloud.

source_zoho_creator/api.py

Zoho Creator API client handling OAuth token refresh, report discovery using metadata, data fetches, and schema inference (treating Zoho fields as strings/objects/arrays based on sample data).

source_zoho_creator/source.py

Implements SourceZohoCreator (Airbyte AbstractSource), validating connectivity via ZohoCreatorAPI and dynamically instantiating a ReportDataStream per discovered report.

source_zoho_creator/streams.py

Defines ReportDataStream, an HttpStream that pages Zoho Creator report data, infers cursor fields from schema, build catalog & then fetches user select cursor field from configured catalog, builds params/headers with record cursor pagination, and updates incremental state with Zoho date strings.

source_zoho_creator/run.py

Entrypoint wiring SourceZohoCreator into Airbyte CDK launch, with robust error-to-trace serialization for startup failures.

unit_tests/ (conftest, test_api, test_source, test_streams) INCOMPLETE

adds pytest fixtures and coverage for auth, source lifecycle, and stream behavior.

source_zoho_creator/exceptions.py INCOMPLETE

Custom exception types for API/auth/config errors used across the connector. (currently unused)

README.md + pyproject/poetry files

documents setup, dependencies, and usage; auxiliary configs (BOOTSTRAP, acceptance tests, coverage) round out the build.

User Impact

  • Can use to extract data from zoho creator applications hosted on the zoho creator platform.

Can this PR be safely reverted and rolled back?

  • YES 💚
  • NO ❌

royred98 and others added 2 commits December 2, 2025 12:14
Initial implementation of the Airbyte source connector for Zoho Creator, including connector code, configuration, tests, documentation, and metadata files.

- source_zoho_creator/spec.yaml defines the 7-field Zoho Creator config schema with OAuth advanced_auth wiring.
- source_zoho_creator/api.py implements ZohoCreatorAPI for OAuth token refresh, token caching, metadata validation, and report discovery helpers.
- source_zoho_creator/source.py wires the CDK Source with check_connection, stubbed discover/read, and stream construction via ReportDataStream.
- source_zoho_creator/streams.py creates the ZohoCreatorStream base and ReportDataStream for report syncing (cursor/pagination scaffolding + static schema).
- unit_tests/ (conftest, test_api, test_source, test_streams) adds pytest fixtures and coverage for auth, source lifecycle, and stream behavior.
- README.md + pyproject/poetry files document setup, dependencies, and usage; auxiliary configs (BOOTSTRAP, acceptance tests, coverage) round out the build.
…n_tests/sample_config.json

accidental commit

Signed-off-by: Ritabrata Roy <[email protected]>
…dard

>streams.py – Defines ReportDataStream, an HttpStream that pages Zoho Creator report data, infers cursor fields from schema, build catalog & then fetches user select cursor field from configured catalog, builds params/headers with record cursor pagination, and updates incremental state with Zoho date strings.

>source.py – Implements SourceZohoCreator (Airbyte AbstractSource), validating connectivity via ZohoCreatorAPI and dynamically instantiating a ReportDataStream per discovered report.

>api.py – Zoho Creator API client handling OAuth token refresh, report discovery using metadata, data fetches, and schema inference (treating Zoho fields as strings/objects/arrays based on sample data).

>spec.yaml – Airbyte connection spec defining required Zoho credentials/URLs plus OAuth2 advanced auth mapping for Airbyte Cloud.

>run.py – Entrypoint wiring SourceZohoCreator into Airbyte CDK launch, with robust error-to-trace serialization for startup failures.

>exceptions.py – Custom exception types for API/auth/config errors used across the connector. (currently unused)

>Bootstrap.md: updated based on latest connector set up config

>Readme.md: updated to faciliatate better understanding of connector development & testing process
@royred98 royred98 changed the title Feature/zoho creator connector - Initial commit Feature/zoho creator connector - Working State Jan 8, 2026
@Ishankoradia Ishankoradia deleted the feature/zoho_creator_connector branch January 8, 2026 13:04
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants