This is an automated email from the ASF dual-hosted git repository.

potiuk pushed a commit to branch main
in repository https://gitbox.apache.org/repos/asf/airflow.git


The following commit(s) were added to refs/heads/main by this push:
     new c4a209ba0ec Load hook metadata from YAML without importing Hook class 
(#63826)
c4a209ba0ec is described below

commit c4a209ba0ec1749ce0d0ac561fb22feba5bad567
Author: Yuseok Jo <[email protected]>
AuthorDate: Sun Apr 5 00:41:36 2026 +0900

    Load hook metadata from YAML without importing Hook class (#63826)
    
    * Load hook metadata from YAML without importing Hook class
    
    * Add hook-name to all provider.yaml connection-types
    
    * Add hook-name to connection types and regenerate get_provider_info.py
    
    * Fix ruff import order in connections.py
    
    * fix: import ProvidersManager at top level per review
    
    * Fix provider connection hook display names
    
    * Add iter_connection_type_hook_ui_metadata for connection UI hook metadata
---
 .../core_api/services/ui/connections.py            | 32 ++++++-------
 airflow-core/src/airflow/provider.yaml.schema.json |  4 ++
 airflow-core/src/airflow/provider_info.schema.json |  4 ++
 airflow-core/src/airflow/providers_manager.py      | 55 +++++++++++++++++++++-
 .../tests/unit/always/test_providers_manager.py    |  8 ++++
 providers/airbyte/provider.yaml                    |  1 +
 .../airflow/providers/airbyte/get_provider_info.py |  1 +
 providers/alibaba/provider.yaml                    |  4 ++
 .../airflow/providers/alibaba/get_provider_info.py |  4 ++
 providers/amazon/provider.yaml                     |  5 ++
 .../airflow/providers/amazon/get_provider_info.py  |  5 ++
 providers/apache/cassandra/provider.yaml           |  1 +
 .../apache/cassandra/get_provider_info.py          |  1 +
 providers/apache/drill/provider.yaml               |  1 +
 .../providers/apache/drill/get_provider_info.py    |  1 +
 providers/apache/druid/provider.yaml               |  1 +
 .../providers/apache/druid/get_provider_info.py    |  1 +
 providers/apache/hdfs/provider.yaml                |  1 +
 .../providers/apache/hdfs/get_provider_info.py     |  1 +
 providers/apache/hive/provider.yaml                |  3 ++
 .../providers/apache/hive/get_provider_info.py     |  3 ++
 providers/apache/iceberg/provider.yaml             |  1 +
 .../providers/apache/iceberg/get_provider_info.py  |  1 +
 providers/apache/impala/provider.yaml              |  1 +
 .../providers/apache/impala/get_provider_info.py   |  1 +
 providers/apache/kafka/provider.yaml               |  1 +
 .../providers/apache/kafka/get_provider_info.py    |  1 +
 providers/apache/kylin/provider.yaml               |  1 +
 .../providers/apache/kylin/get_provider_info.py    |  1 +
 providers/apache/livy/provider.yaml                |  1 +
 .../providers/apache/livy/get_provider_info.py     |  1 +
 providers/apache/pig/provider.yaml                 |  1 +
 .../providers/apache/pig/get_provider_info.py      |  1 +
 providers/apache/pinot/provider.yaml               |  2 +
 .../providers/apache/pinot/get_provider_info.py    |  2 +
 providers/apache/spark/provider.yaml               |  4 ++
 .../providers/apache/spark/get_provider_info.py    |  4 ++
 providers/apache/tinkerpop/provider.yaml           |  1 +
 .../apache/tinkerpop/get_provider_info.py          |  1 +
 providers/apprise/provider.yaml                    |  1 +
 .../airflow/providers/apprise/get_provider_info.py |  1 +
 providers/arangodb/provider.yaml                   |  1 +
 .../providers/arangodb/get_provider_info.py        |  1 +
 providers/asana/provider.yaml                      |  1 +
 .../airflow/providers/asana/get_provider_info.py   |  1 +
 providers/atlassian/jira/provider.yaml             |  1 +
 .../providers/atlassian/jira/get_provider_info.py  |  1 +
 providers/cloudant/provider.yaml                   |  1 +
 .../providers/cloudant/get_provider_info.py        |  1 +
 providers/cncf/kubernetes/provider.yaml            |  1 +
 .../providers/cncf/kubernetes/get_provider_info.py |  1 +
 providers/cohere/provider.yaml                     |  1 +
 .../airflow/providers/cohere/get_provider_info.py  |  1 +
 providers/common/ai/provider.yaml                  |  5 ++
 .../providers/common/ai/get_provider_info.py       |  5 ++
 providers/databricks/provider.yaml                 |  1 +
 .../providers/databricks/get_provider_info.py      |  1 +
 providers/datadog/provider.yaml                    |  1 +
 .../airflow/providers/datadog/get_provider_info.py |  1 +
 providers/dbt/cloud/provider.yaml                  |  1 +
 .../providers/dbt/cloud/get_provider_info.py       |  1 +
 providers/dingding/provider.yaml                   |  1 +
 .../providers/dingding/get_provider_info.py        |  1 +
 providers/discord/provider.yaml                    |  1 +
 .../airflow/providers/discord/get_provider_info.py |  1 +
 providers/docker/provider.yaml                     |  1 +
 .../airflow/providers/docker/get_provider_info.py  |  1 +
 providers/elasticsearch/provider.yaml              |  1 +
 .../providers/elasticsearch/get_provider_info.py   |  1 +
 providers/exasol/provider.yaml                     |  1 +
 .../airflow/providers/exasol/get_provider_info.py  |  1 +
 providers/facebook/provider.yaml                   |  1 +
 .../providers/facebook/get_provider_info.py        |  1 +
 providers/ftp/provider.yaml                        |  1 +
 .../src/airflow/providers/ftp/get_provider_info.py |  6 ++-
 providers/git/provider.yaml                        |  1 +
 .../src/airflow/providers/git/get_provider_info.py |  1 +
 providers/github/provider.yaml                     |  1 +
 .../airflow/providers/github/get_provider_info.py  |  1 +
 providers/google/provider.yaml                     |  9 ++++
 .../airflow/providers/google/get_provider_info.py  |  9 ++++
 providers/grpc/provider.yaml                       |  1 +
 .../airflow/providers/grpc/get_provider_info.py    |  1 +
 providers/hashicorp/provider.yaml                  |  1 +
 .../providers/hashicorp/get_provider_info.py       |  1 +
 providers/http/provider.yaml                       |  1 +
 .../airflow/providers/http/get_provider_info.py    |  1 +
 providers/imap/provider.yaml                       |  1 +
 .../airflow/providers/imap/get_provider_info.py    |  6 ++-
 providers/influxdb/provider.yaml                   |  1 +
 .../providers/influxdb/get_provider_info.py        |  1 +
 providers/informatica/provider.yaml                |  1 +
 .../providers/informatica/get_provider_info.py     |  1 +
 providers/jdbc/provider.yaml                       |  1 +
 .../airflow/providers/jdbc/get_provider_info.py    |  1 +
 providers/jenkins/provider.yaml                    |  1 +
 .../airflow/providers/jenkins/get_provider_info.py |  1 +
 providers/microsoft/azure/provider.yaml            | 17 +++++++
 .../providers/microsoft/azure/get_provider_info.py | 17 +++++++
 .../providers/microsoft/azure/hooks/data_lake.py   |  2 +-
 providers/microsoft/mssql/provider.yaml            |  1 +
 .../providers/microsoft/mssql/get_provider_info.py |  1 +
 providers/microsoft/psrp/provider.yaml             |  1 +
 .../providers/microsoft/psrp/get_provider_info.py  |  1 +
 providers/microsoft/winrm/provider.yaml            |  1 +
 .../providers/microsoft/winrm/get_provider_info.py |  1 +
 providers/mongo/provider.yaml                      |  1 +
 .../airflow/providers/mongo/get_provider_info.py   |  1 +
 providers/mysql/provider.yaml                      |  1 +
 .../airflow/providers/mysql/get_provider_info.py   |  6 ++-
 providers/neo4j/provider.yaml                      |  1 +
 .../airflow/providers/neo4j/get_provider_info.py   |  6 ++-
 providers/odbc/provider.yaml                       |  1 +
 .../airflow/providers/odbc/get_provider_info.py    |  6 ++-
 providers/openai/provider.yaml                     |  1 +
 .../airflow/providers/openai/get_provider_info.py  |  1 +
 providers/openfaas/provider.yaml                   |  1 +
 .../providers/openfaas/get_provider_info.py        |  1 +
 providers/opensearch/provider.yaml                 |  1 +
 .../providers/opensearch/get_provider_info.py      |  1 +
 providers/opsgenie/provider.yaml                   |  1 +
 .../providers/opsgenie/get_provider_info.py        |  1 +
 providers/oracle/provider.yaml                     |  1 +
 .../airflow/providers/oracle/get_provider_info.py  |  1 +
 providers/pagerduty/provider.yaml                  |  2 +
 .../providers/pagerduty/get_provider_info.py       |  2 +
 providers/papermill/provider.yaml                  |  1 +
 .../providers/papermill/get_provider_info.py       |  1 +
 providers/pinecone/provider.yaml                   |  1 +
 .../providers/pinecone/get_provider_info.py        |  1 +
 providers/postgres/provider.yaml                   |  1 +
 .../providers/postgres/get_provider_info.py        |  1 +
 providers/presto/provider.yaml                     |  1 +
 .../airflow/providers/presto/get_provider_info.py  |  1 +
 providers/qdrant/provider.yaml                     |  1 +
 .../airflow/providers/qdrant/get_provider_info.py  |  1 +
 providers/redis/provider.yaml                      |  1 +
 .../airflow/providers/redis/get_provider_info.py   |  1 +
 providers/salesforce/provider.yaml                 |  1 +
 .../providers/salesforce/get_provider_info.py      |  1 +
 providers/samba/provider.yaml                      |  1 +
 .../airflow/providers/samba/get_provider_info.py   |  1 +
 providers/segment/provider.yaml                    |  1 +
 .../airflow/providers/segment/get_provider_info.py |  1 +
 providers/sftp/provider.yaml                       |  1 +
 .../airflow/providers/sftp/get_provider_info.py    |  1 +
 providers/slack/provider.yaml                      |  2 +
 .../airflow/providers/slack/get_provider_info.py   |  2 +
 providers/smtp/provider.yaml                       |  1 +
 .../airflow/providers/smtp/get_provider_info.py    |  1 +
 providers/snowflake/provider.yaml                  |  1 +
 .../providers/snowflake/get_provider_info.py       |  1 +
 providers/sqlite/provider.yaml                     |  1 +
 .../airflow/providers/sqlite/get_provider_info.py  |  1 +
 providers/ssh/provider.yaml                        |  1 +
 .../src/airflow/providers/ssh/get_provider_info.py |  1 +
 providers/standard/provider.yaml                   |  2 +
 .../providers/standard/get_provider_info.py        |  2 +
 providers/tableau/provider.yaml                    |  1 +
 .../airflow/providers/tableau/get_provider_info.py |  1 +
 providers/telegram/provider.yaml                   |  1 +
 .../providers/telegram/get_provider_info.py        |  1 +
 providers/teradata/provider.yaml                   |  1 +
 .../providers/teradata/get_provider_info.py        |  1 +
 providers/trino/provider.yaml                      |  1 +
 .../airflow/providers/trino/get_provider_info.py   |  1 +
 providers/vertica/provider.yaml                    |  1 +
 .../airflow/providers/vertica/get_provider_info.py |  1 +
 providers/weaviate/provider.yaml                   |  1 +
 .../providers/weaviate/get_provider_info.py        |  1 +
 providers/yandex/provider.yaml                     |  1 +
 .../airflow/providers/yandex/get_provider_info.py  |  1 +
 .../src/airflow/providers/yandex/hooks/yandex.py   |  4 +-
 providers/ydb/provider.yaml                        |  1 +
 .../src/airflow/providers/ydb/get_provider_info.py |  1 +
 providers/zendesk/provider.yaml                    |  1 +
 .../airflow/providers/zendesk/get_provider_info.py |  1 +
 177 files changed, 365 insertions(+), 27 deletions(-)

diff --git 
a/airflow-core/src/airflow/api_fastapi/core_api/services/ui/connections.py 
b/airflow-core/src/airflow/api_fastapi/core_api/services/ui/connections.py
index 12e823ce1d8..75a13a175e4 100644
--- a/airflow-core/src/airflow/api_fastapi/core_api/services/ui/connections.py
+++ b/airflow-core/src/airflow/api_fastapi/core_api/services/ui/connections.py
@@ -27,10 +27,11 @@ from airflow.api_fastapi.core_api.datamodels.connections 
import (
     ConnectionHookMetaData,
     StandardHookFields,
 )
+from airflow.providers_manager import HookInfo, ProvidersManager
 from airflow.serialization.definitions.param import SerializedParam
 
 if TYPE_CHECKING:
-    from airflow.providers_manager import ConnectionFormWidgetInfo, HookInfo
+    from airflow.providers_manager import ConnectionFormWidgetInfo
 
 log = logging.getLogger(__name__)
 
@@ -126,8 +127,6 @@ class HookMetaService:
         """Get hooks with all details w/o FAB needing to be installed."""
         from unittest import mock
 
-        from airflow.providers_manager import ProvidersManager
-
         def mock_lazy_gettext(txt: str) -> str:
             """Mock for flask_babel.lazy_gettext."""
             return txt
@@ -282,19 +281,16 @@ class HookMetaService:
     @staticmethod
     @cache
     def hook_meta_data() -> list[ConnectionHookMetaData]:
-        hooks, connection_form_widgets, field_behaviours = 
HookMetaService._get_hooks_with_mocked_fab()
-        result: list[ConnectionHookMetaData] = []
-        widgets = 
HookMetaService._convert_extra_fields(connection_form_widgets)
-        for hook_key, hook_info in hooks.items():
-            if not hook_info:
-                continue
-            hook_meta = ConnectionHookMetaData(
-                connection_type=hook_key,
-                hook_class_name=hook_info.hook_class_name,
-                default_conn_name=None,  # TODO: later
-                hook_name=hook_info.hook_name,
-                
standard_fields=HookMetaService._make_standard_fields(field_behaviours.get(hook_key)),
-                extra_fields=widgets.get(hook_key),
+        pm = ProvidersManager()
+        widgets = 
HookMetaService._convert_extra_fields(pm._connection_form_widgets_from_metadata)
+        return [
+            ConnectionHookMetaData(
+                connection_type=meta.connection_type,
+                hook_class_name=meta.hook_class_name,
+                default_conn_name=None,
+                hook_name=meta.hook_name,
+                
standard_fields=HookMetaService._make_standard_fields(meta.field_behaviour),
+                extra_fields=widgets.get(meta.connection_type),
             )
-            result.append(hook_meta)
-        return result
+            for meta in pm.iter_connection_type_hook_ui_metadata()
+        ]
diff --git a/airflow-core/src/airflow/provider.yaml.schema.json 
b/airflow-core/src/airflow/provider.yaml.schema.json
index ac6b05f30c8..5714b8db658 100644
--- a/airflow-core/src/airflow/provider.yaml.schema.json
+++ b/airflow-core/src/airflow/provider.yaml.schema.json
@@ -378,6 +378,10 @@
                         "description": "Hook class name that implements the 
connection type",
                         "type": "string"
                     },
+                    "hook-name": {
+                        "description": "Display name for the connection type 
in the UI (e.g. 'File (path)', 'Slack')",
+                        "type": "string"
+                    },
                     "ui-field-behaviour": {
                         "description": "Customizations for standard connection 
form fields",
                         "type": "object",
diff --git a/airflow-core/src/airflow/provider_info.schema.json 
b/airflow-core/src/airflow/provider_info.schema.json
index 7c3eea12591..86fc726a051 100644
--- a/airflow-core/src/airflow/provider_info.schema.json
+++ b/airflow-core/src/airflow/provider_info.schema.json
@@ -298,6 +298,10 @@
                     "hook-class-name": {
                         "description": "Hook class name that implements the 
connection type",
                         "type": "string"
+                    },
+                    "hook-name": {
+                        "description": "Display name for the connection type 
in the UI",
+                        "type": "string"
                     }
                 },
                 "required": [
diff --git a/airflow-core/src/airflow/providers_manager.py 
b/airflow-core/src/airflow/providers_manager.py
index b8d48a31b9c..6fefcbc39b0 100644
--- a/airflow-core/src/airflow/providers_manager.py
+++ b/airflow-core/src/airflow/providers_manager.py
@@ -26,7 +26,7 @@ import json
 import logging
 import traceback
 import warnings
-from collections.abc import Callable, MutableMapping
+from collections.abc import Callable, Iterator, MutableMapping
 from dataclasses import dataclass
 from functools import wraps
 from importlib.resources import files as resource_files
@@ -243,6 +243,15 @@ class HookInfo(NamedTuple):
     dialects: list[str] = []
 
 
+class ConnectionTypeHookUIMetadata(NamedTuple):
+    """Hook metadata for one connection type (connection UI); 
``field_behaviour`` is standard fields."""
+
+    connection_type: str
+    hook_name: str
+    hook_class_name: str | None
+    field_behaviour: dict | None
+
+
 class ConnectionFormWidgetInfo(NamedTuple):
     """Connection Form Widget information."""
 
@@ -413,6 +422,8 @@ class ProvidersManager(LoggingMixin):
         self._dialect_provider_dict: dict[str, DialectInfo] = {}
         # Keeps dict of hooks keyed by connection type. They are lazy 
evaluated at access time
         self._hooks_lazy_dict: LazyDictWithCache[str, HookInfo | Callable] = 
LazyDictWithCache()
+        # Keeps hook display names read from provider.yaml (hook-name field)
+        self._hook_name_dict: dict[str, str] = {}
         # Keeps methods that should be used to add custom widgets tuple of 
keyed by name of the extra field
         self._connection_form_widgets: dict[str, ConnectionFormWidgetInfo] = {}
         # Customizations for javascript fields are kept here
@@ -979,6 +990,9 @@ class ProvidersManager(LoggingMixin):
                 if not connection_type or not hook_class_name:
                     continue
 
+                if hook_name := conn_config.get("hook-name"):
+                    self._hook_name_dict[connection_type] = hook_name
+
                 if conn_fields := conn_config.get("conn-fields"):
                     self._add_widgets(package_name, hook_class_name, 
connection_type, conn_fields)
 
@@ -1349,6 +1363,45 @@ class ProvidersManager(LoggingMixin):
         # When we return hooks here it will only be used to retrieve hook 
information
         return self._hooks_lazy_dict
 
+    def iter_connection_type_hook_ui_metadata(self) -> 
Iterator[ConnectionTypeHookUIMetadata]:
+        """
+        Yield hook metadata per connection type for the connection UI.
+
+        Does not import hook classes.
+        """
+        self.initialize_providers_hooks()
+        all_types = frozenset(self._hooks_lazy_dict) | 
frozenset(self._hook_provider_dict)
+        for conn_type in sorted(all_types):
+            raw_entry = self._hooks_lazy_dict._raw_dict.get(conn_type)
+            provider_entry = self._hook_provider_dict.get(conn_type)
+            if isinstance(raw_entry, HookInfo):
+                hook_name = raw_entry.hook_name
+                hook_class_name = raw_entry.hook_class_name
+            elif provider_entry:
+                hook_name = self._hook_name_dict.get(conn_type, conn_type)
+                hook_class_name = provider_entry.hook_class_name
+            else:
+                hook_name = self._hook_name_dict.get(conn_type, conn_type)
+                hook_class_name = None
+            yield ConnectionTypeHookUIMetadata(
+                connection_type=conn_type,
+                hook_name=hook_name,
+                hook_class_name=hook_class_name,
+                field_behaviour=self._field_behaviours.get(conn_type),
+            )
+
+    @property
+    def _connection_form_widgets_from_metadata(self) -> dict[str, 
ConnectionFormWidgetInfo]:
+        """Return connection form widgets from metadata without importing 
every hook."""
+        self.initialize_providers_hooks()
+        return self._connection_form_widgets
+
+    @property
+    def _field_behaviours_from_metadata(self) -> dict[str, dict]:
+        """Return field behaviour dicts from metadata without importing every 
hook."""
+        self.initialize_providers_hooks()
+        return self._field_behaviours
+
     @property
     def dialects(self) -> MutableMapping[str, DialectInfo]:
         """Return dictionary of connection_type-to-dialect mapping."""
diff --git a/airflow-core/tests/unit/always/test_providers_manager.py 
b/airflow-core/tests/unit/always/test_providers_manager.py
index 580676d18b3..afa473e80a4 100644
--- a/airflow-core/tests/unit/always/test_providers_manager.py
+++ b/airflow-core/tests/unit/always/test_providers_manager.py
@@ -428,6 +428,14 @@ class TestProvidersMetadataLoading:
         assert "relabeling" in behaviour
         assert "placeholders" in behaviour
 
+    def 
test_iter_connection_type_hook_ui_metadata_matches_field_behaviours(self):
+        """iter_connection_type_hook_ui_metadata should expose the same 
standard-field behaviour dict."""
+        pm = ProvidersManager()
+        pm.initialize_providers_hooks()
+        by_type = {m.connection_type: m for m in 
pm.iter_connection_type_hook_ui_metadata()}
+        assert "http" in by_type
+        assert by_type["http"].field_behaviour == pm._field_behaviours["http"]
+
     def test_ui_metadata_loading_without_hook_import(self):
         """Test that UI metadata loads from provider info without importing 
hook classes."""
         with patch("airflow.providers_manager.import_string") as mock_import:
diff --git a/providers/airbyte/provider.yaml b/providers/airbyte/provider.yaml
index 3c91ce73571..c12e15e064b 100644
--- a/providers/airbyte/provider.yaml
+++ b/providers/airbyte/provider.yaml
@@ -98,6 +98,7 @@ triggers:
 
 connection-types:
   - hook-class-name: airflow.providers.airbyte.hooks.airbyte.AirbyteHook
+    hook-name: "Airbyte"
     connection-type: airbyte
     ui-field-behaviour:
       hidden-fields:
diff --git 
a/providers/airbyte/src/airflow/providers/airbyte/get_provider_info.py 
b/providers/airbyte/src/airflow/providers/airbyte/get_provider_info.py
index 33be5eaa8bf..6ca1af004d5 100644
--- a/providers/airbyte/src/airflow/providers/airbyte/get_provider_info.py
+++ b/providers/airbyte/src/airflow/providers/airbyte/get_provider_info.py
@@ -50,6 +50,7 @@ def get_provider_info():
         "connection-types": [
             {
                 "hook-class-name": 
"airflow.providers.airbyte.hooks.airbyte.AirbyteHook",
+                "hook-name": "Airbyte",
                 "connection-type": "airbyte",
                 "ui-field-behaviour": {
                     "hidden-fields": ["extra", "port"],
diff --git a/providers/alibaba/provider.yaml b/providers/alibaba/provider.yaml
index 7b94aeae04c..f5bed7b7429 100644
--- a/providers/alibaba/provider.yaml
+++ b/providers/alibaba/provider.yaml
@@ -124,10 +124,13 @@ hooks:
 
 connection-types:
   - hook-class-name: airflow.providers.alibaba.cloud.hooks.oss.OSSHook
+    hook-name: "OSS"
     connection-type: oss
   - hook-class-name: 
airflow.providers.alibaba.cloud.hooks.analyticdb_spark.AnalyticDBSparkHook
+    hook-name: "AnalyticDB Spark"
     connection-type: adb_spark
   - hook-class-name: 
airflow.providers.alibaba.cloud.hooks.base_alibaba.AlibabaBaseHook
+    hook-name: "Alibaba Cloud"
     connection-type: alibaba_cloud
     conn-fields:
       access_key_id:
@@ -145,6 +148,7 @@ connection-types:
             - 'null'
           format: password
   - hook-class-name: 
airflow.providers.alibaba.cloud.hooks.maxcompute.MaxComputeHook
+    hook-name: "MaxCompute"
     connection-type: maxcompute
     ui-field-behaviour:
       hidden-fields:
diff --git 
a/providers/alibaba/src/airflow/providers/alibaba/get_provider_info.py 
b/providers/alibaba/src/airflow/providers/alibaba/get_provider_info.py
index 0b8a5ab971e..27e01cd0e74 100644
--- a/providers/alibaba/src/airflow/providers/alibaba/get_provider_info.py
+++ b/providers/alibaba/src/airflow/providers/alibaba/get_provider_info.py
@@ -91,14 +91,17 @@ def get_provider_info():
         "connection-types": [
             {
                 "hook-class-name": 
"airflow.providers.alibaba.cloud.hooks.oss.OSSHook",
+                "hook-name": "OSS",
                 "connection-type": "oss",
             },
             {
                 "hook-class-name": 
"airflow.providers.alibaba.cloud.hooks.analyticdb_spark.AnalyticDBSparkHook",
+                "hook-name": "AnalyticDB Spark",
                 "connection-type": "adb_spark",
             },
             {
                 "hook-class-name": 
"airflow.providers.alibaba.cloud.hooks.base_alibaba.AlibabaBaseHook",
+                "hook-name": "Alibaba Cloud",
                 "connection-type": "alibaba_cloud",
                 "conn-fields": {
                     "access_key_id": {
@@ -113,6 +116,7 @@ def get_provider_info():
             },
             {
                 "hook-class-name": 
"airflow.providers.alibaba.cloud.hooks.maxcompute.MaxComputeHook",
+                "hook-name": "MaxCompute",
                 "connection-type": "maxcompute",
                 "ui-field-behaviour": {
                     "hidden-fields": ["host", "schema", "login", "password", 
"port", "extra"],
diff --git a/providers/amazon/provider.yaml b/providers/amazon/provider.yaml
index 9431730bc02..fa59480e5c4 100644
--- a/providers/amazon/provider.yaml
+++ b/providers/amazon/provider.yaml
@@ -932,6 +932,7 @@ extra-links:
 
 connection-types:
   - hook-class-name: airflow.providers.amazon.aws.hooks.base_aws.AwsGenericHook
+    hook-name: "Amazon Web Services"
     connection-type: aws
     ui-field-behaviour:
       hidden-fields:
@@ -956,6 +957,7 @@ connection-types:
             "endpoint_url": "http://localhost:4566";
           }
   - hook-class-name: airflow.providers.amazon.aws.hooks.chime.ChimeWebhookHook
+    hook-name: "Amazon Chime Webhook"
     connection-type: chime
     ui-field-behaviour:
       hidden-fields:
@@ -970,6 +972,7 @@ connection-types:
         host: hooks.chime.aws/incomingwebhook/
         password: T00000000?token=XXXXXXXXXXXXXXXXXXXXXXXX
   - hook-class-name: airflow.providers.amazon.aws.hooks.emr.EmrHook
+    hook-name: "Amazon Elastic MapReduce"
     connection-type: emr
     ui-field-behaviour:
       hidden-fields:
@@ -1000,12 +1003,14 @@ connection-types:
             "StepConcurrencyLevel": 2
           }
   - hook-class-name: 
airflow.providers.amazon.aws.hooks.redshift_sql.RedshiftSQLHook
+    hook-name: "Amazon Redshift"
     connection-type: redshift
     ui-field-behaviour:
       relabeling:
         login: User
         schema: Database
   - hook-class-name: 
airflow.providers.amazon.aws.hooks.athena_sql.AthenaSQLHook
+    hook-name: "Amazon Athena"
     connection-type: athena
     ui-field-behaviour:
       hidden-fields:
diff --git a/providers/amazon/src/airflow/providers/amazon/get_provider_info.py 
b/providers/amazon/src/airflow/providers/amazon/get_provider_info.py
index 0db61399617..b09e1376268 100644
--- a/providers/amazon/src/airflow/providers/amazon/get_provider_info.py
+++ b/providers/amazon/src/airflow/providers/amazon/get_provider_info.py
@@ -1084,6 +1084,7 @@ def get_provider_info():
         "connection-types": [
             {
                 "hook-class-name": 
"airflow.providers.amazon.aws.hooks.base_aws.AwsGenericHook",
+                "hook-name": "Amazon Web Services",
                 "connection-type": "aws",
                 "ui-field-behaviour": {
                     "hidden-fields": ["host", "schema", "port"],
@@ -1097,6 +1098,7 @@ def get_provider_info():
             },
             {
                 "hook-class-name": 
"airflow.providers.amazon.aws.hooks.chime.ChimeWebhookHook",
+                "hook-name": "Amazon Chime Webhook",
                 "connection-type": "chime",
                 "ui-field-behaviour": {
                     "hidden-fields": ["login", "port", "extra"],
@@ -1110,6 +1112,7 @@ def get_provider_info():
             },
             {
                 "hook-class-name": 
"airflow.providers.amazon.aws.hooks.emr.EmrHook",
+                "hook-name": "Amazon Elastic MapReduce",
                 "connection-type": "emr",
                 "ui-field-behaviour": {
                     "hidden-fields": ["host", "schema", "port", "login", 
"password"],
@@ -1121,11 +1124,13 @@ def get_provider_info():
             },
             {
                 "hook-class-name": 
"airflow.providers.amazon.aws.hooks.redshift_sql.RedshiftSQLHook",
+                "hook-name": "Amazon Redshift",
                 "connection-type": "redshift",
                 "ui-field-behaviour": {"relabeling": {"login": "User", 
"schema": "Database"}},
             },
             {
                 "hook-class-name": 
"airflow.providers.amazon.aws.hooks.athena_sql.AthenaSQLHook",
+                "hook-name": "Amazon Athena",
                 "connection-type": "athena",
                 "ui-field-behaviour": {
                     "hidden-fields": ["host", "port"],
diff --git a/providers/apache/cassandra/provider.yaml 
b/providers/apache/cassandra/provider.yaml
index 364f880d814..2567553f833 100644
--- a/providers/apache/cassandra/provider.yaml
+++ b/providers/apache/cassandra/provider.yaml
@@ -86,4 +86,5 @@ hooks:
 
 connection-types:
   - hook-class-name: 
airflow.providers.apache.cassandra.hooks.cassandra.CassandraHook
+    hook-name: "Cassandra"
     connection-type: cassandra
diff --git 
a/providers/apache/cassandra/src/airflow/providers/apache/cassandra/get_provider_info.py
 
b/providers/apache/cassandra/src/airflow/providers/apache/cassandra/get_provider_info.py
index 263641e3587..64189675629 100644
--- 
a/providers/apache/cassandra/src/airflow/providers/apache/cassandra/get_provider_info.py
+++ 
b/providers/apache/cassandra/src/airflow/providers/apache/cassandra/get_provider_info.py
@@ -53,6 +53,7 @@ def get_provider_info():
         "connection-types": [
             {
                 "hook-class-name": 
"airflow.providers.apache.cassandra.hooks.cassandra.CassandraHook",
+                "hook-name": "Cassandra",
                 "connection-type": "cassandra",
             }
         ],
diff --git a/providers/apache/drill/provider.yaml 
b/providers/apache/drill/provider.yaml
index 1e8e88d5601..cf3168ae890 100644
--- a/providers/apache/drill/provider.yaml
+++ b/providers/apache/drill/provider.yaml
@@ -82,4 +82,5 @@ hooks:
 
 connection-types:
   - hook-class-name: airflow.providers.apache.drill.hooks.drill.DrillHook
+    hook-name: "Drill"
     connection-type: drill
diff --git 
a/providers/apache/drill/src/airflow/providers/apache/drill/get_provider_info.py
 
b/providers/apache/drill/src/airflow/providers/apache/drill/get_provider_info.py
index c767a12b370..6a5241392ed 100644
--- 
a/providers/apache/drill/src/airflow/providers/apache/drill/get_provider_info.py
+++ 
b/providers/apache/drill/src/airflow/providers/apache/drill/get_provider_info.py
@@ -44,6 +44,7 @@ def get_provider_info():
         "connection-types": [
             {
                 "hook-class-name": 
"airflow.providers.apache.drill.hooks.drill.DrillHook",
+                "hook-name": "Drill",
                 "connection-type": "drill",
             }
         ],
diff --git a/providers/apache/druid/provider.yaml 
b/providers/apache/druid/provider.yaml
index b292db7f120..55e8764cb1f 100644
--- a/providers/apache/druid/provider.yaml
+++ b/providers/apache/druid/provider.yaml
@@ -96,6 +96,7 @@ hooks:
 
 connection-types:
   - hook-class-name: airflow.providers.apache.druid.hooks.druid.DruidDbApiHook
+    hook-name: "Druid"
     connection-type: druid
 
 transfers:
diff --git 
a/providers/apache/druid/src/airflow/providers/apache/druid/get_provider_info.py
 
b/providers/apache/druid/src/airflow/providers/apache/druid/get_provider_info.py
index c9c501e8f38..00937437264 100644
--- 
a/providers/apache/druid/src/airflow/providers/apache/druid/get_provider_info.py
+++ 
b/providers/apache/druid/src/airflow/providers/apache/druid/get_provider_info.py
@@ -50,6 +50,7 @@ def get_provider_info():
         "connection-types": [
             {
                 "hook-class-name": 
"airflow.providers.apache.druid.hooks.druid.DruidDbApiHook",
+                "hook-name": "Druid",
                 "connection-type": "druid",
             }
         ],
diff --git a/providers/apache/hdfs/provider.yaml 
b/providers/apache/hdfs/provider.yaml
index ee3c7192fcd..63a602aa1b8 100644
--- a/providers/apache/hdfs/provider.yaml
+++ b/providers/apache/hdfs/provider.yaml
@@ -101,4 +101,5 @@ logging:
 
 connection-types:
   - hook-class-name: airflow.providers.apache.hdfs.hooks.webhdfs.WebHDFSHook
+    hook-name: "Apache WebHDFS"
     connection-type: webhdfs
diff --git 
a/providers/apache/hdfs/src/airflow/providers/apache/hdfs/get_provider_info.py 
b/providers/apache/hdfs/src/airflow/providers/apache/hdfs/get_provider_info.py
index 349b78a9b9e..3eaa9223206 100644
--- 
a/providers/apache/hdfs/src/airflow/providers/apache/hdfs/get_provider_info.py
+++ 
b/providers/apache/hdfs/src/airflow/providers/apache/hdfs/get_provider_info.py
@@ -53,6 +53,7 @@ def get_provider_info():
         "connection-types": [
             {
                 "hook-class-name": 
"airflow.providers.apache.hdfs.hooks.webhdfs.WebHDFSHook",
+                "hook-name": "Apache WebHDFS",
                 "connection-type": "webhdfs",
             }
         ],
diff --git a/providers/apache/hive/provider.yaml 
b/providers/apache/hive/provider.yaml
index 15f835a0875..84dcd4e8b70 100644
--- a/providers/apache/hive/provider.yaml
+++ b/providers/apache/hive/provider.yaml
@@ -144,6 +144,7 @@ transfers:
 
 connection-types:
   - hook-class-name: airflow.providers.apache.hive.hooks.hive.HiveCliHook
+    hook-name: "Hive Client Wrapper"
     connection-type: hive_cli
     ui-field-behaviour:
       hidden-fields:
@@ -179,8 +180,10 @@ connection-types:
             - 'null'
           default: false
   - hook-class-name: airflow.providers.apache.hive.hooks.hive.HiveServer2Hook
+    hook-name: "Hive Server 2 Thrift"
     connection-type: hiveserver2
   - hook-class-name: airflow.providers.apache.hive.hooks.hive.HiveMetastoreHook
+    hook-name: "Hive Metastore Thrift"
     connection-type: hive_metastore
 
 plugins:
diff --git 
a/providers/apache/hive/src/airflow/providers/apache/hive/get_provider_info.py 
b/providers/apache/hive/src/airflow/providers/apache/hive/get_provider_info.py
index 9929536d96f..7fe5d927704 100644
--- 
a/providers/apache/hive/src/airflow/providers/apache/hive/get_provider_info.py
+++ 
b/providers/apache/hive/src/airflow/providers/apache/hive/get_provider_info.py
@@ -95,6 +95,7 @@ def get_provider_info():
         "connection-types": [
             {
                 "hook-class-name": 
"airflow.providers.apache.hive.hooks.hive.HiveCliHook",
+                "hook-name": "Hive Client Wrapper",
                 "connection-type": "hive_cli",
                 "ui-field-behaviour": {"hidden-fields": ["extra"], 
"relabeling": {}},
                 "conn-fields": {
@@ -118,10 +119,12 @@ def get_provider_info():
             },
             {
                 "hook-class-name": 
"airflow.providers.apache.hive.hooks.hive.HiveServer2Hook",
+                "hook-name": "Hive Server 2 Thrift",
                 "connection-type": "hiveserver2",
             },
             {
                 "hook-class-name": 
"airflow.providers.apache.hive.hooks.hive.HiveMetastoreHook",
+                "hook-name": "Hive Metastore Thrift",
                 "connection-type": "hive_metastore",
             },
         ],
diff --git a/providers/apache/iceberg/provider.yaml 
b/providers/apache/iceberg/provider.yaml
index 12c7e0171d9..8ba84038777 100644
--- a/providers/apache/iceberg/provider.yaml
+++ b/providers/apache/iceberg/provider.yaml
@@ -56,6 +56,7 @@ hooks:
 
 connection-types:
   - hook-class-name: airflow.providers.apache.iceberg.hooks.iceberg.IcebergHook
+    hook-name: "Iceberg"
     connection-type: iceberg
     ui-field-behaviour:
       hidden-fields:
diff --git 
a/providers/apache/iceberg/src/airflow/providers/apache/iceberg/get_provider_info.py
 
b/providers/apache/iceberg/src/airflow/providers/apache/iceberg/get_provider_info.py
index 56bd75339fb..df1285577b9 100644
--- 
a/providers/apache/iceberg/src/airflow/providers/apache/iceberg/get_provider_info.py
+++ 
b/providers/apache/iceberg/src/airflow/providers/apache/iceberg/get_provider_info.py
@@ -43,6 +43,7 @@ def get_provider_info():
         "connection-types": [
             {
                 "hook-class-name": 
"airflow.providers.apache.iceberg.hooks.iceberg.IcebergHook",
+                "hook-name": "Iceberg",
                 "connection-type": "iceberg",
                 "ui-field-behaviour": {
                     "hidden-fields": ["schema", "port"],
diff --git a/providers/apache/impala/provider.yaml 
b/providers/apache/impala/provider.yaml
index f0a6846295a..7dd8636f873 100644
--- a/providers/apache/impala/provider.yaml
+++ b/providers/apache/impala/provider.yaml
@@ -70,4 +70,5 @@ hooks:
 
 connection-types:
   - hook-class-name: airflow.providers.apache.impala.hooks.impala.ImpalaHook
+    hook-name: "Impala"
     connection-type: impala
diff --git 
a/providers/apache/impala/src/airflow/providers/apache/impala/get_provider_info.py
 
b/providers/apache/impala/src/airflow/providers/apache/impala/get_provider_info.py
index f3d98c255f5..c8976240b9e 100644
--- 
a/providers/apache/impala/src/airflow/providers/apache/impala/get_provider_info.py
+++ 
b/providers/apache/impala/src/airflow/providers/apache/impala/get_provider_info.py
@@ -44,6 +44,7 @@ def get_provider_info():
         "connection-types": [
             {
                 "hook-class-name": 
"airflow.providers.apache.impala.hooks.impala.ImpalaHook",
+                "hook-name": "Impala",
                 "connection-type": "impala",
             }
         ],
diff --git a/providers/apache/kafka/provider.yaml 
b/providers/apache/kafka/provider.yaml
index df633f98974..fb682f73ba0 100644
--- a/providers/apache/kafka/provider.yaml
+++ b/providers/apache/kafka/provider.yaml
@@ -96,6 +96,7 @@ triggers:
 
 connection-types:
   - hook-class-name: airflow.providers.apache.kafka.hooks.base.KafkaBaseHook
+    hook-name: "Apache Kafka"
     connection-type: kafka
     ui-field-behaviour:
       hidden-fields:
diff --git 
a/providers/apache/kafka/src/airflow/providers/apache/kafka/get_provider_info.py
 
b/providers/apache/kafka/src/airflow/providers/apache/kafka/get_provider_info.py
index 41076d2b4c2..11d8b678304 100644
--- 
a/providers/apache/kafka/src/airflow/providers/apache/kafka/get_provider_info.py
+++ 
b/providers/apache/kafka/src/airflow/providers/apache/kafka/get_provider_info.py
@@ -73,6 +73,7 @@ def get_provider_info():
         "connection-types": [
             {
                 "hook-class-name": 
"airflow.providers.apache.kafka.hooks.base.KafkaBaseHook",
+                "hook-name": "Apache Kafka",
                 "connection-type": "kafka",
                 "ui-field-behaviour": {
                     "hidden-fields": ["schema", "login", "password", "port", 
"host"],
diff --git a/providers/apache/kylin/provider.yaml 
b/providers/apache/kylin/provider.yaml
index f89fd97e6de..fa7a110482c 100644
--- a/providers/apache/kylin/provider.yaml
+++ b/providers/apache/kylin/provider.yaml
@@ -80,4 +80,5 @@ hooks:
 
 connection-types:
   - hook-class-name: airflow.providers.apache.kylin.hooks.kylin.KylinHook
+    hook-name: "Apache Kylin"
     connection-type: kylin
diff --git 
a/providers/apache/kylin/src/airflow/providers/apache/kylin/get_provider_info.py
 
b/providers/apache/kylin/src/airflow/providers/apache/kylin/get_provider_info.py
index c989259d857..cb09228b775 100644
--- 
a/providers/apache/kylin/src/airflow/providers/apache/kylin/get_provider_info.py
+++ 
b/providers/apache/kylin/src/airflow/providers/apache/kylin/get_provider_info.py
@@ -50,6 +50,7 @@ def get_provider_info():
         "connection-types": [
             {
                 "hook-class-name": 
"airflow.providers.apache.kylin.hooks.kylin.KylinHook",
+                "hook-name": "Apache Kylin",
                 "connection-type": "kylin",
             }
         ],
diff --git a/providers/apache/livy/provider.yaml 
b/providers/apache/livy/provider.yaml
index 53448a6223c..1844bbaddfb 100644
--- a/providers/apache/livy/provider.yaml
+++ b/providers/apache/livy/provider.yaml
@@ -107,4 +107,5 @@ triggers:
 
 connection-types:
   - hook-class-name: airflow.providers.apache.livy.hooks.livy.LivyHook
+    hook-name: "Apache Livy"
     connection-type: livy
diff --git 
a/providers/apache/livy/src/airflow/providers/apache/livy/get_provider_info.py 
b/providers/apache/livy/src/airflow/providers/apache/livy/get_provider_info.py
index d5c3f982efd..0597c61659a 100644
--- 
a/providers/apache/livy/src/airflow/providers/apache/livy/get_provider_info.py
+++ 
b/providers/apache/livy/src/airflow/providers/apache/livy/get_provider_info.py
@@ -62,6 +62,7 @@ def get_provider_info():
         "connection-types": [
             {
                 "hook-class-name": 
"airflow.providers.apache.livy.hooks.livy.LivyHook",
+                "hook-name": "Apache Livy",
                 "connection-type": "livy",
             }
         ],
diff --git a/providers/apache/pig/provider.yaml 
b/providers/apache/pig/provider.yaml
index b39708e809a..2992c6009b4 100644
--- a/providers/apache/pig/provider.yaml
+++ b/providers/apache/pig/provider.yaml
@@ -79,3 +79,4 @@ hooks:
 connection-types:
   - connection-type: pig_cli
     hook-class-name: airflow.providers.apache.pig.hooks.pig.PigCliHook
+    hook-name: "Pig Client Wrapper"
diff --git 
a/providers/apache/pig/src/airflow/providers/apache/pig/get_provider_info.py 
b/providers/apache/pig/src/airflow/providers/apache/pig/get_provider_info.py
index 5104f7af41c..c05c3f3e100 100644
--- a/providers/apache/pig/src/airflow/providers/apache/pig/get_provider_info.py
+++ b/providers/apache/pig/src/airflow/providers/apache/pig/get_provider_info.py
@@ -48,6 +48,7 @@ def get_provider_info():
             {
                 "connection-type": "pig_cli",
                 "hook-class-name": 
"airflow.providers.apache.pig.hooks.pig.PigCliHook",
+                "hook-name": "Pig Client Wrapper",
             }
         ],
     }
diff --git a/providers/apache/pinot/provider.yaml 
b/providers/apache/pinot/provider.yaml
index e0372105ed8..3c50bf17032 100644
--- a/providers/apache/pinot/provider.yaml
+++ b/providers/apache/pinot/provider.yaml
@@ -83,6 +83,8 @@ hooks:
 
 connection-types:
   - hook-class-name: airflow.providers.apache.pinot.hooks.pinot.PinotDbApiHook
+    hook-name: "Pinot Broker"
     connection-type: pinot
   - hook-class-name: airflow.providers.apache.pinot.hooks.pinot.PinotAdminHook
+    hook-name: "Pinot Admin"
     connection-type: pinot_admin
diff --git 
a/providers/apache/pinot/src/airflow/providers/apache/pinot/get_provider_info.py
 
b/providers/apache/pinot/src/airflow/providers/apache/pinot/get_provider_info.py
index 798860656c7..738a3014222 100644
--- 
a/providers/apache/pinot/src/airflow/providers/apache/pinot/get_provider_info.py
+++ 
b/providers/apache/pinot/src/airflow/providers/apache/pinot/get_provider_info.py
@@ -44,10 +44,12 @@ def get_provider_info():
         "connection-types": [
             {
                 "hook-class-name": 
"airflow.providers.apache.pinot.hooks.pinot.PinotDbApiHook",
+                "hook-name": "Pinot Broker",
                 "connection-type": "pinot",
             },
             {
                 "hook-class-name": 
"airflow.providers.apache.pinot.hooks.pinot.PinotAdminHook",
+                "hook-name": "Pinot Admin",
                 "connection-type": "pinot_admin",
             },
         ],
diff --git a/providers/apache/spark/provider.yaml 
b/providers/apache/spark/provider.yaml
index d40e14721d0..15bfe3b7ee2 100644
--- a/providers/apache/spark/provider.yaml
+++ b/providers/apache/spark/provider.yaml
@@ -115,6 +115,7 @@ hooks:
 
 connection-types:
   - hook-class-name: 
airflow.providers.apache.spark.hooks.spark_connect.SparkConnectHook
+    hook-name: "Spark Connect"
     connection-type: spark_connect
     ui-field-behaviour:
       hidden-fields:
@@ -131,8 +132,10 @@ connection-types:
             - 'null'
           default: false
   - hook-class-name: 
airflow.providers.apache.spark.hooks.spark_jdbc.SparkJDBCHook
+    hook-name: "Spark JDBC"
     connection-type: spark_jdbc
   - hook-class-name: 
airflow.providers.apache.spark.hooks.spark_sql.SparkSqlHook
+    hook-name: "Spark SQL"
     connection-type: spark_sql
     ui-field-behaviour:
       hidden-fields:
@@ -150,6 +153,7 @@ connection-types:
             - string
             - 'null'
   - hook-class-name: 
airflow.providers.apache.spark.hooks.spark_submit.SparkSubmitHook
+    hook-name: "Spark"
     connection-type: spark
     ui-field-behaviour:
       hidden-fields:
diff --git 
a/providers/apache/spark/src/airflow/providers/apache/spark/get_provider_info.py
 
b/providers/apache/spark/src/airflow/providers/apache/spark/get_provider_info.py
index bf9f4b2f8a7..b9871156257 100644
--- 
a/providers/apache/spark/src/airflow/providers/apache/spark/get_provider_info.py
+++ 
b/providers/apache/spark/src/airflow/providers/apache/spark/get_provider_info.py
@@ -63,6 +63,7 @@ def get_provider_info():
         "connection-types": [
             {
                 "hook-class-name": 
"airflow.providers.apache.spark.hooks.spark_connect.SparkConnectHook",
+                "hook-name": "Spark Connect",
                 "connection-type": "spark_connect",
                 "ui-field-behaviour": {
                     "hidden-fields": ["schema"],
@@ -74,10 +75,12 @@ def get_provider_info():
             },
             {
                 "hook-class-name": 
"airflow.providers.apache.spark.hooks.spark_jdbc.SparkJDBCHook",
+                "hook-name": "Spark JDBC",
                 "connection-type": "spark_jdbc",
             },
             {
                 "hook-class-name": 
"airflow.providers.apache.spark.hooks.spark_sql.SparkSqlHook",
+                "hook-name": "Spark SQL",
                 "connection-type": "spark_sql",
                 "ui-field-behaviour": {
                     "hidden-fields": ["schema", "login", "password", "extra"],
@@ -93,6 +96,7 @@ def get_provider_info():
             },
             {
                 "hook-class-name": 
"airflow.providers.apache.spark.hooks.spark_submit.SparkSubmitHook",
+                "hook-name": "Spark",
                 "connection-type": "spark",
                 "ui-field-behaviour": {
                     "hidden-fields": ["schema", "login", "password", "extra"],
diff --git a/providers/apache/tinkerpop/provider.yaml 
b/providers/apache/tinkerpop/provider.yaml
index 2a28ccde964..b98dfeb73fe 100644
--- a/providers/apache/tinkerpop/provider.yaml
+++ b/providers/apache/tinkerpop/provider.yaml
@@ -52,4 +52,5 @@ hooks:
       - airflow.providers.apache.tinkerpop.hooks.gremlin
 connection-types:
   - hook-class-name: 
airflow.providers.apache.tinkerpop.hooks.gremlin.GremlinHook
+    hook-name: "Gremlin"
     connection-type: gremlin
diff --git 
a/providers/apache/tinkerpop/src/airflow/providers/apache/tinkerpop/get_provider_info.py
 
b/providers/apache/tinkerpop/src/airflow/providers/apache/tinkerpop/get_provider_info.py
index d7358d15783..04663627192 100644
--- 
a/providers/apache/tinkerpop/src/airflow/providers/apache/tinkerpop/get_provider_info.py
+++ 
b/providers/apache/tinkerpop/src/airflow/providers/apache/tinkerpop/get_provider_info.py
@@ -50,6 +50,7 @@ def get_provider_info():
         "connection-types": [
             {
                 "hook-class-name": 
"airflow.providers.apache.tinkerpop.hooks.gremlin.GremlinHook",
+                "hook-name": "Gremlin",
                 "connection-type": "gremlin",
             }
         ],
diff --git a/providers/apprise/provider.yaml b/providers/apprise/provider.yaml
index 9a21f89a99a..c95c6c7715d 100644
--- a/providers/apprise/provider.yaml
+++ b/providers/apprise/provider.yaml
@@ -68,6 +68,7 @@ hooks:
 
 connection-types:
   - hook-class-name: airflow.providers.apprise.hooks.apprise.AppriseHook
+    hook-name: "Apprise"
     connection-type: apprise
     conn-fields:
       config:
diff --git 
a/providers/apprise/src/airflow/providers/apprise/get_provider_info.py 
b/providers/apprise/src/airflow/providers/apprise/get_provider_info.py
index ce0346c29b8..4677d56d42b 100644
--- a/providers/apprise/src/airflow/providers/apprise/get_provider_info.py
+++ b/providers/apprise/src/airflow/providers/apprise/get_provider_info.py
@@ -39,6 +39,7 @@ def get_provider_info():
         "connection-types": [
             {
                 "hook-class-name": 
"airflow.providers.apprise.hooks.apprise.AppriseHook",
+                "hook-name": "Apprise",
                 "connection-type": "apprise",
                 "conn-fields": {
                     "config": {
diff --git a/providers/arangodb/provider.yaml b/providers/arangodb/provider.yaml
index 719b30b6164..c2c001832b0 100644
--- a/providers/arangodb/provider.yaml
+++ b/providers/arangodb/provider.yaml
@@ -79,6 +79,7 @@ sensors:
 
 connection-types:
   - hook-class-name: airflow.providers.arangodb.hooks.arangodb.ArangoDBHook
+    hook-name: "ArangoDB"
     connection-type: arangodb
     ui-field-behaviour:
       hidden-fields:
diff --git 
a/providers/arangodb/src/airflow/providers/arangodb/get_provider_info.py 
b/providers/arangodb/src/airflow/providers/arangodb/get_provider_info.py
index 5d90c271243..b93b01b7bea 100644
--- a/providers/arangodb/src/airflow/providers/arangodb/get_provider_info.py
+++ b/providers/arangodb/src/airflow/providers/arangodb/get_provider_info.py
@@ -52,6 +52,7 @@ def get_provider_info():
         "connection-types": [
             {
                 "hook-class-name": 
"airflow.providers.arangodb.hooks.arangodb.ArangoDBHook",
+                "hook-name": "ArangoDB",
                 "connection-type": "arangodb",
                 "ui-field-behaviour": {
                     "hidden-fields": ["port", "extra"],
diff --git a/providers/asana/provider.yaml b/providers/asana/provider.yaml
index d9d31bff3fc..3bf54f515b4 100644
--- a/providers/asana/provider.yaml
+++ b/providers/asana/provider.yaml
@@ -79,6 +79,7 @@ hooks:
 
 connection-types:
   - hook-class-name: airflow.providers.asana.hooks.asana.AsanaHook
+    hook-name: "Asana"
     connection-type: asana
     ui-field-behaviour:
       hidden-fields:
diff --git a/providers/asana/src/airflow/providers/asana/get_provider_info.py 
b/providers/asana/src/airflow/providers/asana/get_provider_info.py
index 6e0f10b1c90..57a81694e33 100644
--- a/providers/asana/src/airflow/providers/asana/get_provider_info.py
+++ b/providers/asana/src/airflow/providers/asana/get_provider_info.py
@@ -42,6 +42,7 @@ def get_provider_info():
         "connection-types": [
             {
                 "hook-class-name": 
"airflow.providers.asana.hooks.asana.AsanaHook",
+                "hook-name": "Asana",
                 "connection-type": "asana",
                 "ui-field-behaviour": {
                     "hidden-fields": ["port", "host", "login", "schema"],
diff --git a/providers/atlassian/jira/provider.yaml 
b/providers/atlassian/jira/provider.yaml
index a6c6273a074..4c6ce85c0f0 100644
--- a/providers/atlassian/jira/provider.yaml
+++ b/providers/atlassian/jira/provider.yaml
@@ -79,6 +79,7 @@ hooks:
 
 connection-types:
   - hook-class-name: airflow.providers.atlassian.jira.hooks.jira.JiraHook
+    hook-name: "JIRA"
     connection-type: jira
 
 notifications:
diff --git 
a/providers/atlassian/jira/src/airflow/providers/atlassian/jira/get_provider_info.py
 
b/providers/atlassian/jira/src/airflow/providers/atlassian/jira/get_provider_info.py
index 70ccfcd06ea..4b36780e8fb 100644
--- 
a/providers/atlassian/jira/src/airflow/providers/atlassian/jira/get_provider_info.py
+++ 
b/providers/atlassian/jira/src/airflow/providers/atlassian/jira/get_provider_info.py
@@ -55,6 +55,7 @@ def get_provider_info():
         "connection-types": [
             {
                 "hook-class-name": 
"airflow.providers.atlassian.jira.hooks.jira.JiraHook",
+                "hook-name": "JIRA",
                 "connection-type": "jira",
             }
         ],
diff --git a/providers/cloudant/provider.yaml b/providers/cloudant/provider.yaml
index 3d5289a6427..276c602cc76 100644
--- a/providers/cloudant/provider.yaml
+++ b/providers/cloudant/provider.yaml
@@ -75,6 +75,7 @@ hooks:
 
 connection-types:
   - hook-class-name: airflow.providers.cloudant.hooks.cloudant.CloudantHook
+    hook-name: "Cloudant"
     connection-type: cloudant
     ui-field-behaviour:
       hidden-fields:
diff --git 
a/providers/cloudant/src/airflow/providers/cloudant/get_provider_info.py 
b/providers/cloudant/src/airflow/providers/cloudant/get_provider_info.py
index e806ab26ce3..3db1ab77642 100644
--- a/providers/cloudant/src/airflow/providers/cloudant/get_provider_info.py
+++ b/providers/cloudant/src/airflow/providers/cloudant/get_provider_info.py
@@ -43,6 +43,7 @@ def get_provider_info():
         "connection-types": [
             {
                 "hook-class-name": 
"airflow.providers.cloudant.hooks.cloudant.CloudantHook",
+                "hook-name": "Cloudant",
                 "connection-type": "cloudant",
                 "ui-field-behaviour": {
                     "hidden-fields": ["schema", "port", "extra"],
diff --git a/providers/cncf/kubernetes/provider.yaml 
b/providers/cncf/kubernetes/provider.yaml
index 2c1b88dc3a1..2923ada07c8 100644
--- a/providers/cncf/kubernetes/provider.yaml
+++ b/providers/cncf/kubernetes/provider.yaml
@@ -169,6 +169,7 @@ secrets-backends:
 
 connection-types:
   - hook-class-name: 
airflow.providers.cncf.kubernetes.hooks.kubernetes.KubernetesHook
+    hook-name: "Kubernetes Cluster Connection"
     connection-type: kubernetes
     conn-fields:
       in_cluster:
diff --git 
a/providers/cncf/kubernetes/src/airflow/providers/cncf/kubernetes/get_provider_info.py
 
b/providers/cncf/kubernetes/src/airflow/providers/cncf/kubernetes/get_provider_info.py
index d4b174bf218..e0cfbecf3b2 100644
--- 
a/providers/cncf/kubernetes/src/airflow/providers/cncf/kubernetes/get_provider_info.py
+++ 
b/providers/cncf/kubernetes/src/airflow/providers/cncf/kubernetes/get_provider_info.py
@@ -81,6 +81,7 @@ def get_provider_info():
         "connection-types": [
             {
                 "hook-class-name": 
"airflow.providers.cncf.kubernetes.hooks.kubernetes.KubernetesHook",
+                "hook-name": "Kubernetes Cluster Connection",
                 "connection-type": "kubernetes",
                 "conn-fields": {
                     "in_cluster": {
diff --git a/providers/cohere/provider.yaml b/providers/cohere/provider.yaml
index 370865bbbb0..bf5189a2a1a 100644
--- a/providers/cohere/provider.yaml
+++ b/providers/cohere/provider.yaml
@@ -73,6 +73,7 @@ operators:
 
 connection-types:
   - hook-class-name: airflow.providers.cohere.hooks.cohere.CohereHook
+    hook-name: "Cohere"
     connection-type: cohere
     ui-field-behaviour:
       hidden-fields: ["schema", "login", "port", "extra"]
diff --git a/providers/cohere/src/airflow/providers/cohere/get_provider_info.py 
b/providers/cohere/src/airflow/providers/cohere/get_provider_info.py
index a91c98224cb..ad445d1afbd 100644
--- a/providers/cohere/src/airflow/providers/cohere/get_provider_info.py
+++ b/providers/cohere/src/airflow/providers/cohere/get_provider_info.py
@@ -43,6 +43,7 @@ def get_provider_info():
         "connection-types": [
             {
                 "hook-class-name": 
"airflow.providers.cohere.hooks.cohere.CohereHook",
+                "hook-name": "Cohere",
                 "connection-type": "cohere",
                 "ui-field-behaviour": {
                     "hidden-fields": ["schema", "login", "port", "extra"],
diff --git a/providers/common/ai/provider.yaml 
b/providers/common/ai/provider.yaml
index 764c9def8e4..02f20d5bb41 100644
--- a/providers/common/ai/provider.yaml
+++ b/providers/common/ai/provider.yaml
@@ -62,6 +62,7 @@ plugins:
 
 connection-types:
   - hook-class-name: 
airflow.providers.common.ai.hooks.pydantic_ai.PydanticAIHook
+    hook-name: "Pydantic AI"
     connection-type: pydanticai
     ui-field-behaviour:
       hidden-fields:
@@ -81,6 +82,7 @@ connection-types:
             - string
             - 'null'
   - hook-class-name: 
airflow.providers.common.ai.hooks.pydantic_ai.PydanticAIAzureHook
+    hook-name: "Pydantic AI (Azure OpenAI)"
     connection-type: pydanticai-azure
     ui-field-behaviour:
       hidden-fields:
@@ -108,6 +110,7 @@ connection-types:
             - string
             - 'null'
   - hook-class-name: 
airflow.providers.common.ai.hooks.pydantic_ai.PydanticAIBedrockHook
+    hook-name: "Pydantic AI (AWS Bedrock)"
     connection-type: pydanticai-bedrock
     ui-field-behaviour:
       hidden-fields:
@@ -190,6 +193,7 @@ connection-types:
             - number
             - 'null'
   - hook-class-name: 
airflow.providers.common.ai.hooks.pydantic_ai.PydanticAIVertexHook
+    hook-name: "Pydantic AI (Google Vertex AI)"
     connection-type: pydanticai-vertex
     ui-field-behaviour:
       hidden-fields:
@@ -251,6 +255,7 @@ connection-types:
             - string
             - 'null'
   - hook-class-name: airflow.providers.common.ai.hooks.mcp.MCPHook
+    hook-name: "MCP Server"
     connection-type: mcp
     ui-field-behaviour:
       hidden-fields:
diff --git 
a/providers/common/ai/src/airflow/providers/common/ai/get_provider_info.py 
b/providers/common/ai/src/airflow/providers/common/ai/get_provider_info.py
index 9a216856fb0..1790ef85819 100644
--- a/providers/common/ai/src/airflow/providers/common/ai/get_provider_info.py
+++ b/providers/common/ai/src/airflow/providers/common/ai/get_provider_info.py
@@ -67,6 +67,7 @@ def get_provider_info():
         "connection-types": [
             {
                 "hook-class-name": 
"airflow.providers.common.ai.hooks.pydantic_ai.PydanticAIHook",
+                "hook-name": "Pydantic AI",
                 "connection-type": "pydanticai",
                 "ui-field-behaviour": {
                     "hidden-fields": ["schema", "port", "login"],
@@ -83,6 +84,7 @@ def get_provider_info():
             },
             {
                 "hook-class-name": 
"airflow.providers.common.ai.hooks.pydantic_ai.PydanticAIAzureHook",
+                "hook-name": "Pydantic AI (Azure OpenAI)",
                 "connection-type": "pydanticai-azure",
                 "ui-field-behaviour": {
                     "hidden-fields": ["schema", "port", "login"],
@@ -104,6 +106,7 @@ def get_provider_info():
             },
             {
                 "hook-class-name": 
"airflow.providers.common.ai.hooks.pydantic_ai.PydanticAIBedrockHook",
+                "hook-name": "Pydantic AI (AWS Bedrock)",
                 "connection-type": "pydanticai-bedrock",
                 "ui-field-behaviour": {
                     "hidden-fields": ["schema", "port", "login", "host", 
"password"],
@@ -165,6 +168,7 @@ def get_provider_info():
             },
             {
                 "hook-class-name": 
"airflow.providers.common.ai.hooks.pydantic_ai.PydanticAIVertexHook",
+                "hook-name": "Pydantic AI (Google Vertex AI)",
                 "connection-type": "pydanticai-vertex",
                 "ui-field-behaviour": {
                     "hidden-fields": ["schema", "port", "login", "host", 
"password"],
@@ -211,6 +215,7 @@ def get_provider_info():
             },
             {
                 "hook-class-name": 
"airflow.providers.common.ai.hooks.mcp.MCPHook",
+                "hook-name": "MCP Server",
                 "connection-type": "mcp",
                 "ui-field-behaviour": {
                     "hidden-fields": ["schema", "port", "login"],
diff --git a/providers/databricks/provider.yaml 
b/providers/databricks/provider.yaml
index 2a3a711f7c7..1a3a3fb18be 100644
--- a/providers/databricks/provider.yaml
+++ b/providers/databricks/provider.yaml
@@ -168,6 +168,7 @@ sensors:
 
 connection-types:
   - hook-class-name: 
airflow.providers.databricks.hooks.databricks.DatabricksHook
+    hook-name: "Databricks"
     connection-type: databricks
 
 plugins:
diff --git 
a/providers/databricks/src/airflow/providers/databricks/get_provider_info.py 
b/providers/databricks/src/airflow/providers/databricks/get_provider_info.py
index 6ba5f8ed209..5f12cb02ddb 100644
--- a/providers/databricks/src/airflow/providers/databricks/get_provider_info.py
+++ b/providers/databricks/src/airflow/providers/databricks/get_provider_info.py
@@ -117,6 +117,7 @@ def get_provider_info():
         "connection-types": [
             {
                 "hook-class-name": 
"airflow.providers.databricks.hooks.databricks.DatabricksHook",
+                "hook-name": "Databricks",
                 "connection-type": "databricks",
             }
         ],
diff --git a/providers/datadog/provider.yaml b/providers/datadog/provider.yaml
index c7c15881f78..1732f099733 100644
--- a/providers/datadog/provider.yaml
+++ b/providers/datadog/provider.yaml
@@ -79,6 +79,7 @@ hooks:
 
 connection-types:
   - hook-class-name: airflow.providers.datadog.hooks.datadog.DatadogHook
+    hook-name: "Datadog"
     connection-type: datadog
     conn-fields:
       api_host:
diff --git 
a/providers/datadog/src/airflow/providers/datadog/get_provider_info.py 
b/providers/datadog/src/airflow/providers/datadog/get_provider_info.py
index a87ee7fb0e6..5d6d598c57f 100644
--- a/providers/datadog/src/airflow/providers/datadog/get_provider_info.py
+++ b/providers/datadog/src/airflow/providers/datadog/get_provider_info.py
@@ -43,6 +43,7 @@ def get_provider_info():
         "connection-types": [
             {
                 "hook-class-name": 
"airflow.providers.datadog.hooks.datadog.DatadogHook",
+                "hook-name": "Datadog",
                 "connection-type": "datadog",
                 "conn-fields": {
                     "api_host": {"label": "API endpoint", "schema": {"type": 
["string", "null"]}},
diff --git a/providers/dbt/cloud/provider.yaml 
b/providers/dbt/cloud/provider.yaml
index 8be1687e6ad..30325305fa4 100644
--- a/providers/dbt/cloud/provider.yaml
+++ b/providers/dbt/cloud/provider.yaml
@@ -113,6 +113,7 @@ triggers:
 
 connection-types:
   - hook-class-name: airflow.providers.dbt.cloud.hooks.dbt.DbtCloudHook
+    hook-name: "dbt Cloud"
     connection-type: dbt_cloud
     ui-field-behaviour:
       hidden-fields:
diff --git 
a/providers/dbt/cloud/src/airflow/providers/dbt/cloud/get_provider_info.py 
b/providers/dbt/cloud/src/airflow/providers/dbt/cloud/get_provider_info.py
index f0119e2ea98..16ed9a37e72 100644
--- a/providers/dbt/cloud/src/airflow/providers/dbt/cloud/get_provider_info.py
+++ b/providers/dbt/cloud/src/airflow/providers/dbt/cloud/get_provider_info.py
@@ -50,6 +50,7 @@ def get_provider_info():
         "connection-types": [
             {
                 "hook-class-name": 
"airflow.providers.dbt.cloud.hooks.dbt.DbtCloudHook",
+                "hook-name": "dbt Cloud",
                 "connection-type": "dbt_cloud",
                 "ui-field-behaviour": {
                     "hidden-fields": ["schema", "port"],
diff --git a/providers/dingding/provider.yaml b/providers/dingding/provider.yaml
index 816ae1672d7..7a0d97ca157 100644
--- a/providers/dingding/provider.yaml
+++ b/providers/dingding/provider.yaml
@@ -79,4 +79,5 @@ hooks:
 
 connection-types:
   - hook-class-name: airflow.providers.dingding.hooks.dingding.DingdingHook
+    hook-name: "DingTalk Custom Robot (Dingding)"
     connection-type: dingding
diff --git 
a/providers/dingding/src/airflow/providers/dingding/get_provider_info.py 
b/providers/dingding/src/airflow/providers/dingding/get_provider_info.py
index 181903d94e1..8eb35c62525 100644
--- a/providers/dingding/src/airflow/providers/dingding/get_provider_info.py
+++ b/providers/dingding/src/airflow/providers/dingding/get_provider_info.py
@@ -47,6 +47,7 @@ def get_provider_info():
         "connection-types": [
             {
                 "hook-class-name": 
"airflow.providers.dingding.hooks.dingding.DingdingHook",
+                "hook-name": "DingTalk Custom Robot (Dingding)",
                 "connection-type": "dingding",
             }
         ],
diff --git a/providers/discord/provider.yaml b/providers/discord/provider.yaml
index 55b06620e67..4d8b0a40a8a 100644
--- a/providers/discord/provider.yaml
+++ b/providers/discord/provider.yaml
@@ -81,6 +81,7 @@ hooks:
 
 connection-types:
   - hook-class-name: 
airflow.providers.discord.hooks.discord_webhook.DiscordWebhookHook
+    hook-name: "Discord"
     connection-type: discord
     conn-fields:
       webhook_endpoint:
diff --git 
a/providers/discord/src/airflow/providers/discord/get_provider_info.py 
b/providers/discord/src/airflow/providers/discord/get_provider_info.py
index 04521b10150..ee4c9503f82 100644
--- a/providers/discord/src/airflow/providers/discord/get_provider_info.py
+++ b/providers/discord/src/airflow/providers/discord/get_provider_info.py
@@ -49,6 +49,7 @@ def get_provider_info():
         "connection-types": [
             {
                 "hook-class-name": 
"airflow.providers.discord.hooks.discord_webhook.DiscordWebhookHook",
+                "hook-name": "Discord",
                 "connection-type": "discord",
                 "conn-fields": {
                     "webhook_endpoint": {"label": "Webhook Endpoint", 
"schema": {"type": ["string", "null"]}}
diff --git a/providers/docker/provider.yaml b/providers/docker/provider.yaml
index 48a38f383cb..2043871373e 100644
--- a/providers/docker/provider.yaml
+++ b/providers/docker/provider.yaml
@@ -117,6 +117,7 @@ hooks:
 
 connection-types:
   - hook-class-name: airflow.providers.docker.hooks.docker.DockerHook
+    hook-name: "Docker"
     connection-type: docker
     conn-fields:
       reauth:
diff --git a/providers/docker/src/airflow/providers/docker/get_provider_info.py 
b/providers/docker/src/airflow/providers/docker/get_provider_info.py
index 3b1556f1c7b..fd466e185a1 100644
--- a/providers/docker/src/airflow/providers/docker/get_provider_info.py
+++ b/providers/docker/src/airflow/providers/docker/get_provider_info.py
@@ -53,6 +53,7 @@ def get_provider_info():
         "connection-types": [
             {
                 "hook-class-name": 
"airflow.providers.docker.hooks.docker.DockerHook",
+                "hook-name": "Docker",
                 "connection-type": "docker",
                 "conn-fields": {
                     "reauth": {
diff --git a/providers/elasticsearch/provider.yaml 
b/providers/elasticsearch/provider.yaml
index 6427f9f27df..345cb2917e4 100644
--- a/providers/elasticsearch/provider.yaml
+++ b/providers/elasticsearch/provider.yaml
@@ -103,6 +103,7 @@ hooks:
 
 connection-types:
   - hook-class-name: 
airflow.providers.elasticsearch.hooks.elasticsearch.ElasticsearchSQLHook
+    hook-name: "Elasticsearch"
     connection-type: elasticsearch
 
 logging:
diff --git 
a/providers/elasticsearch/src/airflow/providers/elasticsearch/get_provider_info.py
 
b/providers/elasticsearch/src/airflow/providers/elasticsearch/get_provider_info.py
index a527aa7cc50..2d357cecb19 100644
--- 
a/providers/elasticsearch/src/airflow/providers/elasticsearch/get_provider_info.py
+++ 
b/providers/elasticsearch/src/airflow/providers/elasticsearch/get_provider_info.py
@@ -43,6 +43,7 @@ def get_provider_info():
         "connection-types": [
             {
                 "hook-class-name": 
"airflow.providers.elasticsearch.hooks.elasticsearch.ElasticsearchSQLHook",
+                "hook-name": "Elasticsearch",
                 "connection-type": "elasticsearch",
             }
         ],
diff --git a/providers/exasol/provider.yaml b/providers/exasol/provider.yaml
index 43dc23b0547..be2e3850ce6 100644
--- a/providers/exasol/provider.yaml
+++ b/providers/exasol/provider.yaml
@@ -100,4 +100,5 @@ hooks:
 
 connection-types:
   - hook-class-name: airflow.providers.exasol.hooks.exasol.ExasolHook
+    hook-name: "Exasol"
     connection-type: exasol
diff --git a/providers/exasol/src/airflow/providers/exasol/get_provider_info.py 
b/providers/exasol/src/airflow/providers/exasol/get_provider_info.py
index 61aa7124a92..8dec9e2ba20 100644
--- a/providers/exasol/src/airflow/providers/exasol/get_provider_info.py
+++ b/providers/exasol/src/airflow/providers/exasol/get_provider_info.py
@@ -44,6 +44,7 @@ def get_provider_info():
         "connection-types": [
             {
                 "hook-class-name": 
"airflow.providers.exasol.hooks.exasol.ExasolHook",
+                "hook-name": "Exasol",
                 "connection-type": "exasol",
             }
         ],
diff --git a/providers/facebook/provider.yaml b/providers/facebook/provider.yaml
index 564b9acfb93..457dda758f4 100644
--- a/providers/facebook/provider.yaml
+++ b/providers/facebook/provider.yaml
@@ -76,4 +76,5 @@ hooks:
 
 connection-types:
   - hook-class-name: 
airflow.providers.facebook.ads.hooks.ads.FacebookAdsReportingHook
+    hook-name: "Facebook Ads"
     connection-type: facebook_social
diff --git 
a/providers/facebook/src/airflow/providers/facebook/get_provider_info.py 
b/providers/facebook/src/airflow/providers/facebook/get_provider_info.py
index a378b1066a8..c5e0842036e 100644
--- a/providers/facebook/src/airflow/providers/facebook/get_provider_info.py
+++ b/providers/facebook/src/airflow/providers/facebook/get_provider_info.py
@@ -43,6 +43,7 @@ def get_provider_info():
         "connection-types": [
             {
                 "hook-class-name": 
"airflow.providers.facebook.ads.hooks.ads.FacebookAdsReportingHook",
+                "hook-name": "Facebook Ads",
                 "connection-type": "facebook_social",
             }
         ],
diff --git a/providers/ftp/provider.yaml b/providers/ftp/provider.yaml
index 4e12a1ad959..d6e2a25f9ad 100644
--- a/providers/ftp/provider.yaml
+++ b/providers/ftp/provider.yaml
@@ -88,4 +88,5 @@ hooks:
 
 connection-types:
   - hook-class-name: airflow.providers.ftp.hooks.ftp.FTPHook
+    hook-name: "FTP"
     connection-type: ftp
diff --git a/providers/ftp/src/airflow/providers/ftp/get_provider_info.py 
b/providers/ftp/src/airflow/providers/ftp/get_provider_info.py
index 5c2039744e7..8658c11981f 100644
--- a/providers/ftp/src/airflow/providers/ftp/get_provider_info.py
+++ b/providers/ftp/src/airflow/providers/ftp/get_provider_info.py
@@ -53,6 +53,10 @@ def get_provider_info():
             }
         ],
         "connection-types": [
-            {"hook-class-name": "airflow.providers.ftp.hooks.ftp.FTPHook", 
"connection-type": "ftp"}
+            {
+                "hook-class-name": "airflow.providers.ftp.hooks.ftp.FTPHook",
+                "hook-name": "FTP",
+                "connection-type": "ftp",
+            }
         ],
     }
diff --git a/providers/git/provider.yaml b/providers/git/provider.yaml
index d479195fc64..fd61c900ab9 100644
--- a/providers/git/provider.yaml
+++ b/providers/git/provider.yaml
@@ -65,6 +65,7 @@ bundles:
 
 connection-types:
   - hook-class-name: airflow.providers.git.hooks.git.GitHook
+    hook-name: "GIT"
     connection-type: git
     ui-field-behaviour:
       hidden-fields:
diff --git a/providers/git/src/airflow/providers/git/get_provider_info.py 
b/providers/git/src/airflow/providers/git/get_provider_info.py
index 21dcec07984..82a3bb35096 100644
--- a/providers/git/src/airflow/providers/git/get_provider_info.py
+++ b/providers/git/src/airflow/providers/git/get_provider_info.py
@@ -41,6 +41,7 @@ def get_provider_info():
         "connection-types": [
             {
                 "hook-class-name": "airflow.providers.git.hooks.git.GitHook",
+                "hook-name": "GIT",
                 "connection-type": "git",
                 "ui-field-behaviour": {
                     "hidden-fields": ["schema"],
diff --git a/providers/github/provider.yaml b/providers/github/provider.yaml
index da87b5da84f..7d5d216db6a 100644
--- a/providers/github/provider.yaml
+++ b/providers/github/provider.yaml
@@ -84,6 +84,7 @@ sensors:
 
 connection-types:
   - hook-class-name: airflow.providers.github.hooks.github.GithubHook
+    hook-name: "GitHub"
     connection-type: github
     ui-field-behaviour:
       hidden-fields:
diff --git a/providers/github/src/airflow/providers/github/get_provider_info.py 
b/providers/github/src/airflow/providers/github/get_provider_info.py
index 1bc6637ad71..c46aca1feb3 100644
--- a/providers/github/src/airflow/providers/github/get_provider_info.py
+++ b/providers/github/src/airflow/providers/github/get_provider_info.py
@@ -46,6 +46,7 @@ def get_provider_info():
         "connection-types": [
             {
                 "hook-class-name": 
"airflow.providers.github.hooks.github.GithubHook",
+                "hook-name": "GitHub",
                 "connection-type": "github",
                 "ui-field-behaviour": {
                     "hidden-fields": ["schema", "port", "login", "extra"],
diff --git a/providers/google/provider.yaml b/providers/google/provider.yaml
index 3ef456692b6..4cf0d13246d 100644
--- a/providers/google/provider.yaml
+++ b/providers/google/provider.yaml
@@ -1133,6 +1133,7 @@ transfers:
 
 connection-types:
   - hook-class-name: 
airflow.providers.google.common.hooks.base_google.GoogleBaseHook
+    hook-name: "Google Cloud"
     connection-type: google_cloud_platform
     ui-field-behaviour:
       hidden-fields: ["host", "schema", "login", "password", "port", "extra"]
@@ -1202,12 +1203,16 @@ connection-types:
   - hook-class-name: airflow.providers.google.cloud.hooks.spanner.SpannerHook
     connection-type: gcpspanner
   - hook-class-name: 
airflow.providers.google.cloud.hooks.dataprep.GoogleDataprepHook
+    hook-name: "Google Dataprep"
     connection-type: dataprep
   - hook-class-name: 
airflow.providers.google.cloud.hooks.cloud_sql.CloudSQLHook
+    hook-name: "Google Cloud SQL"
     connection-type: gcpcloudsql
   - hook-class-name: 
airflow.providers.google.cloud.hooks.cloud_sql.CloudSQLDatabaseHook
+    hook-name: "Google Cloud SQL Database"
     connection-type: gcpcloudsqldb
   - hook-class-name: airflow.providers.google.cloud.hooks.bigquery.BigQueryHook
+    hook-name: "Google Bigquery"
     connection-type: gcpbigquery
     ui-field-behaviour:
       hidden-fields: ["host", "schema", "login", "password", "port", "extra"]
@@ -1296,14 +1301,17 @@ connection-types:
         schema:
           type: ["string", "null"]
   - hook-class-name: 
airflow.providers.google.cloud.hooks.compute_ssh.ComputeEngineSSHHook
+    hook-name: "Google Cloud SSH"
     connection-type: gcpssh
     ui-field-behaviour:
       hidden-fields: ["host", "schema", "login", "password", "port", "extra"]
       relabeling: {}
       placeholders: {}
   - hook-class-name: airflow.providers.google.leveldb.hooks.leveldb.LevelDBHook
+    hook-name: "LevelDB"
     connection-type: leveldb
   - hook-class-name: airflow.providers.google.ads.hooks.ads.GoogleAdsHook
+    hook-name: "Google Ads"
     connection-type: google_ads
     ui-field-behaviour:
       hidden-fields: ["host", "login", "schema", "port"]
@@ -1330,6 +1338,7 @@ connection-types:
           type: ["string", "null"]
           format: password
   - hook-class-name: airflow.providers.google.cloud.hooks.looker.LookerHook
+    hook-name: "Google Looker"
     connection-type: gcp_looker
 
 extra-links:
diff --git a/providers/google/src/airflow/providers/google/get_provider_info.py 
b/providers/google/src/airflow/providers/google/get_provider_info.py
index 5a4d040788c..271026bc353 100644
--- a/providers/google/src/airflow/providers/google/get_provider_info.py
+++ b/providers/google/src/airflow/providers/google/get_provider_info.py
@@ -1380,6 +1380,7 @@ def get_provider_info():
         "connection-types": [
             {
                 "hook-class-name": 
"airflow.providers.google.common.hooks.base_google.GoogleBaseHook",
+                "hook-name": "Google Cloud",
                 "connection-type": "google_cloud_platform",
                 "ui-field-behaviour": {
                     "hidden-fields": ["host", "schema", "login", "password", 
"port", "extra"],
@@ -1442,18 +1443,22 @@ def get_provider_info():
             },
             {
                 "hook-class-name": 
"airflow.providers.google.cloud.hooks.dataprep.GoogleDataprepHook",
+                "hook-name": "Google Dataprep",
                 "connection-type": "dataprep",
             },
             {
                 "hook-class-name": 
"airflow.providers.google.cloud.hooks.cloud_sql.CloudSQLHook",
+                "hook-name": "Google Cloud SQL",
                 "connection-type": "gcpcloudsql",
             },
             {
                 "hook-class-name": 
"airflow.providers.google.cloud.hooks.cloud_sql.CloudSQLDatabaseHook",
+                "hook-name": "Google Cloud SQL Database",
                 "connection-type": "gcpcloudsqldb",
             },
             {
                 "hook-class-name": 
"airflow.providers.google.cloud.hooks.bigquery.BigQueryHook",
+                "hook-name": "Google Bigquery",
                 "connection-type": "gcpbigquery",
                 "ui-field-behaviour": {
                     "hidden-fields": ["host", "schema", "login", "password", 
"port", "extra"],
@@ -1523,6 +1528,7 @@ def get_provider_info():
             },
             {
                 "hook-class-name": 
"airflow.providers.google.cloud.hooks.compute_ssh.ComputeEngineSSHHook",
+                "hook-name": "Google Cloud SSH",
                 "connection-type": "gcpssh",
                 "ui-field-behaviour": {
                     "hidden-fields": ["host", "schema", "login", "password", 
"port", "extra"],
@@ -1532,10 +1538,12 @@ def get_provider_info():
             },
             {
                 "hook-class-name": 
"airflow.providers.google.leveldb.hooks.leveldb.LevelDBHook",
+                "hook-name": "LevelDB",
                 "connection-type": "leveldb",
             },
             {
                 "hook-class-name": 
"airflow.providers.google.ads.hooks.ads.GoogleAdsHook",
+                "hook-name": "Google Ads",
                 "connection-type": "google_ads",
                 "ui-field-behaviour": {
                     "hidden-fields": ["host", "login", "schema", "port"],
@@ -1557,6 +1565,7 @@ def get_provider_info():
             },
             {
                 "hook-class-name": 
"airflow.providers.google.cloud.hooks.looker.LookerHook",
+                "hook-name": "Google Looker",
                 "connection-type": "gcp_looker",
             },
         ],
diff --git a/providers/grpc/provider.yaml b/providers/grpc/provider.yaml
index 6a9640fe3f9..c40c0812103 100644
--- a/providers/grpc/provider.yaml
+++ b/providers/grpc/provider.yaml
@@ -78,6 +78,7 @@ hooks:
 
 connection-types:
   - hook-class-name: airflow.providers.grpc.hooks.grpc.GrpcHook
+    hook-name: "GRPC Connection"
     connection-type: grpc
     ui-field-behaviour:
       hidden-fields:
diff --git a/providers/grpc/src/airflow/providers/grpc/get_provider_info.py 
b/providers/grpc/src/airflow/providers/grpc/get_provider_info.py
index 267bdfcf679..4323b63fc35 100644
--- a/providers/grpc/src/airflow/providers/grpc/get_provider_info.py
+++ b/providers/grpc/src/airflow/providers/grpc/get_provider_info.py
@@ -41,6 +41,7 @@ def get_provider_info():
         "connection-types": [
             {
                 "hook-class-name": 
"airflow.providers.grpc.hooks.grpc.GrpcHook",
+                "hook-name": "GRPC Connection",
                 "connection-type": "grpc",
                 "ui-field-behaviour": {
                     "hidden-fields": ["login", "password", "schema", "extra"],
diff --git a/providers/hashicorp/provider.yaml 
b/providers/hashicorp/provider.yaml
index 66be477c1e7..024aaf3c051 100644
--- a/providers/hashicorp/provider.yaml
+++ b/providers/hashicorp/provider.yaml
@@ -87,6 +87,7 @@ hooks:
 
 connection-types:
   - hook-class-name: airflow.providers.hashicorp.hooks.vault.VaultHook
+    hook-name: "Hashicorp Vault"
     connection-type: vault
     ui-field-behaviour:
       hidden-fields: ["extra"]
diff --git 
a/providers/hashicorp/src/airflow/providers/hashicorp/get_provider_info.py 
b/providers/hashicorp/src/airflow/providers/hashicorp/get_provider_info.py
index 1fd65f01b98..28020342f97 100644
--- a/providers/hashicorp/src/airflow/providers/hashicorp/get_provider_info.py
+++ b/providers/hashicorp/src/airflow/providers/hashicorp/get_provider_info.py
@@ -43,6 +43,7 @@ def get_provider_info():
         "connection-types": [
             {
                 "hook-class-name": 
"airflow.providers.hashicorp.hooks.vault.VaultHook",
+                "hook-name": "Hashicorp Vault",
                 "connection-type": "vault",
                 "ui-field-behaviour": {"hidden-fields": ["extra"]},
                 "conn-fields": {
diff --git a/providers/http/provider.yaml b/providers/http/provider.yaml
index 52b2695026e..ba5182aa59a 100644
--- a/providers/http/provider.yaml
+++ b/providers/http/provider.yaml
@@ -116,6 +116,7 @@ triggers:
 
 connection-types:
   - hook-class-name: airflow.providers.http.hooks.http.HttpHook
+    hook-name: "HTTP"
     connection-type: http
     ui-field-behaviour:
       hidden-fields: []
diff --git a/providers/http/src/airflow/providers/http/get_provider_info.py 
b/providers/http/src/airflow/providers/http/get_provider_info.py
index 1c95246e12d..93d137842de 100644
--- a/providers/http/src/airflow/providers/http/get_provider_info.py
+++ b/providers/http/src/airflow/providers/http/get_provider_info.py
@@ -63,6 +63,7 @@ def get_provider_info():
         "connection-types": [
             {
                 "hook-class-name": 
"airflow.providers.http.hooks.http.HttpHook",
+                "hook-name": "HTTP",
                 "connection-type": "http",
                 "ui-field-behaviour": {"hidden-fields": [], "relabeling": {}, 
"placeholders": {}},
                 "conn-fields": {},
diff --git a/providers/imap/provider.yaml b/providers/imap/provider.yaml
index c6b4c566cb4..2b26df84fa9 100644
--- a/providers/imap/provider.yaml
+++ b/providers/imap/provider.yaml
@@ -86,6 +86,7 @@ hooks:
 
 connection-types:
   - hook-class-name: airflow.providers.imap.hooks.imap.ImapHook
+    hook-name: "IMAP"
     connection-type: imap
 
 config:
diff --git a/providers/imap/src/airflow/providers/imap/get_provider_info.py 
b/providers/imap/src/airflow/providers/imap/get_provider_info.py
index ac0c1a22209..3623dabfa9d 100644
--- a/providers/imap/src/airflow/providers/imap/get_provider_info.py
+++ b/providers/imap/src/airflow/providers/imap/get_provider_info.py
@@ -47,7 +47,11 @@ def get_provider_info():
             }
         ],
         "connection-types": [
-            {"hook-class-name": "airflow.providers.imap.hooks.imap.ImapHook", 
"connection-type": "imap"}
+            {
+                "hook-class-name": 
"airflow.providers.imap.hooks.imap.ImapHook",
+                "hook-name": "IMAP",
+                "connection-type": "imap",
+            }
         ],
         "config": {
             "imap": {
diff --git a/providers/influxdb/provider.yaml b/providers/influxdb/provider.yaml
index c6abc30d3be..4bdbb7ec072 100644
--- a/providers/influxdb/provider.yaml
+++ b/providers/influxdb/provider.yaml
@@ -81,6 +81,7 @@ operators:
 
 connection-types:
   - hook-class-name: airflow.providers.influxdb.hooks.influxdb.InfluxDBHook
+    hook-name: "Influxdb"
     connection-type: influxdb
     ui-field-behaviour:
       hidden-fields:
diff --git 
a/providers/influxdb/src/airflow/providers/influxdb/get_provider_info.py 
b/providers/influxdb/src/airflow/providers/influxdb/get_provider_info.py
index fca723981e9..f9f0a30e5a8 100644
--- a/providers/influxdb/src/airflow/providers/influxdb/get_provider_info.py
+++ b/providers/influxdb/src/airflow/providers/influxdb/get_provider_info.py
@@ -46,6 +46,7 @@ def get_provider_info():
         "connection-types": [
             {
                 "hook-class-name": 
"airflow.providers.influxdb.hooks.influxdb.InfluxDBHook",
+                "hook-name": "Influxdb",
                 "connection-type": "influxdb",
                 "ui-field-behaviour": {
                     "hidden-fields": ["login", "password"],
diff --git a/providers/informatica/provider.yaml 
b/providers/informatica/provider.yaml
index 5d02d0d3c19..d88583d30af 100644
--- a/providers/informatica/provider.yaml
+++ b/providers/informatica/provider.yaml
@@ -45,6 +45,7 @@ hooks:
 
 connection-types:
   - hook-class-name: airflow.providers.informatica.hooks.edc.InformaticaEDCHook
+    hook-name: "Informatica EDC"
     connection-type: informatica_edc
 
 plugins:
diff --git 
a/providers/informatica/src/airflow/providers/informatica/get_provider_info.py 
b/providers/informatica/src/airflow/providers/informatica/get_provider_info.py
index 98840280755..175bab466f4 100644
--- 
a/providers/informatica/src/airflow/providers/informatica/get_provider_info.py
+++ 
b/providers/informatica/src/airflow/providers/informatica/get_provider_info.py
@@ -40,6 +40,7 @@ def get_provider_info():
         "connection-types": [
             {
                 "hook-class-name": 
"airflow.providers.informatica.hooks.edc.InformaticaEDCHook",
+                "hook-name": "Informatica EDC",
                 "connection-type": "informatica_edc",
             }
         ],
diff --git a/providers/jdbc/provider.yaml b/providers/jdbc/provider.yaml
index 6ee9d04cdf7..f2ff8df3fec 100644
--- a/providers/jdbc/provider.yaml
+++ b/providers/jdbc/provider.yaml
@@ -88,6 +88,7 @@ hooks:
 
 connection-types:
   - hook-class-name: airflow.providers.jdbc.hooks.jdbc.JdbcHook
+    hook-name: "JDBC Connection"
     connection-type: jdbc
     ui-field-behaviour:
       hidden-fields:
diff --git a/providers/jdbc/src/airflow/providers/jdbc/get_provider_info.py 
b/providers/jdbc/src/airflow/providers/jdbc/get_provider_info.py
index 2cac3a4e2f9..9d64b469f0b 100644
--- a/providers/jdbc/src/airflow/providers/jdbc/get_provider_info.py
+++ b/providers/jdbc/src/airflow/providers/jdbc/get_provider_info.py
@@ -44,6 +44,7 @@ def get_provider_info():
         "connection-types": [
             {
                 "hook-class-name": 
"airflow.providers.jdbc.hooks.jdbc.JdbcHook",
+                "hook-name": "JDBC Connection",
                 "connection-type": "jdbc",
                 "ui-field-behaviour": {
                     "hidden-fields": ["port", "schema"],
diff --git a/providers/jenkins/provider.yaml b/providers/jenkins/provider.yaml
index bb108699049..ed0f26495ed 100644
--- a/providers/jenkins/provider.yaml
+++ b/providers/jenkins/provider.yaml
@@ -94,6 +94,7 @@ sensors:
 
 connection-types:
   - hook-class-name: airflow.providers.jenkins.hooks.jenkins.JenkinsHook
+    hook-name: "Jenkins"
     connection-type: jenkins
     ui-field-behaviour:
       hidden-fields:
diff --git 
a/providers/jenkins/src/airflow/providers/jenkins/get_provider_info.py 
b/providers/jenkins/src/airflow/providers/jenkins/get_provider_info.py
index a5ea5c9b70d..b62a2a10fd9 100644
--- a/providers/jenkins/src/airflow/providers/jenkins/get_provider_info.py
+++ b/providers/jenkins/src/airflow/providers/jenkins/get_provider_info.py
@@ -49,6 +49,7 @@ def get_provider_info():
         "connection-types": [
             {
                 "hook-class-name": 
"airflow.providers.jenkins.hooks.jenkins.JenkinsHook",
+                "hook-name": "Jenkins",
                 "connection-type": "jenkins",
                 "ui-field-behaviour": {
                     "hidden-fields": ["extra"],
diff --git a/providers/microsoft/azure/provider.yaml 
b/providers/microsoft/azure/provider.yaml
index 6d991b7b51d..0ca91f724d2 100644
--- a/providers/microsoft/azure/provider.yaml
+++ b/providers/microsoft/azure/provider.yaml
@@ -352,6 +352,7 @@ transfers:
 
 connection-types:
   - hook-class-name: 
airflow.providers.microsoft.azure.hooks.base_azure.AzureBaseHook
+    hook-name: "Azure"
     connection-type: azure
     ui-field-behaviour:
       hidden-fields: ["schema", "port", "host"]
@@ -382,6 +383,7 @@ connection-types:
         schema:
           type: ["string", "null"]
   - hook-class-name: 
airflow.providers.microsoft.azure.hooks.compute.AzureComputeHook
+    hook-name: "Azure Compute"
     connection-type: azure_compute
     ui-field-behaviour:
       hidden-fields: ["schema", "port", "host"]
@@ -412,6 +414,7 @@ connection-types:
         schema:
           type: ["string", "null"]
   - hook-class-name: 
airflow.providers.microsoft.azure.hooks.adx.AzureDataExplorerHook
+    hook-name: "Azure Data Explorer"
     connection-type: azure_data_explorer
     ui-field-behaviour:
       hidden-fields: ["schema", "port", "extra"]
@@ -453,6 +456,7 @@ connection-types:
         schema:
           type: ["string", "null"]
   - hook-class-name: 
airflow.providers.microsoft.azure.hooks.batch.AzureBatchHook
+    hook-name: "Azure Batch Service"
     connection-type: azure_batch
     ui-field-behaviour:
       hidden-fields: ["schema", "port", "host", "extra"]
@@ -474,6 +478,7 @@ connection-types:
         schema:
           type: ["string", "null"]
   - hook-class-name: 
airflow.providers.microsoft.azure.hooks.cosmos.AzureCosmosDBHook
+    hook-name: "Azure CosmosDB"
     connection-type: azure_cosmos
     ui-field-behaviour:
       hidden-fields: ["schema", "port", "host", "extra"]
@@ -513,6 +518,7 @@ connection-types:
         schema:
           type: ["string", "null"]
   - hook-class-name: 
airflow.providers.microsoft.azure.hooks.data_lake.AzureDataLakeHook
+    hook-name: "Azure Data Lake"
     connection-type: azure_data_lake
     ui-field-behaviour:
       hidden-fields: ["schema", "port", "host", "extra"]
@@ -542,6 +548,7 @@ connection-types:
         schema:
           type: ["string", "null"]
   - hook-class-name: 
airflow.providers.microsoft.azure.hooks.fileshare.AzureFileShareHook
+    hook-name: "Azure FileShare"
     connection-type: azure_fileshare
     ui-field-behaviour:
       hidden-fields: ["schema", "port", "host", "extra"]
@@ -572,6 +579,7 @@ connection-types:
         schema:
           type: ["string", "null"]
   - hook-class-name: 
airflow.providers.microsoft.azure.hooks.container_volume.AzureContainerVolumeHook
+    hook-name: "Azure Container Volume"
     connection-type: azure_container_volume
     ui-field-behaviour:
       hidden-fields: ["schema", "port", "host", "extra"]
@@ -607,8 +615,10 @@ connection-types:
         schema:
           type: ["string", "null"]
   - hook-class-name: 
airflow.providers.microsoft.azure.hooks.container_instance.AzureContainerInstanceHook
+    hook-name: "Azure Container Instance"
     connection-type: azure_container_instance
   - hook-class-name: airflow.providers.microsoft.azure.hooks.wasb.WasbHook
+    hook-name: "Azure Blob Storage"
     connection-type: wasb
     ui-field-behaviour:
       hidden-fields: ["schema", "port"]
@@ -656,6 +666,7 @@ connection-types:
         schema:
           type: ["string", "null"]
   - hook-class-name: 
airflow.providers.microsoft.azure.hooks.data_factory.AzureDataFactoryHook
+    hook-name: "Azure Data Factory"
     connection-type: azure_data_factory
     ui-field-behaviour:
       hidden-fields: ["schema", "port", "host", "extra"]
@@ -689,6 +700,7 @@ connection-types:
         schema:
           type: ["string", "null"]
   - hook-class-name: 
airflow.providers.microsoft.azure.hooks.container_registry.AzureContainerRegistryHook
+    hook-name: "Azure Container Registry"
     connection-type: azure_container_registry
     ui-field-behaviour:
       hidden-fields: ["schema", "port", "extra"]
@@ -720,6 +732,7 @@ connection-types:
         schema:
           type: ["string", "null"]
   - hook-class-name: 
airflow.providers.microsoft.azure.hooks.asb.BaseAzureServiceBusHook
+    hook-name: "Azure Service Bus"
     connection-type: azure_service_bus
     ui-field-behaviour:
       hidden-fields: ["port", "host", "extra", "login", "password"]
@@ -751,6 +764,7 @@ connection-types:
         schema:
           type: ["string", "null"]
   - hook-class-name: 
airflow.providers.microsoft.azure.hooks.synapse.BaseAzureSynapseHook
+    hook-name: "Azure Synapse"
     connection-type: azure_synapse
     ui-field-behaviour:
       hidden-fields: ["schema", "port", "extra"]
@@ -777,6 +791,7 @@ connection-types:
         schema:
           type: ["string", "null"]
   - hook-class-name: 
airflow.providers.microsoft.azure.hooks.data_lake.AzureDataLakeStorageV2Hook
+    hook-name: "Azure Data Lake Storage V2"
     connection-type: adls
     ui-field-behaviour:
       hidden-fields: ["schema", "port"]
@@ -810,6 +825,7 @@ connection-types:
         schema:
           type: ["string", "null"]
   - hook-class-name: 
airflow.providers.microsoft.azure.hooks.msgraph.KiotaRequestAdapterHook
+    hook-name: "Microsoft Graph API"
     connection-type: msgraph
     ui-field-behaviour:
       hidden-fields: ["extra"]
@@ -876,6 +892,7 @@ connection-types:
         schema:
           type: ["string", "null"]
   - hook-class-name: 
airflow.providers.microsoft.azure.hooks.powerbi.PowerBIHook
+    hook-name: "Power BI"
     connection-type: powerbi
     ui-field-behaviour:
       hidden-fields: ["schema", "port", "host", "extra"]
diff --git 
a/providers/microsoft/azure/src/airflow/providers/microsoft/azure/get_provider_info.py
 
b/providers/microsoft/azure/src/airflow/providers/microsoft/azure/get_provider_info.py
index a13e4e6229b..4ca9bc5c620 100644
--- 
a/providers/microsoft/azure/src/airflow/providers/microsoft/azure/get_provider_info.py
+++ 
b/providers/microsoft/azure/src/airflow/providers/microsoft/azure/get_provider_info.py
@@ -344,6 +344,7 @@ def get_provider_info():
         "connection-types": [
             {
                 "hook-class-name": 
"airflow.providers.microsoft.azure.hooks.base_azure.AzureBaseHook",
+                "hook-name": "Azure",
                 "connection-type": "azure",
                 "ui-field-behaviour": {
                     "hidden-fields": ["schema", "port", "host"],
@@ -374,6 +375,7 @@ def get_provider_info():
             },
             {
                 "hook-class-name": 
"airflow.providers.microsoft.azure.hooks.compute.AzureComputeHook",
+                "hook-name": "Azure Compute",
                 "connection-type": "azure_compute",
                 "ui-field-behaviour": {
                     "hidden-fields": ["schema", "port", "host"],
@@ -404,6 +406,7 @@ def get_provider_info():
             },
             {
                 "hook-class-name": 
"airflow.providers.microsoft.azure.hooks.adx.AzureDataExplorerHook",
+                "hook-name": "Azure Data Explorer",
                 "connection-type": "azure_data_explorer",
                 "ui-field-behaviour": {
                     "hidden-fields": ["schema", "port", "extra"],
@@ -440,6 +443,7 @@ def get_provider_info():
             },
             {
                 "hook-class-name": 
"airflow.providers.microsoft.azure.hooks.batch.AzureBatchHook",
+                "hook-name": "Azure Batch Service",
                 "connection-type": "azure_batch",
                 "ui-field-behaviour": {
                     "hidden-fields": ["schema", "port", "host", "extra"],
@@ -460,6 +464,7 @@ def get_provider_info():
             },
             {
                 "hook-class-name": 
"airflow.providers.microsoft.azure.hooks.cosmos.AzureCosmosDBHook",
+                "hook-name": "Azure CosmosDB",
                 "connection-type": "azure_cosmos",
                 "ui-field-behaviour": {
                     "hidden-fields": ["schema", "port", "host", "extra"],
@@ -502,6 +507,7 @@ def get_provider_info():
             },
             {
                 "hook-class-name": 
"airflow.providers.microsoft.azure.hooks.data_lake.AzureDataLakeHook",
+                "hook-name": "Azure Data Lake",
                 "connection-type": "azure_data_lake",
                 "ui-field-behaviour": {
                     "hidden-fields": ["schema", "port", "host", "extra"],
@@ -531,6 +537,7 @@ def get_provider_info():
             },
             {
                 "hook-class-name": 
"airflow.providers.microsoft.azure.hooks.fileshare.AzureFileShareHook",
+                "hook-name": "Azure FileShare",
                 "connection-type": "azure_fileshare",
                 "ui-field-behaviour": {
                     "hidden-fields": ["schema", "port", "host", "extra"],
@@ -566,6 +573,7 @@ def get_provider_info():
             },
             {
                 "hook-class-name": 
"airflow.providers.microsoft.azure.hooks.container_volume.AzureContainerVolumeHook",
+                "hook-name": "Azure Container Volume",
                 "connection-type": "azure_container_volume",
                 "ui-field-behaviour": {
                     "hidden-fields": ["schema", "port", "host", "extra"],
@@ -603,10 +611,12 @@ def get_provider_info():
             },
             {
                 "hook-class-name": 
"airflow.providers.microsoft.azure.hooks.container_instance.AzureContainerInstanceHook",
+                "hook-name": "Azure Container Instance",
                 "connection-type": "azure_container_instance",
             },
             {
                 "hook-class-name": 
"airflow.providers.microsoft.azure.hooks.wasb.WasbHook",
+                "hook-name": "Azure Blob Storage",
                 "connection-type": "wasb",
                 "ui-field-behaviour": {
                     "hidden-fields": ["schema", "port"],
@@ -655,6 +665,7 @@ def get_provider_info():
             },
             {
                 "hook-class-name": 
"airflow.providers.microsoft.azure.hooks.data_factory.AzureDataFactoryHook",
+                "hook-name": "Azure Data Factory",
                 "connection-type": "azure_data_factory",
                 "ui-field-behaviour": {
                     "hidden-fields": ["schema", "port", "host", "extra"],
@@ -681,6 +692,7 @@ def get_provider_info():
             },
             {
                 "hook-class-name": 
"airflow.providers.microsoft.azure.hooks.container_registry.AzureContainerRegistryHook",
+                "hook-name": "Azure Container Registry",
                 "connection-type": "azure_container_registry",
                 "ui-field-behaviour": {
                     "hidden-fields": ["schema", "port", "extra"],
@@ -718,6 +730,7 @@ def get_provider_info():
             },
             {
                 "hook-class-name": 
"airflow.providers.microsoft.azure.hooks.asb.BaseAzureServiceBusHook",
+                "hook-name": "Azure Service Bus",
                 "connection-type": "azure_service_bus",
                 "ui-field-behaviour": {
                     "hidden-fields": ["port", "host", "extra", "login", 
"password"],
@@ -749,6 +762,7 @@ def get_provider_info():
             },
             {
                 "hook-class-name": 
"airflow.providers.microsoft.azure.hooks.synapse.BaseAzureSynapseHook",
+                "hook-name": "Azure Synapse",
                 "connection-type": "azure_synapse",
                 "ui-field-behaviour": {
                     "hidden-fields": ["schema", "port", "extra"],
@@ -774,6 +788,7 @@ def get_provider_info():
             },
             {
                 "hook-class-name": 
"airflow.providers.microsoft.azure.hooks.data_lake.AzureDataLakeStorageV2Hook",
+                "hook-name": "Azure Data Lake Storage V2",
                 "connection-type": "adls",
                 "ui-field-behaviour": {
                     "hidden-fields": ["schema", "port"],
@@ -812,6 +827,7 @@ def get_provider_info():
             },
             {
                 "hook-class-name": 
"airflow.providers.microsoft.azure.hooks.msgraph.KiotaRequestAdapterHook",
+                "hook-name": "Microsoft Graph API",
                 "connection-type": "msgraph",
                 "ui-field-behaviour": {
                     "hidden-fields": ["extra"],
@@ -851,6 +867,7 @@ def get_provider_info():
             },
             {
                 "hook-class-name": 
"airflow.providers.microsoft.azure.hooks.powerbi.PowerBIHook",
+                "hook-name": "Power BI",
                 "connection-type": "powerbi",
                 "ui-field-behaviour": {
                     "hidden-fields": ["schema", "port", "host", "extra"],
diff --git 
a/providers/microsoft/azure/src/airflow/providers/microsoft/azure/hooks/data_lake.py
 
b/providers/microsoft/azure/src/airflow/providers/microsoft/azure/hooks/data_lake.py
index 7535eaaaa3a..8860c53fa2e 100644
--- 
a/providers/microsoft/azure/src/airflow/providers/microsoft/azure/hooks/data_lake.py
+++ 
b/providers/microsoft/azure/src/airflow/providers/microsoft/azure/hooks/data_lake.py
@@ -278,7 +278,7 @@ class AzureDataLakeStorageV2Hook(BaseHook):
     conn_name_attr = "adls_conn_id"
     default_conn_name = "adls_default"
     conn_type = "adls"
-    hook_name = "Azure Date Lake Storage V2"
+    hook_name = "Azure Data Lake Storage V2"
 
     @classmethod
     @add_managed_identity_connection_widgets
diff --git a/providers/microsoft/mssql/provider.yaml 
b/providers/microsoft/mssql/provider.yaml
index 47c625447a7..1c9f2815794 100644
--- a/providers/microsoft/mssql/provider.yaml
+++ b/providers/microsoft/mssql/provider.yaml
@@ -90,4 +90,5 @@ hooks:
 
 connection-types:
   - hook-class-name: airflow.providers.microsoft.mssql.hooks.mssql.MsSqlHook
+    hook-name: "Microsoft SQL Server"
     connection-type: mssql
diff --git 
a/providers/microsoft/mssql/src/airflow/providers/microsoft/mssql/get_provider_info.py
 
b/providers/microsoft/mssql/src/airflow/providers/microsoft/mssql/get_provider_info.py
index 29c4ddb865a..02c50438b3f 100644
--- 
a/providers/microsoft/mssql/src/airflow/providers/microsoft/mssql/get_provider_info.py
+++ 
b/providers/microsoft/mssql/src/airflow/providers/microsoft/mssql/get_provider_info.py
@@ -50,6 +50,7 @@ def get_provider_info():
         "connection-types": [
             {
                 "hook-class-name": 
"airflow.providers.microsoft.mssql.hooks.mssql.MsSqlHook",
+                "hook-name": "Microsoft SQL Server",
                 "connection-type": "mssql",
             }
         ],
diff --git a/providers/microsoft/psrp/provider.yaml 
b/providers/microsoft/psrp/provider.yaml
index 3ecf6b48132..0b3f5fda10b 100644
--- a/providers/microsoft/psrp/provider.yaml
+++ b/providers/microsoft/psrp/provider.yaml
@@ -83,4 +83,5 @@ hooks:
 
 connection-types:
   - hook-class-name: airflow.providers.microsoft.psrp.hooks.psrp.PsrpHook
+    hook-name: "PowerShell Remoting Protocol"
     connection-type: psrp
diff --git 
a/providers/microsoft/psrp/src/airflow/providers/microsoft/psrp/get_provider_info.py
 
b/providers/microsoft/psrp/src/airflow/providers/microsoft/psrp/get_provider_info.py
index 1c6a7a448e5..bccab1b61fa 100644
--- 
a/providers/microsoft/psrp/src/airflow/providers/microsoft/psrp/get_provider_info.py
+++ 
b/providers/microsoft/psrp/src/airflow/providers/microsoft/psrp/get_provider_info.py
@@ -48,6 +48,7 @@ def get_provider_info():
         "connection-types": [
             {
                 "hook-class-name": 
"airflow.providers.microsoft.psrp.hooks.psrp.PsrpHook",
+                "hook-name": "PowerShell Remoting Protocol",
                 "connection-type": "psrp",
             }
         ],
diff --git a/providers/microsoft/winrm/provider.yaml 
b/providers/microsoft/winrm/provider.yaml
index 6d3ad8baeae..395fc6b534a 100644
--- a/providers/microsoft/winrm/provider.yaml
+++ b/providers/microsoft/winrm/provider.yaml
@@ -93,4 +93,5 @@ triggers:
 
 connection-types:
   - hook-class-name: airflow.providers.microsoft.winrm.hooks.winrm.WinRMHook
+    hook-name: "WinRM"
     connection-type: winrm
diff --git 
a/providers/microsoft/winrm/src/airflow/providers/microsoft/winrm/get_provider_info.py
 
b/providers/microsoft/winrm/src/airflow/providers/microsoft/winrm/get_provider_info.py
index 8c9d6c56f2f..6e8430e7a73 100644
--- 
a/providers/microsoft/winrm/src/airflow/providers/microsoft/winrm/get_provider_info.py
+++ 
b/providers/microsoft/winrm/src/airflow/providers/microsoft/winrm/get_provider_info.py
@@ -56,6 +56,7 @@ def get_provider_info():
         "connection-types": [
             {
                 "hook-class-name": 
"airflow.providers.microsoft.winrm.hooks.winrm.WinRMHook",
+                "hook-name": "WinRM",
                 "connection-type": "winrm",
             }
         ],
diff --git a/providers/mongo/provider.yaml b/providers/mongo/provider.yaml
index 1679e4a7160..3222c2ea0b4 100644
--- a/providers/mongo/provider.yaml
+++ b/providers/mongo/provider.yaml
@@ -87,6 +87,7 @@ hooks:
 
 connection-types:
   - hook-class-name: airflow.providers.mongo.hooks.mongo.MongoHook
+    hook-name: "MongoDB"
     connection-type: mongo
     conn-fields:
       srv:
diff --git a/providers/mongo/src/airflow/providers/mongo/get_provider_info.py 
b/providers/mongo/src/airflow/providers/mongo/get_provider_info.py
index 2a6eb2befe2..7e6cf3c0f60 100644
--- a/providers/mongo/src/airflow/providers/mongo/get_provider_info.py
+++ b/providers/mongo/src/airflow/providers/mongo/get_provider_info.py
@@ -41,6 +41,7 @@ def get_provider_info():
         "connection-types": [
             {
                 "hook-class-name": 
"airflow.providers.mongo.hooks.mongo.MongoHook",
+                "hook-name": "MongoDB",
                 "connection-type": "mongo",
                 "conn-fields": {
                     "srv": {"label": "Srv", "schema": {"type": ["boolean", 
"null"]}},
diff --git a/providers/mysql/provider.yaml b/providers/mysql/provider.yaml
index e710d2f395d..957df375356 100644
--- a/providers/mysql/provider.yaml
+++ b/providers/mysql/provider.yaml
@@ -118,6 +118,7 @@ transfers:
 
 connection-types:
   - hook-class-name: airflow.providers.mysql.hooks.mysql.MySqlHook
+    hook-name: "MySQL"
     connection-type: mysql
 
 asset-uris:
diff --git a/providers/mysql/src/airflow/providers/mysql/get_provider_info.py 
b/providers/mysql/src/airflow/providers/mysql/get_provider_info.py
index e4945605bf4..f0503d851df 100644
--- a/providers/mysql/src/airflow/providers/mysql/get_provider_info.py
+++ b/providers/mysql/src/airflow/providers/mysql/get_provider_info.py
@@ -59,7 +59,11 @@ def get_provider_info():
             },
         ],
         "connection-types": [
-            {"hook-class-name": 
"airflow.providers.mysql.hooks.mysql.MySqlHook", "connection-type": "mysql"}
+            {
+                "hook-class-name": 
"airflow.providers.mysql.hooks.mysql.MySqlHook",
+                "hook-name": "MySQL",
+                "connection-type": "mysql",
+            }
         ],
         "asset-uris": [
             {"schemes": ["mysql", "mariadb"], "handler": 
"airflow.providers.mysql.assets.mysql.sanitize_uri"}
diff --git a/providers/neo4j/provider.yaml b/providers/neo4j/provider.yaml
index 594f48c664b..fd224839f85 100644
--- a/providers/neo4j/provider.yaml
+++ b/providers/neo4j/provider.yaml
@@ -93,4 +93,5 @@ sensors:
 
 connection-types:
   - hook-class-name: airflow.providers.neo4j.hooks.neo4j.Neo4jHook
+    hook-name: "Neo4j"
     connection-type: neo4j
diff --git a/providers/neo4j/src/airflow/providers/neo4j/get_provider_info.py 
b/providers/neo4j/src/airflow/providers/neo4j/get_provider_info.py
index e3748c17e76..6f9d603fd5b 100644
--- a/providers/neo4j/src/airflow/providers/neo4j/get_provider_info.py
+++ b/providers/neo4j/src/airflow/providers/neo4j/get_provider_info.py
@@ -46,6 +46,10 @@ def get_provider_info():
             {"integration-name": "Neo4j", "python-modules": 
["airflow.providers.neo4j.sensors.neo4j"]}
         ],
         "connection-types": [
-            {"hook-class-name": 
"airflow.providers.neo4j.hooks.neo4j.Neo4jHook", "connection-type": "neo4j"}
+            {
+                "hook-class-name": 
"airflow.providers.neo4j.hooks.neo4j.Neo4jHook",
+                "hook-name": "Neo4j",
+                "connection-type": "neo4j",
+            }
         ],
     }
diff --git a/providers/odbc/provider.yaml b/providers/odbc/provider.yaml
index 26f1ceab141..3b33173e570 100644
--- a/providers/odbc/provider.yaml
+++ b/providers/odbc/provider.yaml
@@ -86,4 +86,5 @@ hooks:
 
 connection-types:
   - hook-class-name: airflow.providers.odbc.hooks.odbc.OdbcHook
+    hook-name: "ODBC"
     connection-type: odbc
diff --git a/providers/odbc/src/airflow/providers/odbc/get_provider_info.py 
b/providers/odbc/src/airflow/providers/odbc/get_provider_info.py
index afdec5ae09e..31f6fb9451b 100644
--- a/providers/odbc/src/airflow/providers/odbc/get_provider_info.py
+++ b/providers/odbc/src/airflow/providers/odbc/get_provider_info.py
@@ -37,6 +37,10 @@ def get_provider_info():
         ],
         "hooks": [{"integration-name": "ODBC", "python-modules": 
["airflow.providers.odbc.hooks.odbc"]}],
         "connection-types": [
-            {"hook-class-name": "airflow.providers.odbc.hooks.odbc.OdbcHook", 
"connection-type": "odbc"}
+            {
+                "hook-class-name": 
"airflow.providers.odbc.hooks.odbc.OdbcHook",
+                "hook-name": "ODBC",
+                "connection-type": "odbc",
+            }
         ],
     }
diff --git a/providers/openai/provider.yaml b/providers/openai/provider.yaml
index 27b2fc9d692..4da687ef82f 100644
--- a/providers/openai/provider.yaml
+++ b/providers/openai/provider.yaml
@@ -90,6 +90,7 @@ triggers:
 
 connection-types:
   - hook-class-name: airflow.providers.openai.hooks.openai.OpenAIHook
+    hook-name: "OpenAI"
     connection-type: openai
     ui-field-behaviour:
       hidden-fields:
diff --git a/providers/openai/src/airflow/providers/openai/get_provider_info.py 
b/providers/openai/src/airflow/providers/openai/get_provider_info.py
index 6b8eda581e2..47b5bba24f7 100644
--- a/providers/openai/src/airflow/providers/openai/get_provider_info.py
+++ b/providers/openai/src/airflow/providers/openai/get_provider_info.py
@@ -56,6 +56,7 @@ def get_provider_info():
         "connection-types": [
             {
                 "hook-class-name": 
"airflow.providers.openai.hooks.openai.OpenAIHook",
+                "hook-name": "OpenAI",
                 "connection-type": "openai",
                 "ui-field-behaviour": {
                     "hidden-fields": ["schema", "port", "login"],
diff --git a/providers/openfaas/provider.yaml b/providers/openfaas/provider.yaml
index f62dded337e..ca9e140d57d 100644
--- a/providers/openfaas/provider.yaml
+++ b/providers/openfaas/provider.yaml
@@ -70,6 +70,7 @@ hooks:
 
 connection-types:
   - hook-class-name: airflow.providers.openfaas.hooks.openfaas.OpenFaasHook
+    hook-name: "OpenFaaS"
     connection-type: openfaas
     ui-field-behaviour:
       hidden-fields:
diff --git 
a/providers/openfaas/src/airflow/providers/openfaas/get_provider_info.py 
b/providers/openfaas/src/airflow/providers/openfaas/get_provider_info.py
index c13d8ffb545..319cacb648a 100644
--- a/providers/openfaas/src/airflow/providers/openfaas/get_provider_info.py
+++ b/providers/openfaas/src/airflow/providers/openfaas/get_provider_info.py
@@ -40,6 +40,7 @@ def get_provider_info():
         "connection-types": [
             {
                 "hook-class-name": 
"airflow.providers.openfaas.hooks.openfaas.OpenFaasHook",
+                "hook-name": "OpenFaaS",
                 "connection-type": "openfaas",
                 "ui-field-behaviour": {"hidden-fields": ["schema", "port", 
"login", "password", "extra"]},
             }
diff --git a/providers/opensearch/provider.yaml 
b/providers/opensearch/provider.yaml
index edf5b4a4c8f..26b9c57d8d2 100644
--- a/providers/opensearch/provider.yaml
+++ b/providers/opensearch/provider.yaml
@@ -75,6 +75,7 @@ operators:
 
 connection-types:
   - hook-class-name: 
airflow.providers.opensearch.hooks.opensearch.OpenSearchHook
+    hook-name: "OpenSearch Hook"
     connection-type: opensearch
     ui-field-behaviour:
       hidden-fields:
diff --git 
a/providers/opensearch/src/airflow/providers/opensearch/get_provider_info.py 
b/providers/opensearch/src/airflow/providers/opensearch/get_provider_info.py
index cd117200796..99e439416d3 100644
--- a/providers/opensearch/src/airflow/providers/opensearch/get_provider_info.py
+++ b/providers/opensearch/src/airflow/providers/opensearch/get_provider_info.py
@@ -50,6 +50,7 @@ def get_provider_info():
         "connection-types": [
             {
                 "hook-class-name": 
"airflow.providers.opensearch.hooks.opensearch.OpenSearchHook",
+                "hook-name": "OpenSearch Hook",
                 "connection-type": "opensearch",
                 "ui-field-behaviour": {
                     "hidden-fields": ["schema"],
diff --git a/providers/opsgenie/provider.yaml b/providers/opsgenie/provider.yaml
index 1fa8272de7d..de3dc0bca5a 100644
--- a/providers/opsgenie/provider.yaml
+++ b/providers/opsgenie/provider.yaml
@@ -82,6 +82,7 @@ hooks:
 
 connection-types:
   - hook-class-name: 
airflow.providers.opsgenie.hooks.opsgenie.OpsgenieAlertHook
+    hook-name: "Opsgenie"
     connection-type: opsgenie
     ui-field-behaviour:
       hidden-fields:
diff --git 
a/providers/opsgenie/src/airflow/providers/opsgenie/get_provider_info.py 
b/providers/opsgenie/src/airflow/providers/opsgenie/get_provider_info.py
index a74e1065c30..4e6a65f90f3 100644
--- a/providers/opsgenie/src/airflow/providers/opsgenie/get_provider_info.py
+++ b/providers/opsgenie/src/airflow/providers/opsgenie/get_provider_info.py
@@ -47,6 +47,7 @@ def get_provider_info():
         "connection-types": [
             {
                 "hook-class-name": 
"airflow.providers.opsgenie.hooks.opsgenie.OpsgenieAlertHook",
+                "hook-name": "Opsgenie",
                 "connection-type": "opsgenie",
                 "ui-field-behaviour": {
                     "hidden-fields": ["port", "schema", "login", "extra"],
diff --git a/providers/oracle/provider.yaml b/providers/oracle/provider.yaml
index 84999a60237..d0e1955db91 100644
--- a/providers/oracle/provider.yaml
+++ b/providers/oracle/provider.yaml
@@ -106,4 +106,5 @@ transfers:
 
 connection-types:
   - hook-class-name: airflow.providers.oracle.hooks.oracle.OracleHook
+    hook-name: "Oracle"
     connection-type: oracle
diff --git a/providers/oracle/src/airflow/providers/oracle/get_provider_info.py 
b/providers/oracle/src/airflow/providers/oracle/get_provider_info.py
index 30417195e31..91b3f870147 100644
--- a/providers/oracle/src/airflow/providers/oracle/get_provider_info.py
+++ b/providers/oracle/src/airflow/providers/oracle/get_provider_info.py
@@ -57,6 +57,7 @@ def get_provider_info():
         "connection-types": [
             {
                 "hook-class-name": 
"airflow.providers.oracle.hooks.oracle.OracleHook",
+                "hook-name": "Oracle",
                 "connection-type": "oracle",
             }
         ],
diff --git a/providers/pagerduty/provider.yaml 
b/providers/pagerduty/provider.yaml
index 738d4be53fb..345409a5846 100644
--- a/providers/pagerduty/provider.yaml
+++ b/providers/pagerduty/provider.yaml
@@ -76,6 +76,7 @@ integrations:
 
 connection-types:
   - hook-class-name: airflow.providers.pagerduty.hooks.pagerduty.PagerdutyHook
+    hook-name: "Pagerduty"
     connection-type: pagerduty
     conn-fields:
       routing_key:
@@ -95,6 +96,7 @@ connection-types:
       relabeling:
         password: Pagerduty API token
   - hook-class-name: 
airflow.providers.pagerduty.hooks.pagerduty_events.PagerdutyEventsHook
+    hook-name: "Pagerduty Events"
     connection-type: pagerduty_events
     ui-field-behaviour:
       hidden-fields:
diff --git 
a/providers/pagerduty/src/airflow/providers/pagerduty/get_provider_info.py 
b/providers/pagerduty/src/airflow/providers/pagerduty/get_provider_info.py
index 89cd71ea355..f43651f64e3 100644
--- a/providers/pagerduty/src/airflow/providers/pagerduty/get_provider_info.py
+++ b/providers/pagerduty/src/airflow/providers/pagerduty/get_provider_info.py
@@ -37,6 +37,7 @@ def get_provider_info():
         "connection-types": [
             {
                 "hook-class-name": 
"airflow.providers.pagerduty.hooks.pagerduty.PagerdutyHook",
+                "hook-name": "Pagerduty",
                 "connection-type": "pagerduty",
                 "conn-fields": {
                     "routing_key": {
@@ -51,6 +52,7 @@ def get_provider_info():
             },
             {
                 "hook-class-name": 
"airflow.providers.pagerduty.hooks.pagerduty_events.PagerdutyEventsHook",
+                "hook-name": "Pagerduty Events",
                 "connection-type": "pagerduty_events",
                 "ui-field-behaviour": {
                     "hidden-fields": ["port", "login", "schema", "host", 
"extra"],
diff --git a/providers/papermill/provider.yaml 
b/providers/papermill/provider.yaml
index e148eb8f281..ab59302596c 100644
--- a/providers/papermill/provider.yaml
+++ b/providers/papermill/provider.yaml
@@ -89,4 +89,5 @@ hooks:
 
 connection-types:
   - hook-class-name: airflow.providers.papermill.hooks.kernel.KernelHook
+    hook-name: "Jupyter Kernel"
     connection-type: jupyter_kernel
diff --git 
a/providers/papermill/src/airflow/providers/papermill/get_provider_info.py 
b/providers/papermill/src/airflow/providers/papermill/get_provider_info.py
index f9e1c3186e4..1982205a982 100644
--- a/providers/papermill/src/airflow/providers/papermill/get_provider_info.py
+++ b/providers/papermill/src/airflow/providers/papermill/get_provider_info.py
@@ -47,6 +47,7 @@ def get_provider_info():
         "connection-types": [
             {
                 "hook-class-name": 
"airflow.providers.papermill.hooks.kernel.KernelHook",
+                "hook-name": "Jupyter Kernel",
                 "connection-type": "jupyter_kernel",
             }
         ],
diff --git a/providers/pinecone/provider.yaml b/providers/pinecone/provider.yaml
index faacb246fc3..f41eb876b71 100644
--- a/providers/pinecone/provider.yaml
+++ b/providers/pinecone/provider.yaml
@@ -69,6 +69,7 @@ hooks:
 
 connection-types:
   - hook-class-name: airflow.providers.pinecone.hooks.pinecone.PineconeHook
+    hook-name: "Pinecone"
     connection-type: pinecone
     ui-field-behaviour:
       hidden-fields:
diff --git 
a/providers/pinecone/src/airflow/providers/pinecone/get_provider_info.py 
b/providers/pinecone/src/airflow/providers/pinecone/get_provider_info.py
index 507e41956af..9307960cf86 100644
--- a/providers/pinecone/src/airflow/providers/pinecone/get_provider_info.py
+++ b/providers/pinecone/src/airflow/providers/pinecone/get_provider_info.py
@@ -41,6 +41,7 @@ def get_provider_info():
         "connection-types": [
             {
                 "hook-class-name": 
"airflow.providers.pinecone.hooks.pinecone.PineconeHook",
+                "hook-name": "Pinecone",
                 "connection-type": "pinecone",
                 "ui-field-behaviour": {
                     "hidden-fields": ["port", "schema"],
diff --git a/providers/postgres/provider.yaml b/providers/postgres/provider.yaml
index 672b661164e..599b1b89db4 100644
--- a/providers/postgres/provider.yaml
+++ b/providers/postgres/provider.yaml
@@ -109,6 +109,7 @@ hooks:
 
 connection-types:
   - hook-class-name: airflow.providers.postgres.hooks.postgres.PostgresHook
+    hook-name: "Postgres"
     connection-type: postgres
     ui-field-behaviour:
       relabeling:
diff --git 
a/providers/postgres/src/airflow/providers/postgres/get_provider_info.py 
b/providers/postgres/src/airflow/providers/postgres/get_provider_info.py
index 50f4cfdb3b4..7919f57d4b9 100644
--- a/providers/postgres/src/airflow/providers/postgres/get_provider_info.py
+++ b/providers/postgres/src/airflow/providers/postgres/get_provider_info.py
@@ -50,6 +50,7 @@ def get_provider_info():
         "connection-types": [
             {
                 "hook-class-name": 
"airflow.providers.postgres.hooks.postgres.PostgresHook",
+                "hook-name": "Postgres",
                 "connection-type": "postgres",
                 "ui-field-behaviour": {"relabeling": {"schema": "Database"}},
             }
diff --git a/providers/presto/provider.yaml b/providers/presto/provider.yaml
index 6197326e903..f7af7c0c141 100644
--- a/providers/presto/provider.yaml
+++ b/providers/presto/provider.yaml
@@ -103,4 +103,5 @@ transfers:
 
 connection-types:
   - hook-class-name: airflow.providers.presto.hooks.presto.PrestoHook
+    hook-name: "Presto"
     connection-type: presto
diff --git a/providers/presto/src/airflow/providers/presto/get_provider_info.py 
b/providers/presto/src/airflow/providers/presto/get_provider_info.py
index 75ef5c1bfb2..bc9975b7cba 100644
--- a/providers/presto/src/airflow/providers/presto/get_provider_info.py
+++ b/providers/presto/src/airflow/providers/presto/get_provider_info.py
@@ -49,6 +49,7 @@ def get_provider_info():
         "connection-types": [
             {
                 "hook-class-name": 
"airflow.providers.presto.hooks.presto.PrestoHook",
+                "hook-name": "Presto",
                 "connection-type": "presto",
             }
         ],
diff --git a/providers/qdrant/provider.yaml b/providers/qdrant/provider.yaml
index 69dc17fec72..1a46ae04b96 100644
--- a/providers/qdrant/provider.yaml
+++ b/providers/qdrant/provider.yaml
@@ -66,6 +66,7 @@ hooks:
 
 connection-types:
   - hook-class-name: airflow.providers.qdrant.hooks.qdrant.QdrantHook
+    hook-name: "Qdrant"
     connection-type: qdrant
     conn-fields:
       url:
diff --git a/providers/qdrant/src/airflow/providers/qdrant/get_provider_info.py 
b/providers/qdrant/src/airflow/providers/qdrant/get_provider_info.py
index f20c57b9daf..6f892b167c6 100644
--- a/providers/qdrant/src/airflow/providers/qdrant/get_provider_info.py
+++ b/providers/qdrant/src/airflow/providers/qdrant/get_provider_info.py
@@ -41,6 +41,7 @@ def get_provider_info():
         "connection-types": [
             {
                 "hook-class-name": 
"airflow.providers.qdrant.hooks.qdrant.QdrantHook",
+                "hook-name": "Qdrant",
                 "connection-type": "qdrant",
                 "conn-fields": {
                     "url": {
diff --git a/providers/redis/provider.yaml b/providers/redis/provider.yaml
index e67c28a4da4..25b2794aa02 100644
--- a/providers/redis/provider.yaml
+++ b/providers/redis/provider.yaml
@@ -98,6 +98,7 @@ hooks:
 
 connection-types:
   - hook-class-name: airflow.providers.redis.hooks.redis.RedisHook
+    hook-name: "Redis"
     connection-type: redis
     ui-field-behaviour:
       hidden-fields:
diff --git a/providers/redis/src/airflow/providers/redis/get_provider_info.py 
b/providers/redis/src/airflow/providers/redis/get_provider_info.py
index 53c4a21b0c4..6d764d41bc4 100644
--- a/providers/redis/src/airflow/providers/redis/get_provider_info.py
+++ b/providers/redis/src/airflow/providers/redis/get_provider_info.py
@@ -60,6 +60,7 @@ def get_provider_info():
         "connection-types": [
             {
                 "hook-class-name": 
"airflow.providers.redis.hooks.redis.RedisHook",
+                "hook-name": "Redis",
                 "connection-type": "redis",
                 "ui-field-behaviour": {"hidden-fields": ["schema", "extra"], 
"relabeling": {}},
                 "conn-fields": {
diff --git a/providers/salesforce/provider.yaml 
b/providers/salesforce/provider.yaml
index ca4d336acb1..0ac19a3af11 100644
--- a/providers/salesforce/provider.yaml
+++ b/providers/salesforce/provider.yaml
@@ -96,6 +96,7 @@ hooks:
 
 connection-types:
   - hook-class-name: 
airflow.providers.salesforce.hooks.salesforce.SalesforceHook
+    hook-name: "Salesforce"
     connection-type: salesforce
     conn-fields:
       security_token:
diff --git 
a/providers/salesforce/src/airflow/providers/salesforce/get_provider_info.py 
b/providers/salesforce/src/airflow/providers/salesforce/get_provider_info.py
index 23ea607b041..9e59473f89b 100644
--- a/providers/salesforce/src/airflow/providers/salesforce/get_provider_info.py
+++ b/providers/salesforce/src/airflow/providers/salesforce/get_provider_info.py
@@ -56,6 +56,7 @@ def get_provider_info():
         "connection-types": [
             {
                 "hook-class-name": 
"airflow.providers.salesforce.hooks.salesforce.SalesforceHook",
+                "hook-name": "Salesforce",
                 "connection-type": "salesforce",
                 "conn-fields": {
                     "security_token": {
diff --git a/providers/samba/provider.yaml b/providers/samba/provider.yaml
index caba5da4df3..90f13179fa6 100644
--- a/providers/samba/provider.yaml
+++ b/providers/samba/provider.yaml
@@ -83,6 +83,7 @@ transfers:
 
 connection-types:
   - hook-class-name: airflow.providers.samba.hooks.samba.SambaHook
+    hook-name: "Samba"
     connection-type: samba
     conn-fields:
       share_type:
diff --git a/providers/samba/src/airflow/providers/samba/get_provider_info.py 
b/providers/samba/src/airflow/providers/samba/get_provider_info.py
index d46471380df..fa6f98566f7 100644
--- a/providers/samba/src/airflow/providers/samba/get_provider_info.py
+++ b/providers/samba/src/airflow/providers/samba/get_provider_info.py
@@ -46,6 +46,7 @@ def get_provider_info():
         "connection-types": [
             {
                 "hook-class-name": 
"airflow.providers.samba.hooks.samba.SambaHook",
+                "hook-name": "Samba",
                 "connection-type": "samba",
                 "conn-fields": {
                     "share_type": {
diff --git a/providers/segment/provider.yaml b/providers/segment/provider.yaml
index 083cf3c6451..edd62e155b0 100644
--- a/providers/segment/provider.yaml
+++ b/providers/segment/provider.yaml
@@ -75,4 +75,5 @@ hooks:
 
 connection-types:
   - hook-class-name: airflow.providers.segment.hooks.segment.SegmentHook
+    hook-name: "Segment"
     connection-type: segment
diff --git 
a/providers/segment/src/airflow/providers/segment/get_provider_info.py 
b/providers/segment/src/airflow/providers/segment/get_provider_info.py
index f10f23ee7f7..a1813925b16 100644
--- a/providers/segment/src/airflow/providers/segment/get_provider_info.py
+++ b/providers/segment/src/airflow/providers/segment/get_provider_info.py
@@ -46,6 +46,7 @@ def get_provider_info():
         "connection-types": [
             {
                 "hook-class-name": 
"airflow.providers.segment.hooks.segment.SegmentHook",
+                "hook-name": "Segment",
                 "connection-type": "segment",
             }
         ],
diff --git a/providers/sftp/provider.yaml b/providers/sftp/provider.yaml
index 5f2c52c6570..d5d4502a2aa 100644
--- a/providers/sftp/provider.yaml
+++ b/providers/sftp/provider.yaml
@@ -117,6 +117,7 @@ hooks:
 
 connection-types:
   - hook-class-name: airflow.providers.sftp.hooks.sftp.SFTPHook
+    hook-name: "SFTP"
     connection-type: sftp
     ui-field-behaviour:
       hidden-fields:
diff --git a/providers/sftp/src/airflow/providers/sftp/get_provider_info.py 
b/providers/sftp/src/airflow/providers/sftp/get_provider_info.py
index 4e2048f4261..f55230a5a49 100644
--- a/providers/sftp/src/airflow/providers/sftp/get_provider_info.py
+++ b/providers/sftp/src/airflow/providers/sftp/get_provider_info.py
@@ -59,6 +59,7 @@ def get_provider_info():
         "connection-types": [
             {
                 "hook-class-name": 
"airflow.providers.sftp.hooks.sftp.SFTPHook",
+                "hook-name": "SFTP",
                 "connection-type": "sftp",
                 "ui-field-behaviour": {
                     "hidden-fields": ["schema"],
diff --git a/providers/slack/provider.yaml b/providers/slack/provider.yaml
index b665bc1a1b2..00e396ad7aa 100644
--- a/providers/slack/provider.yaml
+++ b/providers/slack/provider.yaml
@@ -137,6 +137,7 @@ transfers:
 
 connection-types:
   - hook-class-name: airflow.providers.slack.hooks.slack.SlackHook
+    hook-name: "Slack API"
     connection-type: slack
     ui-field-behaviour:
       hidden-fields:
@@ -175,6 +176,7 @@ connection-types:
             - 'null'
         description: Optional. Proxy to make the Slack API call.
   - hook-class-name: 
airflow.providers.slack.hooks.slack_webhook.SlackWebhookHook
+    hook-name: "Slack Incoming Webhook"
     connection-type: slackwebhook
     ui-field-behaviour:
       hidden-fields:
diff --git a/providers/slack/src/airflow/providers/slack/get_provider_info.py 
b/providers/slack/src/airflow/providers/slack/get_provider_info.py
index e7306f1f075..f7c686c9727 100644
--- a/providers/slack/src/airflow/providers/slack/get_provider_info.py
+++ b/providers/slack/src/airflow/providers/slack/get_provider_info.py
@@ -82,6 +82,7 @@ def get_provider_info():
         "connection-types": [
             {
                 "hook-class-name": 
"airflow.providers.slack.hooks.slack.SlackHook",
+                "hook-name": "Slack API",
                 "connection-type": "slack",
                 "ui-field-behaviour": {
                     "hidden-fields": ["login", "port", "host", "schema", 
"extra"],
@@ -113,6 +114,7 @@ def get_provider_info():
             },
             {
                 "hook-class-name": 
"airflow.providers.slack.hooks.slack_webhook.SlackWebhookHook",
+                "hook-name": "Slack Incoming Webhook",
                 "connection-type": "slackwebhook",
                 "ui-field-behaviour": {
                     "hidden-fields": ["login", "port", "extra"],
diff --git a/providers/smtp/provider.yaml b/providers/smtp/provider.yaml
index 9c9c06d0e59..02bc7941c3d 100644
--- a/providers/smtp/provider.yaml
+++ b/providers/smtp/provider.yaml
@@ -83,6 +83,7 @@ hooks:
 
 connection-types:
   - hook-class-name: airflow.providers.smtp.hooks.smtp.SmtpHook
+    hook-name: "SMTP"
     connection-type: smtp
     conn-fields:
       from_email:
diff --git a/providers/smtp/src/airflow/providers/smtp/get_provider_info.py 
b/providers/smtp/src/airflow/providers/smtp/get_provider_info.py
index f8665d3df25..46e46efb970 100644
--- a/providers/smtp/src/airflow/providers/smtp/get_provider_info.py
+++ b/providers/smtp/src/airflow/providers/smtp/get_provider_info.py
@@ -49,6 +49,7 @@ def get_provider_info():
         "connection-types": [
             {
                 "hook-class-name": 
"airflow.providers.smtp.hooks.smtp.SmtpHook",
+                "hook-name": "SMTP",
                 "connection-type": "smtp",
                 "conn-fields": {
                     "from_email": {"label": "From email", "schema": {"type": 
["string", "null"]}},
diff --git a/providers/snowflake/provider.yaml 
b/providers/snowflake/provider.yaml
index ec4006a82e4..7f6a0bae533 100644
--- a/providers/snowflake/provider.yaml
+++ b/providers/snowflake/provider.yaml
@@ -149,6 +149,7 @@ transfers:
 
 connection-types:
   - hook-class-name: airflow.providers.snowflake.hooks.snowflake.SnowflakeHook
+    hook-name: "Snowflake"
     connection-type: snowflake
     ui-field-behaviour:
       hidden-fields: ["port", "host"]
diff --git 
a/providers/snowflake/src/airflow/providers/snowflake/get_provider_info.py 
b/providers/snowflake/src/airflow/providers/snowflake/get_provider_info.py
index 9974117f789..44778761d8f 100644
--- a/providers/snowflake/src/airflow/providers/snowflake/get_provider_info.py
+++ b/providers/snowflake/src/airflow/providers/snowflake/get_provider_info.py
@@ -85,6 +85,7 @@ def get_provider_info():
         "connection-types": [
             {
                 "hook-class-name": 
"airflow.providers.snowflake.hooks.snowflake.SnowflakeHook",
+                "hook-name": "Snowflake",
                 "connection-type": "snowflake",
                 "ui-field-behaviour": {
                     "hidden-fields": ["port", "host"],
diff --git a/providers/sqlite/provider.yaml b/providers/sqlite/provider.yaml
index 153a944759a..a98e02420fc 100644
--- a/providers/sqlite/provider.yaml
+++ b/providers/sqlite/provider.yaml
@@ -85,4 +85,5 @@ hooks:
 
 connection-types:
   - hook-class-name: airflow.providers.sqlite.hooks.sqlite.SqliteHook
+    hook-name: "Sqlite"
     connection-type: sqlite
diff --git a/providers/sqlite/src/airflow/providers/sqlite/get_provider_info.py 
b/providers/sqlite/src/airflow/providers/sqlite/get_provider_info.py
index ebe7ce1d3df..2819ab3a6b7 100644
--- a/providers/sqlite/src/airflow/providers/sqlite/get_provider_info.py
+++ b/providers/sqlite/src/airflow/providers/sqlite/get_provider_info.py
@@ -41,6 +41,7 @@ def get_provider_info():
         "connection-types": [
             {
                 "hook-class-name": 
"airflow.providers.sqlite.hooks.sqlite.SqliteHook",
+                "hook-name": "Sqlite",
                 "connection-type": "sqlite",
             }
         ],
diff --git a/providers/ssh/provider.yaml b/providers/ssh/provider.yaml
index 1c6075d6c98..3ee5fc6098c 100644
--- a/providers/ssh/provider.yaml
+++ b/providers/ssh/provider.yaml
@@ -108,6 +108,7 @@ triggers:
 
 connection-types:
   - hook-class-name: airflow.providers.ssh.hooks.ssh.SSHHook
+    hook-name: "SSH"
     connection-type: ssh
     ui-field-behaviour:
       hidden-fields:
diff --git a/providers/ssh/src/airflow/providers/ssh/get_provider_info.py 
b/providers/ssh/src/airflow/providers/ssh/get_provider_info.py
index 1be00ce4d34..fff6b355929 100644
--- a/providers/ssh/src/airflow/providers/ssh/get_provider_info.py
+++ b/providers/ssh/src/airflow/providers/ssh/get_provider_info.py
@@ -56,6 +56,7 @@ def get_provider_info():
         "connection-types": [
             {
                 "hook-class-name": "airflow.providers.ssh.hooks.ssh.SSHHook",
+                "hook-name": "SSH",
                 "connection-type": "ssh",
                 "ui-field-behaviour": {
                     "hidden-fields": ["schema"],
diff --git a/providers/standard/provider.yaml b/providers/standard/provider.yaml
index 311af136ec7..ec133cd8443 100644
--- a/providers/standard/provider.yaml
+++ b/providers/standard/provider.yaml
@@ -138,6 +138,7 @@ config:
 
 connection-types:
   - hook-class-name: airflow.providers.standard.hooks.filesystem.FSHook
+    hook-name: "File (path)"
     connection-type: fs
     ui-field-behaviour:
       hidden-fields:
@@ -155,6 +156,7 @@ connection-types:
             - string
             - 'null'
   - hook-class-name: 
airflow.providers.standard.hooks.package_index.PackageIndexHook
+    hook-name: "Package Index (Python)"
     connection-type: package_index
     ui-field-behaviour:
       hidden-fields:
diff --git 
a/providers/standard/src/airflow/providers/standard/get_provider_info.py 
b/providers/standard/src/airflow/providers/standard/get_provider_info.py
index 5b80e66cf51..1f7b2049454 100644
--- a/providers/standard/src/airflow/providers/standard/get_provider_info.py
+++ b/providers/standard/src/airflow/providers/standard/get_provider_info.py
@@ -120,6 +120,7 @@ def get_provider_info():
         "connection-types": [
             {
                 "hook-class-name": 
"airflow.providers.standard.hooks.filesystem.FSHook",
+                "hook-name": "File (path)",
                 "connection-type": "fs",
                 "ui-field-behaviour": {
                     "hidden-fields": ["host", "schema", "port", "login", 
"password", "extra"]
@@ -128,6 +129,7 @@ def get_provider_info():
             },
             {
                 "hook-class-name": 
"airflow.providers.standard.hooks.package_index.PackageIndexHook",
+                "hook-name": "Package Index (Python)",
                 "connection-type": "package_index",
                 "ui-field-behaviour": {
                     "hidden-fields": ["schema", "port", "extra"],
diff --git a/providers/tableau/provider.yaml b/providers/tableau/provider.yaml
index 78b0ec56fcb..c74d98bfb14 100644
--- a/providers/tableau/provider.yaml
+++ b/providers/tableau/provider.yaml
@@ -95,4 +95,5 @@ hooks:
 
 connection-types:
   - hook-class-name: airflow.providers.tableau.hooks.tableau.TableauHook
+    hook-name: "Tableau"
     connection-type: tableau
diff --git 
a/providers/tableau/src/airflow/providers/tableau/get_provider_info.py 
b/providers/tableau/src/airflow/providers/tableau/get_provider_info.py
index ec70a9b6921..e72c0a913f2 100644
--- a/providers/tableau/src/airflow/providers/tableau/get_provider_info.py
+++ b/providers/tableau/src/airflow/providers/tableau/get_provider_info.py
@@ -47,6 +47,7 @@ def get_provider_info():
         "connection-types": [
             {
                 "hook-class-name": 
"airflow.providers.tableau.hooks.tableau.TableauHook",
+                "hook-name": "Tableau",
                 "connection-type": "tableau",
             }
         ],
diff --git a/providers/telegram/provider.yaml b/providers/telegram/provider.yaml
index cd6227e47d9..56adba65bfc 100644
--- a/providers/telegram/provider.yaml
+++ b/providers/telegram/provider.yaml
@@ -79,6 +79,7 @@ operators:
 
 connection-types:
   - hook-class-name: airflow.providers.telegram.hooks.telegram.TelegramHook
+    hook-name: "Telegram"
     connection-type: telegram
     ui-field-behaviour:
       hidden-fields:
diff --git 
a/providers/telegram/src/airflow/providers/telegram/get_provider_info.py 
b/providers/telegram/src/airflow/providers/telegram/get_provider_info.py
index 18ba5b1c1b4..960ec1ef90e 100644
--- a/providers/telegram/src/airflow/providers/telegram/get_provider_info.py
+++ b/providers/telegram/src/airflow/providers/telegram/get_provider_info.py
@@ -44,6 +44,7 @@ def get_provider_info():
         "connection-types": [
             {
                 "hook-class-name": 
"airflow.providers.telegram.hooks.telegram.TelegramHook",
+                "hook-name": "Telegram",
                 "connection-type": "telegram",
                 "ui-field-behaviour": {"hidden-fields": ["schema", "extra", 
"login", "port"]},
             }
diff --git a/providers/teradata/provider.yaml b/providers/teradata/provider.yaml
index 63700f3af63..c23d26bf674 100644
--- a/providers/teradata/provider.yaml
+++ b/providers/teradata/provider.yaml
@@ -126,6 +126,7 @@ transfers:
 
 connection-types:
   - hook-class-name: airflow.providers.teradata.hooks.teradata.TeradataHook
+    hook-name: "Teradata"
     connection-type: teradata
     ui-field-behaviour:
       hidden-fields:
diff --git 
a/providers/teradata/src/airflow/providers/teradata/get_provider_info.py 
b/providers/teradata/src/airflow/providers/teradata/get_provider_info.py
index df5c4ea4b3d..5d90b0546f1 100644
--- a/providers/teradata/src/airflow/providers/teradata/get_provider_info.py
+++ b/providers/teradata/src/airflow/providers/teradata/get_provider_info.py
@@ -98,6 +98,7 @@ def get_provider_info():
         "connection-types": [
             {
                 "hook-class-name": 
"airflow.providers.teradata.hooks.teradata.TeradataHook",
+                "hook-name": "Teradata",
                 "connection-type": "teradata",
                 "ui-field-behaviour": {
                     "hidden-fields": ["port"],
diff --git a/providers/trino/provider.yaml b/providers/trino/provider.yaml
index 8c17f6b6315..5d48efd3f69 100644
--- a/providers/trino/provider.yaml
+++ b/providers/trino/provider.yaml
@@ -116,6 +116,7 @@ transfers:
 
 connection-types:
   - hook-class-name: airflow.providers.trino.hooks.trino.TrinoHook
+    hook-name: "Trino"
     connection-type: trino
     ui-field-behaviour:
       placeholders:
diff --git a/providers/trino/src/airflow/providers/trino/get_provider_info.py 
b/providers/trino/src/airflow/providers/trino/get_provider_info.py
index c2213e2c98c..64e4d11a231 100644
--- a/providers/trino/src/airflow/providers/trino/get_provider_info.py
+++ b/providers/trino/src/airflow/providers/trino/get_provider_info.py
@@ -53,6 +53,7 @@ def get_provider_info():
         "connection-types": [
             {
                 "hook-class-name": 
"airflow.providers.trino.hooks.trino.TrinoHook",
+                "hook-name": "Trino",
                 "connection-type": "trino",
                 "ui-field-behaviour": {
                     "placeholders": {
diff --git a/providers/vertica/provider.yaml b/providers/vertica/provider.yaml
index e1db0f544fa..6a119d11981 100644
--- a/providers/vertica/provider.yaml
+++ b/providers/vertica/provider.yaml
@@ -83,4 +83,5 @@ hooks:
 
 connection-types:
   - hook-class-name: airflow.providers.vertica.hooks.vertica.VerticaHook
+    hook-name: "Vertica"
     connection-type: vertica
diff --git 
a/providers/vertica/src/airflow/providers/vertica/get_provider_info.py 
b/providers/vertica/src/airflow/providers/vertica/get_provider_info.py
index eefd15120f2..986485f5f06 100644
--- a/providers/vertica/src/airflow/providers/vertica/get_provider_info.py
+++ b/providers/vertica/src/airflow/providers/vertica/get_provider_info.py
@@ -41,6 +41,7 @@ def get_provider_info():
         "connection-types": [
             {
                 "hook-class-name": 
"airflow.providers.vertica.hooks.vertica.VerticaHook",
+                "hook-name": "Vertica",
                 "connection-type": "vertica",
             }
         ],
diff --git a/providers/weaviate/provider.yaml b/providers/weaviate/provider.yaml
index bb6d72ec024..72f538ba623 100644
--- a/providers/weaviate/provider.yaml
+++ b/providers/weaviate/provider.yaml
@@ -74,6 +74,7 @@ hooks:
 
 connection-types:
   - hook-class-name: airflow.providers.weaviate.hooks.weaviate.WeaviateHook
+    hook-name: "Weaviate"
     connection-type: weaviate
     ui-field-behaviour:
       hidden-fields:
diff --git 
a/providers/weaviate/src/airflow/providers/weaviate/get_provider_info.py 
b/providers/weaviate/src/airflow/providers/weaviate/get_provider_info.py
index 1098ddcc86e..9dcce2cf4d3 100644
--- a/providers/weaviate/src/airflow/providers/weaviate/get_provider_info.py
+++ b/providers/weaviate/src/airflow/providers/weaviate/get_provider_info.py
@@ -41,6 +41,7 @@ def get_provider_info():
         "connection-types": [
             {
                 "hook-class-name": 
"airflow.providers.weaviate.hooks.weaviate.WeaviateHook",
+                "hook-name": "Weaviate",
                 "connection-type": "weaviate",
                 "ui-field-behaviour": {
                     "hidden-fields": ["schema"],
diff --git a/providers/yandex/provider.yaml b/providers/yandex/provider.yaml
index be70051dc58..e2c6e59bbf8 100644
--- a/providers/yandex/provider.yaml
+++ b/providers/yandex/provider.yaml
@@ -111,6 +111,7 @@ hooks:
 
 connection-types:
   - hook-class-name: airflow.providers.yandex.hooks.yandex.YandexCloudBaseHook
+    hook-name: "Yandex Cloud"
     connection-type: yandexcloud
     ui-field-behaviour:
       hidden-fields:
diff --git a/providers/yandex/src/airflow/providers/yandex/get_provider_info.py 
b/providers/yandex/src/airflow/providers/yandex/get_provider_info.py
index 94dea772e15..83a8e762cea 100644
--- a/providers/yandex/src/airflow/providers/yandex/get_provider_info.py
+++ b/providers/yandex/src/airflow/providers/yandex/get_provider_info.py
@@ -69,6 +69,7 @@ def get_provider_info():
         "connection-types": [
             {
                 "hook-class-name": 
"airflow.providers.yandex.hooks.yandex.YandexCloudBaseHook",
+                "hook-name": "Yandex Cloud",
                 "connection-type": "yandexcloud",
                 "ui-field-behaviour": {
                     "hidden-fields": ["host", "schema", "login", "password", 
"port", "extra"]
diff --git a/providers/yandex/src/airflow/providers/yandex/hooks/yandex.py 
b/providers/yandex/src/airflow/providers/yandex/hooks/yandex.py
index 86f20c8d5ea..db52fda5015 100644
--- a/providers/yandex/src/airflow/providers/yandex/hooks/yandex.py
+++ b/providers/yandex/src/airflow/providers/yandex/hooks/yandex.py
@@ -26,7 +26,7 @@ from airflow.providers.yandex.utils.credentials import (
     get_credentials,
     get_service_account_id,
 )
-from airflow.providers.yandex.utils.defaults import conn_name_attr, conn_type, 
default_conn_name, hook_name
+from airflow.providers.yandex.utils.defaults import conn_name_attr, conn_type, 
default_conn_name
 from airflow.providers.yandex.utils.fields import get_field_from_extras
 from airflow.providers.yandex.utils.user_agent import provider_user_agent
 
@@ -44,7 +44,7 @@ class YandexCloudBaseHook(BaseHook):
     conn_name_attr = conn_name_attr
     default_conn_name = default_conn_name
     conn_type = conn_type
-    hook_name = hook_name
+    hook_name = "Yandex Cloud"
 
     @classmethod
     def get_connection_form_widgets(cls) -> dict[str, Any]:
diff --git a/providers/ydb/provider.yaml b/providers/ydb/provider.yaml
index 4e3b9591c34..8be7a1706ea 100644
--- a/providers/ydb/provider.yaml
+++ b/providers/ydb/provider.yaml
@@ -68,6 +68,7 @@ hooks:
 
 connection-types:
   - hook-class-name: airflow.providers.ydb.hooks.ydb.YDBHook
+    hook-name: "YDB"
     connection-type: ydb
     ui-field-behaviour:
       hidden-fields:
diff --git a/providers/ydb/src/airflow/providers/ydb/get_provider_info.py 
b/providers/ydb/src/airflow/providers/ydb/get_provider_info.py
index 056b0cc58eb..5c7d2371caf 100644
--- a/providers/ydb/src/airflow/providers/ydb/get_provider_info.py
+++ b/providers/ydb/src/airflow/providers/ydb/get_provider_info.py
@@ -40,6 +40,7 @@ def get_provider_info():
         "connection-types": [
             {
                 "hook-class-name": "airflow.providers.ydb.hooks.ydb.YDBHook",
+                "hook-name": "YDB",
                 "connection-type": "ydb",
                 "ui-field-behaviour": {
                     "hidden-fields": ["schema", "extra"],
diff --git a/providers/zendesk/provider.yaml b/providers/zendesk/provider.yaml
index 4aadcb79823..133c239bdb8 100644
--- a/providers/zendesk/provider.yaml
+++ b/providers/zendesk/provider.yaml
@@ -73,6 +73,7 @@ hooks:
 
 connection-types:
   - hook-class-name: airflow.providers.zendesk.hooks.zendesk.ZendeskHook
+    hook-name: "Zendesk"
     connection-type: zendesk
     ui-field-behaviour:
       hidden-fields:
diff --git 
a/providers/zendesk/src/airflow/providers/zendesk/get_provider_info.py 
b/providers/zendesk/src/airflow/providers/zendesk/get_provider_info.py
index c5fae778231..3a6cdd295ce 100644
--- a/providers/zendesk/src/airflow/providers/zendesk/get_provider_info.py
+++ b/providers/zendesk/src/airflow/providers/zendesk/get_provider_info.py
@@ -40,6 +40,7 @@ def get_provider_info():
         "connection-types": [
             {
                 "hook-class-name": 
"airflow.providers.zendesk.hooks.zendesk.ZendeskHook",
+                "hook-name": "Zendesk",
                 "connection-type": "zendesk",
                 "ui-field-behaviour": {
                     "hidden-fields": ["schema", "port", "extra"],


Reply via email to