Skip to content

create_aggregator_v2

create_aggregator_v2(
    *,
    config_overrides: Optional[SecurityHubClientConfig] = None,
    region_linking_mode: Optional[NonEmptyString] = None,
    linked_regions: Optional[StringList] = None,
    tags: Optional[TagMap] = None,
    client_token: Optional[ClientToken] = None,
) -> CreateAggregatorV2Response

Enables aggregation across Amazon Web Services Regions.

Parameters:

  • region_linking_mode (Optional[NonEmptyString], default: None ) –

    Determines how Regions are linked to an Aggregator V2.

  • linked_regions (Optional[StringList], default: None ) –

    The list of Regions that are linked to the aggregation Region.

  • tags (Optional[TagMap], default: None ) –

    A list of key-value pairs to be applied to the AggregatorV2.

  • client_token (Optional[ClientToken], default: None ) –

    A unique identifier used to ensure idempotency.

Raises:

Source code in docs_src/capo_securityhub/_services/security_hub.py
def create_aggregator_v2(
    self,
    *,
    config_overrides: Optional[SecurityHubClientConfig] = None,
    region_linking_mode: Optional[
        "capo_securityhub.types.non_empty_string.NonEmptyString"
    ] = None,
    linked_regions: Optional[
        "capo_securityhub.types.string_list.StringList"
    ] = None,
    tags: Optional["capo_securityhub.types.tag_map.TagMap"] = None,
    client_token: Optional[
        "capo_securityhub.types.client_token.ClientToken"
    ] = None,
) -> "capo_securityhub.types.create_aggregator_v2_response.CreateAggregatorV2Response":
    """<p>Enables aggregation across Amazon Web Services Regions.</p>

    Args:
        region_linking_mode: <p>Determines how Regions are linked to an Aggregator V2.</p>
        linked_regions: <p>The list of Regions that are linked to the aggregation Region.</p>
        tags: <p>A list of key-value pairs to be applied to the AggregatorV2.</p>
        client_token: <p>A unique identifier used to ensure idempotency.</p>

    Raises:
        capo_securityhub.errors.access_denied_exception.AccessDeniedException: <p>You don't have permission to perform the action specified in the request.</p>
        capo_securityhub.errors.conflict_exception.ConflictException: <p>The request causes conflict with the current state of the service resource.</p>
        capo_securityhub.errors.internal_server_exception.InternalServerException: <p> The request has failed due to an internal failure of the service. </p>
        capo_securityhub.errors.resource_not_found_exception.ResourceNotFoundException: <p>The request was rejected because we can't find the specified resource.</p>
        capo_securityhub.errors.service_quota_exceeded_exception.ServiceQuotaExceededException: <p>The request was rejected because it would exceed the service quota limit.</p>
        capo_securityhub.errors.throttling_exception.ThrottlingException: <p> The limit on the number of requests per second was exceeded. </p>
        capo_securityhub.errors.validation_exception.ValidationException: <p>The request has failed validation because it's missing required fields or has invalid inputs.</p>
        capo_securityhub.errors.UnknownServiceError: The service returned an error code this client does not model.
    """

    def _handler(
        req: "OperationRequest[capo_securityhub.types.create_aggregator_v2_request.CreateAggregatorV2Request]",
    ) -> OperationResponse[
        "capo_securityhub.types.create_aggregator_v2_response.CreateAggregatorV2Response"
    ]:
        import capo_securityhub._operations.security_hub_api_service.create_aggregator_v2

        output, http_response = (
            capo_securityhub._operations.security_hub_api_service.create_aggregator_v2.create_aggregator_v2(
                req.options, req.input
            )
        )
        return OperationResponse(output=output, response=http_response)

    interceptors_, options_ = self.operation_options(
        config_overrides, OperationLogging("CreateAggregatorV2")
    )
    input_: capo_securityhub.types.create_aggregator_v2_request.CreateAggregatorV2Request = {}
    if region_linking_mode is not None:
        input_["region_linking_mode"] = region_linking_mode
    if linked_regions is not None:
        input_["linked_regions"] = linked_regions
    if tags is not None:
        input_["tags"] = tags
    if client_token is None:
        client_token = str(uuid.uuid4())
    input_["client_token"] = client_token

    response = execute_pipeline(
        OperationRequest(input=input_, options=options_),
        handler=_handler,
        interceptors=list(interceptors_),
    )
    response.response.close()
    return response.output