Connecting to ApacheAirflow
Apache Airflow 3 uses JWT Bearer tokens for API authentication. You can generate a token from the Airflow web UI under Settings or via the Airflow CLI using airflow users create and the /api/v2/auth/token endpoint. Note that this profile targets Apache Airflow 3.x using the /api/v2 REST API. The legacy /api/v1 endpoint used by Airflow 2.x is not supported.
Using API Key Authentication
After setting the following connection properties, you are ready to connect:
- AuthScheme: Set this to APIKey.
- APIKey: Set this to your Apache Airflow JWT Bearer token.
- Server: Set this to the base URL of your Airflow instance (e.g. http://localhost:8080).
Example connection string:
Profile=C:\profiles\ApacheAirflow.apip;AuthScheme=APIKey;ProfileSettings="APIKey=your_jwt_token;Server=http://localhost:8080";
Using APIKey Authentication
To authenticate using an API key, generate a JWT Bearer token from the Airflow web UI under Settings or via the Airflow CLI, then supply it as your APIKey.
- AuthScheme: Set this to APIKey.
- APIKey: Set this to your Airflow APIKey.
- Server: Set this to the base URL of your Airflow instance (e.g. http://localhost:8080).
Available Tables
The Apache Airflow API Profile provides access to workflow orchestration data across 19 tables:
- AssetAliases - Query named references that map to Airflow assets, allowing alternative names in DAG definitions.
- AssetEvents - Access records of when assets were updated by tasks and may have triggered dependent DAG runs.
- AssetQueuedEvents - Query queued asset events pending to trigger downstream DAG runs for a specific asset.
- Assets - Query Airflow assets (data resources that DAGs can produce or consume to trigger workflows).
- Backfills - Access backfill jobs that re-execute DAG runs over a specified date range.
- Connections - Query connection configurations for external systems such as databases and cloud services.
- DagDetails - Access detailed scheduling, versioning, and runtime metadata for a specific DAG.
- DagRuns - Access individual DAG run instances with state, timing, and trigger details.
- Dags - Query DAG definitions including timetable, bundle, and scheduling metadata.
- DagVersions - Query the version history of a specific DAG, introduced in Airflow 3.
- EventLogs - Query the Airflow audit log recording user and system actions.
- Jobs - Access Airflow internal job processes such as the scheduler, triggerer, and task executor.
- Plugins - Query loaded Airflow plugins registered from the plugins directory.
- Pools - Access pool definitions that limit concurrent task execution across DAGs.
- Providers - Access installed Airflow provider packages.
- TaskInstances - Access task execution records with state, duration, and worker details.
- Tasks - Query task definitions within a DAG including operator, dependencies, and configuration.
- Variables - Access Airflow variables used to pass configuration into DAGs.
- XComEntries - Query cross-communication data exchanged between tasks within a DAG run.
Usage Examples
AssetAliases:
SELECT * FROM AssetAliases
AssetEvents:
SELECT * FROM AssetEvents
AssetQueuedEvents:
SELECT * FROM AssetQueuedEvents WHERE AssetId = 1
Assets:
SELECT * FROM Assets
Backfills:
SELECT * FROM Backfills WHERE DagId = 'example_dag'
Connections:
SELECT * FROM Connections
DagDetails:
SELECT * FROM DagDetails WHERE DagId = 'example_dag'
DagRuns:
SELECT * FROM DagRuns WHERE DagId = 'example_dag'
Dags:
SELECT * FROM Dags
DagVersions:
SELECT * FROM DagVersions WHERE DagId = 'example_dag'
EventLogs:
SELECT * FROM EventLogs
Jobs:
SELECT * FROM Jobs
Plugins:
SELECT * FROM Plugins
Pools:
SELECT * FROM Pools
Providers:
SELECT * FROM Providers
TaskInstances:
SELECT * FROM TaskInstances WHERE DagId = 'example_dag' AND DagRunId = 'run_001'
Tasks:
SELECT * FROM Tasks WHERE DagId = 'example_dag'
Variables:
SELECT * FROM Variables
XComEntries:
SELECT * FROM XComEntries WHERE DagId = 'example_dag' AND DagRunId = 'run_001' AND TaskId = 'my_task'
Connection Properties
The connection string properties are the various options that can be used to establish a connection. This section provides a complete list of the options you can configure in the connection string for this provider.
| Property | Description |
| APIKey | The JWT Bearer token used to authenticate requests to the Apache Airflow REST API. |
| AuthScheme | The scheme used for authentication. Accepted entries are APIKey or None. Allowed values are: BASIC, NONE, NTLM, OAUTH, APIKEY, OAUTH_CLIENT, OAUTH_PASSWORD |
| Server | The base URL of your Apache Airflow instance, including the scheme and port. |