Skip to content

list_discovered_resources

list_discovered_resources(
    member_account_ids: AWSAccountIdList,
    resource_type: ResourceType,
    *,
    config_overrides: Optional[FMSClientConfig] = None,
    max_results: Optional[PaginationMaxResults] = None,
    next_token: Optional[PaginationToken] = None,
) -> ListDiscoveredResourcesResponse

Returns an array of resources in the organization's accounts that are available to be associated with a resource set.

Parameters:

  • member_account_ids (AWSAccountIdList) –

    The Amazon Web Services account IDs to discover resources in. Only one account is supported per request. The account must be a member of your organization.

  • resource_type (ResourceType) –

    The type of resources to discover.

  • max_results (Optional[PaginationMaxResults], default: None ) –

    The maximum number of objects that you want Firewall Manager to return for this request. If more objects are available, in the response, Firewall Manager provides a NextToken value that you can use in a subsequent call to get the next batch of objects.

  • next_token (Optional[PaginationToken], default: None ) –

    When you request a list of objects with a MaxResults setting, if the number of objects that are still available for retrieval exceeds the maximum you requested, Firewall Manager returns a NextToken value in the response. To retrieve the next batch of objects, use the token returned from the prior request in your next request.

Raises:

  • InternalErrorException –

    The operation failed because of a system problem, even though the request was valid. Retry your request.

  • InvalidInputException –

    The parameters of the request were invalid.

  • InvalidOperationException –

    The operation failed because there was nothing to do or the operation wasn't possible. For example, you might have submitted an AssociateAdminAccount request for an account ID that was already set as the Firewall Manager administrator. Or you might have tried to access a Region that's disabled by default, and that you need to enable for the Firewall Manager administrator account and for Organizations before you can access it.

  • UnknownServiceError –

    The service returned an error code this client does not model.

Source code in docs_src/capo_fms/_services/fms.py
def list_discovered_resources(
    self,
    member_account_ids: "capo_fms.types.aws_account_id_list.AWSAccountIdList",
    resource_type: "capo_fms.types.resource_type.ResourceType",
    *,
    config_overrides: Optional[FMSClientConfig] = None,
    max_results: Optional[
        "capo_fms.types.pagination_max_results.PaginationMaxResults"
    ] = None,
    next_token: Optional["capo_fms.types.pagination_token.PaginationToken"] = None,
) -> "capo_fms.types.list_discovered_resources_response.ListDiscoveredResourcesResponse":
    """<p>Returns an array of resources in the organization's accounts that are available to be associated with a resource set.</p>

    Args:
        member_account_ids: <p>The Amazon Web Services account IDs to discover resources in. Only one account is supported per request. The account must be a member of your organization.</p>
        resource_type: <p>The type of resources to discover.</p>
        max_results: <p>The maximum number of objects that you want Firewall Manager to return for this request. If more objects are available, in the response, Firewall Manager provides a <code>NextToken</code> value that you can use in a subsequent call to get the next batch of objects.</p>
        next_token: <p>When you request a list of objects with a <code>MaxResults</code> setting, if the number of objects that are still available for retrieval exceeds the maximum you requested, Firewall Manager returns a <code>NextToken</code> value in the response. To retrieve the next batch of objects, use the token returned from the prior request in your next request.</p>

    Raises:
        capo_fms.errors.internal_error_exception.InternalErrorException: <p>The operation failed because of a system problem, even though the request was valid. Retry your request.</p>
        capo_fms.errors.invalid_input_exception.InvalidInputException: <p>The parameters of the request were invalid.</p>
        capo_fms.errors.invalid_operation_exception.InvalidOperationException: <p>The operation failed because there was nothing to do or the operation wasn't possible. For example, you might have submitted an <code>AssociateAdminAccount</code> request for an account ID that was already set as the Firewall Manager administrator. Or you might have tried to access a Region that's disabled by default, and that you need to enable for the Firewall Manager administrator account and for Organizations before you can access it.</p>
        capo_fms.errors.UnknownServiceError: The service returned an error code this client does not model.
    """

    def _handler(
        req: "OperationRequest[capo_fms.types.list_discovered_resources_request.ListDiscoveredResourcesRequest]",
    ) -> OperationResponse[
        "capo_fms.types.list_discovered_resources_response.ListDiscoveredResourcesResponse"
    ]:
        import capo_fms._operations.awsfms_20180101.list_discovered_resources

        output, http_response = (
            capo_fms._operations.awsfms_20180101.list_discovered_resources.list_discovered_resources(
                req.options, req.input
            )
        )
        return OperationResponse(output=output, response=http_response)

    interceptors_, options_ = self.operation_options(
        config_overrides, OperationLogging("ListDiscoveredResources")
    )
    input_: capo_fms.types.list_discovered_resources_request.ListDiscoveredResourcesRequest = {
        "member_account_ids": member_account_ids,
        "resource_type": resource_type,
    }
    if max_results is not None:
        input_["max_results"] = max_results
    if next_token is not None:
        input_["next_token"] = next_token

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