From 3af3eadcb6636c16187ac2b361f77ae6c2670fd5 Mon Sep 17 00:00:00 2001 From: N R Navaneet Date: Wed, 25 Jun 2025 04:10:48 +0530 Subject: [PATCH 1/2] docs: update public interface doc to reflect airflow.sdk and AIP-72 - Added a note under "Using Airflow Public Interfaces" to recommend using `airflow.sdk` as the official interface from Airflow 3.0. - Referenced AIP-72 and linked related documentation. - Encouraged users to prefer REST API and Python Client for integrations. --- airflow-core/docs/public-airflow-interface.rst | 15 +++++++++++++++ 1 file changed, 15 insertions(+) diff --git a/airflow-core/docs/public-airflow-interface.rst b/airflow-core/docs/public-airflow-interface.rst index 88eed605eefa4..36104c188182d 100644 --- a/airflow-core/docs/public-airflow-interface.rst +++ b/airflow-core/docs/public-airflow-interface.rst @@ -28,6 +28,21 @@ and for automating certain aspects of the Airflow workflow. Using Airflow Public Interfaces =============================== +.. note:: + + As of **Airflow 3.0**, users should use the ``airflow.sdk`` namespace as the official **Public Interface**, as defined in `AIP-72 `_. + + Direct interaction with internal modules or the metadata database is **discouraged**. + For stable, production-safe integration, it is recommended to use: + + - The official **REST API** + - The **Python Client SDK** (`airflow-client-python`) + - The new **Task SDK** (``airflow.sdk``) + + Related docs: + - `Release Notes 3.0 `_ + - `Task SDK Overview `_ + The following are some examples of the public interface of Airflow: * When you are writing your own operators or hooks. This is commonly done when no hook or operator exists for your use case, or when perhaps when one exists but you need to customize the behavior. From 0538d94532ed2fc7f3cb9f60c7bcec6d01829fb8 Mon Sep 17 00:00:00 2001 From: N R Navaneet <156576749+nrnavaneet@users.noreply.github.com> Date: Wed, 25 Jun 2025 05:39:50 +0530 Subject: [PATCH 2/2] Update airflow-core/docs/public-airflow-interface.rst Great Co-authored-by: Jarek Potiuk --- airflow-core/docs/public-airflow-interface.rst | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/airflow-core/docs/public-airflow-interface.rst b/airflow-core/docs/public-airflow-interface.rst index 36104c188182d..9503966901e41 100644 --- a/airflow-core/docs/public-airflow-interface.rst +++ b/airflow-core/docs/public-airflow-interface.rst @@ -32,7 +32,7 @@ Using Airflow Public Interfaces As of **Airflow 3.0**, users should use the ``airflow.sdk`` namespace as the official **Public Interface**, as defined in `AIP-72 `_. - Direct interaction with internal modules or the metadata database is **discouraged**. + Direct interaction with internal modules or the metadata database is not possible. For stable, production-safe integration, it is recommended to use: - The official **REST API**