diff --git a/CHANGELOG.md b/CHANGELOG.md
index 7be084d..e0d7a18 100644
--- a/CHANGELOG.md
+++ b/CHANGELOG.md
@@ -17,6 +17,27 @@
  under the License.
  -->
 
+# v3.1.3
+
+## New Features:
+
+- Add query limit protection to prevent excessive database queries in DAG runs list endpoints ([#57450](https://github.com/apache/airflow/pull/57450))
+- Change `extra` field type to `dict[str, JsonValue]` for Asset, AssetAlias, and AssetEvent models ([#57352](https://github.com/apache/airflow/pull/57352))
+- Add `task_display_name` alias field to EventLogResponse for better task identification ([#55160](https://github.com/apache/airflow/pull/55160))
+- Add `is_favorite` field to DAGs list API to support user-specific DAG favorites ([#56341](https://github.com/apache/airflow/pull/56341))
+
+## Improvements:
+
+- Enhance API documentation for sorting functionality ([#56617](https://github.com/apache/airflow/pull/56617))
+- Improve API documentation for the `order_by` query parameter ([#55988](https://github.com/apache/airflow/pull/55988))
+- Remove deprecated `dagReports` API endpoint ([#56609](https://github.com/apache/airflow/pull/56609))
+
+## Bug Fixes:
+
+- Fix logout functionality in airflow-core to properly handle session termination ([#57990](https://github.com/apache/airflow/pull/57990))
+- Fix API endpoint for clearing task instances to properly support mapped task instances with specific map indexes ([#56346](https://github.com/apache/airflow/pull/56346))
+
+
 # v3.1.0
 
 ## New Features:
diff --git a/airflow_client/client/__init__.py b/airflow_client/client/__init__.py
index e95b35a..25c3d1a 100644
--- a/airflow_client/client/__init__.py
+++ b/airflow_client/client/__init__.py
@@ -14,7 +14,7 @@
 """  # noqa: E501
 
 
-__version__ = "3.1.0"
+__version__ = "3.1.3"
 
 # import apis into sdk package
 from airflow_client.client.api.asset_api import AssetApi
@@ -23,7 +23,6 @@
 from airflow_client.client.api.connection_api import ConnectionApi
 from airflow_client.client.api.dag_api import DAGApi
 from airflow_client.client.api.dag_parsing_api import DAGParsingApi
-from airflow_client.client.api.dag_report_api import DagReportApi
 from airflow_client.client.api.dag_run_api import DagRunApi
 from airflow_client.client.api.dag_source_api import DagSourceApi
 from airflow_client.client.api.dag_stats_api import DagStatsApi
diff --git a/airflow_client/client/api/__init__.py b/airflow_client/client/api/__init__.py
index bfbd4b0..49c24fd 100644
--- a/airflow_client/client/api/__init__.py
+++ b/airflow_client/client/api/__init__.py
@@ -7,7 +7,6 @@
 from airflow_client.client.api.connection_api import ConnectionApi
 from airflow_client.client.api.dag_api import DAGApi
 from airflow_client.client.api.dag_parsing_api import DAGParsingApi
-from airflow_client.client.api.dag_report_api import DagReportApi
 from airflow_client.client.api.dag_run_api import DagRunApi
 from airflow_client.client.api.dag_source_api import DagSourceApi
 from airflow_client.client.api.dag_stats_api import DagStatsApi
diff --git a/airflow_client/client/api/asset_api.py b/airflow_client/client/api/asset_api.py
index 1a4ab9d..d46fb41 100644
--- a/airflow_client/client/api/asset_api.py
+++ b/airflow_client/client/api/asset_api.py
@@ -1780,7 +1780,7 @@
         limit: Optional[Annotated[int, Field(strict=True, ge=0)]] = None,
         offset: Optional[Annotated[int, Field(strict=True, ge=0)]] = None,
         name_pattern: Annotated[Optional[StrictStr], Field(description="SQL LIKE expression — use `%` / `_` wildcards (e.g. `%customer_%`). Regular expressions are **not** supported.")] = None,
-        order_by: Optional[List[StrictStr]] = None,
+        order_by: Annotated[Optional[List[StrictStr]], Field(description="Attributes to order by, multi criteria sort is supported. Prefix with `-` for descending order. Supported attributes: `id, name`")] = None,
         _request_timeout: Union[
             None,
             Annotated[StrictFloat, Field(gt=0)],
@@ -1804,7 +1804,7 @@
         :type offset: int
         :param name_pattern: SQL LIKE expression — use `%` / `_` wildcards (e.g. `%customer_%`). Regular expressions are **not** supported.
         :type name_pattern: str
-        :param order_by:
+        :param order_by: Attributes to order by, multi criteria sort is supported. Prefix with `-` for descending order. Supported attributes: `id, name`
         :type order_by: List[str]
         :param _request_timeout: timeout setting for this request. If one
                                  number provided, it will be total request
@@ -1863,7 +1863,7 @@
         limit: Optional[Annotated[int, Field(strict=True, ge=0)]] = None,
         offset: Optional[Annotated[int, Field(strict=True, ge=0)]] = None,
         name_pattern: Annotated[Optional[StrictStr], Field(description="SQL LIKE expression — use `%` / `_` wildcards (e.g. `%customer_%`). Regular expressions are **not** supported.")] = None,
-        order_by: Optional[List[StrictStr]] = None,
+        order_by: Annotated[Optional[List[StrictStr]], Field(description="Attributes to order by, multi criteria sort is supported. Prefix with `-` for descending order. Supported attributes: `id, name`")] = None,
         _request_timeout: Union[
             None,
             Annotated[StrictFloat, Field(gt=0)],
@@ -1887,7 +1887,7 @@
         :type offset: int
         :param name_pattern: SQL LIKE expression — use `%` / `_` wildcards (e.g. `%customer_%`). Regular expressions are **not** supported.
         :type name_pattern: str
-        :param order_by:
+        :param order_by: Attributes to order by, multi criteria sort is supported. Prefix with `-` for descending order. Supported attributes: `id, name`
         :type order_by: List[str]
         :param _request_timeout: timeout setting for this request. If one
                                  number provided, it will be total request
@@ -1946,7 +1946,7 @@
         limit: Optional[Annotated[int, Field(strict=True, ge=0)]] = None,
         offset: Optional[Annotated[int, Field(strict=True, ge=0)]] = None,
         name_pattern: Annotated[Optional[StrictStr], Field(description="SQL LIKE expression — use `%` / `_` wildcards (e.g. `%customer_%`). Regular expressions are **not** supported.")] = None,
-        order_by: Optional[List[StrictStr]] = None,
+        order_by: Annotated[Optional[List[StrictStr]], Field(description="Attributes to order by, multi criteria sort is supported. Prefix with `-` for descending order. Supported attributes: `id, name`")] = None,
         _request_timeout: Union[
             None,
             Annotated[StrictFloat, Field(gt=0)],
@@ -1970,7 +1970,7 @@
         :type offset: int
         :param name_pattern: SQL LIKE expression — use `%` / `_` wildcards (e.g. `%customer_%`). Regular expressions are **not** supported.
         :type name_pattern: str
-        :param order_by:
+        :param order_by: Attributes to order by, multi criteria sort is supported. Prefix with `-` for descending order. Supported attributes: `id, name`
         :type order_by: List[str]
         :param _request_timeout: timeout setting for this request. If one
                                  number provided, it will be total request
@@ -2107,7 +2107,7 @@
         self,
         limit: Optional[Annotated[int, Field(strict=True, ge=0)]] = None,
         offset: Optional[Annotated[int, Field(strict=True, ge=0)]] = None,
-        order_by: Optional[List[StrictStr]] = None,
+        order_by: Annotated[Optional[List[StrictStr]], Field(description="Attributes to order by, multi criteria sort is supported. Prefix with `-` for descending order. Supported attributes: `source_task_id, source_dag_id, source_run_id, source_map_index, timestamp`")] = None,
         asset_id: Optional[StrictInt] = None,
         source_dag_id: Optional[StrictStr] = None,
         source_task_id: Optional[StrictStr] = None,
@@ -2138,7 +2138,7 @@
         :type limit: int
         :param offset:
         :type offset: int
-        :param order_by:
+        :param order_by: Attributes to order by, multi criteria sort is supported. Prefix with `-` for descending order. Supported attributes: `source_task_id, source_dag_id, source_run_id, source_map_index, timestamp`
         :type order_by: List[str]
         :param asset_id:
         :type asset_id: int
@@ -2222,7 +2222,7 @@
         self,
         limit: Optional[Annotated[int, Field(strict=True, ge=0)]] = None,
         offset: Optional[Annotated[int, Field(strict=True, ge=0)]] = None,
-        order_by: Optional[List[StrictStr]] = None,
+        order_by: Annotated[Optional[List[StrictStr]], Field(description="Attributes to order by, multi criteria sort is supported. Prefix with `-` for descending order. Supported attributes: `source_task_id, source_dag_id, source_run_id, source_map_index, timestamp`")] = None,
         asset_id: Optional[StrictInt] = None,
         source_dag_id: Optional[StrictStr] = None,
         source_task_id: Optional[StrictStr] = None,
@@ -2253,7 +2253,7 @@
         :type limit: int
         :param offset:
         :type offset: int
-        :param order_by:
+        :param order_by: Attributes to order by, multi criteria sort is supported. Prefix with `-` for descending order. Supported attributes: `source_task_id, source_dag_id, source_run_id, source_map_index, timestamp`
         :type order_by: List[str]
         :param asset_id:
         :type asset_id: int
@@ -2337,7 +2337,7 @@
         self,
         limit: Optional[Annotated[int, Field(strict=True, ge=0)]] = None,
         offset: Optional[Annotated[int, Field(strict=True, ge=0)]] = None,
-        order_by: Optional[List[StrictStr]] = None,
+        order_by: Annotated[Optional[List[StrictStr]], Field(description="Attributes to order by, multi criteria sort is supported. Prefix with `-` for descending order. Supported attributes: `source_task_id, source_dag_id, source_run_id, source_map_index, timestamp`")] = None,
         asset_id: Optional[StrictInt] = None,
         source_dag_id: Optional[StrictStr] = None,
         source_task_id: Optional[StrictStr] = None,
@@ -2368,7 +2368,7 @@
         :type limit: int
         :param offset:
         :type offset: int
-        :param order_by:
+        :param order_by: Attributes to order by, multi criteria sort is supported. Prefix with `-` for descending order. Supported attributes: `source_task_id, source_dag_id, source_run_id, source_map_index, timestamp`
         :type order_by: List[str]
         :param asset_id:
         :type asset_id: int
@@ -2902,7 +2902,7 @@
         uri_pattern: Annotated[Optional[StrictStr], Field(description="SQL LIKE expression — use `%` / `_` wildcards (e.g. `%customer_%`). Regular expressions are **not** supported.")] = None,
         dag_ids: Optional[List[StrictStr]] = None,
         only_active: Optional[StrictBool] = None,
-        order_by: Optional[List[StrictStr]] = None,
+        order_by: Annotated[Optional[List[StrictStr]], Field(description="Attributes to order by, multi criteria sort is supported. Prefix with `-` for descending order. Supported attributes: `id, name, uri, created_at, updated_at`")] = None,
         _request_timeout: Union[
             None,
             Annotated[StrictFloat, Field(gt=0)],
@@ -2932,7 +2932,7 @@
         :type dag_ids: List[str]
         :param only_active:
         :type only_active: bool
-        :param order_by:
+        :param order_by: Attributes to order by, multi criteria sort is supported. Prefix with `-` for descending order. Supported attributes: `id, name, uri, created_at, updated_at`
         :type order_by: List[str]
         :param _request_timeout: timeout setting for this request. If one
                                  number provided, it will be total request
@@ -2997,7 +2997,7 @@
         uri_pattern: Annotated[Optional[StrictStr], Field(description="SQL LIKE expression — use `%` / `_` wildcards (e.g. `%customer_%`). Regular expressions are **not** supported.")] = None,
         dag_ids: Optional[List[StrictStr]] = None,
         only_active: Optional[StrictBool] = None,
-        order_by: Optional[List[StrictStr]] = None,
+        order_by: Annotated[Optional[List[StrictStr]], Field(description="Attributes to order by, multi criteria sort is supported. Prefix with `-` for descending order. Supported attributes: `id, name, uri, created_at, updated_at`")] = None,
         _request_timeout: Union[
             None,
             Annotated[StrictFloat, Field(gt=0)],
@@ -3027,7 +3027,7 @@
         :type dag_ids: List[str]
         :param only_active:
         :type only_active: bool
-        :param order_by:
+        :param order_by: Attributes to order by, multi criteria sort is supported. Prefix with `-` for descending order. Supported attributes: `id, name, uri, created_at, updated_at`
         :type order_by: List[str]
         :param _request_timeout: timeout setting for this request. If one
                                  number provided, it will be total request
@@ -3092,7 +3092,7 @@
         uri_pattern: Annotated[Optional[StrictStr], Field(description="SQL LIKE expression — use `%` / `_` wildcards (e.g. `%customer_%`). Regular expressions are **not** supported.")] = None,
         dag_ids: Optional[List[StrictStr]] = None,
         only_active: Optional[StrictBool] = None,
-        order_by: Optional[List[StrictStr]] = None,
+        order_by: Annotated[Optional[List[StrictStr]], Field(description="Attributes to order by, multi criteria sort is supported. Prefix with `-` for descending order. Supported attributes: `id, name, uri, created_at, updated_at`")] = None,
         _request_timeout: Union[
             None,
             Annotated[StrictFloat, Field(gt=0)],
@@ -3122,7 +3122,7 @@
         :type dag_ids: List[str]
         :param only_active:
         :type only_active: bool
-        :param order_by:
+        :param order_by: Attributes to order by, multi criteria sort is supported. Prefix with `-` for descending order. Supported attributes: `id, name, uri, created_at, updated_at`
         :type order_by: List[str]
         :param _request_timeout: timeout setting for this request. If one
                                  number provided, it will be total request
diff --git a/airflow_client/client/api/backfill_api.py b/airflow_client/client/api/backfill_api.py
index 1e453cd..d537265 100644
--- a/airflow_client/client/api/backfill_api.py
+++ b/airflow_client/client/api/backfill_api.py
@@ -1167,7 +1167,7 @@
         dag_id: StrictStr,
         limit: Optional[Annotated[int, Field(strict=True, ge=0)]] = None,
         offset: Optional[Annotated[int, Field(strict=True, ge=0)]] = None,
-        order_by: Optional[List[StrictStr]] = None,
+        order_by: Annotated[Optional[List[StrictStr]], Field(description="Attributes to order by, multi criteria sort is supported. Prefix with `-` for descending order. Supported attributes: `id`")] = None,
         _request_timeout: Union[
             None,
             Annotated[StrictFloat, Field(gt=0)],
@@ -1190,7 +1190,7 @@
         :type limit: int
         :param offset:
         :type offset: int
-        :param order_by:
+        :param order_by: Attributes to order by, multi criteria sort is supported. Prefix with `-` for descending order. Supported attributes: `id`
         :type order_by: List[str]
         :param _request_timeout: timeout setting for this request. If one
                                  number provided, it will be total request
@@ -1248,7 +1248,7 @@
         dag_id: StrictStr,
         limit: Optional[Annotated[int, Field(strict=True, ge=0)]] = None,
         offset: Optional[Annotated[int, Field(strict=True, ge=0)]] = None,
-        order_by: Optional[List[StrictStr]] = None,
+        order_by: Annotated[Optional[List[StrictStr]], Field(description="Attributes to order by, multi criteria sort is supported. Prefix with `-` for descending order. Supported attributes: `id`")] = None,
         _request_timeout: Union[
             None,
             Annotated[StrictFloat, Field(gt=0)],
@@ -1271,7 +1271,7 @@
         :type limit: int
         :param offset:
         :type offset: int
-        :param order_by:
+        :param order_by: Attributes to order by, multi criteria sort is supported. Prefix with `-` for descending order. Supported attributes: `id`
         :type order_by: List[str]
         :param _request_timeout: timeout setting for this request. If one
                                  number provided, it will be total request
@@ -1329,7 +1329,7 @@
         dag_id: StrictStr,
         limit: Optional[Annotated[int, Field(strict=True, ge=0)]] = None,
         offset: Optional[Annotated[int, Field(strict=True, ge=0)]] = None,
-        order_by: Optional[List[StrictStr]] = None,
+        order_by: Annotated[Optional[List[StrictStr]], Field(description="Attributes to order by, multi criteria sort is supported. Prefix with `-` for descending order. Supported attributes: `id`")] = None,
         _request_timeout: Union[
             None,
             Annotated[StrictFloat, Field(gt=0)],
@@ -1352,7 +1352,7 @@
         :type limit: int
         :param offset:
         :type offset: int
-        :param order_by:
+        :param order_by: Attributes to order by, multi criteria sort is supported. Prefix with `-` for descending order. Supported attributes: `id`
         :type order_by: List[str]
         :param _request_timeout: timeout setting for this request. If one
                                  number provided, it will be total request
diff --git a/airflow_client/client/api/connection_api.py b/airflow_client/client/api/connection_api.py
index 3bec862..285ef92 100644
--- a/airflow_client/client/api/connection_api.py
+++ b/airflow_client/client/api/connection_api.py
@@ -1134,7 +1134,7 @@
         self,
         limit: Optional[Annotated[int, Field(strict=True, ge=0)]] = None,
         offset: Optional[Annotated[int, Field(strict=True, ge=0)]] = None,
-        order_by: Optional[List[StrictStr]] = None,
+        order_by: Annotated[Optional[List[StrictStr]], Field(description="Attributes to order by, multi criteria sort is supported. Prefix with `-` for descending order. Supported attributes: `conn_id, conn_type, description, host, port, id, connection_id`")] = None,
         connection_id_pattern: Annotated[Optional[StrictStr], Field(description="SQL LIKE expression — use `%` / `_` wildcards (e.g. `%customer_%`). Regular expressions are **not** supported.")] = None,
         _request_timeout: Union[
             None,
@@ -1157,7 +1157,7 @@
         :type limit: int
         :param offset:
         :type offset: int
-        :param order_by:
+        :param order_by: Attributes to order by, multi criteria sort is supported. Prefix with `-` for descending order. Supported attributes: `conn_id, conn_type, description, host, port, id, connection_id`
         :type order_by: List[str]
         :param connection_id_pattern: SQL LIKE expression — use `%` / `_` wildcards (e.g. `%customer_%`). Regular expressions are **not** supported.
         :type connection_id_pattern: str
@@ -1217,7 +1217,7 @@
         self,
         limit: Optional[Annotated[int, Field(strict=True, ge=0)]] = None,
         offset: Optional[Annotated[int, Field(strict=True, ge=0)]] = None,
-        order_by: Optional[List[StrictStr]] = None,
+        order_by: Annotated[Optional[List[StrictStr]], Field(description="Attributes to order by, multi criteria sort is supported. Prefix with `-` for descending order. Supported attributes: `conn_id, conn_type, description, host, port, id, connection_id`")] = None,
         connection_id_pattern: Annotated[Optional[StrictStr], Field(description="SQL LIKE expression — use `%` / `_` wildcards (e.g. `%customer_%`). Regular expressions are **not** supported.")] = None,
         _request_timeout: Union[
             None,
@@ -1240,7 +1240,7 @@
         :type limit: int
         :param offset:
         :type offset: int
-        :param order_by:
+        :param order_by: Attributes to order by, multi criteria sort is supported. Prefix with `-` for descending order. Supported attributes: `conn_id, conn_type, description, host, port, id, connection_id`
         :type order_by: List[str]
         :param connection_id_pattern: SQL LIKE expression — use `%` / `_` wildcards (e.g. `%customer_%`). Regular expressions are **not** supported.
         :type connection_id_pattern: str
@@ -1300,7 +1300,7 @@
         self,
         limit: Optional[Annotated[int, Field(strict=True, ge=0)]] = None,
         offset: Optional[Annotated[int, Field(strict=True, ge=0)]] = None,
-        order_by: Optional[List[StrictStr]] = None,
+        order_by: Annotated[Optional[List[StrictStr]], Field(description="Attributes to order by, multi criteria sort is supported. Prefix with `-` for descending order. Supported attributes: `conn_id, conn_type, description, host, port, id, connection_id`")] = None,
         connection_id_pattern: Annotated[Optional[StrictStr], Field(description="SQL LIKE expression — use `%` / `_` wildcards (e.g. `%customer_%`). Regular expressions are **not** supported.")] = None,
         _request_timeout: Union[
             None,
@@ -1323,7 +1323,7 @@
         :type limit: int
         :param offset:
         :type offset: int
-        :param order_by:
+        :param order_by: Attributes to order by, multi criteria sort is supported. Prefix with `-` for descending order. Supported attributes: `conn_id, conn_type, description, host, port, id, connection_id`
         :type order_by: List[str]
         :param connection_id_pattern: SQL LIKE expression — use `%` / `_` wildcards (e.g. `%customer_%`). Regular expressions are **not** supported.
         :type connection_id_pattern: str
diff --git a/airflow_client/client/api/dag_api.py b/airflow_client/client/api/dag_api.py
index 6a7bceb..b3df75a 100644
--- a/airflow_client/client/api/dag_api.py
+++ b/airflow_client/client/api/dag_api.py
@@ -1155,7 +1155,7 @@
         self,
         limit: Optional[Annotated[int, Field(strict=True, ge=0)]] = None,
         offset: Optional[Annotated[int, Field(strict=True, ge=0)]] = None,
-        order_by: Optional[List[StrictStr]] = None,
+        order_by: Annotated[Optional[List[StrictStr]], Field(description="Attributes to order by, multi criteria sort is supported. Prefix with `-` for descending order. Supported attributes: `name`")] = None,
         tag_name_pattern: Annotated[Optional[StrictStr], Field(description="SQL LIKE expression — use `%` / `_` wildcards (e.g. `%customer_%`). Regular expressions are **not** supported.")] = None,
         _request_timeout: Union[
             None,
@@ -1178,7 +1178,7 @@
         :type limit: int
         :param offset:
         :type offset: int
-        :param order_by:
+        :param order_by: Attributes to order by, multi criteria sort is supported. Prefix with `-` for descending order. Supported attributes: `name`
         :type order_by: List[str]
         :param tag_name_pattern: SQL LIKE expression — use `%` / `_` wildcards (e.g. `%customer_%`). Regular expressions are **not** supported.
         :type tag_name_pattern: str
@@ -1237,7 +1237,7 @@
         self,
         limit: Optional[Annotated[int, Field(strict=True, ge=0)]] = None,
         offset: Optional[Annotated[int, Field(strict=True, ge=0)]] = None,
-        order_by: Optional[List[StrictStr]] = None,
+        order_by: Annotated[Optional[List[StrictStr]], Field(description="Attributes to order by, multi criteria sort is supported. Prefix with `-` for descending order. Supported attributes: `name`")] = None,
         tag_name_pattern: Annotated[Optional[StrictStr], Field(description="SQL LIKE expression — use `%` / `_` wildcards (e.g. `%customer_%`). Regular expressions are **not** supported.")] = None,
         _request_timeout: Union[
             None,
@@ -1260,7 +1260,7 @@
         :type limit: int
         :param offset:
         :type offset: int
-        :param order_by:
+        :param order_by: Attributes to order by, multi criteria sort is supported. Prefix with `-` for descending order. Supported attributes: `name`
         :type order_by: List[str]
         :param tag_name_pattern: SQL LIKE expression — use `%` / `_` wildcards (e.g. `%customer_%`). Regular expressions are **not** supported.
         :type tag_name_pattern: str
@@ -1319,7 +1319,7 @@
         self,
         limit: Optional[Annotated[int, Field(strict=True, ge=0)]] = None,
         offset: Optional[Annotated[int, Field(strict=True, ge=0)]] = None,
-        order_by: Optional[List[StrictStr]] = None,
+        order_by: Annotated[Optional[List[StrictStr]], Field(description="Attributes to order by, multi criteria sort is supported. Prefix with `-` for descending order. Supported attributes: `name`")] = None,
         tag_name_pattern: Annotated[Optional[StrictStr], Field(description="SQL LIKE expression — use `%` / `_` wildcards (e.g. `%customer_%`). Regular expressions are **not** supported.")] = None,
         _request_timeout: Union[
             None,
@@ -1342,7 +1342,7 @@
         :type limit: int
         :param offset:
         :type offset: int
-        :param order_by:
+        :param order_by: Attributes to order by, multi criteria sort is supported. Prefix with `-` for descending order. Supported attributes: `name`
         :type order_by: List[str]
         :param tag_name_pattern: SQL LIKE expression — use `%` / `_` wildcards (e.g. `%customer_%`). Regular expressions are **not** supported.
         :type tag_name_pattern: str
@@ -1502,7 +1502,7 @@
         dag_run_end_date_lte: Optional[datetime] = None,
         dag_run_end_date_lt: Optional[datetime] = None,
         dag_run_state: Optional[List[StrictStr]] = None,
-        order_by: Optional[List[StrictStr]] = None,
+        order_by: Annotated[Optional[List[StrictStr]], Field(description="Attributes to order by, multi criteria sort is supported. Prefix with `-` for descending order. Supported attributes: `dag_id, dag_display_name, next_dagrun, state, start_date, last_run_state, last_run_start_date`")] = None,
         is_favorite: Optional[StrictBool] = None,
         _request_timeout: Union[
             None,
@@ -1569,7 +1569,7 @@
         :type dag_run_end_date_lt: datetime
         :param dag_run_state:
         :type dag_run_state: List[str]
-        :param order_by:
+        :param order_by: Attributes to order by, multi criteria sort is supported. Prefix with `-` for descending order. Supported attributes: `dag_id, dag_display_name, next_dagrun, state, start_date, last_run_state, last_run_start_date`
         :type order_by: List[str]
         :param is_favorite:
         :type is_favorite: bool
@@ -1672,7 +1672,7 @@
         dag_run_end_date_lte: Optional[datetime] = None,
         dag_run_end_date_lt: Optional[datetime] = None,
         dag_run_state: Optional[List[StrictStr]] = None,
-        order_by: Optional[List[StrictStr]] = None,
+        order_by: Annotated[Optional[List[StrictStr]], Field(description="Attributes to order by, multi criteria sort is supported. Prefix with `-` for descending order. Supported attributes: `dag_id, dag_display_name, next_dagrun, state, start_date, last_run_state, last_run_start_date`")] = None,
         is_favorite: Optional[StrictBool] = None,
         _request_timeout: Union[
             None,
@@ -1739,7 +1739,7 @@
         :type dag_run_end_date_lt: datetime
         :param dag_run_state:
         :type dag_run_state: List[str]
-        :param order_by:
+        :param order_by: Attributes to order by, multi criteria sort is supported. Prefix with `-` for descending order. Supported attributes: `dag_id, dag_display_name, next_dagrun, state, start_date, last_run_state, last_run_start_date`
         :type order_by: List[str]
         :param is_favorite:
         :type is_favorite: bool
@@ -1842,7 +1842,7 @@
         dag_run_end_date_lte: Optional[datetime] = None,
         dag_run_end_date_lt: Optional[datetime] = None,
         dag_run_state: Optional[List[StrictStr]] = None,
-        order_by: Optional[List[StrictStr]] = None,
+        order_by: Annotated[Optional[List[StrictStr]], Field(description="Attributes to order by, multi criteria sort is supported. Prefix with `-` for descending order. Supported attributes: `dag_id, dag_display_name, next_dagrun, state, start_date, last_run_state, last_run_start_date`")] = None,
         is_favorite: Optional[StrictBool] = None,
         _request_timeout: Union[
             None,
@@ -1909,7 +1909,7 @@
         :type dag_run_end_date_lt: datetime
         :param dag_run_state:
         :type dag_run_state: List[str]
-        :param order_by:
+        :param order_by: Attributes to order by, multi criteria sort is supported. Prefix with `-` for descending order. Supported attributes: `dag_id, dag_display_name, next_dagrun, state, start_date, last_run_state, last_run_start_date`
         :type order_by: List[str]
         :param is_favorite:
         :type is_favorite: bool
diff --git a/airflow_client/client/api/dag_report_api.py b/airflow_client/client/api/dag_report_api.py
deleted file mode 100644
index 43b7d7d..0000000
--- a/airflow_client/client/api/dag_report_api.py
+++ /dev/null
@@ -1,313 +0,0 @@
-# coding: utf-8
-
-"""
-    Airflow API
-
-    Airflow API. All endpoints located under ``/api/v2`` can be used safely, are stable and backward compatible. Endpoints located under ``/ui`` are dedicated to the UI and are subject to breaking change depending on the need of the frontend. Users should not rely on those but use the public ones instead.
-
-    The version of the OpenAPI document: 2
-    Generated by OpenAPI Generator (https://openapi-generator.tech)
-
-    Do not edit the class manually.
-"""  # noqa: E501
-
-import warnings
-from pydantic import validate_call, Field, StrictFloat, StrictStr, StrictInt
-from typing import Any, Dict, List, Optional, Tuple, Union
-from typing_extensions import Annotated
-
-from pydantic import StrictStr
-from typing import Any
-
-from airflow_client.client.api_client import ApiClient, RequestSerialized
-from airflow_client.client.api_response import ApiResponse
-from airflow_client.client.rest import RESTResponseType
-
-
-class DagReportApi:
-    """NOTE: This class is auto generated by OpenAPI Generator
-    Ref: https://openapi-generator.tech
-
-    Do not edit the class manually.
-    """
-
-    def __init__(self, api_client=None) -> None:
-        if api_client is None:
-            api_client = ApiClient.get_default()
-        self.api_client = api_client
-
-
-    @validate_call
-    def get_dag_reports(
-        self,
-        subdir: StrictStr,
-        _request_timeout: Union[
-            None,
-            Annotated[StrictFloat, Field(gt=0)],
-            Tuple[
-                Annotated[StrictFloat, Field(gt=0)],
-                Annotated[StrictFloat, Field(gt=0)]
-            ]
-        ] = None,
-        _request_auth: Optional[Dict[StrictStr, Any]] = None,
-        _content_type: Optional[StrictStr] = None,
-        _headers: Optional[Dict[StrictStr, Any]] = None,
-        _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
-    ) -> object:
-        """Get Dag Reports
-
-        Get DAG report.
-
-        :param subdir: (required)
-        :type subdir: str
-        :param _request_timeout: timeout setting for this request. If one
-                                 number provided, it will be total request
-                                 timeout. It can also be a pair (tuple) of
-                                 (connection, read) timeouts.
-        :type _request_timeout: int, tuple(int, int), optional
-        :param _request_auth: set to override the auth_settings for an a single
-                              request; this effectively ignores the
-                              authentication in the spec for a single request.
-        :type _request_auth: dict, optional
-        :param _content_type: force content-type for the request.
-        :type _content_type: str, Optional
-        :param _headers: set to override the headers for a single
-                         request; this effectively ignores the headers
-                         in the spec for a single request.
-        :type _headers: dict, optional
-        :param _host_index: set to override the host_index for a single
-                            request; this effectively ignores the host_index
-                            in the spec for a single request.
-        :type _host_index: int, optional
-        :return: Returns the result object.
-        """ # noqa: E501
-
-        _param = self._get_dag_reports_serialize(
-            subdir=subdir,
-            _request_auth=_request_auth,
-            _content_type=_content_type,
-            _headers=_headers,
-            _host_index=_host_index
-        )
-
-        _response_types_map: Dict[str, Optional[str]] = {
-            '200': "object",
-            '400': "HTTPExceptionResponse",
-            '401': "HTTPExceptionResponse",
-            '403': "HTTPExceptionResponse",
-            '422': "HTTPValidationError",
-        }
-        response_data = self.api_client.call_api(
-            *_param,
-            _request_timeout=_request_timeout
-        )
-        response_data.read()
-        return self.api_client.response_deserialize(
-            response_data=response_data,
-            response_types_map=_response_types_map,
-        ).data
-
-
-    @validate_call
-    def get_dag_reports_with_http_info(
-        self,
-        subdir: StrictStr,
-        _request_timeout: Union[
-            None,
-            Annotated[StrictFloat, Field(gt=0)],
-            Tuple[
-                Annotated[StrictFloat, Field(gt=0)],
-                Annotated[StrictFloat, Field(gt=0)]
-            ]
-        ] = None,
-        _request_auth: Optional[Dict[StrictStr, Any]] = None,
-        _content_type: Optional[StrictStr] = None,
-        _headers: Optional[Dict[StrictStr, Any]] = None,
-        _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
-    ) -> ApiResponse[object]:
-        """Get Dag Reports
-
-        Get DAG report.
-
-        :param subdir: (required)
-        :type subdir: str
-        :param _request_timeout: timeout setting for this request. If one
-                                 number provided, it will be total request
-                                 timeout. It can also be a pair (tuple) of
-                                 (connection, read) timeouts.
-        :type _request_timeout: int, tuple(int, int), optional
-        :param _request_auth: set to override the auth_settings for an a single
-                              request; this effectively ignores the
-                              authentication in the spec for a single request.
-        :type _request_auth: dict, optional
-        :param _content_type: force content-type for the request.
-        :type _content_type: str, Optional
-        :param _headers: set to override the headers for a single
-                         request; this effectively ignores the headers
-                         in the spec for a single request.
-        :type _headers: dict, optional
-        :param _host_index: set to override the host_index for a single
-                            request; this effectively ignores the host_index
-                            in the spec for a single request.
-        :type _host_index: int, optional
-        :return: Returns the result object.
-        """ # noqa: E501
-
-        _param = self._get_dag_reports_serialize(
-            subdir=subdir,
-            _request_auth=_request_auth,
-            _content_type=_content_type,
-            _headers=_headers,
-            _host_index=_host_index
-        )
-
-        _response_types_map: Dict[str, Optional[str]] = {
-            '200': "object",
-            '400': "HTTPExceptionResponse",
-            '401': "HTTPExceptionResponse",
-            '403': "HTTPExceptionResponse",
-            '422': "HTTPValidationError",
-        }
-        response_data = self.api_client.call_api(
-            *_param,
-            _request_timeout=_request_timeout
-        )
-        response_data.read()
-        return self.api_client.response_deserialize(
-            response_data=response_data,
-            response_types_map=_response_types_map,
-        )
-
-
-    @validate_call
-    def get_dag_reports_without_preload_content(
-        self,
-        subdir: StrictStr,
-        _request_timeout: Union[
-            None,
-            Annotated[StrictFloat, Field(gt=0)],
-            Tuple[
-                Annotated[StrictFloat, Field(gt=0)],
-                Annotated[StrictFloat, Field(gt=0)]
-            ]
-        ] = None,
-        _request_auth: Optional[Dict[StrictStr, Any]] = None,
-        _content_type: Optional[StrictStr] = None,
-        _headers: Optional[Dict[StrictStr, Any]] = None,
-        _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
-    ) -> RESTResponseType:
-        """Get Dag Reports
-
-        Get DAG report.
-
-        :param subdir: (required)
-        :type subdir: str
-        :param _request_timeout: timeout setting for this request. If one
-                                 number provided, it will be total request
-                                 timeout. It can also be a pair (tuple) of
-                                 (connection, read) timeouts.
-        :type _request_timeout: int, tuple(int, int), optional
-        :param _request_auth: set to override the auth_settings for an a single
-                              request; this effectively ignores the
-                              authentication in the spec for a single request.
-        :type _request_auth: dict, optional
-        :param _content_type: force content-type for the request.
-        :type _content_type: str, Optional
-        :param _headers: set to override the headers for a single
-                         request; this effectively ignores the headers
-                         in the spec for a single request.
-        :type _headers: dict, optional
-        :param _host_index: set to override the host_index for a single
-                            request; this effectively ignores the host_index
-                            in the spec for a single request.
-        :type _host_index: int, optional
-        :return: Returns the result object.
-        """ # noqa: E501
-
-        _param = self._get_dag_reports_serialize(
-            subdir=subdir,
-            _request_auth=_request_auth,
-            _content_type=_content_type,
-            _headers=_headers,
-            _host_index=_host_index
-        )
-
-        _response_types_map: Dict[str, Optional[str]] = {
-            '200': "object",
-            '400': "HTTPExceptionResponse",
-            '401': "HTTPExceptionResponse",
-            '403': "HTTPExceptionResponse",
-            '422': "HTTPValidationError",
-        }
-        response_data = self.api_client.call_api(
-            *_param,
-            _request_timeout=_request_timeout
-        )
-        return response_data.response
-
-
-    def _get_dag_reports_serialize(
-        self,
-        subdir,
-        _request_auth,
-        _content_type,
-        _headers,
-        _host_index,
-    ) -> RequestSerialized:
-
-        _host = None
-
-        _collection_formats: Dict[str, str] = {
-        }
-
-        _path_params: Dict[str, str] = {}
-        _query_params: List[Tuple[str, str]] = []
-        _header_params: Dict[str, Optional[str]] = _headers or {}
-        _form_params: List[Tuple[str, str]] = []
-        _files: Dict[
-            str, Union[str, bytes, List[str], List[bytes], List[Tuple[str, bytes]]]
-        ] = {}
-        _body_params: Optional[bytes] = None
-
-        # process the path parameters
-        # process the query parameters
-        if subdir is not None:
-            
-            _query_params.append(('subdir', subdir))
-            
-        # process the header parameters
-        # process the form parameters
-        # process the body parameter
-
-
-        # set the HTTP header `Accept`
-        if 'Accept' not in _header_params:
-            _header_params['Accept'] = self.api_client.select_header_accept(
-                [
-                    'application/json'
-                ]
-            )
-
-
-        # authentication setting
-        _auth_settings: List[str] = [
-            'OAuth2PasswordBearer', 
-            'HTTPBearer'
-        ]
-
-        return self.api_client.param_serialize(
-            method='GET',
-            resource_path='/api/v2/dagReports',
-            path_params=_path_params,
-            query_params=_query_params,
-            header_params=_header_params,
-            body=_body_params,
-            post_params=_form_params,
-            files=_files,
-            auth_settings=_auth_settings,
-            collection_formats=_collection_formats,
-            _host=_host,
-            _request_auth=_request_auth
-        )
-
-
diff --git a/airflow_client/client/api/dag_run_api.py b/airflow_client/client/api/dag_run_api.py
index 764643b..617f8c0 100644
--- a/airflow_client/client/api/dag_run_api.py
+++ b/airflow_client/client/api/dag_run_api.py
@@ -968,7 +968,7 @@
         run_type: Optional[List[StrictStr]] = None,
         state: Optional[List[StrictStr]] = None,
         dag_version: Optional[List[StrictInt]] = None,
-        order_by: Optional[List[StrictStr]] = None,
+        order_by: Annotated[Optional[List[StrictStr]], Field(description="Attributes to order by, multi criteria sort is supported. Prefix with `-` for descending order. Supported attributes: `id, state, dag_id, run_id, logical_date, run_after, start_date, end_date, updated_at, conf, duration, dag_run_id`")] = None,
         run_id_pattern: Annotated[Optional[StrictStr], Field(description="SQL LIKE expression — use `%` / `_` wildcards (e.g. `%customer_%`). Regular expressions are **not** supported.")] = None,
         triggering_user_name_pattern: Annotated[Optional[StrictStr], Field(description="SQL LIKE expression — use `%` / `_` wildcards (e.g. `%customer_%`). Regular expressions are **not** supported.")] = None,
         _request_timeout: Union[
@@ -1040,7 +1040,7 @@
         :type state: List[str]
         :param dag_version:
         :type dag_version: List[int]
-        :param order_by:
+        :param order_by: Attributes to order by, multi criteria sort is supported. Prefix with `-` for descending order. Supported attributes: `id, state, dag_id, run_id, logical_date, run_after, start_date, end_date, updated_at, conf, duration, dag_run_id`
         :type order_by: List[str]
         :param run_id_pattern: SQL LIKE expression — use `%` / `_` wildcards (e.g. `%customer_%`). Regular expressions are **not** supported.
         :type run_id_pattern: str
@@ -1151,7 +1151,7 @@
         run_type: Optional[List[StrictStr]] = None,
         state: Optional[List[StrictStr]] = None,
         dag_version: Optional[List[StrictInt]] = None,
-        order_by: Optional[List[StrictStr]] = None,
+        order_by: Annotated[Optional[List[StrictStr]], Field(description="Attributes to order by, multi criteria sort is supported. Prefix with `-` for descending order. Supported attributes: `id, state, dag_id, run_id, logical_date, run_after, start_date, end_date, updated_at, conf, duration, dag_run_id`")] = None,
         run_id_pattern: Annotated[Optional[StrictStr], Field(description="SQL LIKE expression — use `%` / `_` wildcards (e.g. `%customer_%`). Regular expressions are **not** supported.")] = None,
         triggering_user_name_pattern: Annotated[Optional[StrictStr], Field(description="SQL LIKE expression — use `%` / `_` wildcards (e.g. `%customer_%`). Regular expressions are **not** supported.")] = None,
         _request_timeout: Union[
@@ -1223,7 +1223,7 @@
         :type state: List[str]
         :param dag_version:
         :type dag_version: List[int]
-        :param order_by:
+        :param order_by: Attributes to order by, multi criteria sort is supported. Prefix with `-` for descending order. Supported attributes: `id, state, dag_id, run_id, logical_date, run_after, start_date, end_date, updated_at, conf, duration, dag_run_id`
         :type order_by: List[str]
         :param run_id_pattern: SQL LIKE expression — use `%` / `_` wildcards (e.g. `%customer_%`). Regular expressions are **not** supported.
         :type run_id_pattern: str
@@ -1334,7 +1334,7 @@
         run_type: Optional[List[StrictStr]] = None,
         state: Optional[List[StrictStr]] = None,
         dag_version: Optional[List[StrictInt]] = None,
-        order_by: Optional[List[StrictStr]] = None,
+        order_by: Annotated[Optional[List[StrictStr]], Field(description="Attributes to order by, multi criteria sort is supported. Prefix with `-` for descending order. Supported attributes: `id, state, dag_id, run_id, logical_date, run_after, start_date, end_date, updated_at, conf, duration, dag_run_id`")] = None,
         run_id_pattern: Annotated[Optional[StrictStr], Field(description="SQL LIKE expression — use `%` / `_` wildcards (e.g. `%customer_%`). Regular expressions are **not** supported.")] = None,
         triggering_user_name_pattern: Annotated[Optional[StrictStr], Field(description="SQL LIKE expression — use `%` / `_` wildcards (e.g. `%customer_%`). Regular expressions are **not** supported.")] = None,
         _request_timeout: Union[
@@ -1406,7 +1406,7 @@
         :type state: List[str]
         :param dag_version:
         :type dag_version: List[int]
-        :param order_by:
+        :param order_by: Attributes to order by, multi criteria sort is supported. Prefix with `-` for descending order. Supported attributes: `id, state, dag_id, run_id, logical_date, run_after, start_date, end_date, updated_at, conf, duration, dag_run_id`
         :type order_by: List[str]
         :param run_id_pattern: SQL LIKE expression — use `%` / `_` wildcards (e.g. `%customer_%`). Regular expressions are **not** supported.
         :type run_id_pattern: str
diff --git a/airflow_client/client/api/dag_version_api.py b/airflow_client/client/api/dag_version_api.py
index 438b0b3..67024b2 100644
--- a/airflow_client/client/api/dag_version_api.py
+++ b/airflow_client/client/api/dag_version_api.py
@@ -338,7 +338,7 @@
         version_number: Optional[StrictInt] = None,
         bundle_name: Optional[StrictStr] = None,
         bundle_version: Optional[StrictStr] = None,
-        order_by: Optional[List[StrictStr]] = None,
+        order_by: Annotated[Optional[List[StrictStr]], Field(description="Attributes to order by, multi criteria sort is supported. Prefix with `-` for descending order. Supported attributes: `id, version_number, bundle_name, bundle_version`")] = None,
         _request_timeout: Union[
             None,
             Annotated[StrictFloat, Field(gt=0)],
@@ -368,7 +368,7 @@
         :type bundle_name: str
         :param bundle_version:
         :type bundle_version: str
-        :param order_by:
+        :param order_by: Attributes to order by, multi criteria sort is supported. Prefix with `-` for descending order. Supported attributes: `id, version_number, bundle_name, bundle_version`
         :type order_by: List[str]
         :param _request_timeout: timeout setting for this request. If one
                                  number provided, it will be total request
@@ -433,7 +433,7 @@
         version_number: Optional[StrictInt] = None,
         bundle_name: Optional[StrictStr] = None,
         bundle_version: Optional[StrictStr] = None,
-        order_by: Optional[List[StrictStr]] = None,
+        order_by: Annotated[Optional[List[StrictStr]], Field(description="Attributes to order by, multi criteria sort is supported. Prefix with `-` for descending order. Supported attributes: `id, version_number, bundle_name, bundle_version`")] = None,
         _request_timeout: Union[
             None,
             Annotated[StrictFloat, Field(gt=0)],
@@ -463,7 +463,7 @@
         :type bundle_name: str
         :param bundle_version:
         :type bundle_version: str
-        :param order_by:
+        :param order_by: Attributes to order by, multi criteria sort is supported. Prefix with `-` for descending order. Supported attributes: `id, version_number, bundle_name, bundle_version`
         :type order_by: List[str]
         :param _request_timeout: timeout setting for this request. If one
                                  number provided, it will be total request
@@ -528,7 +528,7 @@
         version_number: Optional[StrictInt] = None,
         bundle_name: Optional[StrictStr] = None,
         bundle_version: Optional[StrictStr] = None,
-        order_by: Optional[List[StrictStr]] = None,
+        order_by: Annotated[Optional[List[StrictStr]], Field(description="Attributes to order by, multi criteria sort is supported. Prefix with `-` for descending order. Supported attributes: `id, version_number, bundle_name, bundle_version`")] = None,
         _request_timeout: Union[
             None,
             Annotated[StrictFloat, Field(gt=0)],
@@ -558,7 +558,7 @@
         :type bundle_name: str
         :param bundle_version:
         :type bundle_version: str
-        :param order_by:
+        :param order_by: Attributes to order by, multi criteria sort is supported. Prefix with `-` for descending order. Supported attributes: `id, version_number, bundle_name, bundle_version`
         :type order_by: List[str]
         :param _request_timeout: timeout setting for this request. If one
                                  number provided, it will be total request
diff --git a/airflow_client/client/api/dag_warning_api.py b/airflow_client/client/api/dag_warning_api.py
index eb99ab7..8fedc8e 100644
--- a/airflow_client/client/api/dag_warning_api.py
+++ b/airflow_client/client/api/dag_warning_api.py
@@ -47,7 +47,7 @@
         warning_type: Optional[DagWarningType] = None,
         limit: Optional[Annotated[int, Field(strict=True, ge=0)]] = None,
         offset: Optional[Annotated[int, Field(strict=True, ge=0)]] = None,
-        order_by: Optional[List[StrictStr]] = None,
+        order_by: Annotated[Optional[List[StrictStr]], Field(description="Attributes to order by, multi criteria sort is supported. Prefix with `-` for descending order. Supported attributes: `dag_id, warning_type, message, timestamp`")] = None,
         _request_timeout: Union[
             None,
             Annotated[StrictFloat, Field(gt=0)],
@@ -73,7 +73,7 @@
         :type limit: int
         :param offset:
         :type offset: int
-        :param order_by:
+        :param order_by: Attributes to order by, multi criteria sort is supported. Prefix with `-` for descending order. Supported attributes: `dag_id, warning_type, message, timestamp`
         :type order_by: List[str]
         :param _request_timeout: timeout setting for this request. If one
                                  number provided, it will be total request
@@ -133,7 +133,7 @@
         warning_type: Optional[DagWarningType] = None,
         limit: Optional[Annotated[int, Field(strict=True, ge=0)]] = None,
         offset: Optional[Annotated[int, Field(strict=True, ge=0)]] = None,
-        order_by: Optional[List[StrictStr]] = None,
+        order_by: Annotated[Optional[List[StrictStr]], Field(description="Attributes to order by, multi criteria sort is supported. Prefix with `-` for descending order. Supported attributes: `dag_id, warning_type, message, timestamp`")] = None,
         _request_timeout: Union[
             None,
             Annotated[StrictFloat, Field(gt=0)],
@@ -159,7 +159,7 @@
         :type limit: int
         :param offset:
         :type offset: int
-        :param order_by:
+        :param order_by: Attributes to order by, multi criteria sort is supported. Prefix with `-` for descending order. Supported attributes: `dag_id, warning_type, message, timestamp`
         :type order_by: List[str]
         :param _request_timeout: timeout setting for this request. If one
                                  number provided, it will be total request
@@ -219,7 +219,7 @@
         warning_type: Optional[DagWarningType] = None,
         limit: Optional[Annotated[int, Field(strict=True, ge=0)]] = None,
         offset: Optional[Annotated[int, Field(strict=True, ge=0)]] = None,
-        order_by: Optional[List[StrictStr]] = None,
+        order_by: Annotated[Optional[List[StrictStr]], Field(description="Attributes to order by, multi criteria sort is supported. Prefix with `-` for descending order. Supported attributes: `dag_id, warning_type, message, timestamp`")] = None,
         _request_timeout: Union[
             None,
             Annotated[StrictFloat, Field(gt=0)],
@@ -245,7 +245,7 @@
         :type limit: int
         :param offset:
         :type offset: int
-        :param order_by:
+        :param order_by: Attributes to order by, multi criteria sort is supported. Prefix with `-` for descending order. Supported attributes: `dag_id, warning_type, message, timestamp`
         :type order_by: List[str]
         :param _request_timeout: timeout setting for this request. If one
                                  number provided, it will be total request
diff --git a/airflow_client/client/api/event_log_api.py b/airflow_client/client/api/event_log_api.py
index 161afc0..9b6ecd1 100644
--- a/airflow_client/client/api/event_log_api.py
+++ b/airflow_client/client/api/event_log_api.py
@@ -317,7 +317,7 @@
         self,
         limit: Optional[Annotated[int, Field(strict=True, ge=0)]] = None,
         offset: Optional[Annotated[int, Field(strict=True, ge=0)]] = None,
-        order_by: Optional[List[StrictStr]] = None,
+        order_by: Annotated[Optional[List[StrictStr]], Field(description="Attributes to order by, multi criteria sort is supported. Prefix with `-` for descending order. Supported attributes: `id, dttm, dag_id, task_id, run_id, event, logical_date, owner, extra, when, event_log_id`")] = None,
         dag_id: Optional[StrictStr] = None,
         task_id: Optional[StrictStr] = None,
         run_id: Optional[StrictStr] = None,
@@ -355,7 +355,7 @@
         :type limit: int
         :param offset:
         :type offset: int
-        :param order_by:
+        :param order_by: Attributes to order by, multi criteria sort is supported. Prefix with `-` for descending order. Supported attributes: `id, dttm, dag_id, task_id, run_id, event, logical_date, owner, extra, when, event_log_id`
         :type order_by: List[str]
         :param dag_id:
         :type dag_id: str
@@ -459,7 +459,7 @@
         self,
         limit: Optional[Annotated[int, Field(strict=True, ge=0)]] = None,
         offset: Optional[Annotated[int, Field(strict=True, ge=0)]] = None,
-        order_by: Optional[List[StrictStr]] = None,
+        order_by: Annotated[Optional[List[StrictStr]], Field(description="Attributes to order by, multi criteria sort is supported. Prefix with `-` for descending order. Supported attributes: `id, dttm, dag_id, task_id, run_id, event, logical_date, owner, extra, when, event_log_id`")] = None,
         dag_id: Optional[StrictStr] = None,
         task_id: Optional[StrictStr] = None,
         run_id: Optional[StrictStr] = None,
@@ -497,7 +497,7 @@
         :type limit: int
         :param offset:
         :type offset: int
-        :param order_by:
+        :param order_by: Attributes to order by, multi criteria sort is supported. Prefix with `-` for descending order. Supported attributes: `id, dttm, dag_id, task_id, run_id, event, logical_date, owner, extra, when, event_log_id`
         :type order_by: List[str]
         :param dag_id:
         :type dag_id: str
@@ -601,7 +601,7 @@
         self,
         limit: Optional[Annotated[int, Field(strict=True, ge=0)]] = None,
         offset: Optional[Annotated[int, Field(strict=True, ge=0)]] = None,
-        order_by: Optional[List[StrictStr]] = None,
+        order_by: Annotated[Optional[List[StrictStr]], Field(description="Attributes to order by, multi criteria sort is supported. Prefix with `-` for descending order. Supported attributes: `id, dttm, dag_id, task_id, run_id, event, logical_date, owner, extra, when, event_log_id`")] = None,
         dag_id: Optional[StrictStr] = None,
         task_id: Optional[StrictStr] = None,
         run_id: Optional[StrictStr] = None,
@@ -639,7 +639,7 @@
         :type limit: int
         :param offset:
         :type offset: int
-        :param order_by:
+        :param order_by: Attributes to order by, multi criteria sort is supported. Prefix with `-` for descending order. Supported attributes: `id, dttm, dag_id, task_id, run_id, event, logical_date, owner, extra, when, event_log_id`
         :type order_by: List[str]
         :param dag_id:
         :type dag_id: str
diff --git a/airflow_client/client/api/import_error_api.py b/airflow_client/client/api/import_error_api.py
index b63dbdd..ecbff9b 100644
--- a/airflow_client/client/api/import_error_api.py
+++ b/airflow_client/client/api/import_error_api.py
@@ -319,7 +319,7 @@
         self,
         limit: Optional[Annotated[int, Field(strict=True, ge=0)]] = None,
         offset: Optional[Annotated[int, Field(strict=True, ge=0)]] = None,
-        order_by: Optional[List[StrictStr]] = None,
+        order_by: Annotated[Optional[List[StrictStr]], Field(description="Attributes to order by, multi criteria sort is supported. Prefix with `-` for descending order. Supported attributes: `id, timestamp, filename, bundle_name, stacktrace, import_error_id`")] = None,
         filename_pattern: Annotated[Optional[StrictStr], Field(description="SQL LIKE expression — use `%` / `_` wildcards (e.g. `%customer_%`). Regular expressions are **not** supported.")] = None,
         _request_timeout: Union[
             None,
@@ -342,7 +342,7 @@
         :type limit: int
         :param offset:
         :type offset: int
-        :param order_by:
+        :param order_by: Attributes to order by, multi criteria sort is supported. Prefix with `-` for descending order. Supported attributes: `id, timestamp, filename, bundle_name, stacktrace, import_error_id`
         :type order_by: List[str]
         :param filename_pattern: SQL LIKE expression — use `%` / `_` wildcards (e.g. `%customer_%`). Regular expressions are **not** supported.
         :type filename_pattern: str
@@ -401,7 +401,7 @@
         self,
         limit: Optional[Annotated[int, Field(strict=True, ge=0)]] = None,
         offset: Optional[Annotated[int, Field(strict=True, ge=0)]] = None,
-        order_by: Optional[List[StrictStr]] = None,
+        order_by: Annotated[Optional[List[StrictStr]], Field(description="Attributes to order by, multi criteria sort is supported. Prefix with `-` for descending order. Supported attributes: `id, timestamp, filename, bundle_name, stacktrace, import_error_id`")] = None,
         filename_pattern: Annotated[Optional[StrictStr], Field(description="SQL LIKE expression — use `%` / `_` wildcards (e.g. `%customer_%`). Regular expressions are **not** supported.")] = None,
         _request_timeout: Union[
             None,
@@ -424,7 +424,7 @@
         :type limit: int
         :param offset:
         :type offset: int
-        :param order_by:
+        :param order_by: Attributes to order by, multi criteria sort is supported. Prefix with `-` for descending order. Supported attributes: `id, timestamp, filename, bundle_name, stacktrace, import_error_id`
         :type order_by: List[str]
         :param filename_pattern: SQL LIKE expression — use `%` / `_` wildcards (e.g. `%customer_%`). Regular expressions are **not** supported.
         :type filename_pattern: str
@@ -483,7 +483,7 @@
         self,
         limit: Optional[Annotated[int, Field(strict=True, ge=0)]] = None,
         offset: Optional[Annotated[int, Field(strict=True, ge=0)]] = None,
-        order_by: Optional[List[StrictStr]] = None,
+        order_by: Annotated[Optional[List[StrictStr]], Field(description="Attributes to order by, multi criteria sort is supported. Prefix with `-` for descending order. Supported attributes: `id, timestamp, filename, bundle_name, stacktrace, import_error_id`")] = None,
         filename_pattern: Annotated[Optional[StrictStr], Field(description="SQL LIKE expression — use `%` / `_` wildcards (e.g. `%customer_%`). Regular expressions are **not** supported.")] = None,
         _request_timeout: Union[
             None,
@@ -506,7 +506,7 @@
         :type limit: int
         :param offset:
         :type offset: int
-        :param order_by:
+        :param order_by: Attributes to order by, multi criteria sort is supported. Prefix with `-` for descending order. Supported attributes: `id, timestamp, filename, bundle_name, stacktrace, import_error_id`
         :type order_by: List[str]
         :param filename_pattern: SQL LIKE expression — use `%` / `_` wildcards (e.g. `%customer_%`). Regular expressions are **not** supported.
         :type filename_pattern: str
diff --git a/airflow_client/client/api/job_api.py b/airflow_client/client/api/job_api.py
index 6c0c727..3729fa5 100644
--- a/airflow_client/client/api/job_api.py
+++ b/airflow_client/client/api/job_api.py
@@ -54,7 +54,7 @@
         end_date_lt: Optional[datetime] = None,
         limit: Optional[Annotated[int, Field(strict=True, ge=0)]] = None,
         offset: Optional[Annotated[int, Field(strict=True, ge=0)]] = None,
-        order_by: Optional[List[StrictStr]] = None,
+        order_by: Annotated[Optional[List[StrictStr]], Field(description="Attributes to order by, multi criteria sort is supported. Prefix with `-` for descending order. Supported attributes: `id, dag_id, state, job_type, start_date, end_date, latest_heartbeat, executor_class, hostname, unixname`")] = None,
         job_state: Optional[StrictStr] = None,
         job_type: Optional[StrictStr] = None,
         hostname: Optional[StrictStr] = None,
@@ -98,7 +98,7 @@
         :type limit: int
         :param offset:
         :type offset: int
-        :param order_by:
+        :param order_by: Attributes to order by, multi criteria sort is supported. Prefix with `-` for descending order. Supported attributes: `id, dag_id, state, job_type, start_date, end_date, latest_heartbeat, executor_class, hostname, unixname`
         :type order_by: List[str]
         :param job_state:
         :type job_state: str
@@ -185,7 +185,7 @@
         end_date_lt: Optional[datetime] = None,
         limit: Optional[Annotated[int, Field(strict=True, ge=0)]] = None,
         offset: Optional[Annotated[int, Field(strict=True, ge=0)]] = None,
-        order_by: Optional[List[StrictStr]] = None,
+        order_by: Annotated[Optional[List[StrictStr]], Field(description="Attributes to order by, multi criteria sort is supported. Prefix with `-` for descending order. Supported attributes: `id, dag_id, state, job_type, start_date, end_date, latest_heartbeat, executor_class, hostname, unixname`")] = None,
         job_state: Optional[StrictStr] = None,
         job_type: Optional[StrictStr] = None,
         hostname: Optional[StrictStr] = None,
@@ -229,7 +229,7 @@
         :type limit: int
         :param offset:
         :type offset: int
-        :param order_by:
+        :param order_by: Attributes to order by, multi criteria sort is supported. Prefix with `-` for descending order. Supported attributes: `id, dag_id, state, job_type, start_date, end_date, latest_heartbeat, executor_class, hostname, unixname`
         :type order_by: List[str]
         :param job_state:
         :type job_state: str
@@ -316,7 +316,7 @@
         end_date_lt: Optional[datetime] = None,
         limit: Optional[Annotated[int, Field(strict=True, ge=0)]] = None,
         offset: Optional[Annotated[int, Field(strict=True, ge=0)]] = None,
-        order_by: Optional[List[StrictStr]] = None,
+        order_by: Annotated[Optional[List[StrictStr]], Field(description="Attributes to order by, multi criteria sort is supported. Prefix with `-` for descending order. Supported attributes: `id, dag_id, state, job_type, start_date, end_date, latest_heartbeat, executor_class, hostname, unixname`")] = None,
         job_state: Optional[StrictStr] = None,
         job_type: Optional[StrictStr] = None,
         hostname: Optional[StrictStr] = None,
@@ -360,7 +360,7 @@
         :type limit: int
         :param offset:
         :type offset: int
-        :param order_by:
+        :param order_by: Attributes to order by, multi criteria sort is supported. Prefix with `-` for descending order. Supported attributes: `id, dag_id, state, job_type, start_date, end_date, latest_heartbeat, executor_class, hostname, unixname`
         :type order_by: List[str]
         :param job_state:
         :type job_state: str
diff --git a/airflow_client/client/api/login_api.py b/airflow_client/client/api/login_api.py
index e1103cb..80fc67e 100644
--- a/airflow_client/client/api/login_api.py
+++ b/airflow_client/client/api/login_api.py
@@ -308,7 +308,6 @@
     @validate_call
     def logout(
         self,
-        next: Optional[StrictStr] = None,
         _request_timeout: Union[
             None,
             Annotated[StrictFloat, Field(gt=0)],
@@ -326,8 +325,6 @@
 
         Logout the user.
 
-        :param next:
-        :type next: str
         :param _request_timeout: timeout setting for this request. If one
                                  number provided, it will be total request
                                  timeout. It can also be a pair (tuple) of
@@ -351,7 +348,6 @@
         """ # noqa: E501
 
         _param = self._logout_serialize(
-            next=next,
             _request_auth=_request_auth,
             _content_type=_content_type,
             _headers=_headers,
@@ -361,7 +357,6 @@
         _response_types_map: Dict[str, Optional[str]] = {
             '200': "object",
             '307': "HTTPExceptionResponse",
-            '422': "HTTPValidationError",
         }
         response_data = self.api_client.call_api(
             *_param,
@@ -377,7 +372,6 @@
     @validate_call
     def logout_with_http_info(
         self,
-        next: Optional[StrictStr] = None,
         _request_timeout: Union[
             None,
             Annotated[StrictFloat, Field(gt=0)],
@@ -395,8 +389,6 @@
 
         Logout the user.
 
-        :param next:
-        :type next: str
         :param _request_timeout: timeout setting for this request. If one
                                  number provided, it will be total request
                                  timeout. It can also be a pair (tuple) of
@@ -420,7 +412,6 @@
         """ # noqa: E501
 
         _param = self._logout_serialize(
-            next=next,
             _request_auth=_request_auth,
             _content_type=_content_type,
             _headers=_headers,
@@ -430,7 +421,6 @@
         _response_types_map: Dict[str, Optional[str]] = {
             '200': "object",
             '307': "HTTPExceptionResponse",
-            '422': "HTTPValidationError",
         }
         response_data = self.api_client.call_api(
             *_param,
@@ -446,7 +436,6 @@
     @validate_call
     def logout_without_preload_content(
         self,
-        next: Optional[StrictStr] = None,
         _request_timeout: Union[
             None,
             Annotated[StrictFloat, Field(gt=0)],
@@ -464,8 +453,6 @@
 
         Logout the user.
 
-        :param next:
-        :type next: str
         :param _request_timeout: timeout setting for this request. If one
                                  number provided, it will be total request
                                  timeout. It can also be a pair (tuple) of
@@ -489,7 +476,6 @@
         """ # noqa: E501
 
         _param = self._logout_serialize(
-            next=next,
             _request_auth=_request_auth,
             _content_type=_content_type,
             _headers=_headers,
@@ -499,7 +485,6 @@
         _response_types_map: Dict[str, Optional[str]] = {
             '200': "object",
             '307': "HTTPExceptionResponse",
-            '422': "HTTPValidationError",
         }
         response_data = self.api_client.call_api(
             *_param,
@@ -510,7 +495,6 @@
 
     def _logout_serialize(
         self,
-        next,
         _request_auth,
         _content_type,
         _headers,
@@ -533,10 +517,6 @@
 
         # process the path parameters
         # process the query parameters
-        if next is not None:
-            
-            _query_params.append(('next', next))
-            
         # process the header parameters
         # process the form parameters
         # process the body parameter
diff --git a/airflow_client/client/api/pool_api.py b/airflow_client/client/api/pool_api.py
index 50ac7f7..345a210 100644
--- a/airflow_client/client/api/pool_api.py
+++ b/airflow_client/client/api/pool_api.py
@@ -884,7 +884,7 @@
         self,
         limit: Optional[Annotated[int, Field(strict=True, ge=0)]] = None,
         offset: Optional[Annotated[int, Field(strict=True, ge=0)]] = None,
-        order_by: Optional[List[StrictStr]] = None,
+        order_by: Annotated[Optional[List[StrictStr]], Field(description="Attributes to order by, multi criteria sort is supported. Prefix with `-` for descending order. Supported attributes: `id, pool, name`")] = None,
         pool_name_pattern: Annotated[Optional[StrictStr], Field(description="SQL LIKE expression — use `%` / `_` wildcards (e.g. `%customer_%`). Regular expressions are **not** supported.")] = None,
         _request_timeout: Union[
             None,
@@ -907,7 +907,7 @@
         :type limit: int
         :param offset:
         :type offset: int
-        :param order_by:
+        :param order_by: Attributes to order by, multi criteria sort is supported. Prefix with `-` for descending order. Supported attributes: `id, pool, name`
         :type order_by: List[str]
         :param pool_name_pattern: SQL LIKE expression — use `%` / `_` wildcards (e.g. `%customer_%`). Regular expressions are **not** supported.
         :type pool_name_pattern: str
@@ -967,7 +967,7 @@
         self,
         limit: Optional[Annotated[int, Field(strict=True, ge=0)]] = None,
         offset: Optional[Annotated[int, Field(strict=True, ge=0)]] = None,
-        order_by: Optional[List[StrictStr]] = None,
+        order_by: Annotated[Optional[List[StrictStr]], Field(description="Attributes to order by, multi criteria sort is supported. Prefix with `-` for descending order. Supported attributes: `id, pool, name`")] = None,
         pool_name_pattern: Annotated[Optional[StrictStr], Field(description="SQL LIKE expression — use `%` / `_` wildcards (e.g. `%customer_%`). Regular expressions are **not** supported.")] = None,
         _request_timeout: Union[
             None,
@@ -990,7 +990,7 @@
         :type limit: int
         :param offset:
         :type offset: int
-        :param order_by:
+        :param order_by: Attributes to order by, multi criteria sort is supported. Prefix with `-` for descending order. Supported attributes: `id, pool, name`
         :type order_by: List[str]
         :param pool_name_pattern: SQL LIKE expression — use `%` / `_` wildcards (e.g. `%customer_%`). Regular expressions are **not** supported.
         :type pool_name_pattern: str
@@ -1050,7 +1050,7 @@
         self,
         limit: Optional[Annotated[int, Field(strict=True, ge=0)]] = None,
         offset: Optional[Annotated[int, Field(strict=True, ge=0)]] = None,
-        order_by: Optional[List[StrictStr]] = None,
+        order_by: Annotated[Optional[List[StrictStr]], Field(description="Attributes to order by, multi criteria sort is supported. Prefix with `-` for descending order. Supported attributes: `id, pool, name`")] = None,
         pool_name_pattern: Annotated[Optional[StrictStr], Field(description="SQL LIKE expression — use `%` / `_` wildcards (e.g. `%customer_%`). Regular expressions are **not** supported.")] = None,
         _request_timeout: Union[
             None,
@@ -1073,7 +1073,7 @@
         :type limit: int
         :param offset:
         :type offset: int
-        :param order_by:
+        :param order_by: Attributes to order by, multi criteria sort is supported. Prefix with `-` for descending order. Supported attributes: `id, pool, name`
         :type order_by: List[str]
         :param pool_name_pattern: SQL LIKE expression — use `%` / `_` wildcards (e.g. `%customer_%`). Regular expressions are **not** supported.
         :type pool_name_pattern: str
diff --git a/airflow_client/client/api/task_instance_api.py b/airflow_client/client/api/task_instance_api.py
index 8d3211f..2557e26 100644
--- a/airflow_client/client/api/task_instance_api.py
+++ b/airflow_client/client/api/task_instance_api.py
@@ -1677,7 +1677,7 @@
         dag_run_id: StrictStr,
         limit: Optional[Annotated[int, Field(strict=True, ge=0)]] = None,
         offset: Optional[Annotated[int, Field(strict=True, ge=0)]] = None,
-        order_by: Optional[List[StrictStr]] = None,
+        order_by: Annotated[Optional[List[StrictStr]], Field(description="Attributes to order by, multi criteria sort is supported. Prefix with `-` for descending order. Supported attributes: `ti_id, subject, responded_at, created_at, responded_by_user_id, responded_by_user_name, dag_id, run_id, run_after, rendered_map_index, task_instance_operator, task_instance_state`")] = None,
         dag_id_pattern: Annotated[Optional[StrictStr], Field(description="SQL LIKE expression — use `%` / `_` wildcards (e.g. `%customer_%`). Regular expressions are **not** supported.")] = None,
         task_id: Optional[StrictStr] = None,
         task_id_pattern: Annotated[Optional[StrictStr], Field(description="SQL LIKE expression — use `%` / `_` wildcards (e.g. `%customer_%`). Regular expressions are **not** supported.")] = None,
@@ -1717,7 +1717,7 @@
         :type limit: int
         :param offset:
         :type offset: int
-        :param order_by:
+        :param order_by: Attributes to order by, multi criteria sort is supported. Prefix with `-` for descending order. Supported attributes: `ti_id, subject, responded_at, created_at, responded_by_user_id, responded_by_user_name, dag_id, run_id, run_after, rendered_map_index, task_instance_operator, task_instance_state`
         :type order_by: List[str]
         :param dag_id_pattern: SQL LIKE expression — use `%` / `_` wildcards (e.g. `%customer_%`). Regular expressions are **not** supported.
         :type dag_id_pattern: str
@@ -1819,7 +1819,7 @@
         dag_run_id: StrictStr,
         limit: Optional[Annotated[int, Field(strict=True, ge=0)]] = None,
         offset: Optional[Annotated[int, Field(strict=True, ge=0)]] = None,
-        order_by: Optional[List[StrictStr]] = None,
+        order_by: Annotated[Optional[List[StrictStr]], Field(description="Attributes to order by, multi criteria sort is supported. Prefix with `-` for descending order. Supported attributes: `ti_id, subject, responded_at, created_at, responded_by_user_id, responded_by_user_name, dag_id, run_id, run_after, rendered_map_index, task_instance_operator, task_instance_state`")] = None,
         dag_id_pattern: Annotated[Optional[StrictStr], Field(description="SQL LIKE expression — use `%` / `_` wildcards (e.g. `%customer_%`). Regular expressions are **not** supported.")] = None,
         task_id: Optional[StrictStr] = None,
         task_id_pattern: Annotated[Optional[StrictStr], Field(description="SQL LIKE expression — use `%` / `_` wildcards (e.g. `%customer_%`). Regular expressions are **not** supported.")] = None,
@@ -1859,7 +1859,7 @@
         :type limit: int
         :param offset:
         :type offset: int
-        :param order_by:
+        :param order_by: Attributes to order by, multi criteria sort is supported. Prefix with `-` for descending order. Supported attributes: `ti_id, subject, responded_at, created_at, responded_by_user_id, responded_by_user_name, dag_id, run_id, run_after, rendered_map_index, task_instance_operator, task_instance_state`
         :type order_by: List[str]
         :param dag_id_pattern: SQL LIKE expression — use `%` / `_` wildcards (e.g. `%customer_%`). Regular expressions are **not** supported.
         :type dag_id_pattern: str
@@ -1961,7 +1961,7 @@
         dag_run_id: StrictStr,
         limit: Optional[Annotated[int, Field(strict=True, ge=0)]] = None,
         offset: Optional[Annotated[int, Field(strict=True, ge=0)]] = None,
-        order_by: Optional[List[StrictStr]] = None,
+        order_by: Annotated[Optional[List[StrictStr]], Field(description="Attributes to order by, multi criteria sort is supported. Prefix with `-` for descending order. Supported attributes: `ti_id, subject, responded_at, created_at, responded_by_user_id, responded_by_user_name, dag_id, run_id, run_after, rendered_map_index, task_instance_operator, task_instance_state`")] = None,
         dag_id_pattern: Annotated[Optional[StrictStr], Field(description="SQL LIKE expression — use `%` / `_` wildcards (e.g. `%customer_%`). Regular expressions are **not** supported.")] = None,
         task_id: Optional[StrictStr] = None,
         task_id_pattern: Annotated[Optional[StrictStr], Field(description="SQL LIKE expression — use `%` / `_` wildcards (e.g. `%customer_%`). Regular expressions are **not** supported.")] = None,
@@ -2001,7 +2001,7 @@
         :type limit: int
         :param offset:
         :type offset: int
-        :param order_by:
+        :param order_by: Attributes to order by, multi criteria sort is supported. Prefix with `-` for descending order. Supported attributes: `ti_id, subject, responded_at, created_at, responded_by_user_id, responded_by_user_name, dag_id, run_id, run_after, rendered_map_index, task_instance_operator, task_instance_state`
         :type order_by: List[str]
         :param dag_id_pattern: SQL LIKE expression — use `%` / `_` wildcards (e.g. `%customer_%`). Regular expressions are **not** supported.
         :type dag_id_pattern: str
@@ -3677,7 +3677,7 @@
         map_index: Optional[List[StrictInt]] = None,
         limit: Optional[Annotated[int, Field(strict=True, ge=0)]] = None,
         offset: Optional[Annotated[int, Field(strict=True, ge=0)]] = None,
-        order_by: Optional[List[StrictStr]] = None,
+        order_by: Annotated[Optional[List[StrictStr]], Field(description="Attributes to order by, multi criteria sort is supported. Prefix with `-` for descending order. Supported attributes: `id, state, duration, start_date, end_date, map_index, try_number, logical_date, run_after, data_interval_start, data_interval_end, rendered_map_index, operator, run_after, logical_date, data_interval_start, data_interval_end`")] = None,
         _request_timeout: Union[
             None,
             Annotated[StrictFloat, Field(gt=0)],
@@ -3769,7 +3769,7 @@
         :type limit: int
         :param offset:
         :type offset: int
-        :param order_by:
+        :param order_by: Attributes to order by, multi criteria sort is supported. Prefix with `-` for descending order. Supported attributes: `id, state, duration, start_date, end_date, map_index, try_number, logical_date, run_after, data_interval_start, data_interval_end, rendered_map_index, operator, run_after, logical_date, data_interval_start, data_interval_end`
         :type order_by: List[str]
         :param _request_timeout: timeout setting for this request. If one
                                  number provided, it will be total request
@@ -3896,7 +3896,7 @@
         map_index: Optional[List[StrictInt]] = None,
         limit: Optional[Annotated[int, Field(strict=True, ge=0)]] = None,
         offset: Optional[Annotated[int, Field(strict=True, ge=0)]] = None,
-        order_by: Optional[List[StrictStr]] = None,
+        order_by: Annotated[Optional[List[StrictStr]], Field(description="Attributes to order by, multi criteria sort is supported. Prefix with `-` for descending order. Supported attributes: `id, state, duration, start_date, end_date, map_index, try_number, logical_date, run_after, data_interval_start, data_interval_end, rendered_map_index, operator, run_after, logical_date, data_interval_start, data_interval_end`")] = None,
         _request_timeout: Union[
             None,
             Annotated[StrictFloat, Field(gt=0)],
@@ -3988,7 +3988,7 @@
         :type limit: int
         :param offset:
         :type offset: int
-        :param order_by:
+        :param order_by: Attributes to order by, multi criteria sort is supported. Prefix with `-` for descending order. Supported attributes: `id, state, duration, start_date, end_date, map_index, try_number, logical_date, run_after, data_interval_start, data_interval_end, rendered_map_index, operator, run_after, logical_date, data_interval_start, data_interval_end`
         :type order_by: List[str]
         :param _request_timeout: timeout setting for this request. If one
                                  number provided, it will be total request
@@ -4115,7 +4115,7 @@
         map_index: Optional[List[StrictInt]] = None,
         limit: Optional[Annotated[int, Field(strict=True, ge=0)]] = None,
         offset: Optional[Annotated[int, Field(strict=True, ge=0)]] = None,
-        order_by: Optional[List[StrictStr]] = None,
+        order_by: Annotated[Optional[List[StrictStr]], Field(description="Attributes to order by, multi criteria sort is supported. Prefix with `-` for descending order. Supported attributes: `id, state, duration, start_date, end_date, map_index, try_number, logical_date, run_after, data_interval_start, data_interval_end, rendered_map_index, operator, run_after, logical_date, data_interval_start, data_interval_end`")] = None,
         _request_timeout: Union[
             None,
             Annotated[StrictFloat, Field(gt=0)],
@@ -4207,7 +4207,7 @@
         :type limit: int
         :param offset:
         :type offset: int
-        :param order_by:
+        :param order_by: Attributes to order by, multi criteria sort is supported. Prefix with `-` for descending order. Supported attributes: `id, state, duration, start_date, end_date, map_index, try_number, logical_date, run_after, data_interval_start, data_interval_end, rendered_map_index, operator, run_after, logical_date, data_interval_start, data_interval_end`
         :type order_by: List[str]
         :param _request_timeout: timeout setting for this request. If one
                                  number provided, it will be total request
@@ -6367,7 +6367,7 @@
         map_index: Optional[List[StrictInt]] = None,
         limit: Optional[Annotated[int, Field(strict=True, ge=0)]] = None,
         offset: Optional[Annotated[int, Field(strict=True, ge=0)]] = None,
-        order_by: Optional[List[StrictStr]] = None,
+        order_by: Annotated[Optional[List[StrictStr]], Field(description="Attributes to order by, multi criteria sort is supported. Prefix with `-` for descending order. Supported attributes: `id, state, duration, start_date, end_date, map_index, try_number, logical_date, run_after, data_interval_start, data_interval_end, rendered_map_index, operator, logical_date, run_after, data_interval_start, data_interval_end`")] = None,
         _request_timeout: Union[
             None,
             Annotated[StrictFloat, Field(gt=0)],
@@ -6461,7 +6461,7 @@
         :type limit: int
         :param offset:
         :type offset: int
-        :param order_by:
+        :param order_by: Attributes to order by, multi criteria sort is supported. Prefix with `-` for descending order. Supported attributes: `id, state, duration, start_date, end_date, map_index, try_number, logical_date, run_after, data_interval_start, data_interval_end, rendered_map_index, operator, logical_date, run_after, data_interval_start, data_interval_end`
         :type order_by: List[str]
         :param _request_timeout: timeout setting for this request. If one
                                  number provided, it will be total request
@@ -6590,7 +6590,7 @@
         map_index: Optional[List[StrictInt]] = None,
         limit: Optional[Annotated[int, Field(strict=True, ge=0)]] = None,
         offset: Optional[Annotated[int, Field(strict=True, ge=0)]] = None,
-        order_by: Optional[List[StrictStr]] = None,
+        order_by: Annotated[Optional[List[StrictStr]], Field(description="Attributes to order by, multi criteria sort is supported. Prefix with `-` for descending order. Supported attributes: `id, state, duration, start_date, end_date, map_index, try_number, logical_date, run_after, data_interval_start, data_interval_end, rendered_map_index, operator, logical_date, run_after, data_interval_start, data_interval_end`")] = None,
         _request_timeout: Union[
             None,
             Annotated[StrictFloat, Field(gt=0)],
@@ -6684,7 +6684,7 @@
         :type limit: int
         :param offset:
         :type offset: int
-        :param order_by:
+        :param order_by: Attributes to order by, multi criteria sort is supported. Prefix with `-` for descending order. Supported attributes: `id, state, duration, start_date, end_date, map_index, try_number, logical_date, run_after, data_interval_start, data_interval_end, rendered_map_index, operator, logical_date, run_after, data_interval_start, data_interval_end`
         :type order_by: List[str]
         :param _request_timeout: timeout setting for this request. If one
                                  number provided, it will be total request
@@ -6813,7 +6813,7 @@
         map_index: Optional[List[StrictInt]] = None,
         limit: Optional[Annotated[int, Field(strict=True, ge=0)]] = None,
         offset: Optional[Annotated[int, Field(strict=True, ge=0)]] = None,
-        order_by: Optional[List[StrictStr]] = None,
+        order_by: Annotated[Optional[List[StrictStr]], Field(description="Attributes to order by, multi criteria sort is supported. Prefix with `-` for descending order. Supported attributes: `id, state, duration, start_date, end_date, map_index, try_number, logical_date, run_after, data_interval_start, data_interval_end, rendered_map_index, operator, logical_date, run_after, data_interval_start, data_interval_end`")] = None,
         _request_timeout: Union[
             None,
             Annotated[StrictFloat, Field(gt=0)],
@@ -6907,7 +6907,7 @@
         :type limit: int
         :param offset:
         :type offset: int
-        :param order_by:
+        :param order_by: Attributes to order by, multi criteria sort is supported. Prefix with `-` for descending order. Supported attributes: `id, state, duration, start_date, end_date, map_index, try_number, logical_date, run_after, data_interval_start, data_interval_end, rendered_map_index, operator, logical_date, run_after, data_interval_start, data_interval_end`
         :type order_by: List[str]
         :param _request_timeout: timeout setting for this request. If one
                                  number provided, it will be total request
diff --git a/airflow_client/client/api/variable_api.py b/airflow_client/client/api/variable_api.py
index 271735f..1f9eda1 100644
--- a/airflow_client/client/api/variable_api.py
+++ b/airflow_client/client/api/variable_api.py
@@ -880,7 +880,7 @@
         self,
         limit: Optional[Annotated[int, Field(strict=True, ge=0)]] = None,
         offset: Optional[Annotated[int, Field(strict=True, ge=0)]] = None,
-        order_by: Optional[List[StrictStr]] = None,
+        order_by: Annotated[Optional[List[StrictStr]], Field(description="Attributes to order by, multi criteria sort is supported. Prefix with `-` for descending order. Supported attributes: `key, id, _val, description, is_encrypted`")] = None,
         variable_key_pattern: Annotated[Optional[StrictStr], Field(description="SQL LIKE expression — use `%` / `_` wildcards (e.g. `%customer_%`). Regular expressions are **not** supported.")] = None,
         _request_timeout: Union[
             None,
@@ -903,7 +903,7 @@
         :type limit: int
         :param offset:
         :type offset: int
-        :param order_by:
+        :param order_by: Attributes to order by, multi criteria sort is supported. Prefix with `-` for descending order. Supported attributes: `key, id, _val, description, is_encrypted`
         :type order_by: List[str]
         :param variable_key_pattern: SQL LIKE expression — use `%` / `_` wildcards (e.g. `%customer_%`). Regular expressions are **not** supported.
         :type variable_key_pattern: str
@@ -962,7 +962,7 @@
         self,
         limit: Optional[Annotated[int, Field(strict=True, ge=0)]] = None,
         offset: Optional[Annotated[int, Field(strict=True, ge=0)]] = None,
-        order_by: Optional[List[StrictStr]] = None,
+        order_by: Annotated[Optional[List[StrictStr]], Field(description="Attributes to order by, multi criteria sort is supported. Prefix with `-` for descending order. Supported attributes: `key, id, _val, description, is_encrypted`")] = None,
         variable_key_pattern: Annotated[Optional[StrictStr], Field(description="SQL LIKE expression — use `%` / `_` wildcards (e.g. `%customer_%`). Regular expressions are **not** supported.")] = None,
         _request_timeout: Union[
             None,
@@ -985,7 +985,7 @@
         :type limit: int
         :param offset:
         :type offset: int
-        :param order_by:
+        :param order_by: Attributes to order by, multi criteria sort is supported. Prefix with `-` for descending order. Supported attributes: `key, id, _val, description, is_encrypted`
         :type order_by: List[str]
         :param variable_key_pattern: SQL LIKE expression — use `%` / `_` wildcards (e.g. `%customer_%`). Regular expressions are **not** supported.
         :type variable_key_pattern: str
@@ -1044,7 +1044,7 @@
         self,
         limit: Optional[Annotated[int, Field(strict=True, ge=0)]] = None,
         offset: Optional[Annotated[int, Field(strict=True, ge=0)]] = None,
-        order_by: Optional[List[StrictStr]] = None,
+        order_by: Annotated[Optional[List[StrictStr]], Field(description="Attributes to order by, multi criteria sort is supported. Prefix with `-` for descending order. Supported attributes: `key, id, _val, description, is_encrypted`")] = None,
         variable_key_pattern: Annotated[Optional[StrictStr], Field(description="SQL LIKE expression — use `%` / `_` wildcards (e.g. `%customer_%`). Regular expressions are **not** supported.")] = None,
         _request_timeout: Union[
             None,
@@ -1067,7 +1067,7 @@
         :type limit: int
         :param offset:
         :type offset: int
-        :param order_by:
+        :param order_by: Attributes to order by, multi criteria sort is supported. Prefix with `-` for descending order. Supported attributes: `key, id, _val, description, is_encrypted`
         :type order_by: List[str]
         :param variable_key_pattern: SQL LIKE expression — use `%` / `_` wildcards (e.g. `%customer_%`). Regular expressions are **not** supported.
         :type variable_key_pattern: str
diff --git a/airflow_client/client/api_client.py b/airflow_client/client/api_client.py
index fddd4ff..777d338 100644
--- a/airflow_client/client/api_client.py
+++ b/airflow_client/client/api_client.py
@@ -90,7 +90,7 @@
             self.default_headers[header_name] = header_value
         self.cookie = cookie
         # Set default User-Agent.
-        self.user_agent = 'OpenAPI-Generator/3.1.0/python'
+        self.user_agent = 'OpenAPI-Generator/3.1.3/python'
         self.client_side_validation = configuration.client_side_validation
 
     def __enter__(self):
diff --git a/airflow_client/client/configuration.py b/airflow_client/client/configuration.py
index dbc9328..74ddce9 100644
--- a/airflow_client/client/configuration.py
+++ b/airflow_client/client/configuration.py
@@ -518,7 +518,7 @@
                "OS: {env}\n"\
                "Python Version: {pyversion}\n"\
                "Version of the API: 2\n"\
-               "SDK Package Version: 3.1.0".\
+               "SDK Package Version: 3.1.3".\
                format(env=sys.platform, pyversion=sys.version)
 
     def get_host_settings(self) -> List[HostSetting]:
diff --git a/airflow_client/client/models/dag_details_response.py b/airflow_client/client/models/dag_details_response.py
index ec885e0..c258b95 100644
--- a/airflow_client/client/models/dag_details_response.py
+++ b/airflow_client/client/models/dag_details_response.py
@@ -45,6 +45,7 @@
     fileloc: StrictStr
     has_import_errors: StrictBool
     has_task_concurrency_limits: StrictBool
+    is_favorite: Optional[StrictBool] = False
     is_paused: StrictBool
     is_paused_upon_creation: Optional[StrictBool] = None
     is_stale: StrictBool
@@ -71,7 +72,7 @@
     timetable_description: Optional[StrictStr] = None
     timetable_summary: Optional[StrictStr] = None
     timezone: Optional[StrictStr] = None
-    __properties: ClassVar[List[str]] = ["asset_expression", "bundle_name", "bundle_version", "catchup", "concurrency", "dag_display_name", "dag_id", "dag_run_timeout", "default_args", "description", "doc_md", "end_date", "file_token", "fileloc", "has_import_errors", "has_task_concurrency_limits", "is_paused", "is_paused_upon_creation", "is_stale", "last_expired", "last_parse_duration", "last_parsed", "last_parsed_time", "latest_dag_version", "max_active_runs", "max_active_tasks", "max_consecutive_failed_dag_runs", "next_dagrun_data_interval_end", "next_dagrun_data_interval_start", "next_dagrun_logical_date", "next_dagrun_run_after", "owner_links", "owners", "params", "relative_fileloc", "render_template_as_native_obj", "start_date", "tags", "template_search_path", "timetable_description", "timetable_summary", "timezone"]
+    __properties: ClassVar[List[str]] = ["asset_expression", "bundle_name", "bundle_version", "catchup", "concurrency", "dag_display_name", "dag_id", "dag_run_timeout", "default_args", "description", "doc_md", "end_date", "file_token", "fileloc", "has_import_errors", "has_task_concurrency_limits", "is_favorite", "is_paused", "is_paused_upon_creation", "is_stale", "last_expired", "last_parse_duration", "last_parsed", "last_parsed_time", "latest_dag_version", "max_active_runs", "max_active_tasks", "max_consecutive_failed_dag_runs", "next_dagrun_data_interval_end", "next_dagrun_data_interval_start", "next_dagrun_logical_date", "next_dagrun_run_after", "owner_links", "owners", "params", "relative_fileloc", "render_template_as_native_obj", "start_date", "tags", "template_search_path", "timetable_description", "timetable_summary", "timezone"]
 
     model_config = ConfigDict(
         populate_by_name=True,
@@ -154,6 +155,7 @@
             "fileloc": obj.get("fileloc"),
             "has_import_errors": obj.get("has_import_errors"),
             "has_task_concurrency_limits": obj.get("has_task_concurrency_limits"),
+            "is_favorite": obj.get("is_favorite") if obj.get("is_favorite") is not None else False,
             "is_paused": obj.get("is_paused"),
             "is_paused_upon_creation": obj.get("is_paused_upon_creation"),
             "is_stale": obj.get("is_stale"),
diff --git a/airflow_client/client/models/event_log_response.py b/airflow_client/client/models/event_log_response.py
index d864db2..7d12d7a 100644
--- a/airflow_client/client/models/event_log_response.py
+++ b/airflow_client/client/models/event_log_response.py
@@ -36,10 +36,11 @@
     map_index: Optional[StrictInt] = None
     owner: Optional[StrictStr] = None
     run_id: Optional[StrictStr] = None
+    task_display_name: Optional[StrictStr] = None
     task_id: Optional[StrictStr] = None
     try_number: Optional[StrictInt] = None
     when: datetime
-    __properties: ClassVar[List[str]] = ["dag_display_name", "dag_id", "event", "event_log_id", "extra", "logical_date", "map_index", "owner", "run_id", "task_id", "try_number", "when"]
+    __properties: ClassVar[List[str]] = ["dag_display_name", "dag_id", "event", "event_log_id", "extra", "logical_date", "map_index", "owner", "run_id", "task_display_name", "task_id", "try_number", "when"]
 
     model_config = ConfigDict(
         populate_by_name=True,
@@ -101,6 +102,7 @@
             "map_index": obj.get("map_index"),
             "owner": obj.get("owner"),
             "run_id": obj.get("run_id"),
+            "task_display_name": obj.get("task_display_name"),
             "task_id": obj.get("task_id"),
             "try_number": obj.get("try_number"),
             "when": obj.get("when")
diff --git a/docs/AssetApi.md b/docs/AssetApi.md
index 0e60be4..e35baae 100644
--- a/docs/AssetApi.md
+++ b/docs/AssetApi.md
@@ -571,7 +571,7 @@
     limit = 50 # int |  (optional) (default to 50)
     offset = 0 # int |  (optional) (default to 0)
     name_pattern = 'name_pattern_example' # str | SQL LIKE expression — use `%` / `_` wildcards (e.g. `%customer_%`). Regular expressions are **not** supported. (optional)
-    order_by = [id] # List[str] |  (optional) (default to [id])
+    order_by = ["id"] # List[str] | Attributes to order by, multi criteria sort is supported. Prefix with `-` for descending order. Supported attributes: `id, name` (optional) (default to ["id"])
 
     try:
         # Get Asset Aliases
@@ -592,7 +592,7 @@
  **limit** | **int**|  | [optional] [default to 50]
  **offset** | **int**|  | [optional] [default to 0]
  **name_pattern** | **str**| SQL LIKE expression — use &#x60;%&#x60; / &#x60;_&#x60; wildcards (e.g. &#x60;%customer_%&#x60;). Regular expressions are **not** supported. | [optional] 
- **order_by** | [**List[str]**](str.md)|  | [optional] [default to [id]]
+ **order_by** | [**List[str]**](str.md)| Attributes to order by, multi criteria sort is supported. Prefix with &#x60;-&#x60; for descending order. Supported attributes: &#x60;id, name&#x60; | [optional] [default to [&quot;id&quot;]]
 
 ### Return type
 
@@ -661,7 +661,7 @@
     api_instance = airflow_client.client.AssetApi(api_client)
     limit = 50 # int |  (optional) (default to 50)
     offset = 0 # int |  (optional) (default to 0)
-    order_by = ["timestamp"] # List[str] |  (optional) (default to ["timestamp"])
+    order_by = ["timestamp"] # List[str] | Attributes to order by, multi criteria sort is supported. Prefix with `-` for descending order. Supported attributes: `source_task_id, source_dag_id, source_run_id, source_map_index, timestamp` (optional) (default to ["timestamp"])
     asset_id = 56 # int |  (optional)
     source_dag_id = 'source_dag_id_example' # str |  (optional)
     source_task_id = 'source_task_id_example' # str |  (optional)
@@ -690,7 +690,7 @@
 ------------- | ------------- | ------------- | -------------
  **limit** | **int**|  | [optional] [default to 50]
  **offset** | **int**|  | [optional] [default to 0]
- **order_by** | [**List[str]**](str.md)|  | [optional] [default to [&quot;timestamp&quot;]]
+ **order_by** | [**List[str]**](str.md)| Attributes to order by, multi criteria sort is supported. Prefix with &#x60;-&#x60; for descending order. Supported attributes: &#x60;source_task_id, source_dag_id, source_run_id, source_map_index, timestamp&#x60; | [optional] [default to [&quot;timestamp&quot;]]
  **asset_id** | **int**|  | [optional] 
  **source_dag_id** | **str**|  | [optional] 
  **source_task_id** | **str**|  | [optional] 
@@ -859,7 +859,7 @@
     uri_pattern = 'uri_pattern_example' # str | SQL LIKE expression — use `%` / `_` wildcards (e.g. `%customer_%`). Regular expressions are **not** supported. (optional)
     dag_ids = ['dag_ids_example'] # List[str] |  (optional)
     only_active = True # bool |  (optional) (default to True)
-    order_by = ["id"] # List[str] |  (optional) (default to ["id"])
+    order_by = ["id"] # List[str] | Attributes to order by, multi criteria sort is supported. Prefix with `-` for descending order. Supported attributes: `id, name, uri, created_at, updated_at` (optional) (default to ["id"])
 
     try:
         # Get Assets
@@ -883,7 +883,7 @@
  **uri_pattern** | **str**| SQL LIKE expression — use &#x60;%&#x60; / &#x60;_&#x60; wildcards (e.g. &#x60;%customer_%&#x60;). Regular expressions are **not** supported. | [optional] 
  **dag_ids** | [**List[str]**](str.md)|  | [optional] 
  **only_active** | **bool**|  | [optional] [default to True]
- **order_by** | [**List[str]**](str.md)|  | [optional] [default to [&quot;id&quot;]]
+ **order_by** | [**List[str]**](str.md)| Attributes to order by, multi criteria sort is supported. Prefix with &#x60;-&#x60; for descending order. Supported attributes: &#x60;id, name, uri, created_at, updated_at&#x60; | [optional] [default to [&quot;id&quot;]]
 
 ### Return type
 
diff --git a/docs/AssetEventResponse.md b/docs/AssetEventResponse.md
index 6134e83..ad03149 100644
--- a/docs/AssetEventResponse.md
+++ b/docs/AssetEventResponse.md
@@ -8,7 +8,7 @@
 ------------ | ------------- | ------------- | -------------
 **asset_id** | **int** |  | 
 **created_dagruns** | [**List[DagRunAssetReference]**](DagRunAssetReference.md) |  | 
-**extra** | **object** |  | [optional] 
+**extra** | **Dict[str, object]** |  | [optional] 
 **group** | **str** |  | [optional] 
 **id** | **int** |  | 
 **name** | **str** |  | [optional] 
diff --git a/docs/AssetResponse.md b/docs/AssetResponse.md
index b34c514..0201a00 100644
--- a/docs/AssetResponse.md
+++ b/docs/AssetResponse.md
@@ -9,7 +9,7 @@
 **aliases** | [**List[AssetAliasResponse]**](AssetAliasResponse.md) |  | 
 **consuming_tasks** | [**List[TaskInletAssetReference]**](TaskInletAssetReference.md) |  | 
 **created_at** | **datetime** |  | 
-**extra** | **object** |  | [optional] 
+**extra** | **Dict[str, object]** |  | [optional] 
 **group** | **str** |  | 
 **id** | **int** |  | 
 **last_asset_event** | [**LastAssetEventResponse**](LastAssetEventResponse.md) |  | [optional] 
diff --git a/docs/BackfillApi.md b/docs/BackfillApi.md
index 43bcacc..3aa424f 100644
--- a/docs/BackfillApi.md
+++ b/docs/BackfillApi.md
@@ -391,7 +391,7 @@
     dag_id = 'dag_id_example' # str | 
     limit = 50 # int |  (optional) (default to 50)
     offset = 0 # int |  (optional) (default to 0)
-    order_by = [id] # List[str] |  (optional) (default to [id])
+    order_by = ["id"] # List[str] | Attributes to order by, multi criteria sort is supported. Prefix with `-` for descending order. Supported attributes: `id` (optional) (default to ["id"])
 
     try:
         # List Backfills
@@ -412,7 +412,7 @@
  **dag_id** | **str**|  | 
  **limit** | **int**|  | [optional] [default to 50]
  **offset** | **int**|  | [optional] [default to 0]
- **order_by** | [**List[str]**](str.md)|  | [optional] [default to [id]]
+ **order_by** | [**List[str]**](str.md)| Attributes to order by, multi criteria sort is supported. Prefix with &#x60;-&#x60; for descending order. Supported attributes: &#x60;id&#x60; | [optional] [default to [&quot;id&quot;]]
 
 ### Return type
 
diff --git a/docs/ConnectionApi.md b/docs/ConnectionApi.md
index 07e933e..9f79a90 100644
--- a/docs/ConnectionApi.md
+++ b/docs/ConnectionApi.md
@@ -384,7 +384,7 @@
     api_instance = airflow_client.client.ConnectionApi(api_client)
     limit = 50 # int |  (optional) (default to 50)
     offset = 0 # int |  (optional) (default to 0)
-    order_by = [id] # List[str] |  (optional) (default to [id])
+    order_by = ["id"] # List[str] | Attributes to order by, multi criteria sort is supported. Prefix with `-` for descending order. Supported attributes: `conn_id, conn_type, description, host, port, id, connection_id` (optional) (default to ["id"])
     connection_id_pattern = 'connection_id_pattern_example' # str | SQL LIKE expression — use `%` / `_` wildcards (e.g. `%customer_%`). Regular expressions are **not** supported. (optional)
 
     try:
@@ -405,7 +405,7 @@
 ------------- | ------------- | ------------- | -------------
  **limit** | **int**|  | [optional] [default to 50]
  **offset** | **int**|  | [optional] [default to 0]
- **order_by** | [**List[str]**](str.md)|  | [optional] [default to [id]]
+ **order_by** | [**List[str]**](str.md)| Attributes to order by, multi criteria sort is supported. Prefix with &#x60;-&#x60; for descending order. Supported attributes: &#x60;conn_id, conn_type, description, host, port, id, connection_id&#x60; | [optional] [default to [&quot;id&quot;]]
  **connection_id_pattern** | **str**| SQL LIKE expression — use &#x60;%&#x60; / &#x60;_&#x60; wildcards (e.g. &#x60;%customer_%&#x60;). Regular expressions are **not** supported. | [optional] 
 
 ### Return type
diff --git a/docs/DAGApi.md b/docs/DAGApi.md
index 2f3274c..b6d5955 100644
--- a/docs/DAGApi.md
+++ b/docs/DAGApi.md
@@ -396,7 +396,7 @@
     api_instance = airflow_client.client.DAGApi(api_client)
     limit = 50 # int |  (optional) (default to 50)
     offset = 0 # int |  (optional) (default to 0)
-    order_by = ["name"] # List[str] |  (optional) (default to ["name"])
+    order_by = ["name"] # List[str] | Attributes to order by, multi criteria sort is supported. Prefix with `-` for descending order. Supported attributes: `name` (optional) (default to ["name"])
     tag_name_pattern = 'tag_name_pattern_example' # str | SQL LIKE expression — use `%` / `_` wildcards (e.g. `%customer_%`). Regular expressions are **not** supported. (optional)
 
     try:
@@ -417,7 +417,7 @@
 ------------- | ------------- | ------------- | -------------
  **limit** | **int**|  | [optional] [default to 50]
  **offset** | **int**|  | [optional] [default to 0]
- **order_by** | [**List[str]**](str.md)|  | [optional] [default to [&quot;name&quot;]]
+ **order_by** | [**List[str]**](str.md)| Attributes to order by, multi criteria sort is supported. Prefix with &#x60;-&#x60; for descending order. Supported attributes: &#x60;name&#x60; | [optional] [default to [&quot;name&quot;]]
  **tag_name_pattern** | **str**| SQL LIKE expression — use &#x60;%&#x60; / &#x60;_&#x60; wildcards (e.g. &#x60;%customer_%&#x60;). Regular expressions are **not** supported. | [optional] 
 
 ### Return type
@@ -509,7 +509,7 @@
     dag_run_end_date_lte = '2013-10-20T19:20:30+01:00' # datetime |  (optional)
     dag_run_end_date_lt = '2013-10-20T19:20:30+01:00' # datetime |  (optional)
     dag_run_state = ['dag_run_state_example'] # List[str] |  (optional)
-    order_by = [dag_id] # List[str] |  (optional) (default to [dag_id])
+    order_by = ["dag_id"] # List[str] | Attributes to order by, multi criteria sort is supported. Prefix with `-` for descending order. Supported attributes: `dag_id, dag_display_name, next_dagrun, state, start_date, last_run_state, last_run_start_date` (optional) (default to ["dag_id"])
     is_favorite = True # bool |  (optional)
 
     try:
@@ -552,7 +552,7 @@
  **dag_run_end_date_lte** | **datetime**|  | [optional] 
  **dag_run_end_date_lt** | **datetime**|  | [optional] 
  **dag_run_state** | [**List[str]**](str.md)|  | [optional] 
- **order_by** | [**List[str]**](str.md)|  | [optional] [default to [dag_id]]
+ **order_by** | [**List[str]**](str.md)| Attributes to order by, multi criteria sort is supported. Prefix with &#x60;-&#x60; for descending order. Supported attributes: &#x60;dag_id, dag_display_name, next_dagrun, state, start_date, last_run_state, last_run_start_date&#x60; | [optional] [default to [&quot;dag_id&quot;]]
  **is_favorite** | **bool**|  | [optional] 
 
 ### Return type
diff --git a/docs/DAGDetailsResponse.md b/docs/DAGDetailsResponse.md
index 5f60764..d04d263 100644
--- a/docs/DAGDetailsResponse.md
+++ b/docs/DAGDetailsResponse.md
@@ -22,6 +22,7 @@
 **fileloc** | **str** |  | 
 **has_import_errors** | **bool** |  | 
 **has_task_concurrency_limits** | **bool** |  | 
+**is_favorite** | **bool** |  | [optional] [default to False]
 **is_paused** | **bool** |  | 
 **is_paused_upon_creation** | **bool** |  | [optional] 
 **is_stale** | **bool** |  | 
diff --git a/docs/DAGRunApi.md b/docs/DAGRunApi.md
index fee40f2..95e537f 100644
--- a/docs/DAGRunApi.md
+++ b/docs/DAGRunApi.md
@@ -341,7 +341,7 @@
     run_type = ['run_type_example'] # List[str] |  (optional)
     state = ['state_example'] # List[str] |  (optional)
     dag_version = [56] # List[int] |  (optional)
-    order_by = [id] # List[str] |  (optional) (default to [id])
+    order_by = ["id"] # List[str] | Attributes to order by, multi criteria sort is supported. Prefix with `-` for descending order. Supported attributes: `id, state, dag_id, run_id, logical_date, run_after, start_date, end_date, updated_at, conf, duration, dag_run_id` (optional) (default to ["id"])
     run_id_pattern = 'run_id_pattern_example' # str | SQL LIKE expression — use `%` / `_` wildcards (e.g. `%customer_%`). Regular expressions are **not** supported. (optional)
     triggering_user_name_pattern = 'triggering_user_name_pattern_example' # str | SQL LIKE expression — use `%` / `_` wildcards (e.g. `%customer_%`). Regular expressions are **not** supported. (optional)
 
@@ -387,7 +387,7 @@
  **run_type** | [**List[str]**](str.md)|  | [optional] 
  **state** | [**List[str]**](str.md)|  | [optional] 
  **dag_version** | [**List[int]**](int.md)|  | [optional] 
- **order_by** | [**List[str]**](str.md)|  | [optional] [default to [id]]
+ **order_by** | [**List[str]**](str.md)| Attributes to order by, multi criteria sort is supported. Prefix with &#x60;-&#x60; for descending order. Supported attributes: &#x60;id, state, dag_id, run_id, logical_date, run_after, start_date, end_date, updated_at, conf, duration, dag_run_id&#x60; | [optional] [default to [&quot;id&quot;]]
  **run_id_pattern** | **str**| SQL LIKE expression — use &#x60;%&#x60; / &#x60;_&#x60; wildcards (e.g. &#x60;%customer_%&#x60;). Regular expressions are **not** supported. | [optional] 
  **triggering_user_name_pattern** | **str**| SQL LIKE expression — use &#x60;%&#x60; / &#x60;_&#x60; wildcards (e.g. &#x60;%customer_%&#x60;). Regular expressions are **not** supported. | [optional] 
 
diff --git a/docs/DagReportApi.md b/docs/DagReportApi.md
deleted file mode 100644
index 0085a1a..0000000
--- a/docs/DagReportApi.md
+++ /dev/null
@@ -1,93 +0,0 @@
-# airflow_client.client.DagReportApi
-
-All URIs are relative to *http://localhost*
-
-Method | HTTP request | Description
-------------- | ------------- | -------------
-[**get_dag_reports**](DagReportApi.md#get_dag_reports) | **GET** /api/v2/dagReports | Get Dag Reports
-
-
-# **get_dag_reports**
-> object get_dag_reports(subdir)
-
-Get Dag Reports
-
-Get DAG report.
-
-### Example
-
-* OAuth Authentication (OAuth2PasswordBearer):
-* Bearer Authentication (HTTPBearer):
-
-```python
-import airflow_client.client
-from airflow_client.client.rest import ApiException
-from pprint import pprint
-
-# Defining the host is optional and defaults to http://localhost
-# See configuration.py for a list of all supported configuration parameters.
-configuration = airflow_client.client.Configuration(
-    host = "http://localhost"
-)
-
-# The client must configure the authentication and authorization parameters
-# in accordance with the API server security policy.
-# Examples for each auth method are provided below, use the example that
-# satisfies your auth use case.
-
-configuration.access_token = os.environ["ACCESS_TOKEN"]
-
-# Configure Bearer authorization: HTTPBearer
-configuration = airflow_client.client.Configuration(
-    access_token = os.environ["BEARER_TOKEN"]
-)
-
-# Enter a context with an instance of the API client
-with airflow_client.client.ApiClient(configuration) as api_client:
-    # Create an instance of the API class
-    api_instance = airflow_client.client.DagReportApi(api_client)
-    subdir = 'subdir_example' # str | 
-
-    try:
-        # Get Dag Reports
-        api_response = api_instance.get_dag_reports(subdir)
-        print("The response of DagReportApi->get_dag_reports:\n")
-        pprint(api_response)
-    except Exception as e:
-        print("Exception when calling DagReportApi->get_dag_reports: %s\n" % e)
-```
-
-
-
-### Parameters
-
-
-Name | Type | Description  | Notes
-------------- | ------------- | ------------- | -------------
- **subdir** | **str**|  | 
-
-### Return type
-
-**object**
-
-### Authorization
-
-[OAuth2PasswordBearer](../README.md#OAuth2PasswordBearer), [HTTPBearer](../README.md#HTTPBearer)
-
-### HTTP request headers
-
- - **Content-Type**: Not defined
- - **Accept**: application/json
-
-### HTTP response details
-
-| Status code | Description | Response headers |
-|-------------|-------------|------------------|
-**200** | Successful Response |  -  |
-**400** | Bad Request |  -  |
-**401** | Unauthorized |  -  |
-**403** | Forbidden |  -  |
-**422** | Validation Error |  -  |
-
-[[Back to top]](#) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to Model list]](../README.md#documentation-for-models) [[Back to README]](../README.md)
-
diff --git a/docs/DagVersionApi.md b/docs/DagVersionApi.md
index 9368793..a416294 100644
--- a/docs/DagVersionApi.md
+++ b/docs/DagVersionApi.md
@@ -143,7 +143,7 @@
     version_number = 56 # int |  (optional)
     bundle_name = 'bundle_name_example' # str |  (optional)
     bundle_version = 'bundle_version_example' # str |  (optional)
-    order_by = [id] # List[str] |  (optional) (default to [id])
+    order_by = ["id"] # List[str] | Attributes to order by, multi criteria sort is supported. Prefix with `-` for descending order. Supported attributes: `id, version_number, bundle_name, bundle_version` (optional) (default to ["id"])
 
     try:
         # Get Dag Versions
@@ -167,7 +167,7 @@
  **version_number** | **int**|  | [optional] 
  **bundle_name** | **str**|  | [optional] 
  **bundle_version** | **str**|  | [optional] 
- **order_by** | [**List[str]**](str.md)|  | [optional] [default to [id]]
+ **order_by** | [**List[str]**](str.md)| Attributes to order by, multi criteria sort is supported. Prefix with &#x60;-&#x60; for descending order. Supported attributes: &#x60;id, version_number, bundle_name, bundle_version&#x60; | [optional] [default to [&quot;id&quot;]]
 
 ### Return type
 
diff --git a/docs/DagWarningApi.md b/docs/DagWarningApi.md
index 70d3111..c33c217 100644
--- a/docs/DagWarningApi.md
+++ b/docs/DagWarningApi.md
@@ -52,7 +52,7 @@
     warning_type = airflow_client.client.DagWarningType() # DagWarningType |  (optional)
     limit = 50 # int |  (optional) (default to 50)
     offset = 0 # int |  (optional) (default to 0)
-    order_by = ["dag_id"] # List[str] |  (optional) (default to ["dag_id"])
+    order_by = ["dag_id"] # List[str] | Attributes to order by, multi criteria sort is supported. Prefix with `-` for descending order. Supported attributes: `dag_id, warning_type, message, timestamp` (optional) (default to ["dag_id"])
 
     try:
         # List Dag Warnings
@@ -74,7 +74,7 @@
  **warning_type** | [**DagWarningType**](.md)|  | [optional] 
  **limit** | **int**|  | [optional] [default to 50]
  **offset** | **int**|  | [optional] [default to 0]
- **order_by** | [**List[str]**](str.md)|  | [optional] [default to [&quot;dag_id&quot;]]
+ **order_by** | [**List[str]**](str.md)| Attributes to order by, multi criteria sort is supported. Prefix with &#x60;-&#x60; for descending order. Supported attributes: &#x60;dag_id, warning_type, message, timestamp&#x60; | [optional] [default to [&quot;dag_id&quot;]]
 
 ### Return type
 
diff --git a/docs/EventLogApi.md b/docs/EventLogApi.md
index 558a1d1..28d19d2 100644
--- a/docs/EventLogApi.md
+++ b/docs/EventLogApi.md
@@ -133,7 +133,7 @@
     api_instance = airflow_client.client.EventLogApi(api_client)
     limit = 50 # int |  (optional) (default to 50)
     offset = 0 # int |  (optional) (default to 0)
-    order_by = [id] # List[str] |  (optional) (default to [id])
+    order_by = ["id"] # List[str] | Attributes to order by, multi criteria sort is supported. Prefix with `-` for descending order. Supported attributes: `id, dttm, dag_id, task_id, run_id, event, logical_date, owner, extra, when, event_log_id` (optional) (default to ["id"])
     dag_id = 'dag_id_example' # str |  (optional)
     task_id = 'task_id_example' # str |  (optional)
     run_id = 'run_id_example' # str |  (optional)
@@ -169,7 +169,7 @@
 ------------- | ------------- | ------------- | -------------
  **limit** | **int**|  | [optional] [default to 50]
  **offset** | **int**|  | [optional] [default to 0]
- **order_by** | [**List[str]**](str.md)|  | [optional] [default to [id]]
+ **order_by** | [**List[str]**](str.md)| Attributes to order by, multi criteria sort is supported. Prefix with &#x60;-&#x60; for descending order. Supported attributes: &#x60;id, dttm, dag_id, task_id, run_id, event, logical_date, owner, extra, when, event_log_id&#x60; | [optional] [default to [&quot;id&quot;]]
  **dag_id** | **str**|  | [optional] 
  **task_id** | **str**|  | [optional] 
  **run_id** | **str**|  | [optional] 
diff --git a/docs/EventLogResponse.md b/docs/EventLogResponse.md
index 23df114..a519020 100644
--- a/docs/EventLogResponse.md
+++ b/docs/EventLogResponse.md
@@ -15,6 +15,7 @@
 **map_index** | **int** |  | [optional] 
 **owner** | **str** |  | [optional] 
 **run_id** | **str** |  | [optional] 
+**task_display_name** | **str** |  | [optional] 
 **task_id** | **str** |  | [optional] 
 **try_number** | **int** |  | [optional] 
 **when** | **datetime** |  | 
diff --git a/docs/ImportErrorApi.md b/docs/ImportErrorApi.md
index 943973a..e08c87b 100644
--- a/docs/ImportErrorApi.md
+++ b/docs/ImportErrorApi.md
@@ -135,7 +135,7 @@
     api_instance = airflow_client.client.ImportErrorApi(api_client)
     limit = 50 # int |  (optional) (default to 50)
     offset = 0 # int |  (optional) (default to 0)
-    order_by = [id] # List[str] |  (optional) (default to [id])
+    order_by = ["id"] # List[str] | Attributes to order by, multi criteria sort is supported. Prefix with `-` for descending order. Supported attributes: `id, timestamp, filename, bundle_name, stacktrace, import_error_id` (optional) (default to ["id"])
     filename_pattern = 'filename_pattern_example' # str | SQL LIKE expression — use `%` / `_` wildcards (e.g. `%customer_%`). Regular expressions are **not** supported. (optional)
 
     try:
@@ -156,7 +156,7 @@
 ------------- | ------------- | ------------- | -------------
  **limit** | **int**|  | [optional] [default to 50]
  **offset** | **int**|  | [optional] [default to 0]
- **order_by** | [**List[str]**](str.md)|  | [optional] [default to [id]]
+ **order_by** | [**List[str]**](str.md)| Attributes to order by, multi criteria sort is supported. Prefix with &#x60;-&#x60; for descending order. Supported attributes: &#x60;id, timestamp, filename, bundle_name, stacktrace, import_error_id&#x60; | [optional] [default to [&quot;id&quot;]]
  **filename_pattern** | **str**| SQL LIKE expression — use &#x60;%&#x60; / &#x60;_&#x60; wildcards (e.g. &#x60;%customer_%&#x60;). Regular expressions are **not** supported. | [optional] 
 
 ### Return type
diff --git a/docs/JobApi.md b/docs/JobApi.md
index f7be0f2..9efc2e8 100644
--- a/docs/JobApi.md
+++ b/docs/JobApi.md
@@ -58,7 +58,7 @@
     end_date_lt = '2013-10-20T19:20:30+01:00' # datetime |  (optional)
     limit = 50 # int |  (optional) (default to 50)
     offset = 0 # int |  (optional) (default to 0)
-    order_by = [id] # List[str] |  (optional) (default to [id])
+    order_by = ["id"] # List[str] | Attributes to order by, multi criteria sort is supported. Prefix with `-` for descending order. Supported attributes: `id, dag_id, state, job_type, start_date, end_date, latest_heartbeat, executor_class, hostname, unixname` (optional) (default to ["id"])
     job_state = 'job_state_example' # str |  (optional)
     job_type = 'job_type_example' # str |  (optional)
     hostname = 'hostname_example' # str |  (optional)
@@ -91,7 +91,7 @@
  **end_date_lt** | **datetime**|  | [optional] 
  **limit** | **int**|  | [optional] [default to 50]
  **offset** | **int**|  | [optional] [default to 0]
- **order_by** | [**List[str]**](str.md)|  | [optional] [default to [id]]
+ **order_by** | [**List[str]**](str.md)| Attributes to order by, multi criteria sort is supported. Prefix with &#x60;-&#x60; for descending order. Supported attributes: &#x60;id, dag_id, state, job_type, start_date, end_date, latest_heartbeat, executor_class, hostname, unixname&#x60; | [optional] [default to [&quot;id&quot;]]
  **job_state** | **str**|  | [optional] 
  **job_type** | **str**|  | [optional] 
  **hostname** | **str**|  | [optional] 
diff --git a/docs/LoginApi.md b/docs/LoginApi.md
index 12bc074..196f047 100644
--- a/docs/LoginApi.md
+++ b/docs/LoginApi.md
@@ -79,7 +79,7 @@
 [[Back to top]](#) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to Model list]](../README.md#documentation-for-models) [[Back to README]](../README.md)
 
 # **logout**
-> object logout(next=next)
+> object logout()
 
 Logout
 
@@ -104,11 +104,10 @@
 with airflow_client.client.ApiClient(configuration) as api_client:
     # Create an instance of the API class
     api_instance = airflow_client.client.LoginApi(api_client)
-    next = 'next_example' # str |  (optional)
 
     try:
         # Logout
-        api_response = api_instance.logout(next=next)
+        api_response = api_instance.logout()
         print("The response of LoginApi->logout:\n")
         pprint(api_response)
     except Exception as e:
@@ -119,10 +118,7 @@
 
 ### Parameters
 
-
-Name | Type | Description  | Notes
-------------- | ------------- | ------------- | -------------
- **next** | **str**|  | [optional] 
+This endpoint does not need any parameter.
 
 ### Return type
 
@@ -143,7 +139,6 @@
 |-------------|-------------|------------------|
 **200** | Successful Response |  -  |
 **307** | Temporary Redirect |  -  |
-**422** | Validation Error |  -  |
 
 [[Back to top]](#) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to Model list]](../README.md#documentation-for-models) [[Back to README]](../README.md)
 
diff --git a/docs/PoolApi.md b/docs/PoolApi.md
index 9d8aba9..641979f 100644
--- a/docs/PoolApi.md
+++ b/docs/PoolApi.md
@@ -307,7 +307,7 @@
     api_instance = airflow_client.client.PoolApi(api_client)
     limit = 50 # int |  (optional) (default to 50)
     offset = 0 # int |  (optional) (default to 0)
-    order_by = [id] # List[str] |  (optional) (default to [id])
+    order_by = ["id"] # List[str] | Attributes to order by, multi criteria sort is supported. Prefix with `-` for descending order. Supported attributes: `id, pool, name` (optional) (default to ["id"])
     pool_name_pattern = 'pool_name_pattern_example' # str | SQL LIKE expression — use `%` / `_` wildcards (e.g. `%customer_%`). Regular expressions are **not** supported. (optional)
 
     try:
@@ -328,7 +328,7 @@
 ------------- | ------------- | ------------- | -------------
  **limit** | **int**|  | [optional] [default to 50]
  **offset** | **int**|  | [optional] [default to 0]
- **order_by** | [**List[str]**](str.md)|  | [optional] [default to [id]]
+ **order_by** | [**List[str]**](str.md)| Attributes to order by, multi criteria sort is supported. Prefix with &#x60;-&#x60; for descending order. Supported attributes: &#x60;id, pool, name&#x60; | [optional] [default to [&quot;id&quot;]]
  **pool_name_pattern** | **str**| SQL LIKE expression — use &#x60;%&#x60; / &#x60;_&#x60; wildcards (e.g. &#x60;%customer_%&#x60;). Regular expressions are **not** supported. | [optional] 
 
 ### Return type
diff --git a/docs/TaskInstanceApi.md b/docs/TaskInstanceApi.md
index 991c449..ae3c8f8 100644
--- a/docs/TaskInstanceApi.md
+++ b/docs/TaskInstanceApi.md
@@ -529,7 +529,7 @@
     dag_run_id = 'dag_run_id_example' # str | 
     limit = 50 # int |  (optional) (default to 50)
     offset = 0 # int |  (optional) (default to 0)
-    order_by = ["ti_id"] # List[str] |  (optional) (default to ["ti_id"])
+    order_by = ["ti_id"] # List[str] | Attributes to order by, multi criteria sort is supported. Prefix with `-` for descending order. Supported attributes: `ti_id, subject, responded_at, created_at, responded_by_user_id, responded_by_user_name, dag_id, run_id, run_after, rendered_map_index, task_instance_operator, task_instance_state` (optional) (default to ["ti_id"])
     dag_id_pattern = 'dag_id_pattern_example' # str | SQL LIKE expression — use `%` / `_` wildcards (e.g. `%customer_%`). Regular expressions are **not** supported. (optional)
     task_id = 'task_id_example' # str |  (optional)
     task_id_pattern = 'task_id_pattern_example' # str | SQL LIKE expression — use `%` / `_` wildcards (e.g. `%customer_%`). Regular expressions are **not** supported. (optional)
@@ -565,7 +565,7 @@
  **dag_run_id** | **str**|  | 
  **limit** | **int**|  | [optional] [default to 50]
  **offset** | **int**|  | [optional] [default to 0]
- **order_by** | [**List[str]**](str.md)|  | [optional] [default to [&quot;ti_id&quot;]]
+ **order_by** | [**List[str]**](str.md)| Attributes to order by, multi criteria sort is supported. Prefix with &#x60;-&#x60; for descending order. Supported attributes: &#x60;ti_id, subject, responded_at, created_at, responded_by_user_id, responded_by_user_name, dag_id, run_id, run_after, rendered_map_index, task_instance_operator, task_instance_state&#x60; | [optional] [default to [&quot;ti_id&quot;]]
  **dag_id_pattern** | **str**| SQL LIKE expression — use &#x60;%&#x60; / &#x60;_&#x60; wildcards (e.g. &#x60;%customer_%&#x60;). Regular expressions are **not** supported. | [optional] 
  **task_id** | **str**|  | [optional] 
  **task_id_pattern** | **str**| SQL LIKE expression — use &#x60;%&#x60; / &#x60;_&#x60; wildcards (e.g. &#x60;%customer_%&#x60;). Regular expressions are **not** supported. | [optional] 
@@ -1052,7 +1052,7 @@
     map_index = [56] # List[int] |  (optional)
     limit = 50 # int |  (optional) (default to 50)
     offset = 0 # int |  (optional) (default to 0)
-    order_by = [map_index] # List[str] |  (optional) (default to [map_index])
+    order_by = ["map_index"] # List[str] | Attributes to order by, multi criteria sort is supported. Prefix with `-` for descending order. Supported attributes: `id, state, duration, start_date, end_date, map_index, try_number, logical_date, run_after, data_interval_start, data_interval_end, rendered_map_index, operator, run_after, logical_date, data_interval_start, data_interval_end` (optional) (default to ["map_index"])
 
     try:
         # Get Mapped Task Instances
@@ -1107,7 +1107,7 @@
  **map_index** | [**List[int]**](int.md)|  | [optional] 
  **limit** | **int**|  | [optional] [default to 50]
  **offset** | **int**|  | [optional] [default to 0]
- **order_by** | [**List[str]**](str.md)|  | [optional] [default to [map_index]]
+ **order_by** | [**List[str]**](str.md)| Attributes to order by, multi criteria sort is supported. Prefix with &#x60;-&#x60; for descending order. Supported attributes: &#x60;id, state, duration, start_date, end_date, map_index, try_number, logical_date, run_after, data_interval_start, data_interval_end, rendered_map_index, operator, run_after, logical_date, data_interval_start, data_interval_end&#x60; | [optional] [default to [&quot;map_index&quot;]]
 
 ### Return type
 
@@ -1670,7 +1670,7 @@
     map_index = [56] # List[int] |  (optional)
     limit = 50 # int |  (optional) (default to 50)
     offset = 0 # int |  (optional) (default to 0)
-    order_by = ["map_index"] # List[str] |  (optional) (default to ["map_index"])
+    order_by = ["map_index"] # List[str] | Attributes to order by, multi criteria sort is supported. Prefix with `-` for descending order. Supported attributes: `id, state, duration, start_date, end_date, map_index, try_number, logical_date, run_after, data_interval_start, data_interval_end, rendered_map_index, operator, logical_date, run_after, data_interval_start, data_interval_end` (optional) (default to ["map_index"])
 
     try:
         # Get Task Instances
@@ -1726,7 +1726,7 @@
  **map_index** | [**List[int]**](int.md)|  | [optional] 
  **limit** | **int**|  | [optional] [default to 50]
  **offset** | **int**|  | [optional] [default to 0]
- **order_by** | [**List[str]**](str.md)|  | [optional] [default to [&quot;map_index&quot;]]
+ **order_by** | [**List[str]**](str.md)| Attributes to order by, multi criteria sort is supported. Prefix with &#x60;-&#x60; for descending order. Supported attributes: &#x60;id, state, duration, start_date, end_date, map_index, try_number, logical_date, run_after, data_interval_start, data_interval_end, rendered_map_index, operator, logical_date, run_after, data_interval_start, data_interval_end&#x60; | [optional] [default to [&quot;map_index&quot;]]
 
 ### Return type
 
diff --git a/docs/VariableApi.md b/docs/VariableApi.md
index d7a7776..fd74b14 100644
--- a/docs/VariableApi.md
+++ b/docs/VariableApi.md
@@ -306,7 +306,7 @@
     api_instance = airflow_client.client.VariableApi(api_client)
     limit = 50 # int |  (optional) (default to 50)
     offset = 0 # int |  (optional) (default to 0)
-    order_by = [id] # List[str] |  (optional) (default to [id])
+    order_by = ["id"] # List[str] | Attributes to order by, multi criteria sort is supported. Prefix with `-` for descending order. Supported attributes: `key, id, _val, description, is_encrypted` (optional) (default to ["id"])
     variable_key_pattern = 'variable_key_pattern_example' # str | SQL LIKE expression — use `%` / `_` wildcards (e.g. `%customer_%`). Regular expressions are **not** supported. (optional)
 
     try:
@@ -327,7 +327,7 @@
 ------------- | ------------- | ------------- | -------------
  **limit** | **int**|  | [optional] [default to 50]
  **offset** | **int**|  | [optional] [default to 0]
- **order_by** | [**List[str]**](str.md)|  | [optional] [default to [id]]
+ **order_by** | [**List[str]**](str.md)| Attributes to order by, multi criteria sort is supported. Prefix with &#x60;-&#x60; for descending order. Supported attributes: &#x60;key, id, _val, description, is_encrypted&#x60; | [optional] [default to [&quot;id&quot;]]
  **variable_key_pattern** | **str**| SQL LIKE expression — use &#x60;%&#x60; / &#x60;_&#x60; wildcards (e.g. &#x60;%customer_%&#x60;). Regular expressions are **not** supported. | [optional] 
 
 ### Return type
diff --git a/pyproject.toml b/pyproject.toml
index 1692d6f..a7a2281 100644
--- a/pyproject.toml
+++ b/pyproject.toml
@@ -24,7 +24,8 @@
 dynamic = ["version"]
 description = "Apache Airflow API (Stable)"
 readme = "README.md"
-license-files.globs = ["LICENSE", "NOTICE"]
+license = "Apache-2.0"
+license-files = ["LICENSE", "NOTICE"]
 requires-python = ">=3.10"
 authors = [
     { name = "Apache Software Foundation", email = "dev@airflow.apache.org" },
@@ -41,7 +42,6 @@
     "Framework :: Apache Airflow",
     "Intended Audience :: Developers",
     "Intended Audience :: System Administrators",
-    "License :: OSI Approved :: Apache Software License",
     "Programming Language :: Python :: 3.10",
     "Programming Language :: Python :: 3.11",
     "Programming Language :: Python :: 3.12",
diff --git a/spec/v2.yaml b/spec/v2.yaml
index 6c2522e..45d7209 100644
--- a/spec/v2.yaml
+++ b/spec/v2.yaml
@@ -114,7 +114,8 @@
           title: Created Dagruns
           type: array
         extra:
-          additionalProperties: true
+          additionalProperties:
+            $ref: '#/components/schemas/JsonValue'
           nullable: true
           type: object
         group:
@@ -171,7 +172,8 @@
           title: Created At
           type: string
         extra:
-          additionalProperties: true
+          additionalProperties:
+            $ref: '#/components/schemas/JsonValue'
           nullable: true
           type: object
         group:
@@ -1091,6 +1093,10 @@
         has_task_concurrency_limits:
           title: Has Task Concurrency Limits
           type: boolean
+        is_favorite:
+          default: false
+          title: Is Favorite
+          type: boolean
         is_paused:
           title: Is Paused
           type: boolean
@@ -1952,6 +1958,9 @@
         run_id:
           nullable: true
           type: string
+        task_display_name:
+          nullable: true
+          type: string
         task_id:
           nullable: true
           type: string
@@ -3843,12 +3852,18 @@
           default: true
           title: Only Active
           type: boolean
-      - in: query
+      - description: 'Attributes to order by, multi criteria sort is supported. Prefix
+          with `-` for descending order. Supported attributes: `id, name, uri, created_at,
+          updated_at`'
+        in: query
         name: order_by
         required: false
         schema:
           default:
           - id
+          description: 'Attributes to order by, multi criteria sort is supported.
+            Prefix with `-` for descending order. Supported attributes: `id, name,
+            uri, created_at, updated_at`'
           items:
             type: string
           title: Order By
@@ -3919,12 +3934,16 @@
         schema:
           nullable: true
           type: string
-      - in: query
+      - description: 'Attributes to order by, multi criteria sort is supported. Prefix
+          with `-` for descending order. Supported attributes: `id, name`'
+        in: query
         name: order_by
         required: false
         schema:
           default:
           - id
+          description: 'Attributes to order by, multi criteria sort is supported.
+            Prefix with `-` for descending order. Supported attributes: `id, name`'
           items:
             type: string
           title: Order By
@@ -4034,12 +4053,18 @@
           minimum: 0
           title: Offset
           type: integer
-      - in: query
+      - description: 'Attributes to order by, multi criteria sort is supported. Prefix
+          with `-` for descending order. Supported attributes: `source_task_id, source_dag_id,
+          source_run_id, source_map_index, timestamp`'
+        in: query
         name: order_by
         required: false
         schema:
           default:
           - timestamp
+          description: 'Attributes to order by, multi criteria sort is supported.
+            Prefix with `-` for descending order. Supported attributes: `source_task_id,
+            source_dag_id, source_run_id, source_map_index, timestamp`'
           items:
             type: string
           title: Order By
@@ -4426,13 +4451,6 @@
     get:
       description: Logout the user.
       operationId: logout
-      parameters:
-      - in: query
-        name: next
-        required: false
-        schema:
-          nullable: true
-          type: string
       responses:
         '200':
           content:
@@ -4445,12 +4463,6 @@
               schema:
                 $ref: '#/components/schemas/HTTPExceptionResponse'
           description: Temporary Redirect
-        '422':
-          content:
-            application/json:
-              schema:
-                $ref: '#/components/schemas/HTTPValidationError'
-          description: Validation Error
       summary: Logout
       tags:
       - Login
@@ -4512,12 +4524,16 @@
           minimum: 0
           title: Offset
           type: integer
-      - in: query
+      - description: 'Attributes to order by, multi criteria sort is supported. Prefix
+          with `-` for descending order. Supported attributes: `id`'
+        in: query
         name: order_by
         required: false
         schema:
           default:
           - id
+          description: 'Attributes to order by, multi criteria sort is supported.
+            Prefix with `-` for descending order. Supported attributes: `id`'
           items:
             type: string
           title: Order By
@@ -5048,12 +5064,18 @@
           minimum: 0
           title: Offset
           type: integer
-      - in: query
+      - description: 'Attributes to order by, multi criteria sort is supported. Prefix
+          with `-` for descending order. Supported attributes: `conn_id, conn_type,
+          description, host, port, id, connection_id`'
+        in: query
         name: order_by
         required: false
         schema:
           default:
           - id
+          description: 'Attributes to order by, multi criteria sort is supported.
+            Prefix with `-` for descending order. Supported attributes: `conn_id,
+            conn_type, description, host, port, id, connection_id`'
           items:
             type: string
           title: Order By
@@ -5422,53 +5444,6 @@
       summary: Patch Connection
       tags:
       - Connection
-  /api/v2/dagReports:
-    get:
-      description: Get DAG report.
-      operationId: get_dag_reports
-      parameters:
-      - in: query
-        name: subdir
-        required: true
-        schema:
-          title: Subdir
-          type: string
-      responses:
-        '200':
-          content:
-            application/json:
-              schema: {}
-          description: Successful Response
-        '400':
-          content:
-            application/json:
-              schema:
-                $ref: '#/components/schemas/HTTPExceptionResponse'
-          description: Bad Request
-        '401':
-          content:
-            application/json:
-              schema:
-                $ref: '#/components/schemas/HTTPExceptionResponse'
-          description: Unauthorized
-        '403':
-          content:
-            application/json:
-              schema:
-                $ref: '#/components/schemas/HTTPExceptionResponse'
-          description: Forbidden
-        '422':
-          content:
-            application/json:
-              schema:
-                $ref: '#/components/schemas/HTTPValidationError'
-          description: Validation Error
-      security:
-      - OAuth2PasswordBearer: []
-      - HTTPBearer: []
-      summary: Get Dag Reports
-      tags:
-      - DagReport
   /api/v2/dagSources/{dag_id}:
     get:
       description: Get source code using file token.
@@ -5627,12 +5602,16 @@
           minimum: 0
           title: Offset
           type: integer
-      - in: query
+      - description: 'Attributes to order by, multi criteria sort is supported. Prefix
+          with `-` for descending order. Supported attributes: `name`'
+        in: query
         name: order_by
         required: false
         schema:
           default:
           - name
+          description: 'Attributes to order by, multi criteria sort is supported.
+            Prefix with `-` for descending order. Supported attributes: `name`'
           items:
             type: string
           title: Order By
@@ -5709,12 +5688,18 @@
           minimum: 0
           title: Offset
           type: integer
-      - in: query
+      - description: 'Attributes to order by, multi criteria sort is supported. Prefix
+          with `-` for descending order. Supported attributes: `dag_id, warning_type,
+          message, timestamp`'
+        in: query
         name: order_by
         required: false
         schema:
           default:
           - dag_id
+          description: 'Attributes to order by, multi criteria sort is supported.
+            Prefix with `-` for descending order. Supported attributes: `dag_id, warning_type,
+            message, timestamp`'
           items:
             type: string
           title: Order By
@@ -5929,12 +5914,18 @@
             type: string
           title: Dag Run State
           type: array
-      - in: query
+      - description: 'Attributes to order by, multi criteria sort is supported. Prefix
+          with `-` for descending order. Supported attributes: `dag_id, dag_display_name,
+          next_dagrun, state, start_date, last_run_state, last_run_start_date`'
+        in: query
         name: order_by
         required: false
         schema:
           default:
           - dag_id
+          description: 'Attributes to order by, multi criteria sort is supported.
+            Prefix with `-` for descending order. Supported attributes: `dag_id, dag_display_name,
+            next_dagrun, state, start_date, last_run_state, last_run_start_date`'
           items:
             type: string
           title: Order By
@@ -6750,12 +6741,20 @@
             type: integer
           title: Dag Version
           type: array
-      - in: query
+      - description: 'Attributes to order by, multi criteria sort is supported. Prefix
+          with `-` for descending order. Supported attributes: `id, state, dag_id,
+          run_id, logical_date, run_after, start_date, end_date, updated_at, conf,
+          duration, dag_run_id`'
+        in: query
         name: order_by
         required: false
         schema:
           default:
           - id
+          description: 'Attributes to order by, multi criteria sort is supported.
+            Prefix with `-` for descending order. Supported attributes: `id, state,
+            dag_id, run_id, logical_date, run_after, start_date, end_date, updated_at,
+            conf, duration, dag_run_id`'
           items:
             type: string
           title: Order By
@@ -7208,12 +7207,21 @@
           minimum: 0
           title: Offset
           type: integer
-      - in: query
+      - description: 'Attributes to order by, multi criteria sort is supported. Prefix
+          with `-` for descending order. Supported attributes: `ti_id, subject, responded_at,
+          created_at, responded_by_user_id, responded_by_user_name, dag_id, run_id,
+          run_after, rendered_map_index, task_instance_operator, task_instance_state`'
+        in: query
         name: order_by
         required: false
         schema:
           default:
           - ti_id
+          description: 'Attributes to order by, multi criteria sort is supported.
+            Prefix with `-` for descending order. Supported attributes: `ti_id, subject,
+            responded_at, created_at, responded_by_user_id, responded_by_user_name,
+            dag_id, run_id, run_after, rendered_map_index, task_instance_operator,
+            task_instance_state`'
           items:
             type: string
           title: Order By
@@ -7632,12 +7640,22 @@
           minimum: 0
           title: Offset
           type: integer
-      - in: query
+      - description: 'Attributes to order by, multi criteria sort is supported. Prefix
+          with `-` for descending order. Supported attributes: `id, state, duration,
+          start_date, end_date, map_index, try_number, logical_date, run_after, data_interval_start,
+          data_interval_end, rendered_map_index, operator, logical_date, run_after,
+          data_interval_start, data_interval_end`'
+        in: query
         name: order_by
         required: false
         schema:
           default:
           - map_index
+          description: 'Attributes to order by, multi criteria sort is supported.
+            Prefix with `-` for descending order. Supported attributes: `id, state,
+            duration, start_date, end_date, map_index, try_number, logical_date, run_after,
+            data_interval_start, data_interval_end, rendered_map_index, operator,
+            logical_date, run_after, data_interval_start, data_interval_end`'
           items:
             type: string
           title: Order By
@@ -8578,12 +8596,22 @@
           minimum: 0
           title: Offset
           type: integer
-      - in: query
+      - description: 'Attributes to order by, multi criteria sort is supported. Prefix
+          with `-` for descending order. Supported attributes: `id, state, duration,
+          start_date, end_date, map_index, try_number, logical_date, run_after, data_interval_start,
+          data_interval_end, rendered_map_index, operator, run_after, logical_date,
+          data_interval_start, data_interval_end`'
+        in: query
         name: order_by
         required: false
         schema:
           default:
           - map_index
+          description: 'Attributes to order by, multi criteria sort is supported.
+            Prefix with `-` for descending order. Supported attributes: `id, state,
+            duration, start_date, end_date, map_index, try_number, logical_date, run_after,
+            data_interval_start, data_interval_end, rendered_map_index, operator,
+            run_after, logical_date, data_interval_start, data_interval_end`'
           items:
             type: string
           title: Order By
@@ -10084,12 +10112,18 @@
         schema:
           nullable: true
           type: string
-      - in: query
+      - description: 'Attributes to order by, multi criteria sort is supported. Prefix
+          with `-` for descending order. Supported attributes: `id, version_number,
+          bundle_name, bundle_version`'
+        in: query
         name: order_by
         required: false
         schema:
           default:
           - id
+          description: 'Attributes to order by, multi criteria sort is supported.
+            Prefix with `-` for descending order. Supported attributes: `id, version_number,
+            bundle_name, bundle_version`'
           items:
             type: string
           title: Order By
@@ -10474,12 +10508,18 @@
           minimum: 0
           title: Offset
           type: integer
-      - in: query
+      - description: 'Attributes to order by, multi criteria sort is supported. Prefix
+          with `-` for descending order. Supported attributes: `id, dttm, dag_id,
+          task_id, run_id, event, logical_date, owner, extra, when, event_log_id`'
+        in: query
         name: order_by
         required: false
         schema:
           default:
           - id
+          description: 'Attributes to order by, multi criteria sort is supported.
+            Prefix with `-` for descending order. Supported attributes: `id, dttm,
+            dag_id, task_id, run_id, event, logical_date, owner, extra, when, event_log_id`'
           items:
             type: string
           title: Order By
@@ -10695,12 +10735,18 @@
           minimum: 0
           title: Offset
           type: integer
-      - in: query
+      - description: 'Attributes to order by, multi criteria sort is supported. Prefix
+          with `-` for descending order. Supported attributes: `id, timestamp, filename,
+          bundle_name, stacktrace, import_error_id`'
+        in: query
         name: order_by
         required: false
         schema:
           default:
           - id
+          description: 'Attributes to order by, multi criteria sort is supported.
+            Prefix with `-` for descending order. Supported attributes: `id, timestamp,
+            filename, bundle_name, stacktrace, import_error_id`'
           items:
             type: string
           title: Order By
@@ -10875,12 +10921,20 @@
           minimum: 0
           title: Offset
           type: integer
-      - in: query
+      - description: 'Attributes to order by, multi criteria sort is supported. Prefix
+          with `-` for descending order. Supported attributes: `id, dag_id, state,
+          job_type, start_date, end_date, latest_heartbeat, executor_class, hostname,
+          unixname`'
+        in: query
         name: order_by
         required: false
         schema:
           default:
           - id
+          description: 'Attributes to order by, multi criteria sort is supported.
+            Prefix with `-` for descending order. Supported attributes: `id, dag_id,
+            state, job_type, start_date, end_date, latest_heartbeat, executor_class,
+            hostname, unixname`'
           items:
             type: string
           title: Order By
@@ -11106,12 +11160,17 @@
           minimum: 0
           title: Offset
           type: integer
-      - in: query
+      - description: 'Attributes to order by, multi criteria sort is supported. Prefix
+          with `-` for descending order. Supported attributes: `id, pool, name`'
+        in: query
         name: order_by
         required: false
         schema:
           default:
           - id
+          description: 'Attributes to order by, multi criteria sort is supported.
+            Prefix with `-` for descending order. Supported attributes: `id, pool,
+            name`'
           items:
             type: string
           title: Order By
@@ -11484,12 +11543,18 @@
           minimum: 0
           title: Offset
           type: integer
-      - in: query
+      - description: 'Attributes to order by, multi criteria sort is supported. Prefix
+          with `-` for descending order. Supported attributes: `key, id, _val, description,
+          is_encrypted`'
+        in: query
         name: order_by
         required: false
         schema:
           default:
           - id
+          description: 'Attributes to order by, multi criteria sort is supported.
+            Prefix with `-` for descending order. Supported attributes: `key, id,
+            _val, description, is_encrypted`'
           items:
             type: string
           title: Order By
diff --git a/test/test_asset_collection_response.py b/test/test_asset_collection_response.py
index 8f5416e..0145173 100644
--- a/test/test_asset_collection_response.py
+++ b/test/test_asset_collection_response.py
@@ -51,7 +51,9 @@
                                 updated_at = datetime.datetime.strptime('2013-10-20 19:20:30.00', '%Y-%m-%d %H:%M:%S.%f'), )
                             ], 
                         created_at = datetime.datetime.strptime('2013-10-20 19:20:30.00', '%Y-%m-%d %H:%M:%S.%f'), 
-                        extra = airflow_client.client.models.extra.extra(), 
+                        extra = {
+                            'key' : null
+                            }, 
                         group = '', 
                         id = 56, 
                         last_asset_event = airflow_client.client.models.last_asset_event_response.LastAssetEventResponse(
@@ -94,7 +96,9 @@
                                 updated_at = datetime.datetime.strptime('2013-10-20 19:20:30.00', '%Y-%m-%d %H:%M:%S.%f'), )
                             ], 
                         created_at = datetime.datetime.strptime('2013-10-20 19:20:30.00', '%Y-%m-%d %H:%M:%S.%f'), 
-                        extra = airflow_client.client.models.extra.extra(), 
+                        extra = {
+                            'key' : null
+                            }, 
                         group = '', 
                         id = 56, 
                         last_asset_event = airflow_client.client.models.last_asset_event_response.LastAssetEventResponse(
diff --git a/test/test_asset_event_collection_response.py b/test/test_asset_event_collection_response.py
index 315165c..596fe73 100644
--- a/test/test_asset_event_collection_response.py
+++ b/test/test_asset_event_collection_response.py
@@ -49,7 +49,9 @@
                                 start_date = datetime.datetime.strptime('2013-10-20 19:20:30.00', '%Y-%m-%d %H:%M:%S.%f'), 
                                 state = '', )
                             ], 
-                        extra = airflow_client.client.models.extra.extra(), 
+                        extra = {
+                            'key' : null
+                            }, 
                         group = '', 
                         id = 56, 
                         name = '', 
@@ -78,7 +80,9 @@
                                 start_date = datetime.datetime.strptime('2013-10-20 19:20:30.00', '%Y-%m-%d %H:%M:%S.%f'), 
                                 state = '', )
                             ], 
-                        extra = airflow_client.client.models.extra.extra(), 
+                        extra = {
+                            'key' : null
+                            }, 
                         group = '', 
                         id = 56, 
                         name = '', 
diff --git a/test/test_asset_event_response.py b/test/test_asset_event_response.py
index 84f9635..4ee8512 100644
--- a/test/test_asset_event_response.py
+++ b/test/test_asset_event_response.py
@@ -47,7 +47,9 @@
                         start_date = datetime.datetime.strptime('2013-10-20 19:20:30.00', '%Y-%m-%d %H:%M:%S.%f'), 
                         state = '', )
                     ],
-                extra = airflow_client.client.models.extra.extra(),
+                extra = {
+                    'key' : null
+                    },
                 group = '',
                 id = 56,
                 name = '',
diff --git a/test/test_asset_response.py b/test/test_asset_response.py
index a9788cf..96936c5 100644
--- a/test/test_asset_response.py
+++ b/test/test_asset_response.py
@@ -49,7 +49,9 @@
                         updated_at = datetime.datetime.strptime('2013-10-20 19:20:30.00', '%Y-%m-%d %H:%M:%S.%f'), )
                     ],
                 created_at = datetime.datetime.strptime('2013-10-20 19:20:30.00', '%Y-%m-%d %H:%M:%S.%f'),
-                extra = airflow_client.client.models.extra.extra(),
+                extra = {
+                    'key' : null
+                    },
                 group = '',
                 id = 56,
                 last_asset_event = airflow_client.client.models.last_asset_event_response.LastAssetEventResponse(
diff --git a/test/test_dag_details_response.py b/test/test_dag_details_response.py
index 87509a8..8473cc7 100644
--- a/test/test_dag_details_response.py
+++ b/test/test_dag_details_response.py
@@ -35,7 +35,7 @@
         model = DAGDetailsResponse()
         if include_optional:
             return DAGDetailsResponse(
-                asset_expression = airflow_client.client.models.extra.extra(),
+                asset_expression = None,
                 bundle_name = '',
                 bundle_version = '',
                 catchup = True,
@@ -43,7 +43,7 @@
                 dag_display_name = '',
                 dag_id = '',
                 dag_run_timeout = '',
-                default_args = airflow_client.client.models.extra.extra(),
+                default_args = None,
                 description = '',
                 doc_md = '',
                 end_date = datetime.datetime.strptime('2013-10-20 19:20:30.00', '%Y-%m-%d %H:%M:%S.%f'),
@@ -51,6 +51,7 @@
                 fileloc = '',
                 has_import_errors = True,
                 has_task_concurrency_limits = True,
+                is_favorite = True,
                 is_paused = True,
                 is_paused_upon_creation = True,
                 is_stale = True,
@@ -80,7 +81,7 @@
                 owners = [
                     ''
                     ],
-                params = airflow_client.client.models.extra.extra(),
+                params = None,
                 relative_fileloc = '',
                 render_template_as_native_obj = True,
                 start_date = datetime.datetime.strptime('2013-10-20 19:20:30.00', '%Y-%m-%d %H:%M:%S.%f'),
diff --git a/test/test_dag_report_api.py b/test/test_dag_report_api.py
deleted file mode 100644
index 39bd169..0000000
--- a/test/test_dag_report_api.py
+++ /dev/null
@@ -1,38 +0,0 @@
-# coding: utf-8
-
-"""
-    Airflow API
-
-    Airflow API. All endpoints located under ``/api/v2`` can be used safely, are stable and backward compatible. Endpoints located under ``/ui`` are dedicated to the UI and are subject to breaking change depending on the need of the frontend. Users should not rely on those but use the public ones instead.
-
-    The version of the OpenAPI document: 2
-    Generated by OpenAPI Generator (https://openapi-generator.tech)
-
-    Do not edit the class manually.
-"""  # noqa: E501
-
-
-import unittest
-
-from airflow_client.client.api.dag_report_api import DagReportApi
-
-
-class TestDagReportApi(unittest.TestCase):
-    """DagReportApi unit test stubs"""
-
-    def setUp(self) -> None:
-        self.api = DagReportApi()
-
-    def tearDown(self) -> None:
-        pass
-
-    def test_get_dag_reports(self) -> None:
-        """Test case for get_dag_reports
-
-        Get Dag Reports
-        """
-        pass
-
-
-if __name__ == '__main__':
-    unittest.main()
diff --git a/test/test_dag_run_collection_response.py b/test/test_dag_run_collection_response.py
index 04877f4..26f8fa1 100644
--- a/test/test_dag_run_collection_response.py
+++ b/test/test_dag_run_collection_response.py
@@ -38,7 +38,7 @@
                 dag_runs = [
                     airflow_client.client.models.dag_run_response.DAGRunResponse(
                         bundle_version = '', 
-                        conf = airflow_client.client.models.extra.extra(), 
+                        conf = airflow_client.client.models.conf.conf(), 
                         dag_display_name = '', 
                         dag_id = '', 
                         dag_run_id = '', 
@@ -75,7 +75,7 @@
                 dag_runs = [
                     airflow_client.client.models.dag_run_response.DAGRunResponse(
                         bundle_version = '', 
-                        conf = airflow_client.client.models.extra.extra(), 
+                        conf = airflow_client.client.models.conf.conf(), 
                         dag_display_name = '', 
                         dag_id = '', 
                         dag_run_id = '', 
diff --git a/test/test_dag_run_response.py b/test/test_dag_run_response.py
index 7e37897..ce41ee3 100644
--- a/test/test_dag_run_response.py
+++ b/test/test_dag_run_response.py
@@ -36,7 +36,7 @@
         if include_optional:
             return DAGRunResponse(
                 bundle_version = '',
-                conf = airflow_client.client.models.extra.extra(),
+                conf = airflow_client.client.models.conf.conf(),
                 dag_display_name = '',
                 dag_id = '',
                 dag_run_id = '',
diff --git a/test/test_event_log_collection_response.py b/test/test_event_log_collection_response.py
index 2c8cc35..99d1a23 100644
--- a/test/test_event_log_collection_response.py
+++ b/test/test_event_log_collection_response.py
@@ -46,6 +46,7 @@
                         map_index = 56, 
                         owner = '', 
                         run_id = '', 
+                        task_display_name = '', 
                         task_id = '', 
                         try_number = 56, 
                         when = datetime.datetime.strptime('2013-10-20 19:20:30.00', '%Y-%m-%d %H:%M:%S.%f'), )
@@ -65,6 +66,7 @@
                         map_index = 56, 
                         owner = '', 
                         run_id = '', 
+                        task_display_name = '', 
                         task_id = '', 
                         try_number = 56, 
                         when = datetime.datetime.strptime('2013-10-20 19:20:30.00', '%Y-%m-%d %H:%M:%S.%f'), )
diff --git a/test/test_event_log_response.py b/test/test_event_log_response.py
index 47e0e6f..320cb7e 100644
--- a/test/test_event_log_response.py
+++ b/test/test_event_log_response.py
@@ -44,6 +44,7 @@
                 map_index = 56,
                 owner = '',
                 run_id = '',
+                task_display_name = '',
                 task_id = '',
                 try_number = 56,
                 when = datetime.datetime.strptime('2013-10-20 19:20:30.00', '%Y-%m-%d %H:%M:%S.%f')
diff --git a/test/test_response_clear_dag_run.py b/test/test_response_clear_dag_run.py
index c7f50f8..a036ab8 100644
--- a/test/test_response_clear_dag_run.py
+++ b/test/test_response_clear_dag_run.py
@@ -97,7 +97,7 @@
                     ],
                 total_entries = 56,
                 bundle_version = '',
-                conf = airflow_client.client.models.extra.extra(),
+                conf = airflow_client.client.models.conf.conf(),
                 dag_display_name = '',
                 dag_id = '',
                 dag_run_id = '',
diff --git a/test/test_task_collection_response.py b/test/test_task_collection_response.py
index 197e8e7..1a1653a 100644
--- a/test/test_task_collection_response.py
+++ b/test/test_task_collection_response.py
@@ -37,7 +37,7 @@
             return TaskCollectionResponse(
                 tasks = [
                     airflow_client.client.models.task_response.TaskResponse(
-                        class_ref = airflow_client.client.models.extra.extra(), 
+                        class_ref = airflow_client.client.models.conf.conf(), 
                         depends_on_past = True, 
                         doc_md = '', 
                         downstream_task_ids = [
@@ -55,7 +55,7 @@
                         is_mapped = True, 
                         operator_name = '', 
                         owner = '', 
-                        params = airflow_client.client.models.extra.extra(), 
+                        params = airflow_client.client.models.conf.conf(), 
                         pool = '', 
                         pool_slots = 1.337, 
                         priority_weight = 1.337, 
@@ -85,7 +85,7 @@
             return TaskCollectionResponse(
                 tasks = [
                     airflow_client.client.models.task_response.TaskResponse(
-                        class_ref = airflow_client.client.models.extra.extra(), 
+                        class_ref = airflow_client.client.models.conf.conf(), 
                         depends_on_past = True, 
                         doc_md = '', 
                         downstream_task_ids = [
@@ -103,7 +103,7 @@
                         is_mapped = True, 
                         operator_name = '', 
                         owner = '', 
-                        params = airflow_client.client.models.extra.extra(), 
+                        params = airflow_client.client.models.conf.conf(), 
                         pool = '', 
                         pool_slots = 1.337, 
                         priority_weight = 1.337, 
diff --git a/test/test_task_response.py b/test/test_task_response.py
index 6309a98..1997500 100644
--- a/test/test_task_response.py
+++ b/test/test_task_response.py
@@ -35,7 +35,7 @@
         model = TaskResponse()
         if include_optional:
             return TaskResponse(
-                class_ref = airflow_client.client.models.extra.extra(),
+                class_ref = airflow_client.client.models.conf.conf(),
                 depends_on_past = True,
                 doc_md = '',
                 downstream_task_ids = [
@@ -53,7 +53,7 @@
                 is_mapped = True,
                 operator_name = '',
                 owner = '',
-                params = airflow_client.client.models.extra.extra(),
+                params = airflow_client.client.models.conf.conf(),
                 pool = '',
                 pool_slots = 1.337,
                 priority_weight = 1.337,
diff --git a/test/test_trigger_dag_run_post_body.py b/test/test_trigger_dag_run_post_body.py
index bfedbd5..81c1f27 100644
--- a/test/test_trigger_dag_run_post_body.py
+++ b/test/test_trigger_dag_run_post_body.py
@@ -35,7 +35,7 @@
         model = TriggerDAGRunPostBody()
         if include_optional:
             return TriggerDAGRunPostBody(
-                conf = airflow_client.client.models.extra.extra(),
+                conf = airflow_client.client.models.conf.conf(),
                 dag_run_id = '',
                 data_interval_end = datetime.datetime.strptime('2013-10-20 19:20:30.00', '%Y-%m-%d %H:%M:%S.%f'),
                 data_interval_start = datetime.datetime.strptime('2013-10-20 19:20:30.00', '%Y-%m-%d %H:%M:%S.%f'),
diff --git a/version.txt b/version.txt
index a0cd9f0..ff365e0 100644
--- a/version.txt
+++ b/version.txt
@@ -1 +1 @@
-3.1.0
\ No newline at end of file
+3.1.3
