-
Notifications
You must be signed in to change notification settings - Fork 4.3k
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Connector builder: Restructure documentation (#25353)
* authentication documentation * some fixes * fix broken link * remove session token auth * review comments * first version of tutorial * Revert "first version of tutorial" This reverts commit bbdeb99. * first version of tutorial * review comments * improvements * partitioning documentation * incremental sync * review comments * improvements * record processing doc * improvements * error handler connector builder ui documentation * add missing link * overview page * mention current limitation --------- Co-authored-by: brianjlai <brian.lai@airbyte.io>
- Loading branch information
Showing
17 changed files
with
127 additions
and
112 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
94 changes: 0 additions & 94 deletions
94
docs/connector-development/config-based/connector-builder-ui.md
This file was deleted.
Oops, something went wrong.
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Binary file added
BIN
+401 KB
...nector-development/connector-builder-ui/assets/connector_builder_blank_form.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added
BIN
+45.9 KB
...connector-builder-ui/assets/connector_builder_compatibility/filters_example.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added
BIN
+40.4 KB
...ctor-builder-ui/assets/connector_builder_compatibility/offset_limit_example.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added
BIN
+104 KB
...nector-builder-ui/assets/connector_builder_compatibility/page_count_example.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added
BIN
+206 KB
...ctor-development/connector-builder-ui/assets/connector_builder_landing_page.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
File renamed without changes
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
2 changes: 1 addition & 1 deletion
2
...-based/connector-builder-compatibility.md → ...der-ui/connector-builder-compatibility.md
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
75 changes: 75 additions & 0 deletions
75
docs/connector-development/connector-builder-ui/overview.md
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,75 @@ | ||
# Connector Builder Intro | ||
|
||
The connector builder UI provides an ergonomic iteration interface on top of the [low-code YAML format](https://docs.airbyte.com/connector-development/config-based/understanding-the-yaml-file/yaml-overview) and to use built connectors for syncs within the same workspace directly from within the UI. We recommend using it to iterate on your low-code connectors. | ||
|
||
:::caution | ||
The connector builder UI is in beta, which means it’s still in active development and may include backward-incompatible changes. Share feedback and requests with us on our Slack channel or email us at feedback@airbyte.io | ||
|
||
**The connector builder does not yet have a link in the sidebar, to navigate to it manually change the URL path in your browsers address bar to `/<your workspace id>/connector-builder`** | ||
|
||
Developer updates will be announced via our #public-help-connector-development Slack channel. If you are using the CDK, please join to stay up to date on changes and issues. | ||
::: | ||
|
||
|
||
## When should I use the connector builder? | ||
|
||
The connector builder is the right tool if the following points are met: | ||
* You want to integrate with a JSON-based HTTP API as a source of records | ||
* The API you want to integrate with doesn't exist yet as a connector in the [connector catalog](./category/sources). | ||
* The API is suitable for the connector builder as per the | ||
[compatibility guide](./connector-builder-compatibility.md). | ||
|
||
## Getting started | ||
|
||
The high level flow for using the connector builder is as follows: | ||
|
||
1. Run the Airbyte webapp to access the connector builder | ||
2. Use the connector builder to iterate on your low-code connector | ||
3. Once the connector is ready, publish it to the local workspace | ||
4. Configure a Source based on the released connector | ||
5. Use the Source in a connection to sync data | ||
|
||
Follow [the tutorial](./tutorial.mdx) for an example of this flow. The concept pages in the side bar to the left go into greater detail of more complex configurations. | ||
|
||
## Connector vs. configured source vs. connection | ||
|
||
When building a connector, it's important to differentiate between the connector, the configured source based on a connector and the connection: | ||
|
||
The **connector** defines the functionality how to access an API or a database, for example protocol, URL paths to access, the way requests need to be structured and how to extract records from responses. | ||
|
||
:::info | ||
While configuring a connector in the builder, make sure to not hardcode things like API keys or passwords - these should be passed in as user input when configuring a Source based on your connector. | ||
|
||
Follow [the tutorial](./tutorial.mdx) for an example how this looks like in practice. | ||
::: | ||
|
||
The **configured source** is configuring a connector to actually extract records. The exact fields of the configuration depend on the connector, but in most cases it provides authentication information (username and password, api key) and information about which data to extract, for example start date to sync records from, a search query records have to match. | ||
|
||
The **connection** links up a configured source and a configured destination to perform syncs. It defines things like the replication frequency (e.g. hourly, daily, manually) and which streams to replicate. | ||
|
||
## Exporting the connector | ||
|
||
:::info | ||
This section is only relevant if you want to contribute your connector back to the Airbyte connector catalog to make it available outside of your workspace. | ||
::: | ||
|
||
The connector builder leverages the [low-code CDK](https://docs.airbyte.com/connector-development/config-based/understanding-the-yaml-file/yaml-overview) under the hood, turning all configurations into the YAML format. While in most cases it's not necessary to interact with the YAML representation, it can be used to export the connector specification into a file and build a docker image containing the connector which can be shared more widely: | ||
|
||
2. Use the connector builder to iterate on your low-code connector | ||
3. Export the YAML into a low-code connector module on your local machine | ||
4. Build the connector's Docker image | ||
5. Use the built connector image in Airbyte | ||
|
||
Once you're done iterating on your connector in the UI, you'll need to export the low-code YAML representation of the connector to your local filesystem into a connector module. This YAML can be downloaded by clicking the `Download Config` button in the bottom-left. | ||
|
||
Create a low-code connector module using the connector generator (see [this YAML tutorial for an example](../config-based/tutorial/1-create-source.md)) using the name you'd like to use for your connector. After creating the connector, overwrite the contents of `airbyte-integrations/connectors/source-<connector name>/source_<connector name>/manifest.yaml` with the YAML you created in the UI. | ||
|
||
Follow the instructions in the connector README to build the Docker image. Typically this will be something like `docker build . -t airbyte/source-<name>:<version>`. | ||
|
||
From this point on your connector is a regular low-code CDK connector and can be distributed as a docker image and made part of the regular Airbyte connector catalog - you can find the [publish process on the overview page](/connector-development/#publishing-a-connector). | ||
|
||
### Building the connector image | ||
|
||
Follow the instructions in the connector README to build the Docker image. Typically this will be something like `docker build . -t airbyte/source-<name>:<version>`. | ||
|
||
Once you've built the connector image, [follow these instructions](https://docs.airbyte.com/integrations/custom-connectors#adding-your-connectors-in-the-ui) to add your connector to your Airbyte instance. |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Oops, something went wrong.