@ThreadSafe @Generated(value="com.amazonaws:aws-java-sdk-code-generator") public class AWSResourceGroupsClient extends AmazonWebServiceClient implements AWSResourceGroups
Resource Groups lets you organize Amazon Web Services resources such as Amazon Elastic Compute Cloud instances, Amazon Relational Database Service databases, and Amazon Simple Storage Service buckets into groups using criteria that you define as tags. A resource group is a collection of resources that match the resource types specified in a query, and share one or more tags or portions of tags. You can create a group of resources based on their roles in your cloud infrastructure, lifecycle stages, regions, application layers, or virtually any criteria. Resource Groups enable you to automate management tasks, such as those in Amazon Web Services Systems Manager Automation documents, on tag-related resources in Amazon Web Services Systems Manager. Groups of tagged resources also let you quickly view a custom console in Amazon Web Services Systems Manager that shows Config compliance and other monitoring data about member resources.
To create a resource group, build a resource query, and specify tags that identify the criteria that members of the group have in common. Tags are key-value pairs.
For more information about Resource Groups, see the Resource Groups User Guide.
Resource Groups uses a REST-compliant API that you can use to perform the following types of operations.
Create, Read, Update, and Delete (CRUD) operations on resource groups and resource query entities
Applying, editing, and removing tags from resource groups
Resolving resource group member ARNs so they can be returned as search results
Getting data about resources that are members of a group
Searching Amazon Web Services resources based on a resource query
LOGGING_AWS_REQUEST_METRIC
ENDPOINT_PREFIX
Modifier and Type | Method and Description |
---|---|
static AWSResourceGroupsClientBuilder |
builder() |
CreateGroupResult |
createGroup(CreateGroupRequest request)
Creates a resource group with the specified name and description.
|
DeleteGroupResult |
deleteGroup(DeleteGroupRequest request)
Deletes the specified resource group.
|
GetAccountSettingsResult |
getAccountSettings(GetAccountSettingsRequest request)
Retrieves the current status of optional features in Resource Groups.
|
ResponseMetadata |
getCachedResponseMetadata(AmazonWebServiceRequest request)
Returns additional metadata for a previously executed successful, request, typically used for debugging issues
where a service isn't acting as expected.
|
GetGroupResult |
getGroup(GetGroupRequest request)
Returns information about a specified resource group.
|
GetGroupConfigurationResult |
getGroupConfiguration(GetGroupConfigurationRequest request)
Retrieves the service configuration associated with the specified resource group.
|
GetGroupQueryResult |
getGroupQuery(GetGroupQueryRequest request)
Retrieves the resource query associated with the specified resource group.
|
GetTagsResult |
getTags(GetTagsRequest request)
Returns a list of tags that are associated with a resource group, specified by an ARN.
|
GroupResourcesResult |
groupResources(GroupResourcesRequest request)
Adds the specified resources to the specified group.
|
ListGroupResourcesResult |
listGroupResources(ListGroupResourcesRequest request)
Returns a list of ARNs of the resources that are members of a specified resource group.
|
ListGroupsResult |
listGroups(ListGroupsRequest request)
Returns a list of existing Resource Groups in your account.
|
PutGroupConfigurationResult |
putGroupConfiguration(PutGroupConfigurationRequest request)
Attaches a service configuration to the specified group.
|
SearchResourcesResult |
searchResources(SearchResourcesRequest request)
Returns a list of Amazon Web Services resource identifiers that matches the specified query.
|
void |
shutdown()
Shuts down this client object, releasing any resources that might be held
open.
|
TagResult |
tag(TagRequest request)
Adds tags to a resource group with the specified ARN.
|
UngroupResourcesResult |
ungroupResources(UngroupResourcesRequest request)
Removes the specified resources from the specified group.
|
UntagResult |
untag(UntagRequest request)
Deletes tags from a specified resource group.
|
UpdateAccountSettingsResult |
updateAccountSettings(UpdateAccountSettingsRequest request)
Turns on or turns off optional features in Resource Groups.
|
UpdateGroupResult |
updateGroup(UpdateGroupRequest request)
Updates the description for an existing group.
|
UpdateGroupQueryResult |
updateGroupQuery(UpdateGroupQueryRequest request)
Updates the resource query of a group.
|
addRequestHandler, addRequestHandler, configureRegion, getClientConfiguration, getEndpointPrefix, getMonitoringListeners, getRequestMetricsCollector, getServiceName, getSignerByURI, getSignerOverride, getSignerRegionOverride, getTimeOffset, makeImmutable, removeRequestHandler, removeRequestHandler, setEndpoint, setEndpoint, setRegion, setServiceNameIntern, setSignerRegionOverride, setTimeOffset, withEndpoint, withRegion, withRegion, withTimeOffset
public static AWSResourceGroupsClientBuilder builder()
public CreateGroupResult createGroup(CreateGroupRequest request)
Creates a resource group with the specified name and description. You can optionally include either a resource query or a service configuration. For more information about constructing a resource query, see Build queries and groups in Resource Groups in the Resource Groups User Guide. For more information about service-linked groups and service configurations, see Service configurations for Resource Groups.
Minimum permissions
To run this command, you must have the following permissions:
resource-groups:CreateGroup
createGroup
in interface AWSResourceGroups
createGroupRequest
- BadRequestException
- The request includes one or more parameters that violate validation rules.ForbiddenException
- The caller isn't authorized to make the request. Check permissions.MethodNotAllowedException
- The request uses an HTTP method that isn't allowed for the specified resource.TooManyRequestsException
- You've exceeded throttling limits by making too many requests in a period of time.InternalServerErrorException
- An internal error occurred while processing the request. Try again later.public DeleteGroupResult deleteGroup(DeleteGroupRequest request)
Deletes the specified resource group. Deleting a resource group does not delete any resources that are members of the group; it only deletes the group structure.
Minimum permissions
To run this command, you must have the following permissions:
resource-groups:DeleteGroup
deleteGroup
in interface AWSResourceGroups
deleteGroupRequest
- BadRequestException
- The request includes one or more parameters that violate validation rules.ForbiddenException
- The caller isn't authorized to make the request. Check permissions.NotFoundException
- One or more of the specified resources don't exist.MethodNotAllowedException
- The request uses an HTTP method that isn't allowed for the specified resource.TooManyRequestsException
- You've exceeded throttling limits by making too many requests in a period of time.InternalServerErrorException
- An internal error occurred while processing the request. Try again later.public GetAccountSettingsResult getAccountSettings(GetAccountSettingsRequest request)
Retrieves the current status of optional features in Resource Groups.
getAccountSettings
in interface AWSResourceGroups
getAccountSettingsRequest
- BadRequestException
- The request includes one or more parameters that violate validation rules.ForbiddenException
- The caller isn't authorized to make the request. Check permissions.MethodNotAllowedException
- The request uses an HTTP method that isn't allowed for the specified resource.TooManyRequestsException
- You've exceeded throttling limits by making too many requests in a period of time.InternalServerErrorException
- An internal error occurred while processing the request. Try again later.public GetGroupResult getGroup(GetGroupRequest request)
Returns information about a specified resource group.
Minimum permissions
To run this command, you must have the following permissions:
resource-groups:GetGroup
getGroup
in interface AWSResourceGroups
getGroupRequest
- BadRequestException
- The request includes one or more parameters that violate validation rules.ForbiddenException
- The caller isn't authorized to make the request. Check permissions.NotFoundException
- One or more of the specified resources don't exist.MethodNotAllowedException
- The request uses an HTTP method that isn't allowed for the specified resource.TooManyRequestsException
- You've exceeded throttling limits by making too many requests in a period of time.InternalServerErrorException
- An internal error occurred while processing the request. Try again later.public GetGroupConfigurationResult getGroupConfiguration(GetGroupConfigurationRequest request)
Retrieves the service configuration associated with the specified resource group. For details about the service configuration syntax, see Service configurations for Resource Groups.
Minimum permissions
To run this command, you must have the following permissions:
resource-groups:GetGroupConfiguration
getGroupConfiguration
in interface AWSResourceGroups
getGroupConfigurationRequest
- BadRequestException
- The request includes one or more parameters that violate validation rules.ForbiddenException
- The caller isn't authorized to make the request. Check permissions.NotFoundException
- One or more of the specified resources don't exist.MethodNotAllowedException
- The request uses an HTTP method that isn't allowed for the specified resource.TooManyRequestsException
- You've exceeded throttling limits by making too many requests in a period of time.InternalServerErrorException
- An internal error occurred while processing the request. Try again later.public GetGroupQueryResult getGroupQuery(GetGroupQueryRequest request)
Retrieves the resource query associated with the specified resource group. For more information about resource queries, see Create a tag-based group in Resource Groups.
Minimum permissions
To run this command, you must have the following permissions:
resource-groups:GetGroupQuery
getGroupQuery
in interface AWSResourceGroups
getGroupQueryRequest
- BadRequestException
- The request includes one or more parameters that violate validation rules.ForbiddenException
- The caller isn't authorized to make the request. Check permissions.NotFoundException
- One or more of the specified resources don't exist.MethodNotAllowedException
- The request uses an HTTP method that isn't allowed for the specified resource.TooManyRequestsException
- You've exceeded throttling limits by making too many requests in a period of time.InternalServerErrorException
- An internal error occurred while processing the request. Try again later.public GetTagsResult getTags(GetTagsRequest request)
Returns a list of tags that are associated with a resource group, specified by an ARN.
Minimum permissions
To run this command, you must have the following permissions:
resource-groups:GetTags
getTags
in interface AWSResourceGroups
getTagsRequest
- BadRequestException
- The request includes one or more parameters that violate validation rules.ForbiddenException
- The caller isn't authorized to make the request. Check permissions.NotFoundException
- One or more of the specified resources don't exist.MethodNotAllowedException
- The request uses an HTTP method that isn't allowed for the specified resource.TooManyRequestsException
- You've exceeded throttling limits by making too many requests in a period of time.InternalServerErrorException
- An internal error occurred while processing the request. Try again later.public GroupResourcesResult groupResources(GroupResourcesRequest request)
Adds the specified resources to the specified group.
You can use this operation with only resource groups that are configured with the following types:
AWS::EC2::HostManagement
AWS::EC2::CapacityReservationPool
Other resource group type and resource types aren't currently supported by this operation.
Minimum permissions
To run this command, you must have the following permissions:
resource-groups:GroupResources
groupResources
in interface AWSResourceGroups
groupResourcesRequest
- BadRequestException
- The request includes one or more parameters that violate validation rules.ForbiddenException
- The caller isn't authorized to make the request. Check permissions.NotFoundException
- One or more of the specified resources don't exist.MethodNotAllowedException
- The request uses an HTTP method that isn't allowed for the specified resource.TooManyRequestsException
- You've exceeded throttling limits by making too many requests in a period of time.InternalServerErrorException
- An internal error occurred while processing the request. Try again later.public ListGroupResourcesResult listGroupResources(ListGroupResourcesRequest request)
Returns a list of ARNs of the resources that are members of a specified resource group.
Minimum permissions
To run this command, you must have the following permissions:
resource-groups:ListGroupResources
cloudformation:DescribeStacks
cloudformation:ListStackResources
tag:GetResources
listGroupResources
in interface AWSResourceGroups
listGroupResourcesRequest
- UnauthorizedException
- The request was rejected because it doesn't have valid credentials for the target resource.BadRequestException
- The request includes one or more parameters that violate validation rules.ForbiddenException
- The caller isn't authorized to make the request. Check permissions.NotFoundException
- One or more of the specified resources don't exist.MethodNotAllowedException
- The request uses an HTTP method that isn't allowed for the specified resource.TooManyRequestsException
- You've exceeded throttling limits by making too many requests in a period of time.InternalServerErrorException
- An internal error occurred while processing the request. Try again later.public ListGroupsResult listGroups(ListGroupsRequest request)
Returns a list of existing Resource Groups in your account.
Minimum permissions
To run this command, you must have the following permissions:
resource-groups:ListGroups
listGroups
in interface AWSResourceGroups
listGroupsRequest
- BadRequestException
- The request includes one or more parameters that violate validation rules.ForbiddenException
- The caller isn't authorized to make the request. Check permissions.MethodNotAllowedException
- The request uses an HTTP method that isn't allowed for the specified resource.TooManyRequestsException
- You've exceeded throttling limits by making too many requests in a period of time.InternalServerErrorException
- An internal error occurred while processing the request. Try again later.public PutGroupConfigurationResult putGroupConfiguration(PutGroupConfigurationRequest request)
Attaches a service configuration to the specified group. This occurs asynchronously, and can take time to complete. You can use GetGroupConfiguration to check the status of the update.
Minimum permissions
To run this command, you must have the following permissions:
resource-groups:PutGroupConfiguration
putGroupConfiguration
in interface AWSResourceGroups
putGroupConfigurationRequest
- BadRequestException
- The request includes one or more parameters that violate validation rules.ForbiddenException
- The caller isn't authorized to make the request. Check permissions.NotFoundException
- One or more of the specified resources don't exist.MethodNotAllowedException
- The request uses an HTTP method that isn't allowed for the specified resource.TooManyRequestsException
- You've exceeded throttling limits by making too many requests in a period of time.InternalServerErrorException
- An internal error occurred while processing the request. Try again later.public SearchResourcesResult searchResources(SearchResourcesRequest request)
Returns a list of Amazon Web Services resource identifiers that matches the specified query. The query uses the same format as a resource query in a CreateGroup or UpdateGroupQuery operation.
Minimum permissions
To run this command, you must have the following permissions:
resource-groups:SearchResources
cloudformation:DescribeStacks
cloudformation:ListStackResources
tag:GetResources
searchResources
in interface AWSResourceGroups
searchResourcesRequest
- UnauthorizedException
- The request was rejected because it doesn't have valid credentials for the target resource.BadRequestException
- The request includes one or more parameters that violate validation rules.ForbiddenException
- The caller isn't authorized to make the request. Check permissions.MethodNotAllowedException
- The request uses an HTTP method that isn't allowed for the specified resource.TooManyRequestsException
- You've exceeded throttling limits by making too many requests in a period of time.InternalServerErrorException
- An internal error occurred while processing the request. Try again later.public TagResult tag(TagRequest request)
Adds tags to a resource group with the specified ARN. Existing tags on a resource group are not changed if they are not specified in the request parameters.
Do not store personally identifiable information (PII) or other confidential or sensitive information in tags. We use tags to provide you with billing and administration services. Tags are not intended to be used for private or sensitive data.
Minimum permissions
To run this command, you must have the following permissions:
resource-groups:Tag
tag
in interface AWSResourceGroups
tagRequest
- BadRequestException
- The request includes one or more parameters that violate validation rules.ForbiddenException
- The caller isn't authorized to make the request. Check permissions.NotFoundException
- One or more of the specified resources don't exist.MethodNotAllowedException
- The request uses an HTTP method that isn't allowed for the specified resource.TooManyRequestsException
- You've exceeded throttling limits by making too many requests in a period of time.InternalServerErrorException
- An internal error occurred while processing the request. Try again later.public UngroupResourcesResult ungroupResources(UngroupResourcesRequest request)
Removes the specified resources from the specified group. This operation works only with static groups that you populated using the GroupResources operation. It doesn't work with any resource groups that are automatically populated by tag-based or CloudFormation stack-based queries.
Minimum permissions
To run this command, you must have the following permissions:
resource-groups:UngroupResources
ungroupResources
in interface AWSResourceGroups
ungroupResourcesRequest
- BadRequestException
- The request includes one or more parameters that violate validation rules.ForbiddenException
- The caller isn't authorized to make the request. Check permissions.NotFoundException
- One or more of the specified resources don't exist.MethodNotAllowedException
- The request uses an HTTP method that isn't allowed for the specified resource.TooManyRequestsException
- You've exceeded throttling limits by making too many requests in a period of time.InternalServerErrorException
- An internal error occurred while processing the request. Try again later.public UntagResult untag(UntagRequest request)
Deletes tags from a specified resource group.
Minimum permissions
To run this command, you must have the following permissions:
resource-groups:Untag
untag
in interface AWSResourceGroups
untagRequest
- BadRequestException
- The request includes one or more parameters that violate validation rules.ForbiddenException
- The caller isn't authorized to make the request. Check permissions.NotFoundException
- One or more of the specified resources don't exist.MethodNotAllowedException
- The request uses an HTTP method that isn't allowed for the specified resource.TooManyRequestsException
- You've exceeded throttling limits by making too many requests in a period of time.InternalServerErrorException
- An internal error occurred while processing the request. Try again later.public UpdateAccountSettingsResult updateAccountSettings(UpdateAccountSettingsRequest request)
Turns on or turns off optional features in Resource Groups.
The preceding example shows that the request to turn on group lifecycle events is IN_PROGRESS
. You
can call the GetAccountSettings operation to check for completion by looking for
GroupLifecycleEventsStatus
to change to ACTIVE
.
updateAccountSettings
in interface AWSResourceGroups
updateAccountSettingsRequest
- BadRequestException
- The request includes one or more parameters that violate validation rules.ForbiddenException
- The caller isn't authorized to make the request. Check permissions.MethodNotAllowedException
- The request uses an HTTP method that isn't allowed for the specified resource.TooManyRequestsException
- You've exceeded throttling limits by making too many requests in a period of time.InternalServerErrorException
- An internal error occurred while processing the request. Try again later.public UpdateGroupResult updateGroup(UpdateGroupRequest request)
Updates the description for an existing group. You cannot update the name of a resource group.
Minimum permissions
To run this command, you must have the following permissions:
resource-groups:UpdateGroup
updateGroup
in interface AWSResourceGroups
updateGroupRequest
- BadRequestException
- The request includes one or more parameters that violate validation rules.ForbiddenException
- The caller isn't authorized to make the request. Check permissions.NotFoundException
- One or more of the specified resources don't exist.MethodNotAllowedException
- The request uses an HTTP method that isn't allowed for the specified resource.TooManyRequestsException
- You've exceeded throttling limits by making too many requests in a period of time.InternalServerErrorException
- An internal error occurred while processing the request. Try again later.public UpdateGroupQueryResult updateGroupQuery(UpdateGroupQueryRequest request)
Updates the resource query of a group. For more information about resource queries, see Create a tag-based group in Resource Groups.
Minimum permissions
To run this command, you must have the following permissions:
resource-groups:UpdateGroupQuery
updateGroupQuery
in interface AWSResourceGroups
updateGroupQueryRequest
- BadRequestException
- The request includes one or more parameters that violate validation rules.ForbiddenException
- The caller isn't authorized to make the request. Check permissions.NotFoundException
- One or more of the specified resources don't exist.MethodNotAllowedException
- The request uses an HTTP method that isn't allowed for the specified resource.TooManyRequestsException
- You've exceeded throttling limits by making too many requests in a period of time.InternalServerErrorException
- An internal error occurred while processing the request. Try again later.public ResponseMetadata getCachedResponseMetadata(AmazonWebServiceRequest request)
Response metadata is only cached for a limited period of time, so if you need to access this extra diagnostic information for an executed request, you should use this method to retrieve it as soon as possible after executing the request.
getCachedResponseMetadata
in interface AWSResourceGroups
request
- The originally executed requestpublic void shutdown()
AmazonWebServiceClient
shutdown
in interface AWSResourceGroups
shutdown
in class AmazonWebServiceClient