...
AWS SDK for Go API Reference
import "github.com/aws/aws-sdk-go/service/resourcegroupstaggingapi"
Overview
Constants

Overview ▾

Package resourcegroupstaggingapi provides the client and types for making API requests to AWS Resource Groups Tagging API.

This guide describes the API operations for the resource groups tagging.

A tag is a label that you assign to an AWS resource. A tag consists of a key and a value, both of which you define. For example, if you have two Amazon EC2 instances, you might assign both a tag key of "Stack." But the value of "Stack" might be "Testing" for one and "Production" for the other.

Tagging can help you organize your resources and enables you to simplify resource management, access management and cost allocation. For more information about tagging, see Working with Tag Editor (http://docs.aws.amazon.com/awsconsolehelpdocs/latest/gsg/tag-editor.html) and Working with Resource Groups (http://docs.aws.amazon.com/awsconsolehelpdocs/latest/gsg/resource-groups.html). For more information about permissions you need to use the resource groups tagging APIs, see Obtaining Permissions for Resource Groups (http://docs.aws.amazon.com/awsconsolehelpdocs/latest/gsg/obtaining-permissions-for-resource-groups.html) and Obtaining Permissions for Tagging (http://docs.aws.amazon.com/awsconsolehelpdocs/latest/gsg/obtaining-permissions-for-tagging.html).

You can use the resource groups tagging APIs to complete the following tasks:

* Tag and untag supported resources located in the specified region for
the AWS account

* Use tag-based filters to search for resources located in the specified
region for the AWS account

* List all existing tag keys in the specified region for the AWS account

* List all existing values for the specified key in the specified region
for the AWS account

Not all resources can have tags. For a lists of resources that you can tag, see Supported Resources (http://docs.aws.amazon.com/awsconsolehelpdocs/latest/gsg/supported-resources.html) in the AWS Resource Groups and Tag Editor User Guide.

To make full use of the resource groups tagging APIs, you might need additional IAM permissions, including permission to access the resources of individual services as well as permission to view and apply tags to those resources. For more information, see Obtaining Permissions for Tagging (http://docs.aws.amazon.com/awsconsolehelpdocs/latest/gsg/obtaining-permissions-for-tagging.html) in the AWS Resource Groups and Tag Editor User Guide.

See https://docs.aws.amazon.com/goto/WebAPI/resourcegroupstaggingapi-2017-01-26 for more information on this service.

See resourcegroupstaggingapi package documentation for more information. https://docs.aws.amazon.com/sdk-for-go/api/service/resourcegroupstaggingapi/

Using the Client

To contact AWS Resource Groups Tagging API with the SDK use the New function to create a new service client. With that client you can make API requests to the service. These clients are safe to use concurrently.

See the SDK's documentation for more information on how to use the SDK. https://docs.aws.amazon.com/sdk-for-go/api/

See aws.Config documentation for more information on configuring SDK clients. https://docs.aws.amazon.com/sdk-for-go/api/aws/#Config

See the AWS Resource Groups Tagging API client ResourceGroupsTaggingAPI for more information on creating client for this service. https://docs.aws.amazon.com/sdk-for-go/api/service/resourcegroupstaggingapi/#New

The stub package, resourcegroupstaggingapiiface, can be used to provide alternative implementations of service clients, such as mocking the client for testing.

Types ▾

type FailureInfo
func (s *FailureInfo) SetErrorCode(v string) *FailureInfo
func (s *FailureInfo) SetErrorMessage(v string) *FailureInfo
func (s *FailureInfo) SetStatusCode(v int64) *FailureInfo
type GetResourcesInput
func (s *GetResourcesInput) SetPaginationToken(v string) *GetResourcesInput
func (s *GetResourcesInput) SetResourceTypeFilters(v []*string) *GetResourcesInput
func (s *GetResourcesInput) SetResourcesPerPage(v int64) *GetResourcesInput
func (s *GetResourcesInput) SetTagFilters(v []*TagFilter) *GetResourcesInput
func (s *GetResourcesInput) SetTagsPerPage(v int64) *GetResourcesInput
type GetResourcesOutput
func (s *GetResourcesOutput) SetPaginationToken(v string) *GetResourcesOutput
func (s *GetResourcesOutput) SetResourceTagMappingList(v []*ResourceTagMapping) *GetResourcesOutput
type GetTagKeysInput
func (s *GetTagKeysInput) SetPaginationToken(v string) *GetTagKeysInput
type GetTagKeysOutput
func (s *GetTagKeysOutput) SetPaginationToken(v string) *GetTagKeysOutput
func (s *GetTagKeysOutput) SetTagKeys(v []*string) *GetTagKeysOutput
type GetTagValuesInput
func (s *GetTagValuesInput) SetKey(v string) *GetTagValuesInput
func (s *GetTagValuesInput) SetPaginationToken(v string) *GetTagValuesInput
type GetTagValuesOutput
func (s *GetTagValuesOutput) SetPaginationToken(v string) *GetTagValuesOutput
func (s *GetTagValuesOutput) SetTagValues(v []*string) *GetTagValuesOutput
type ResourceGroupsTaggingAPI
type ResourceTagMapping
func (s *ResourceTagMapping) SetResourceARN(v string) *ResourceTagMapping
func (s *ResourceTagMapping) SetTags(v []*Tag) *ResourceTagMapping
type Tag
func (s *Tag) SetKey(v string) *Tag
func (s *Tag) SetValue(v string) *Tag
type TagFilter
func (s *TagFilter) SetKey(v string) *TagFilter
func (s *TagFilter) SetValues(v []*string) *TagFilter
type TagResourcesInput
func (s *TagResourcesInput) SetResourceARNList(v []*string) *TagResourcesInput
func (s *TagResourcesInput) SetTags(v map[string]*string) *TagResourcesInput
type TagResourcesOutput
func (s *TagResourcesOutput) SetFailedResourcesMap(v map[string]*FailureInfo) *TagResourcesOutput
type UntagResourcesInput
func (s *UntagResourcesInput) SetResourceARNList(v []*string) *UntagResourcesInput
func (s *UntagResourcesInput) SetTagKeys(v []*string) *UntagResourcesInput
type UntagResourcesOutput
func (s *UntagResourcesOutput) SetFailedResourcesMap(v map[string]*FailureInfo) *UntagResourcesOutput

Constants ▾

const (
    // ErrorCodeInternalServiceException is a ErrorCode enum value
    ErrorCodeInternalServiceException = "InternalServiceException"

    // ErrorCodeInvalidParameterException is a ErrorCode enum value
    ErrorCodeInvalidParameterException = "InvalidParameterException"
)
const (

    // ErrCodeInternalServiceException for service response error code
    // "InternalServiceException".
    //
    // The request processing failed because of an unknown error, exception, or
    // failure. You can retry the request.
    ErrCodeInternalServiceException = "InternalServiceException"

    // ErrCodeInvalidParameterException for service response error code
    // "InvalidParameterException".
    //
    // A parameter is missing or a malformed string or invalid or out-of-range value
    // was supplied for the request parameter.
    ErrCodeInvalidParameterException = "InvalidParameterException"

    // ErrCodePaginationTokenExpiredException for service response error code
    // "PaginationTokenExpiredException".
    //
    // A PaginationToken is valid for a maximum of 15 minutes. Your request was
    // denied because the specified PaginationToken has expired.
    ErrCodePaginationTokenExpiredException = "PaginationTokenExpiredException"

    // ErrCodeThrottledException for service response error code
    // "ThrottledException".
    //
    // The request was denied to limit the frequency of submitted requests.
    ErrCodeThrottledException = "ThrottledException"
)
const (
    ServiceName = "tagging"                     // Name of service.
    EndpointsID = ServiceName                   // ID to lookup a service endpoint with.
    ServiceID   = "Resource Groups Tagging API" // ServiceID is a unique identifer of a specific service.
)

Service information constants

type FailureInfo

type FailureInfo struct {

    // The code of the common error. Valid values include InternalServiceException,
    // InvalidParameterException, and any valid error code returned by the AWS service
    // that hosts the resource that you want to tag.
    ErrorCode *string `type:"string" enum:"ErrorCode"`

    // The message of the common error.
    ErrorMessage *string `type:"string"`

    // The HTTP status code of the common error.
    StatusCode *int64 `type:"integer"`
    // contains filtered or unexported fields
}

Details of the common errors that all actions return.

func (FailureInfo) GoString

func (s FailureInfo) GoString() string

GoString returns the string representation

func (*FailureInfo) SetErrorCode

func (s *FailureInfo) SetErrorCode(v string) *FailureInfo

SetErrorCode sets the ErrorCode field's value.

func (*FailureInfo) SetErrorMessage

func (s *FailureInfo) SetErrorMessage(v string) *FailureInfo

SetErrorMessage sets the ErrorMessage field's value.

func (*FailureInfo) SetStatusCode

func (s *FailureInfo) SetStatusCode(v int64) *FailureInfo

SetStatusCode sets the StatusCode field's value.

func (FailureInfo) String

func (s FailureInfo) String() string

String returns the string representation

type GetResourcesInput

type GetResourcesInput struct {

    // A string that indicates that additional data is available. Leave this value
    // empty for your initial request. If the response includes a PaginationToken,
    // use that string for this value to request an additional page of data.
    PaginationToken *string `type:"string"`

    // The constraints on the resources that you want returned. The format of each
    // resource type is service[:resourceType]. For example, specifying a resource
    // type of ec2 returns all tagged Amazon EC2 resources (which includes tagged
    // EC2 instances). Specifying a resource type of ec2:instance returns only EC2
    // instances.
    //
    // The string for each service name and resource type is the same as that embedded
    // in a resource's Amazon Resource Name (ARN). Consult the AWS General Reference
    // for the following:
    //
    //    * For a list of service name strings, see AWS Service Namespaces (http://docs.aws.amazon.com/general/latest/gr/aws-arns-and-namespaces.html#genref-aws-service-namespaces).
    //
    //    * For resource type strings, see Example ARNs (http://docs.aws.amazon.com/general/latest/gr/aws-arns-and-namespaces.html#arns-syntax).
    //
    //    * For more information about ARNs, see Amazon Resource Names (ARNs) and
    //    AWS Service Namespaces (http://docs.aws.amazon.com/general/latest/gr/aws-arns-and-namespaces.html).
    ResourceTypeFilters []*string `type:"list"`

    // A limit that restricts the number of resources returned by GetResources in
    // paginated output. You can set ResourcesPerPage to a minimum of 1 item and
    // the maximum of 50 items.
    ResourcesPerPage *int64 `type:"integer"`

    // A list of tags (keys and values). A request can include up to 50 keys, and
    // each key can include up to 20 values.
    //
    // If you specify multiple filters connected by an AND operator in a single
    // request, the response returns only those resources that are associated with
    // every specified filter.
    //
    // If you specify multiple filters connected by an OR operator in a single request,
    // the response returns all resources that are associated with at least one
    // or possibly more of the specified filters.
    TagFilters []*TagFilter `type:"list"`

    // A limit that restricts the number of tags (key and value pairs) returned
    // by GetResources in paginated output. A resource with no tags is counted as
    // having one tag (one key and value pair).
    //
    // GetResources does not split a resource and its associated tags across pages.
    // If the specified TagsPerPage would cause such a break, a PaginationToken
    // is returned in place of the affected resource and its tags. Use that token
    // in another request to get the remaining data. For example, if you specify
    // a TagsPerPage of 100 and the account has 22 resources with 10 tags each (meaning
    // that each resource has 10 key and value pairs), the output will consist of
    // 3 pages, with the first page displaying the first 10 resources, each with
    // its 10 tags, the second page displaying the next 10 resources each with its
    // 10 tags, and the third page displaying the remaining 2 resources, each with
    // its 10 tags.
    //
    // You can set TagsPerPage
    TagsPerPage *int64 `type:"integer"`
    // contains filtered or unexported fields
}

func (GetResourcesInput) GoString

func (s GetResourcesInput) GoString() string

GoString returns the string representation

func (*GetResourcesInput) SetPaginationToken

func (s *GetResourcesInput) SetPaginationToken(v string) *GetResourcesInput

SetPaginationToken sets the PaginationToken field's value.

func (*GetResourcesInput) SetResourceTypeFilters

func (s *GetResourcesInput) SetResourceTypeFilters(v []*string) *GetResourcesInput

SetResourceTypeFilters sets the ResourceTypeFilters field's value.

func (*GetResourcesInput) SetResourcesPerPage

func (s *GetResourcesInput) SetResourcesPerPage(v int64) *GetResourcesInput

SetResourcesPerPage sets the ResourcesPerPage field's value.

func (*GetResourcesInput) SetTagFilters

func (s *GetResourcesInput) SetTagFilters(v []*TagFilter) *GetResourcesInput

SetTagFilters sets the TagFilters field's value.

func (*GetResourcesInput) SetTagsPerPage

func (s *GetResourcesInput) SetTagsPerPage(v int64) *GetResourcesInput

SetTagsPerPage sets the TagsPerPage field's value.

func (GetResourcesInput) String

func (s GetResourcesInput) String() string

String returns the string representation

func (*GetResourcesInput) Validate

func (s *GetResourcesInput) Validate() error

Validate inspects the fields of the type to determine if they are valid.

type GetResourcesOutput

type GetResourcesOutput struct {

    // A string that indicates that the response contains more data than can be
    // returned in a single response. To receive additional data, specify this string
    // for the PaginationToken value in a subsequent request.
    PaginationToken *string `type:"string"`

    // A list of resource ARNs and the tags (keys and values) associated with each.
    ResourceTagMappingList []*ResourceTagMapping `type:"list"`
    // contains filtered or unexported fields
}

func (GetResourcesOutput) GoString

func (s GetResourcesOutput) GoString() string

GoString returns the string representation

func (*GetResourcesOutput) SetPaginationToken

func (s *GetResourcesOutput) SetPaginationToken(v string) *GetResourcesOutput

SetPaginationToken sets the PaginationToken field's value.

func (*GetResourcesOutput) SetResourceTagMappingList

func (s *GetResourcesOutput) SetResourceTagMappingList(v []*ResourceTagMapping) *GetResourcesOutput

SetResourceTagMappingList sets the ResourceTagMappingList field's value.

func (GetResourcesOutput) String

func (s GetResourcesOutput) String() string

String returns the string representation

type GetTagKeysInput

type GetTagKeysInput struct {

    // A string that indicates that additional data is available. Leave this value
    // empty for your initial request. If the response includes a PaginationToken,
    // use that string for this value to request an additional page of data.
    PaginationToken *string `type:"string"`
    // contains filtered or unexported fields
}

func (GetTagKeysInput) GoString

func (s GetTagKeysInput) GoString() string

GoString returns the string representation

func (*GetTagKeysInput) SetPaginationToken

func (s *GetTagKeysInput) SetPaginationToken(v string) *GetTagKeysInput

SetPaginationToken sets the PaginationToken field's value.

func (GetTagKeysInput) String

func (s GetTagKeysInput) String() string

String returns the string representation

type GetTagKeysOutput

type GetTagKeysOutput struct {

    // A string that indicates that the response contains more data than can be
    // returned in a single response. To receive additional data, specify this string
    // for the PaginationToken value in a subsequent request.
    PaginationToken *string `type:"string"`

    // A list of all tag keys in the AWS account.
    TagKeys []*string `type:"list"`
    // contains filtered or unexported fields
}

func (GetTagKeysOutput) GoString

func (s GetTagKeysOutput) GoString() string

GoString returns the string representation

func (*GetTagKeysOutput) SetPaginationToken

func (s *GetTagKeysOutput) SetPaginationToken(v string) *GetTagKeysOutput

SetPaginationToken sets the PaginationToken field's value.

func (*GetTagKeysOutput) SetTagKeys

func (s *GetTagKeysOutput) SetTagKeys(v []*string) *GetTagKeysOutput

SetTagKeys sets the TagKeys field's value.

func (GetTagKeysOutput) String

func (s GetTagKeysOutput) String() string

String returns the string representation

type GetTagValuesInput

type GetTagValuesInput struct {

    // The key for which you want to list all existing values in the specified region
    // for the AWS account.
    //
    // Key is a required field
    Key *string `min:"1" type:"string" required:"true"`

    // A string that indicates that additional data is available. Leave this value
    // empty for your initial request. If the response includes a PaginationToken,
    // use that string for this value to request an additional page of data.
    PaginationToken *string `type:"string"`
    // contains filtered or unexported fields
}

func (GetTagValuesInput) GoString

func (s GetTagValuesInput) GoString() string

GoString returns the string representation

func (*GetTagValuesInput) SetKey

func (s *GetTagValuesInput) SetKey(v string) *GetTagValuesInput

SetKey sets the Key field's value.

func (*GetTagValuesInput) SetPaginationToken

func (s *GetTagValuesInput) SetPaginationToken(v string) *GetTagValuesInput

SetPaginationToken sets the PaginationToken field's value.

func (GetTagValuesInput) String

func (s GetTagValuesInput) String() string

String returns the string representation

func (*GetTagValuesInput) Validate

func (s *GetTagValuesInput) Validate() error

Validate inspects the fields of the type to determine if they are valid.

type GetTagValuesOutput

type GetTagValuesOutput struct {

    // A string that indicates that the response contains more data than can be
    // returned in a single response. To receive additional data, specify this string
    // for the PaginationToken value in a subsequent request.
    PaginationToken *string `type:"string"`

    // A list of all tag values for the specified key in the AWS account.
    TagValues []*string `type:"list"`
    // contains filtered or unexported fields
}

func (GetTagValuesOutput) GoString

func (s GetTagValuesOutput) GoString() string

GoString returns the string representation

func (*GetTagValuesOutput) SetPaginationToken

func (s *GetTagValuesOutput) SetPaginationToken(v string) *GetTagValuesOutput

SetPaginationToken sets the PaginationToken field's value.

func (*GetTagValuesOutput) SetTagValues

func (s *GetTagValuesOutput) SetTagValues(v []*string) *GetTagValuesOutput

SetTagValues sets the TagValues field's value.

func (GetTagValuesOutput) String

func (s GetTagValuesOutput) String() string

String returns the string representation

type ResourceGroupsTaggingAPI

type ResourceGroupsTaggingAPI struct {
    *client.Client
}

ResourceGroupsTaggingAPI provides the API operation methods for making requests to AWS Resource Groups Tagging API. See this package's package overview docs for details on the service.

ResourceGroupsTaggingAPI methods are safe to use concurrently. It is not safe to modify mutate any of the struct's properties though.

func New

func New(p client.ConfigProvider, cfgs ...*aws.Config) *ResourceGroupsTaggingAPI

New creates a new instance of the ResourceGroupsTaggingAPI client with a session. If additional configuration is needed for the client instance use the optional aws.Config parameter to add your extra config.

Example:

// Create a ResourceGroupsTaggingAPI client from just a session.
svc := resourcegroupstaggingapi.New(mySession)

// Create a ResourceGroupsTaggingAPI client with additional configuration
svc := resourcegroupstaggingapi.New(mySession, aws.NewConfig().WithRegion("us-west-2"))

func (*ResourceGroupsTaggingAPI) GetResources

func (c *ResourceGroupsTaggingAPI) GetResources(input *GetResourcesInput) (*GetResourcesOutput, error)

GetResources API operation for AWS Resource Groups Tagging API.

Returns all the tagged resources that are associated with the specified tags (keys and values) located in the specified region for the AWS account. The tags and the resource types that you specify in the request are known as filters. The response includes all tags that are associated with the requested resources. If no filter is provided, this action returns a paginated resource list with the associated tags.

Returns awserr.Error for service API and SDK errors. Use runtime type assertions with awserr.Error's Code and Message methods to get detailed information about the error.

See the AWS API reference guide for AWS Resource Groups Tagging API's API operation GetResources for usage and error information.

Returned Error Codes:

* ErrCodeInvalidParameterException "InvalidParameterException"
A parameter is missing or a malformed string or invalid or out-of-range value
was supplied for the request parameter.

* ErrCodeThrottledException "ThrottledException"
The request was denied to limit the frequency of submitted requests.

* ErrCodeInternalServiceException "InternalServiceException"
The request processing failed because of an unknown error, exception, or
failure. You can retry the request.

* ErrCodePaginationTokenExpiredException "PaginationTokenExpiredException"
A PaginationToken is valid for a maximum of 15 minutes. Your request was
denied because the specified PaginationToken has expired.

See also, https://docs.aws.amazon.com/goto/WebAPI/resourcegroupstaggingapi-2017-01-26/GetResources

func (*ResourceGroupsTaggingAPI) GetResourcesPages

func (c *ResourceGroupsTaggingAPI) GetResourcesPages(input *GetResourcesInput, fn func(*GetResourcesOutput, bool) bool) error

GetResourcesPages iterates over the pages of a GetResources operation, calling the "fn" function with the response data for each page. To stop iterating, return false from the fn function.

See GetResources method for more information on how to use this operation.

Note: This operation can generate multiple requests to a service.

// Example iterating over at most 3 pages of a GetResources operation.
pageNum := 0
err := client.GetResourcesPages(params,
    func(page *GetResourcesOutput, lastPage bool) bool {
        pageNum++
        fmt.Println(page)
        return pageNum <= 3
    })

func (*ResourceGroupsTaggingAPI) GetResourcesPagesWithContext

func (c *ResourceGroupsTaggingAPI) GetResourcesPagesWithContext(ctx aws.Context, input *GetResourcesInput, fn func(*GetResourcesOutput, bool) bool, opts ...request.Option) error

GetResourcesPagesWithContext same as GetResourcesPages except it takes a Context and allows setting request options on the pages.

The context must be non-nil and will be used for request cancellation. If the context is nil a panic will occur. In the future the SDK may create sub-contexts for http.Requests. See https://golang.org/pkg/context/ for more information on using Contexts.

func (*ResourceGroupsTaggingAPI) GetResourcesRequest

func (c *ResourceGroupsTaggingAPI) GetResourcesRequest(input *GetResourcesInput) (req *request.Request, output *GetResourcesOutput)

GetResourcesRequest generates a "aws/request.Request" representing the client's request for the GetResources operation. The "output" return value will be populated with the request's response once the request completes successfuly.

Use "Send" method on the returned Request to send the API call to the service. the "output" return value is not valid until after Send returns without error.

See GetResources for more information on using the GetResources API call, and error handling.

This method is useful when you want to inject custom logic or configuration into the SDK's request lifecycle. Such as custom headers, or retry logic.

// Example sending a request using the GetResourcesRequest method.
req, resp := client.GetResourcesRequest(params)

err := req.Send()
if err == nil { // resp is now filled
    fmt.Println(resp)
}

See also, https://docs.aws.amazon.com/goto/WebAPI/resourcegroupstaggingapi-2017-01-26/GetResources

func (*ResourceGroupsTaggingAPI) GetResourcesWithContext

func (c *ResourceGroupsTaggingAPI) GetResourcesWithContext(ctx aws.Context, input *GetResourcesInput, opts ...request.Option) (*GetResourcesOutput, error)

GetResourcesWithContext is the same as GetResources with the addition of the ability to pass a context and additional request options.

See GetResources for details on how to use this API operation.

The context must be non-nil and will be used for request cancellation. If the context is nil a panic will occur. In the future the SDK may create sub-contexts for http.Requests. See https://golang.org/pkg/context/ for more information on using Contexts.

func (*ResourceGroupsTaggingAPI) GetTagKeys

func (c *ResourceGroupsTaggingAPI) GetTagKeys(input *GetTagKeysInput) (*GetTagKeysOutput, error)

GetTagKeys API operation for AWS Resource Groups Tagging API.

Returns all tag keys in the specified region for the AWS account.

Returns awserr.Error for service API and SDK errors. Use runtime type assertions with awserr.Error's Code and Message methods to get detailed information about the error.

See the AWS API reference guide for AWS Resource Groups Tagging API's API operation GetTagKeys for usage and error information.

Returned Error Codes:

* ErrCodeInvalidParameterException "InvalidParameterException"
A parameter is missing or a malformed string or invalid or out-of-range value
was supplied for the request parameter.

* ErrCodeThrottledException "ThrottledException"
The request was denied to limit the frequency of submitted requests.

* ErrCodeInternalServiceException "InternalServiceException"
The request processing failed because of an unknown error, exception, or
failure. You can retry the request.

* ErrCodePaginationTokenExpiredException "PaginationTokenExpiredException"
A PaginationToken is valid for a maximum of 15 minutes. Your request was
denied because the specified PaginationToken has expired.

See also, https://docs.aws.amazon.com/goto/WebAPI/resourcegroupstaggingapi-2017-01-26/GetTagKeys

func (*ResourceGroupsTaggingAPI) GetTagKeysPages

func (c *ResourceGroupsTaggingAPI) GetTagKeysPages(input *GetTagKeysInput, fn func(*GetTagKeysOutput, bool) bool) error

GetTagKeysPages iterates over the pages of a GetTagKeys operation, calling the "fn" function with the response data for each page. To stop iterating, return false from the fn function.

See GetTagKeys method for more information on how to use this operation.

Note: This operation can generate multiple requests to a service.

// Example iterating over at most 3 pages of a GetTagKeys operation.
pageNum := 0
err := client.GetTagKeysPages(params,
    func(page *GetTagKeysOutput, lastPage bool) bool {
        pageNum++
        fmt.Println(page)
        return pageNum <= 3
    })

func (*ResourceGroupsTaggingAPI) GetTagKeysPagesWithContext

func (c *ResourceGroupsTaggingAPI) GetTagKeysPagesWithContext(ctx aws.Context, input *GetTagKeysInput, fn func(*GetTagKeysOutput, bool) bool, opts ...request.Option) error

GetTagKeysPagesWithContext same as GetTagKeysPages except it takes a Context and allows setting request options on the pages.

The context must be non-nil and will be used for request cancellation. If the context is nil a panic will occur. In the future the SDK may create sub-contexts for http.Requests. See https://golang.org/pkg/context/ for more information on using Contexts.

func (*ResourceGroupsTaggingAPI) GetTagKeysRequest

func (c *ResourceGroupsTaggingAPI) GetTagKeysRequest(input *GetTagKeysInput) (req *request.Request, output *GetTagKeysOutput)

GetTagKeysRequest generates a "aws/request.Request" representing the client's request for the GetTagKeys operation. The "output" return value will be populated with the request's response once the request completes successfuly.

Use "Send" method on the returned Request to send the API call to the service. the "output" return value is not valid until after Send returns without error.

See GetTagKeys for more information on using the GetTagKeys API call, and error handling.

This method is useful when you want to inject custom logic or configuration into the SDK's request lifecycle. Such as custom headers, or retry logic.

// Example sending a request using the GetTagKeysRequest method.
req, resp := client.GetTagKeysRequest(params)

err := req.Send()
if err == nil { // resp is now filled
    fmt.Println(resp)
}

See also, https://docs.aws.amazon.com/goto/WebAPI/resourcegroupstaggingapi-2017-01-26/GetTagKeys

func (*ResourceGroupsTaggingAPI) GetTagKeysWithContext

func (c *ResourceGroupsTaggingAPI) GetTagKeysWithContext(ctx aws.Context, input *GetTagKeysInput, opts ...request.Option) (*GetTagKeysOutput, error)

GetTagKeysWithContext is the same as GetTagKeys with the addition of the ability to pass a context and additional request options.

See GetTagKeys for details on how to use this API operation.

The context must be non-nil and will be used for request cancellation. If the context is nil a panic will occur. In the future the SDK may create sub-contexts for http.Requests. See https://golang.org/pkg/context/ for more information on using Contexts.

func (*ResourceGroupsTaggingAPI) GetTagValues

func (c *ResourceGroupsTaggingAPI) GetTagValues(input *GetTagValuesInput) (*GetTagValuesOutput, error)

GetTagValues API operation for AWS Resource Groups Tagging API.

Returns all tag values for the specified key in the specified region for the AWS account.

Returns awserr.Error for service API and SDK errors. Use runtime type assertions with awserr.Error's Code and Message methods to get detailed information about the error.

See the AWS API reference guide for AWS Resource Groups Tagging API's API operation GetTagValues for usage and error information.

Returned Error Codes:

* ErrCodeInvalidParameterException "InvalidParameterException"
A parameter is missing or a malformed string or invalid or out-of-range value
was supplied for the request parameter.

* ErrCodeThrottledException "ThrottledException"
The request was denied to limit the frequency of submitted requests.

* ErrCodeInternalServiceException "InternalServiceException"
The request processing failed because of an unknown error, exception, or
failure. You can retry the request.

* ErrCodePaginationTokenExpiredException "PaginationTokenExpiredException"
A PaginationToken is valid for a maximum of 15 minutes. Your request was
denied because the specified PaginationToken has expired.

See also, https://docs.aws.amazon.com/goto/WebAPI/resourcegroupstaggingapi-2017-01-26/GetTagValues

func (*ResourceGroupsTaggingAPI) GetTagValuesPages

func (c *ResourceGroupsTaggingAPI) GetTagValuesPages(input *GetTagValuesInput, fn func(*GetTagValuesOutput, bool) bool) error

GetTagValuesPages iterates over the pages of a GetTagValues operation, calling the "fn" function with the response data for each page. To stop iterating, return false from the fn function.

See GetTagValues method for more information on how to use this operation.

Note: This operation can generate multiple requests to a service.

// Example iterating over at most 3 pages of a GetTagValues operation.
pageNum := 0
err := client.GetTagValuesPages(params,
    func(page *GetTagValuesOutput, lastPage bool) bool {
        pageNum++
        fmt.Println(page)
        return pageNum <= 3
    })

func (*ResourceGroupsTaggingAPI) GetTagValuesPagesWithContext

func (c *ResourceGroupsTaggingAPI) GetTagValuesPagesWithContext(ctx aws.Context, input *GetTagValuesInput, fn func(*GetTagValuesOutput, bool) bool, opts ...request.Option) error

GetTagValuesPagesWithContext same as GetTagValuesPages except it takes a Context and allows setting request options on the pages.

The context must be non-nil and will be used for request cancellation. If the context is nil a panic will occur. In the future the SDK may create sub-contexts for http.Requests. See https://golang.org/pkg/context/ for more information on using Contexts.

func (*ResourceGroupsTaggingAPI) GetTagValuesRequest

func (c *ResourceGroupsTaggingAPI) GetTagValuesRequest(input *GetTagValuesInput) (req *request.Request, output *GetTagValuesOutput)

GetTagValuesRequest generates a "aws/request.Request" representing the client's request for the GetTagValues operation. The "output" return value will be populated with the request's response once the request completes successfuly.

Use "Send" method on the returned Request to send the API call to the service. the "output" return value is not valid until after Send returns without error.

See GetTagValues for more information on using the GetTagValues API call, and error handling.

This method is useful when you want to inject custom logic or configuration into the SDK's request lifecycle. Such as custom headers, or retry logic.

// Example sending a request using the GetTagValuesRequest method.
req, resp := client.GetTagValuesRequest(params)

err := req.Send()
if err == nil { // resp is now filled
    fmt.Println(resp)
}

See also, https://docs.aws.amazon.com/goto/WebAPI/resourcegroupstaggingapi-2017-01-26/GetTagValues

func (*ResourceGroupsTaggingAPI) GetTagValuesWithContext

func (c *ResourceGroupsTaggingAPI) GetTagValuesWithContext(ctx aws.Context, input *GetTagValuesInput, opts ...request.Option) (*GetTagValuesOutput, error)

GetTagValuesWithContext is the same as GetTagValues with the addition of the ability to pass a context and additional request options.

See GetTagValues for details on how to use this API operation.

The context must be non-nil and will be used for request cancellation. If the context is nil a panic will occur. In the future the SDK may create sub-contexts for http.Requests. See https://golang.org/pkg/context/ for more information on using Contexts.

func (*ResourceGroupsTaggingAPI) TagResources

func (c *ResourceGroupsTaggingAPI) TagResources(input *TagResourcesInput) (*TagResourcesOutput, error)

TagResources API operation for AWS Resource Groups Tagging API.

Applies one or more tags to the specified resources. Note the following:

* Not all resources can have tags. For a list of resources that support
tagging, see Supported Resources (http://docs.aws.amazon.com/awsconsolehelpdocs/latest/gsg/supported-resources.html)
in the AWS Resource Groups and Tag Editor User Guide.

* Each resource can have up to 50 tags. For other limits, see Tag Restrictions
(http://docs.aws.amazon.com/AWSEC2/latest/UserGuide/Using_Tags.html#tag-restrictions)
in the Amazon EC2 User Guide for Linux Instances.

* You can only tag resources that are located in the specified region
for the AWS account.

* To add tags to a resource, you need the necessary permissions for the
service that the resource belongs to as well as permissions for adding
tags. For more information, see Obtaining Permissions for Tagging (http://docs.aws.amazon.com/awsconsolehelpdocs/latest/gsg/obtaining-permissions-for-tagging.html)
in the AWS Resource Groups and Tag Editor User Guide.

Returns awserr.Error for service API and SDK errors. Use runtime type assertions with awserr.Error's Code and Message methods to get detailed information about the error.

See the AWS API reference guide for AWS Resource Groups Tagging API's API operation TagResources for usage and error information.

Returned Error Codes:

* ErrCodeInvalidParameterException "InvalidParameterException"
A parameter is missing or a malformed string or invalid or out-of-range value
was supplied for the request parameter.

* ErrCodeThrottledException "ThrottledException"
The request was denied to limit the frequency of submitted requests.

* ErrCodeInternalServiceException "InternalServiceException"
The request processing failed because of an unknown error, exception, or
failure. You can retry the request.

See also, https://docs.aws.amazon.com/goto/WebAPI/resourcegroupstaggingapi-2017-01-26/TagResources

func (*ResourceGroupsTaggingAPI) TagResourcesRequest

func (c *ResourceGroupsTaggingAPI) TagResourcesRequest(input *TagResourcesInput) (req *request.Request, output *TagResourcesOutput)

TagResourcesRequest generates a "aws/request.Request" representing the client's request for the TagResources operation. The "output" return value will be populated with the request's response once the request completes successfuly.

Use "Send" method on the returned Request to send the API call to the service. the "output" return value is not valid until after Send returns without error.

See TagResources for more information on using the TagResources API call, and error handling.

This method is useful when you want to inject custom logic or configuration into the SDK's request lifecycle. Such as custom headers, or retry logic.

// Example sending a request using the TagResourcesRequest method.
req, resp := client.TagResourcesRequest(params)

err := req.Send()
if err == nil { // resp is now filled
    fmt.Println(resp)
}

See also, https://docs.aws.amazon.com/goto/WebAPI/resourcegroupstaggingapi-2017-01-26/TagResources

func (*ResourceGroupsTaggingAPI) TagResourcesWithContext

func (c *ResourceGroupsTaggingAPI) TagResourcesWithContext(ctx aws.Context, input *TagResourcesInput, opts ...request.Option) (*TagResourcesOutput, error)

TagResourcesWithContext is the same as TagResources with the addition of the ability to pass a context and additional request options.

See TagResources for details on how to use this API operation.

The context must be non-nil and will be used for request cancellation. If the context is nil a panic will occur. In the future the SDK may create sub-contexts for http.Requests. See https://golang.org/pkg/context/ for more information on using Contexts.

func (*ResourceGroupsTaggingAPI) UntagResources

func (c *ResourceGroupsTaggingAPI) UntagResources(input *UntagResourcesInput) (*UntagResourcesOutput, error)

UntagResources API operation for AWS Resource Groups Tagging API.

Removes the specified tags from the specified resources. When you specify a tag key, the action removes both that key and its associated value. The operation succeeds even if you attempt to remove tags from a resource that were already removed. Note the following:

* To remove tags from a resource, you need the necessary permissions for
the service that the resource belongs to as well as permissions for removing
tags. For more information, see Obtaining Permissions for Tagging (http://docs.aws.amazon.com/awsconsolehelpdocs/latest/gsg/obtaining-permissions-for-tagging.html)
in the AWS Resource Groups and Tag Editor User Guide.

* You can only tag resources that are located in the specified region
for the AWS account.

Returns awserr.Error for service API and SDK errors. Use runtime type assertions with awserr.Error's Code and Message methods to get detailed information about the error.

See the AWS API reference guide for AWS Resource Groups Tagging API's API operation UntagResources for usage and error information.

Returned Error Codes:

* ErrCodeInvalidParameterException "InvalidParameterException"
A parameter is missing or a malformed string or invalid or out-of-range value
was supplied for the request parameter.

* ErrCodeThrottledException "ThrottledException"
The request was denied to limit the frequency of submitted requests.

* ErrCodeInternalServiceException "InternalServiceException"
The request processing failed because of an unknown error, exception, or
failure. You can retry the request.

See also, https://docs.aws.amazon.com/goto/WebAPI/resourcegroupstaggingapi-2017-01-26/UntagResources

func (*ResourceGroupsTaggingAPI) UntagResourcesRequest

func (c *ResourceGroupsTaggingAPI) UntagResourcesRequest(input *UntagResourcesInput) (req *request.Request, output *UntagResourcesOutput)

UntagResourcesRequest generates a "aws/request.Request" representing the client's request for the UntagResources operation. The "output" return value will be populated with the request's response once the request completes successfuly.

Use "Send" method on the returned Request to send the API call to the service. the "output" return value is not valid until after Send returns without error.

See UntagResources for more information on using the UntagResources API call, and error handling.

This method is useful when you want to inject custom logic or configuration into the SDK's request lifecycle. Such as custom headers, or retry logic.

// Example sending a request using the UntagResourcesRequest method.
req, resp := client.UntagResourcesRequest(params)

err := req.Send()
if err == nil { // resp is now filled
    fmt.Println(resp)
}

See also, https://docs.aws.amazon.com/goto/WebAPI/resourcegroupstaggingapi-2017-01-26/UntagResources

func (*ResourceGroupsTaggingAPI) UntagResourcesWithContext

func (c *ResourceGroupsTaggingAPI) UntagResourcesWithContext(ctx aws.Context, input *UntagResourcesInput, opts ...request.Option) (*UntagResourcesOutput, error)

UntagResourcesWithContext is the same as UntagResources with the addition of the ability to pass a context and additional request options.

See UntagResources for details on how to use this API operation.

The context must be non-nil and will be used for request cancellation. If the context is nil a panic will occur. In the future the SDK may create sub-contexts for http.Requests. See https://golang.org/pkg/context/ for more information on using Contexts.

type ResourceTagMapping

type ResourceTagMapping struct {

    // An array of resource ARN(s).
    ResourceARN *string `min:"1" type:"string"`

    // The tags that have been applied to one or more AWS resources.
    Tags []*Tag `type:"list"`
    // contains filtered or unexported fields
}

A list of resource ARNs and the tags (keys and values) that are associated with each.

func (ResourceTagMapping) GoString

func (s ResourceTagMapping) GoString() string

GoString returns the string representation

func (*ResourceTagMapping) SetResourceARN

func (s *ResourceTagMapping) SetResourceARN(v string) *ResourceTagMapping

SetResourceARN sets the ResourceARN field's value.

func (*ResourceTagMapping) SetTags

func (s *ResourceTagMapping) SetTags(v []*Tag) *ResourceTagMapping

SetTags sets the Tags field's value.

func (ResourceTagMapping) String

func (s ResourceTagMapping) String() string

String returns the string representation

type Tag

type Tag struct {

    // One part of a key-value pair that make up a tag. A key is a general label
    // that acts like a category for more specific tag values.
    //
    // Key is a required field
    Key *string `min:"1" type:"string" required:"true"`

    // The optional part of a key-value pair that make up a tag. A value acts as
    // a descriptor within a tag category (key).
    //
    // Value is a required field
    Value *string `type:"string" required:"true"`
    // contains filtered or unexported fields
}

The metadata that you apply to AWS resources to help you categorize and organize them. Each tag consists of a key and an optional value, both of which you define. For more information, see Tag Basics (http://docs.aws.amazon.com/AWSEC2/latest/UserGuide/Using_Tags.html#tag-basics) in the Amazon EC2 User Guide for Linux Instances.

func (Tag) GoString

func (s Tag) GoString() string

GoString returns the string representation

func (*Tag) SetKey

func (s *Tag) SetKey(v string) *Tag

SetKey sets the Key field's value.

func (*Tag) SetValue

func (s *Tag) SetValue(v string) *Tag

SetValue sets the Value field's value.

func (Tag) String

func (s Tag) String() string

String returns the string representation

type TagFilter

type TagFilter struct {

    // One part of a key-value pair that make up a tag. A key is a general label
    // that acts like a category for more specific tag values.
    Key *string `min:"1" type:"string"`

    // The optional part of a key-value pair that make up a tag. A value acts as
    // a descriptor within a tag category (key).
    Values []*string `type:"list"`
    // contains filtered or unexported fields
}

A list of tags (keys and values) that are used to specify the associated resources.

func (TagFilter) GoString

func (s TagFilter) GoString() string

GoString returns the string representation

func (*TagFilter) SetKey

func (s *TagFilter) SetKey(v string) *TagFilter

SetKey sets the Key field's value.

func (*TagFilter) SetValues

func (s *TagFilter) SetValues(v []*string) *TagFilter

SetValues sets the Values field's value.

func (TagFilter) String

func (s TagFilter) String() string

String returns the string representation

func (*TagFilter) Validate

func (s *TagFilter) Validate() error

Validate inspects the fields of the type to determine if they are valid.

type TagResourcesInput

type TagResourcesInput struct {

    // A list of ARNs. An ARN (Amazon Resource Name) uniquely identifies a resource.
    // You can specify a minimum of 1 and a maximum of 20 ARNs (resources) to tag.
    // An ARN can be set to a maximum of 1600 characters. For more information,
    // see Amazon Resource Names (ARNs) and AWS Service Namespaces (http://docs.aws.amazon.com/general/latest/gr/aws-arns-and-namespaces.html)
    // in the AWS General Reference.
    //
    // ResourceARNList is a required field
    ResourceARNList []*string `min:"1" type:"list" required:"true"`

    // The tags that you want to add to the specified resources. A tag consists
    // of a key and a value that you define.
    //
    // Tags is a required field
    Tags map[string]*string `min:"1" type:"map" required:"true"`
    // contains filtered or unexported fields
}

func (TagResourcesInput) GoString

func (s TagResourcesInput) GoString() string

GoString returns the string representation

func (*TagResourcesInput) SetResourceARNList

func (s *TagResourcesInput) SetResourceARNList(v []*string) *TagResourcesInput

SetResourceARNList sets the ResourceARNList field's value.

func (*TagResourcesInput) SetTags

func (s *TagResourcesInput) SetTags(v map[string]*string) *TagResourcesInput

SetTags sets the Tags field's value.

func (TagResourcesInput) String

func (s TagResourcesInput) String() string

String returns the string representation

func (*TagResourcesInput) Validate

func (s *TagResourcesInput) Validate() error

Validate inspects the fields of the type to determine if they are valid.

type TagResourcesOutput

type TagResourcesOutput struct {

    // Details of resources that could not be tagged. An error code, status code,
    // and error message are returned for each failed item.
    FailedResourcesMap map[string]*FailureInfo `type:"map"`
    // contains filtered or unexported fields
}

func (TagResourcesOutput) GoString

func (s TagResourcesOutput) GoString() string

GoString returns the string representation

func (*TagResourcesOutput) SetFailedResourcesMap

func (s *TagResourcesOutput) SetFailedResourcesMap(v map[string]*FailureInfo) *TagResourcesOutput

SetFailedResourcesMap sets the FailedResourcesMap field's value.

func (TagResourcesOutput) String

func (s TagResourcesOutput) String() string

String returns the string representation

type UntagResourcesInput

type UntagResourcesInput struct {

    // A list of ARNs. An ARN (Amazon Resource Name) uniquely identifies a resource.
    // You can specify a minimum of 1 and a maximum of 20 ARNs (resources) to untag.
    // An ARN can be set to a maximum of 1600 characters. For more information,
    // see Amazon Resource Names (ARNs) and AWS Service Namespaces (http://docs.aws.amazon.com/general/latest/gr/aws-arns-and-namespaces.html)
    // in the AWS General Reference.
    //
    // ResourceARNList is a required field
    ResourceARNList []*string `min:"1" type:"list" required:"true"`

    // A list of the tag keys that you want to remove from the specified resources.
    //
    // TagKeys is a required field
    TagKeys []*string `min:"1" type:"list" required:"true"`
    // contains filtered or unexported fields
}

func (UntagResourcesInput) GoString

func (s UntagResourcesInput) GoString() string

GoString returns the string representation

func (*UntagResourcesInput) SetResourceARNList

func (s *UntagResourcesInput) SetResourceARNList(v []*string) *UntagResourcesInput

SetResourceARNList sets the ResourceARNList field's value.

func (*UntagResourcesInput) SetTagKeys

func (s *UntagResourcesInput) SetTagKeys(v []*string) *UntagResourcesInput

SetTagKeys sets the TagKeys field's value.

func (UntagResourcesInput) String

func (s UntagResourcesInput) String() string

String returns the string representation

func (*UntagResourcesInput) Validate

func (s *UntagResourcesInput) Validate() error

Validate inspects the fields of the type to determine if they are valid.

type UntagResourcesOutput

type UntagResourcesOutput struct {

    // Details of resources that could not be untagged. An error code, status code,
    // and error message are returned for each failed item.
    FailedResourcesMap map[string]*FailureInfo `type:"map"`
    // contains filtered or unexported fields
}

func (UntagResourcesOutput) GoString

func (s UntagResourcesOutput) GoString() string

GoString returns the string representation

func (*UntagResourcesOutput) SetFailedResourcesMap

func (s *UntagResourcesOutput) SetFailedResourcesMap(v map[string]*FailureInfo) *UntagResourcesOutput

SetFailedResourcesMap sets the FailedResourcesMap field's value.

func (UntagResourcesOutput) String

func (s UntagResourcesOutput) String() string

String returns the string representation