Skip to content

update_domain_layout async

update_domain_layout(
    domain_name: name,
    layout_definition_name: name,
    *,
    config_overrides: Optional[AsyncCustomerProfilesClientConfig] = None,
    description: Optional[sensitiveText] = None,
    display_name: Optional[displayName] = None,
    is_default: Optional[boolean] = None,
    layout_type: Optional[LayoutType] = None,
    layout: Optional[sensitiveString1To2000000] = None,
) -> UpdateDomainLayoutResponse

Updates the layout used to view data for a specific domain. This API can only be invoked from the Amazon Connect admin website.

Parameters:

  • domain_name (name) –

    The unique name of the domain.

  • layout_definition_name (name) –

    The unique name of the layout.

  • description (Optional[sensitiveText], default: None ) –

    The description of the layout

  • display_name (Optional[displayName], default: None ) –

    The display name of the layout

  • is_default (Optional[boolean], default: None ) –

    If set to true for a layout, this layout will be used by default to view data. If set to false, then the layout will not be used by default, but it can be used to view data by explicitly selecting it in the console.

  • layout_type (Optional[LayoutType], default: None ) –

    The type of layout that can be used to view data under a Customer Profiles domain.

  • layout (Optional[sensitiveString1To2000000], default: None ) –

    A customizable layout that can be used to view data under a Customer Profiles domain.

Raises:

Source code in docs_src/capo_customer_profiles/_services/async_customer_profiles.py
async def update_domain_layout(
    self,
    domain_name: "capo_customer_profiles.types.name.name",
    layout_definition_name: "capo_customer_profiles.types.name.name",
    *,
    config_overrides: Optional[AsyncCustomerProfilesClientConfig] = None,
    description: Optional[
        "capo_customer_profiles.types.sensitive_text.sensitiveText"
    ] = None,
    display_name: Optional[
        "capo_customer_profiles.types.display_name.displayName"
    ] = None,
    is_default: Optional["capo_customer_profiles.types.boolean.boolean"] = None,
    layout_type: Optional[
        "capo_customer_profiles.types.layout_type.LayoutType"
    ] = None,
    layout: Optional[
        "capo_customer_profiles.types.sensitive_string1_to2000000.sensitiveString1To2000000"
    ] = None,
) -> "capo_customer_profiles.types.update_domain_layout_response.UpdateDomainLayoutResponse":
    """<p>Updates the layout used to view data for a specific domain. This API can only be invoked from the Amazon Connect admin website.</p>

    Args:
        domain_name: <p>The unique name of the domain.</p>
        layout_definition_name: <p>The unique name of the layout.</p>
        description: <p>The description of the layout</p>
        display_name: <p>The display name of the layout</p>
        is_default: <p>If set to true for a layout, this layout will be used by default to view data. If set to false, then the layout will not be used by default, but it can be used to view data by explicitly selecting it in the console.</p>
        layout_type: <p>The type of layout that can be used to view data under a Customer Profiles domain.</p>
        layout: <p>A customizable layout that can be used to view data under a Customer Profiles domain.</p>

    Raises:
        capo_customer_profiles.errors.access_denied_exception.AccessDeniedException: <p>You do not have sufficient access to perform this action.</p>
        capo_customer_profiles.errors.bad_request_exception.BadRequestException: <p>The input you provided is invalid.</p>
        capo_customer_profiles.errors.internal_server_exception.InternalServerException: <p>An internal service error occurred.</p>
        capo_customer_profiles.errors.resource_not_found_exception.ResourceNotFoundException: <p>The requested resource does not exist, or access was denied.</p>
        capo_customer_profiles.errors.throttling_exception.ThrottlingException: <p>You exceeded the maximum number of requests.</p>
        capo_customer_profiles.errors.UnknownServiceError: The service returned an error code this client does not model.
    """

    async def _handler(
        req: "AsyncOperationRequest[capo_customer_profiles.types.update_domain_layout_request.UpdateDomainLayoutRequest]",
    ) -> AsyncOperationResponse[
        "capo_customer_profiles.types.update_domain_layout_response.UpdateDomainLayoutResponse"
    ]:
        import capo_customer_profiles._operations.customer_profiles_20200815.update_domain_layout

        (
            output,
            http_response,
        ) = await capo_customer_profiles._operations.customer_profiles_20200815.update_domain_layout.async_update_domain_layout(
            req.options, req.input
        )
        return AsyncOperationResponse(output=output, response=http_response)

    def _redact_input(
        input_: "capo_customer_profiles.types.update_domain_layout_request.UpdateDomainLayoutRequest",
    ) -> dict[str, Any]:
        import capo_customer_profiles.types.update_domain_layout_request

        return capo_customer_profiles.types.update_domain_layout_request.redact_sensitive(
            input_
        )

    def _redact_output(
        output: "capo_customer_profiles.types.update_domain_layout_response.UpdateDomainLayoutResponse",
    ) -> dict[str, Any]:
        import capo_customer_profiles.types.update_domain_layout_response

        return capo_customer_profiles.types.update_domain_layout_response.redact_sensitive(
            output
        )

    interceptors_, options_ = self.operation_options(
        config_overrides,
        OperationLogging(
            "UpdateDomainLayout",
            redact_input=_redact_input,
            redact_output=_redact_output,
        ),
    )
    input_: capo_customer_profiles.types.update_domain_layout_request.UpdateDomainLayoutRequest = {
        "domain_name": domain_name,
        "layout_definition_name": layout_definition_name,
    }
    if description is not None:
        input_["description"] = description
    if display_name is not None:
        input_["display_name"] = display_name
    if is_default is not None:
        input_["is_default"] = is_default
    if layout_type is not None:
        input_["layout_type"] = layout_type
    if layout is not None:
        input_["layout"] = layout

    response = await aexecute_pipeline(
        AsyncOperationRequest(input=input_, options=options_),
        handler=_handler,
        interceptors=list(interceptors_),
    )
    await response.response.aclose()
    return response.output