# Airbyte Python CDK and Low-Code CDK
Airbyte Python CDK is a framework for building Airbyte API Source Connectors. It provides a set of
classes and helpers that make it easy to build a connector against an HTTP API (REST, GraphQL, etc),
or a generic Python source connector.
## Building Connectors with the CDK
If you're looking to build a connector, we highly recommend that you first
[start with the Connector Builder](https://docs.airbyte.com/connector-development/connector-builder-ui/overview).
It should be enough for 90% connectors out there. For more flexible and complex connectors, use the
[low-code CDK and `SourceDeclarativeManifest`](https://docs.airbyte.com/connector-development/config-based/low-code-cdk-overview).
For more information on building connectors, please see the [Connector Development](https://docs.airbyte.com/connector-development/) guide on [docs.airbyte.com](https://docs.airbyte.com).
## Python CDK Overview
Airbyte CDK code is within `airbyte_cdk` directory. Here's a high level overview of what's inside:
- `airbyte_cdk/connector_builder`. Internal wrapper that helps the Connector Builder platform run a declarative manifest (low-code connector). You should not use this code directly. If you need to run a `SourceDeclarativeManifest`, take a look at [`source-declarative-manifest`](https://github.com/airbytehq/airbyte/tree/master/airbyte-integrations/connectors/source-declarative-manifest) connector implementation instead.
- `airbyte_cdk/cli/source_declarative_manifest`. This module defines the `source-declarative-manifest` (aka "SDM") connector execution logic and associated CLI.
- `airbyte_cdk/destinations`. Basic Destination connector support! If you're building a Destination connector in Python, try that. Some of our vector DB destinations like `destination-pinecone` are using that code.
- `airbyte_cdk/models` expose `airbyte_protocol.models` as a part of `airbyte_cdk` package.
- `airbyte_cdk/sources/concurrent_source` is the Concurrent CDK implementation. It supports reading data from streams concurrently per slice / partition, useful for connectors with high throughput and high number of records.
- `airbyte_cdk/sources/declarative` is the low-code CDK. It works on top of Airbyte Python CDK, but provides a declarative manifest language to define streams, operations, etc. This makes it easier to build connectors without writing Python code.
- `airbyte_cdk/sources/file_based` is the CDK for file-based sources. Examples include S3, Azure, GCS, etc.
## Contributing
For instructions on how to contribute, please see our [Contributing Guide](docs/CONTRIBUTING.md).
## Release Management
Please see the [Release Management](docs/RELEASES.md) guide for information on how to perform releases and pre-releases.
Raw data
{
"_id": null,
"home_page": "https://airbyte.com",
"name": "airbyte-cdk",
"maintainer": null,
"docs_url": null,
"requires_python": "<3.13,>=3.10",
"maintainer_email": null,
"keywords": "airbyte, connector-development-kit, cdk",
"author": "Airbyte",
"author_email": "contact@airbyte.io",
"download_url": "https://files.pythonhosted.org/packages/3e/16/8d44df162ff31a15b4ed44f3c460c5b1f85a7c878282e7e507049010c5cf/airbyte_cdk-6.34.0.tar.gz",
"platform": null,
"description": "# Airbyte Python CDK and Low-Code CDK\n\nAirbyte Python CDK is a framework for building Airbyte API Source Connectors. It provides a set of\nclasses and helpers that make it easy to build a connector against an HTTP API (REST, GraphQL, etc),\nor a generic Python source connector.\n\n## Building Connectors with the CDK\n\nIf you're looking to build a connector, we highly recommend that you first\n[start with the Connector Builder](https://docs.airbyte.com/connector-development/connector-builder-ui/overview).\nIt should be enough for 90% connectors out there. For more flexible and complex connectors, use the\n[low-code CDK and `SourceDeclarativeManifest`](https://docs.airbyte.com/connector-development/config-based/low-code-cdk-overview).\n\nFor more information on building connectors, please see the [Connector Development](https://docs.airbyte.com/connector-development/) guide on [docs.airbyte.com](https://docs.airbyte.com).\n\n## Python CDK Overview\n\nAirbyte CDK code is within `airbyte_cdk` directory. Here's a high level overview of what's inside:\n\n- `airbyte_cdk/connector_builder`. Internal wrapper that helps the Connector Builder platform run a declarative manifest (low-code connector). You should not use this code directly. If you need to run a `SourceDeclarativeManifest`, take a look at [`source-declarative-manifest`](https://github.com/airbytehq/airbyte/tree/master/airbyte-integrations/connectors/source-declarative-manifest) connector implementation instead.\n- `airbyte_cdk/cli/source_declarative_manifest`. This module defines the `source-declarative-manifest` (aka \"SDM\") connector execution logic and associated CLI.\n- `airbyte_cdk/destinations`. Basic Destination connector support! If you're building a Destination connector in Python, try that. Some of our vector DB destinations like `destination-pinecone` are using that code.\n- `airbyte_cdk/models` expose `airbyte_protocol.models` as a part of `airbyte_cdk` package.\n- `airbyte_cdk/sources/concurrent_source` is the Concurrent CDK implementation. It supports reading data from streams concurrently per slice / partition, useful for connectors with high throughput and high number of records.\n- `airbyte_cdk/sources/declarative` is the low-code CDK. It works on top of Airbyte Python CDK, but provides a declarative manifest language to define streams, operations, etc. This makes it easier to build connectors without writing Python code.\n- `airbyte_cdk/sources/file_based` is the CDK for file-based sources. Examples include S3, Azure, GCS, etc.\n\n## Contributing\n\nFor instructions on how to contribute, please see our [Contributing Guide](docs/CONTRIBUTING.md).\n\n## Release Management\n\nPlease see the [Release Management](docs/RELEASES.md) guide for information on how to perform releases and pre-releases.\n\n",
"bugtrack_url": null,
"license": "MIT",
"summary": "A framework for writing Airbyte Connectors.",
"version": "6.34.0",
"project_urls": {
"Documentation": "https://docs.airbyte.io/",
"Homepage": "https://airbyte.com",
"Repository": "https://github.com/airbytehq/airbyte-python-cdk"
},
"split_keywords": [
"airbyte",
" connector-development-kit",
" cdk"
],
"urls": [
{
"comment_text": null,
"digests": {
"blake2b_256": "91508f04a83e8c7ef970417e9615afa1fe65c072ce9c2670f22fe8e5f7221ebe",
"md5": "83536cdbf03d85e235c4b1124d0393a9",
"sha256": "4740021a8c10cd808cbee096a4c11c69da811bc2a89dd9388702fd81b775b004"
},
"downloads": -1,
"filename": "airbyte_cdk-6.34.0-py3-none-any.whl",
"has_sig": false,
"md5_digest": "83536cdbf03d85e235c4b1124d0393a9",
"packagetype": "bdist_wheel",
"python_version": "py3",
"requires_python": "<3.13,>=3.10",
"size": 601267,
"upload_time": "2025-02-19T16:21:49",
"upload_time_iso_8601": "2025-02-19T16:21:49.542988Z",
"url": "https://files.pythonhosted.org/packages/91/50/8f04a83e8c7ef970417e9615afa1fe65c072ce9c2670f22fe8e5f7221ebe/airbyte_cdk-6.34.0-py3-none-any.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": null,
"digests": {
"blake2b_256": "3e168d44df162ff31a15b4ed44f3c460c5b1f85a7c878282e7e507049010c5cf",
"md5": "9f67adde8b810a5bb065c9280375d93b",
"sha256": "3208c23b41288e22f649d546b1f1346d37069e0194c69b83d07bbcf841cac715"
},
"downloads": -1,
"filename": "airbyte_cdk-6.34.0.tar.gz",
"has_sig": false,
"md5_digest": "9f67adde8b810a5bb065c9280375d93b",
"packagetype": "sdist",
"python_version": "source",
"requires_python": "<3.13,>=3.10",
"size": 420430,
"upload_time": "2025-02-19T16:21:53",
"upload_time_iso_8601": "2025-02-19T16:21:53.128210Z",
"url": "https://files.pythonhosted.org/packages/3e/16/8d44df162ff31a15b4ed44f3c460c5b1f85a7c878282e7e507049010c5cf/airbyte_cdk-6.34.0.tar.gz",
"yanked": false,
"yanked_reason": null
}
],
"upload_time": "2025-02-19 16:21:53",
"github": true,
"gitlab": false,
"bitbucket": false,
"codeberg": false,
"github_user": "airbytehq",
"github_project": "airbyte-python-cdk",
"travis_ci": false,
"coveralls": true,
"github_actions": true,
"lcname": "airbyte-cdk"
}