class_docstr: Interact with dbt Cloud using the V2 API.
  
  :param dbt_cloud_conn_id: The ID of the :ref:`dbt Cloud connection <howto/connection:dbt-cloud>`.
class_docstr_tok: ["Interact","with","dbt","Cloud","using","the","V2","API",".",":","param","dbt_cloud_conn_id",":","The","ID","of","the",":","ref",":","`","dbt","Cloud","connection","<","howto\/connection",":","dbt-cloud",">","`","."]
docstr: Build custom field behavior for the dbt Cloud connection form in the Airflow UI.
docstr_tok: ["Build","custom","field","behavior","for","the","dbt","Cloud","connection","form","in","the","Airflow","UI","."]
code: def get_ui_field_behaviour(cls) -> dict[str, Any]:
      """Build custom field behavior for the dbt Cloud connection form in the Airflow UI."""
      return {
          "hidden_fields": ["schema", "port", "extra"],
          "relabeling": {
              "login": "Account ID",
              "password": "API Token",
              "host": "Tenant",
          },
          "placeholders": {"host": "Defaults to 'cloud.getdbt.com'."},
      }
  
imports: from __future__ import annotations
  import asyncio
  import json
  import time
  from enum import Enum
  from functools import cached_property, wraps
  from inspect import signature
  from typing import TYPE_CHECKING, Any, Callable, Sequence, Set, TypeVar, cast
  import aiohttp
  from aiohttp import ClientResponseError
  from asgiref.sync import sync_to_async
  from requests.auth import AuthBase
  from requests.sessions import Session
  from airflow.exceptions import AirflowException
  from airflow.providers.http.hooks.http import HttpHook
  from airflow.typing_compat import TypedDict
label_desc: Use image node_id 1 for calling the DbtCloudHook obj's underlying member method code with example usage: obj.get_ui_field_behaviour(cls) and returns: dict