Yes, it is possible to fetch data from RESTful APIs using Airbyte. You can create a custom connector using Airbyte's Connector Development Kit (CDK) to interact with the API. The CDK is mainly targeted for building connectors for API sources. For example, a tutorial on building a connector to extract data from the Webflow API is available [here](
https://airbyte.com/tutorials/extract-data-from-the-webflow-api). This tutorial covers topics such as manually interacting with HTTP APIs, the design of an Airbyte (Python) source connector, dynamic stream creation, and automatic schema extraction. In Airbyte, a
stream defines the logic and the schema for reading data from a given source. If you are accessing an API-based system, then you could implement a unique stream for each different API endpoint that you are pulling data from. Additionally, you can use the Airbyte API to simulate the same behavior as the Airbyte WebApp. You can read the API docs [here](
https://docs.airbyte.com/api-documentation). If you want to operate Airbyte via API, you can make requests to any endpoint documented in the [Airbyte API Reference](
https://reference.airbyte.com). For example, you may use the [List workspaces endpoint](
https://reference.airbyte.com/reference/listworkspaces) to verify the list of workspaces in your organization. Ensure to include your
access_token
as a
Bearer Token
in your request.
python GET <YOUR_WEBAPP_URL>/api/public/v1/workspaces
You can expect a response like the following:
python { "data": [ { "workspaceId": "b5367aab-9d68-4fea-800f-0000000000", "name": "Finance Team", "dataResidency": "auto" }, { "workspaceId": "b5367aab-9d68-4fea-800f-0000000001", "name": "Analytics Team", "dataResidency": "auto" } ] }
To go further, you may use Airbyte's [Python](
https://github.com/airbytehq/airbyte-api-python-sdk) and [Java](
https://github.com/airbytehq/airbyte-api-java-sdk) SDKs to make API requests directly in code, or the [Terraform Provider](
https://registry.terraform.io/providers/airbytehq/airbyte/latest) (which uses the Airbyte API) to declare your Airbyte configuration as infrastructure.