def delete_dashboard( name: Optional[str] = None, dashboard_id: Optional[str] = None, version_number: Optional[int] = None, account_id: Optional[str] = None, boto3_session: Optional[boto3.Session] = None, ) -> None: # pragma: no cover """Delete a dashboard. Note ---- You must pass a not None ``name`` or ``dashboard_id`` argument. Parameters ---------- name : str, optional Dashboard name. dashboard_id : str, optional The ID for the dashboard. version_number : int, optional The version number of the dashboard. If the version number property is provided, only the specified version of the dashboard is deleted. account_id : str, optional If None, the account ID will be inferred from your boto3 session. boto3_session : boto3.Session(), optional Boto3 Session. The default boto3 session will be used if boto3_session receive None. Returns ------- None None. Examples -------- >>> import awswrangler as wr >>> wr.quicksight.delete_dashboard(name="...") """ if (name is None) and (dashboard_id is None): raise exceptions.InvalidArgument( "You must pass a not None name or dashboard_id argument.") session: boto3.Session = _utils.ensure_session(session=boto3_session) if (dashboard_id is None) and (name is not None): dashboard_id = get_dashboard_id(name=name, account_id=account_id, boto3_session=session) args: Dict[str, Any] = { "func_name": "delete_dashboard", "account_id": account_id, "boto3_session": session, "DashboardId": dashboard_id, } if version_number is not None: args["VersionNumber"] = version_number _delete(**args)
def describe_dashboard( name: Optional[str] = None, dashboard_id: Optional[str] = None, account_id: Optional[str] = None, boto3_session: Optional[boto3.Session] = None, ) -> Dict[str, Any]: """Describe a QuickSight dashboard by name or ID. Note ---- You must pass a not None ``name`` or ``dashboard_id`` argument. Parameters ---------- name : str, optional Dashboard name. dashboard_id : str, optional Dashboard ID. account_id : str, optional If None, the account ID will be inferred from your boto3 session. boto3_session : boto3.Session(), optional Boto3 Session. The default boto3 session will be used if boto3_session receive None. Returns ------- Dict[str, Any] Dashboad Description. Examples -------- >>> import awswrangler as wr >>> description = wr.quicksight.describe_dashboard(name="my-dashboard") """ if (name is None) and (dashboard_id is None): raise exceptions.InvalidArgument( "You must pass a not None name or dashboard_id argument.") session: boto3.Session = _utils.ensure_session(session=boto3_session) if account_id is None: account_id = sts.get_account_id(boto3_session=session) if (dashboard_id is None) and (name is not None): dashboard_id = get_dashboard_id(name=name, account_id=account_id, boto3_session=session) client: boto3.client = _utils.client(service_name="quicksight", session=session) return cast( Dict[str, Any], client.describe_dashboard(AwsAccountId=account_id, DashboardId=dashboard_id)["Dashboard"])