AWS SDK Version 3 for .NET
API Reference

AWS services or capabilities described in AWS Documentation may vary by region/location. Click Getting Started with Amazon AWS to see specific differences applicable to the China (Beijing) Region.

Implementation for accessing ResourceGroups

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.

Inheritance Hierarchy

System.Object
  Amazon.Runtime.AmazonServiceClient
    Amazon.ResourceGroups.AmazonResourceGroupsClient

Namespace: Amazon.ResourceGroups
Assembly: AWSSDK.ResourceGroups.dll
Version: 3.x.y.z

Syntax

C#
public class AmazonResourceGroupsClient : AmazonServiceClient
         IAmazonResourceGroups, IAmazonService, IDisposable

The AmazonResourceGroupsClient type exposes the following members

Constructors

NameDescription
Public Method AmazonResourceGroupsClient()

Constructs AmazonResourceGroupsClient with the credentials loaded from the application's default configuration, and if unsuccessful from the Instance Profile service on an EC2 instance. Example App.config with credentials set.

<?xml version="1.0" encoding="utf-8" ?>
<configuration>
    <appSettings>
        <add key="AWSProfileName" value="AWS Default"/>
    </appSettings>
</configuration>
             

Public Method AmazonResourceGroupsClient(RegionEndpoint)

Constructs AmazonResourceGroupsClient with the credentials loaded from the application's default configuration, and if unsuccessful from the Instance Profile service on an EC2 instance. Example App.config with credentials set.

<?xml version="1.0" encoding="utf-8" ?>
<configuration>
    <appSettings>
        <add key="AWSProfileName" value="AWS Default"/>
    </appSettings>
</configuration>
             

Public Method AmazonResourceGroupsClient(AmazonResourceGroupsConfig)

Constructs AmazonResourceGroupsClient with the credentials loaded from the application's default configuration, and if unsuccessful from the Instance Profile service on an EC2 instance. Example App.config with credentials set.

<?xml version="1.0" encoding="utf-8" ?>
<configuration>
    <appSettings>
        <add key="AWSProfileName" value="AWS Default"/>
    </appSettings>
</configuration>
             

Public Method AmazonResourceGroupsClient(AWSCredentials)

Constructs AmazonResourceGroupsClient with AWS Credentials

Public Method AmazonResourceGroupsClient(AWSCredentials, RegionEndpoint)

Constructs AmazonResourceGroupsClient with AWS Credentials

Public Method AmazonResourceGroupsClient(AWSCredentials, AmazonResourceGroupsConfig)

Constructs AmazonResourceGroupsClient with AWS Credentials and an AmazonResourceGroupsClient Configuration object.

Public Method AmazonResourceGroupsClient(string, string)

Constructs AmazonResourceGroupsClient with AWS Access Key ID and AWS Secret Key

Public Method AmazonResourceGroupsClient(string, string, RegionEndpoint)

Constructs AmazonResourceGroupsClient with AWS Access Key ID and AWS Secret Key

Public Method AmazonResourceGroupsClient(string, string, AmazonResourceGroupsConfig)

Constructs AmazonResourceGroupsClient with AWS Access Key ID, AWS Secret Key and an AmazonResourceGroupsClient Configuration object.

Public Method AmazonResourceGroupsClient(string, string, string)

Constructs AmazonResourceGroupsClient with AWS Access Key ID and AWS Secret Key

Public Method AmazonResourceGroupsClient(string, string, string, RegionEndpoint)

Constructs AmazonResourceGroupsClient with AWS Access Key ID and AWS Secret Key

Public Method AmazonResourceGroupsClient(string, string, string, AmazonResourceGroupsConfig)

Constructs AmazonResourceGroupsClient with AWS Access Key ID, AWS Secret Key and an AmazonResourceGroupsClient Configuration object.

Properties

NameTypeDescription
Public Property Config Amazon.Runtime.IClientConfig Inherited from Amazon.Runtime.AmazonServiceClient.
Public Property Paginators Amazon.ResourceGroups.Model.IResourceGroupsPaginatorFactory

Paginators for the service

Methods

Note:

Asynchronous operations (methods ending with Async) in the table below are for .NET 4.5 or higher. For .NET 3.5 the SDK follows the standard naming convention of BeginMethodName and EndMethodName to indicate asynchronous operations - these method pairs are not shown in the table below.

NameDescription
Public Method CancelTagSyncTask(CancelTagSyncTaskRequest)

Cancels the specified tag-sync task.

Minimum permissions

To run this command, you must have the following permissions:

  • resource-groups:CancelTagSyncTask on the application group

  • resource-groups:DeleteGroup

Public Method CancelTagSyncTaskAsync(CancelTagSyncTaskRequest, CancellationToken)

Cancels the specified tag-sync task.

Minimum permissions

To run this command, you must have the following permissions:

  • resource-groups:CancelTagSyncTask on the application group

  • resource-groups:DeleteGroup

Public Method CreateGroup(CreateGroupRequest)

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

Public Method CreateGroupAsync(CreateGroupRequest, CancellationToken)

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

Public Method DeleteGroup(DeleteGroupRequest)

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

Public Method DeleteGroupAsync(DeleteGroupRequest, CancellationToken)

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

Public Method DetermineServiceOperationEndpoint(AmazonWebServiceRequest)

Returns the endpoint that will be used for a particular request.

Public Method Dispose() Inherited from Amazon.Runtime.AmazonServiceClient.
Public Method GetAccountSettings(GetAccountSettingsRequest)

Retrieves the current status of optional features in Resource Groups.

Public Method GetAccountSettingsAsync(GetAccountSettingsRequest, CancellationToken)

Retrieves the current status of optional features in Resource Groups.

Public Method GetGroup(GetGroupRequest)

Returns information about a specified resource group.

Minimum permissions

To run this command, you must have the following permissions:

  • resource-groups:GetGroup

Public Method GetGroupAsync(GetGroupRequest, CancellationToken)

Returns information about a specified resource group.

Minimum permissions

To run this command, you must have the following permissions:

  • resource-groups:GetGroup

Public Method GetGroupConfiguration(GetGroupConfigurationRequest)

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

Public Method GetGroupConfigurationAsync(GetGroupConfigurationRequest, CancellationToken)

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

Public Method GetGroupQuery(GetGroupQueryRequest)

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

Public Method GetGroupQueryAsync(GetGroupQueryRequest, CancellationToken)

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

Public Method GetTags(GetTagsRequest)

Returns a list of tags that are associated with a resource group, specified by an Amazon resource name (ARN).

Minimum permissions

To run this command, you must have the following permissions:

  • resource-groups:GetTags

Public Method GetTagsAsync(GetTagsRequest, CancellationToken)

Returns a list of tags that are associated with a resource group, specified by an Amazon resource name (ARN).

Minimum permissions

To run this command, you must have the following permissions:

  • resource-groups:GetTags

Public Method GetTagSyncTask(GetTagSyncTaskRequest)

Returns information about a specified tag-sync task.

Minimum permissions

To run this command, you must have the following permissions:

  • resource-groups:GetTagSyncTask on the application group

Public Method GetTagSyncTaskAsync(GetTagSyncTaskRequest, CancellationToken)

Returns information about a specified tag-sync task.

Minimum permissions

To run this command, you must have the following permissions:

  • resource-groups:GetTagSyncTask on the application group

Public Method GroupResources(GroupResourcesRequest)

Adds the specified resources to the specified group.

You can only use this operation with the following groups:

  • AWS::EC2::HostManagement

  • AWS::EC2::CapacityReservationPool

  • AWS::ResourceGroups::ApplicationGroup

Other resource group types and resource types are not currently supported by this operation.

Minimum permissions

To run this command, you must have the following permissions:

  • resource-groups:GroupResources

Public Method GroupResourcesAsync(GroupResourcesRequest, CancellationToken)

Adds the specified resources to the specified group.

You can only use this operation with the following groups:

  • AWS::EC2::HostManagement

  • AWS::EC2::CapacityReservationPool

  • AWS::ResourceGroups::ApplicationGroup

Other resource group types and resource types are not currently supported by this operation.

Minimum permissions

To run this command, you must have the following permissions:

  • resource-groups:GroupResources

Public Method ListGroupingStatuses(ListGroupingStatusesRequest)

Returns the status of the last grouping or ungrouping action for each resource in the specified application group.

Public Method ListGroupingStatusesAsync(ListGroupingStatusesRequest, CancellationToken)

Returns the status of the last grouping or ungrouping action for each resource in the specified application group.

Public Method ListGroupResources(ListGroupResourcesRequest)

Returns a list of Amazon resource names (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

Public Method ListGroupResourcesAsync(ListGroupResourcesRequest, CancellationToken)

Returns a list of Amazon resource names (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

Public Method ListGroups(ListGroupsRequest)

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

Public Method ListGroupsAsync(ListGroupsRequest, CancellationToken)

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

Public Method ListTagSyncTasks(ListTagSyncTasksRequest)

Returns a list of tag-sync tasks.

Minimum permissions

To run this command, you must have the following permissions:

  • resource-groups:ListTagSyncTasks with the group passed in the filters as the resource or * if using no filters

Public Method ListTagSyncTasksAsync(ListTagSyncTasksRequest, CancellationToken)

Returns a list of tag-sync tasks.

Minimum permissions

To run this command, you must have the following permissions:

  • resource-groups:ListTagSyncTasks with the group passed in the filters as the resource or * if using no filters

Public Method PutGroupConfiguration(PutGroupConfigurationRequest)

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

Public Method PutGroupConfigurationAsync(PutGroupConfigurationRequest, CancellationToken)

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

Public Method SearchResources(SearchResourcesRequest)

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

Public Method SearchResourcesAsync(SearchResourcesRequest, CancellationToken)

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

Public Method StartTagSyncTask(StartTagSyncTaskRequest)

Creates a new tag-sync task to onboard and sync resources tagged with a specific tag key-value pair to an application. To start a tag-sync task, you need a resource tagging role. The resource tagging role grants permissions to tag and untag applications resources and must include a trust policy that allows Resource Groups to assume the role and perform resource tagging tasks on your behalf.

For instructions on creating a tag-sync task, see Create a tag-sync using the Resource Groups API in the Amazon Web Services Service Catalog AppRegistry Administrator Guide.

Minimum permissions

To run this command, you must have the following permissions:

  • resource-groups:StartTagSyncTask on the application group

  • resource-groups:CreateGroup

  • iam:PassRole on the role provided in the request

Public Method StartTagSyncTaskAsync(StartTagSyncTaskRequest, CancellationToken)

Creates a new tag-sync task to onboard and sync resources tagged with a specific tag key-value pair to an application. To start a tag-sync task, you need a resource tagging role. The resource tagging role grants permissions to tag and untag applications resources and must include a trust policy that allows Resource Groups to assume the role and perform resource tagging tasks on your behalf.

For instructions on creating a tag-sync task, see Create a tag-sync using the Resource Groups API in the Amazon Web Services Service Catalog AppRegistry Administrator Guide.

Minimum permissions

To run this command, you must have the following permissions:

  • resource-groups:StartTagSyncTask on the application group

  • resource-groups:CreateGroup

  • iam:PassRole on the role provided in the request

Public Method Tag(TagRequest)

Adds tags to a resource group with the specified Amazon resource name (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

Public Method TagAsync(TagRequest, CancellationToken)

Adds tags to a resource group with the specified Amazon resource name (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

Public Method UngroupResources(UngroupResourcesRequest)

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

Public Method UngroupResourcesAsync(UngroupResourcesRequest, CancellationToken)

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

Public Method Untag(UntagRequest)

Deletes tags from a specified resource group.

Minimum permissions

To run this command, you must have the following permissions:

  • resource-groups:Untag

Public Method UntagAsync(UntagRequest, CancellationToken)

Deletes tags from a specified resource group.

Minimum permissions

To run this command, you must have the following permissions:

  • resource-groups:Untag

Public Method UpdateAccountSettings(UpdateAccountSettingsRequest)

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.

Public Method UpdateAccountSettingsAsync(UpdateAccountSettingsRequest, CancellationToken)

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.

Public Method UpdateGroup(UpdateGroupRequest)

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

Public Method UpdateGroupAsync(UpdateGroupRequest, CancellationToken)

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

Public Method UpdateGroupQuery(UpdateGroupQueryRequest)

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

Public Method UpdateGroupQueryAsync(UpdateGroupQueryRequest, CancellationToken)

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

Events

NameDescription
Event AfterResponseEvent Inherited from Amazon.Runtime.AmazonServiceClient.
Event BeforeRequestEvent Inherited from Amazon.Runtime.AmazonServiceClient.
Event ExceptionEvent Inherited from Amazon.Runtime.AmazonServiceClient.

Version Information

.NET:
Supported in: 8.0 and newer, Core 3.1

.NET Standard:
Supported in: 2.0

.NET Framework:
Supported in: 4.5 and newer, 3.5