Yes, Airbyte supports programmatically configuring sources, destinations, and connectors. There are a couple of ways you can achieve this: 1.
Airbyte API: The Airbyte API is a reliable, easy-to-use interface for programmatically controlling the Airbyte platform. It enables users to control Airbyte programmatically and use it with orchestration tools like Airflow. You can find more details about the API in the [API documentation](
https://docs.airbyte.com/api-documentation). 2.
Octavia CLI: Octavia CLI is a command-line tool that allows you to configure Airbyte resources. With Octavia CLI, you can bootstrap a project, import the configuration of an existing instance, create source and destination configurations in YAML, edit YAML configuration files, and apply configurations to a different instance. However, please note that Octavia CLI is an alpha unofficial CLI that won't be maintained. Since the publication of the tutorial, Airbyte has released an official [Terraform Provider](
https://registry.terraform.io/providers/airbytehq/airbyte/0.1.0), which is advised to use instead of the CLI. You can learn more about Octavia CLI in this [tutorial](
https://airbyte.com/tutorials/version-control-airbyte-configurations). 3.
YAML Configurations: You can define configurations in YAML programmatically. This is particularly useful when you have more connections, or your connections contain several Airbyte streams (database tables or API endpoints). Remember, no actual data from the source (or destination) connectors ever transits or is retained in the internal database. If you need to interact with it, for example, to make back-ups or perform some clean-up maintenances, you can also gain access to the Export and Import functionalities of this database via the API or the UI. Please note that you can also build a new connector in Java or Python using the templates provided by Airbyte. You can learn more about connector development [here](
https://docs.airbyte.com/connector-development).