* Revert "source-github: move known error handling to GithubAvailabilityStrategy (#19978)" This reverts commitf97db17ccc. * Revert "🐛 Python CDK: fix `StopIteration` error for `check_availability` (#20429)" This reverts commit4e9b014277. * Revert "CDK: `AbstractSource.read()` skips syncing stream if its unavailable (add `AvailabilityStrategy` concept) (#19977)" This reverts commit55a32886a3. * Restore changelog entries * bump CDK version * Bump Github version * Re-add removed dependencies * auto-bump connector version Co-authored-by: Octavia Squidington III <octavia-squidington-iii@users.noreply.github.com>
Connector Development Kit Concepts
This concepts section serves as a general introduction to the Python CDK. Readers will certainly benefit from a deeper understanding of the Airbyte Specification before proceeding, but we do a quick overview of it in our basic concepts guide below.
Basic Concepts
If you want to learn more about the classes required to implement an Airbyte Source, head to our basic concepts doc.
Full Refresh Streams
If you have questions or are running into issues creating your first full refresh stream, head over to our full refresh stream doc. If you have questions about implementing a path or parse_response function, this doc is for you.
Incremental Streams
Having trouble figuring out how to write a stream_slices function or aren't sure what a cursor_field is? Head to our incremental stream doc.
Practical Tips
Airbyte recommends using the CDK template generator to develop with the CDK. The template generates created all the required scaffolding, with convenient TODOs, allowing developers to truly focus on implementing the API.
For tips on useful Python knowledge, see the Python Concepts page.
You can find a complete tutorial for implementing an HTTP source connector in this tutorial
Examples
Those interested in getting their hands dirty can check out implemented APIs:
- Exchange Rates API (Incremental)
- Stripe API (Incremental and Full-Refresh)
- Slack API (Incremental and Full-Refresh)