Skip to content

associate_attribute_group async

associate_attribute_group(
    application: ApplicationSpecifier,
    attribute_group: AttributeGroupSpecifier,
    *,
    config_overrides: Optional[AsyncServiceCatalogAppRegistryClientConfig] = None,
) -> AssociateAttributeGroupResponse

Associates an attribute group with an application to augment the application's metadata with the group's attributes. This feature enables applications to be described with user-defined details that are machine-readable, such as third-party integrations.

Parameters:

  • application (ApplicationSpecifier) –

    The name, ID, or ARN of the application.

  • attribute_group (AttributeGroupSpecifier) –

    The name, ID, or ARN of the attribute group that holds the attributes to describe the application.

Raises:

Source code in docs_src/capo_service_catalog_appregistry/_services/async_service_catalog_app_registry.py
async def associate_attribute_group(
    self,
    application: "capo_service_catalog_appregistry.types.application_specifier.ApplicationSpecifier",
    attribute_group: "capo_service_catalog_appregistry.types.attribute_group_specifier.AttributeGroupSpecifier",
    *,
    config_overrides: Optional[AsyncServiceCatalogAppRegistryClientConfig] = None,
) -> "capo_service_catalog_appregistry.types.associate_attribute_group_response.AssociateAttributeGroupResponse":
    """<p>Associates an attribute group with an application to augment the application's metadata with the group's attributes. This feature enables applications to be described with user-defined details that are machine-readable, such as third-party integrations.</p>

    Args:
        application: <p> The name, ID, or ARN of the application. </p>
        attribute_group: <p> The name, ID, or ARN of the attribute group that holds the attributes to describe the application. </p>

    Raises:
        capo_service_catalog_appregistry.errors.conflict_exception.ConflictException: <p>There was a conflict when processing the request (for example, a resource with the given name already exists within the account).</p>
        capo_service_catalog_appregistry.errors.internal_server_exception.InternalServerException: <p>The service is experiencing internal problems.</p>
        capo_service_catalog_appregistry.errors.resource_not_found_exception.ResourceNotFoundException: <p>The specified resource does not exist.</p>
        capo_service_catalog_appregistry.errors.service_quota_exceeded_exception.ServiceQuotaExceededException: <p> The maximum number of resources per account has been reached.</p>
        capo_service_catalog_appregistry.errors.validation_exception.ValidationException: <p>The request has invalid or missing parameters.</p>
        capo_service_catalog_appregistry.errors.UnknownServiceError: The service returned an error code this client does not model.
    """

    async def _handler(
        req: "AsyncOperationRequest[capo_service_catalog_appregistry.types.associate_attribute_group_request.AssociateAttributeGroupRequest]",
    ) -> AsyncOperationResponse[
        "capo_service_catalog_appregistry.types.associate_attribute_group_response.AssociateAttributeGroupResponse"
    ]:
        import capo_service_catalog_appregistry._operations.aws242_app_registry.associate_attribute_group

        (
            output,
            http_response,
        ) = await capo_service_catalog_appregistry._operations.aws242_app_registry.associate_attribute_group.async_associate_attribute_group(
            req.options, req.input
        )
        return AsyncOperationResponse(output=output, response=http_response)

    interceptors_, options_ = self.operation_options(
        config_overrides, OperationLogging("AssociateAttributeGroup")
    )
    input_: capo_service_catalog_appregistry.types.associate_attribute_group_request.AssociateAttributeGroupRequest = {
        "application": application,
        "attribute_group": attribute_group,
    }

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