AWS Resource Groups Tagging API
amazonaws · Cloud
Resource Groups Tagging API
Authentication
Sample Requests
Returns a table that shows counts of resources that are noncompliant with their tag policies. For more information on tag policies, see Tag Policies in the Organizations User
Hover any highlighted part to learn what it does
| X-Amz-Target | ResourceGroupsTaggingAPI_20170126.GetComplianceSummary |
curl -X POST "https://api.apis.guru/v2/specs/amazonaws.com/resourcegroupstaggingapi/2017-01-26/#X-Amz-Target=ResourceGroupsTaggingAPI_20170126.GetComplianceSummary?MaxResults=example&PaginationToken=example" \ -H "X-Amz-Target: ResourceGroupsTaggingAPI_20170126.GetComplianceSummary"
import requests
params = {
"MaxResults": "example",
"PaginationToken": "example"
}
headers = {
"X-Amz-Target": "ResourceGroupsTaggingAPI_20170126.GetComplianceSummary"
}
response = requests.post(
"https://api.apis.guru/v2/specs/amazonaws.com/resourcegroupstaggingapi/2017-01-26/#X-Amz-Target=ResourceGroupsTaggingAPI_20170126.GetComplianceSummary",
params=params,
headers=headers,
)
print(response.json())const url = new URL('https://api.apis.guru/v2/specs/amazonaws.com/resourcegroupstaggingapi/2017-01-26/#X-Amz-Target=ResourceGroupsTaggingAPI_20170126.GetComplianceSummary');
url.searchParams.set('MaxResults', 'example');
url.searchParams.set('PaginationToken', 'example');
const response = await fetch(url, {
method: 'POST',
headers: {
'X-Amz-Target': 'ResourceGroupsTaggingAPI_20170126.GetComplianceSummary'
},
});
const data = await response.json();
console.log(data);package main
import (
"fmt"
"io"
"net/http"
"net/url"
)
func main() {
baseURL, _ := url.Parse("https://api.apis.guru/v2/specs/amazonaws.com/resourcegroupstaggingapi/2017-01-26/#X-Amz-Target=ResourceGroupsTaggingAPI_20170126.GetComplianceSummary")
q := baseURL.Query()
q.Set("MaxResults", "example")
q.Set("PaginationToken", "example")
baseURL.RawQuery = q.Encode()
targetURL := baseURL.String()
req, _ := http.NewRequest("POST", targetURL, nil)
req.Header.Set("X-Amz-Target", "ResourceGroupsTaggingAPI_20170126.GetComplianceSummary")
client := &http.Client{}
resp, _ := client.Do(req)
defer resp.Body.Close()
body, _ := io.ReadAll(resp.Body)
fmt.Println(string(body))
}require "net/http"
require "json"
uri = URI("https://api.apis.guru/v2/specs/amazonaws.com/resourcegroupstaggingapi/2017-01-26/#X-Amz-Target=ResourceGroupsTaggingAPI_20170126.GetComplianceSummary")
uri.query = URI.encode_www_form({
"MaxResults" => "example",
"PaginationToken" => "example"
})
http = Net::HTTP.new(uri.host, uri.port)
http.use_ssl = uri.scheme == "https"
req = Net::HTTP::Post.new(uri)
req["X-Amz-Target"] = "ResourceGroupsTaggingAPI_20170126.GetComplianceSummary"
res = http.request(req)
puts JSON.parse(res.body)<?php
$url = "https://api.apis.guru/v2/specs/amazonaws.com/resourcegroupstaggingapi/2017-01-26/#X-Amz-Target=ResourceGroupsTaggingAPI_20170126.GetComplianceSummary?" . http_build_query([
"MaxResults" => "example",
"PaginationToken" => "example"
]);
$opts = ["http" => [
"method" => "POST",
"header" => implode("\r\n", [
"X-Amz-Target: ResourceGroupsTaggingAPI_20170126.GetComplianceSummary"
]),
]];
$ctx = stream_context_create($opts);
$res = file_get_contents($url, false, $ctx);
print_r(json_decode($res, true));Returns all the tagged or previously tagged resources that are located in the specified Amazon Web Services Region for the account. Depending on what information you want returned, you can also specify the following: Filters that specify what tags and resource type
Hover any highlighted part to learn what it does
| X-Amz-Target | ResourceGroupsTaggingAPI_20170126.GetResources |
curl -X POST "https://api.apis.guru/v2/specs/amazonaws.com/resourcegroupstaggingapi/2017-01-26/#X-Amz-Target=ResourceGroupsTaggingAPI_20170126.GetResources?PaginationToken=example&ResourcesPerPage=example" \ -H "X-Amz-Target: ResourceGroupsTaggingAPI_20170126.GetResources"
import requests
params = {
"PaginationToken": "example",
"ResourcesPerPage": "example"
}
headers = {
"X-Amz-Target": "ResourceGroupsTaggingAPI_20170126.GetResources"
}
response = requests.post(
"https://api.apis.guru/v2/specs/amazonaws.com/resourcegroupstaggingapi/2017-01-26/#X-Amz-Target=ResourceGroupsTaggingAPI_20170126.GetResources",
params=params,
headers=headers,
)
print(response.json())const url = new URL('https://api.apis.guru/v2/specs/amazonaws.com/resourcegroupstaggingapi/2017-01-26/#X-Amz-Target=ResourceGroupsTaggingAPI_20170126.GetResources');
url.searchParams.set('PaginationToken', 'example');
url.searchParams.set('ResourcesPerPage', 'example');
const response = await fetch(url, {
method: 'POST',
headers: {
'X-Amz-Target': 'ResourceGroupsTaggingAPI_20170126.GetResources'
},
});
const data = await response.json();
console.log(data);package main
import (
"fmt"
"io"
"net/http"
"net/url"
)
func main() {
baseURL, _ := url.Parse("https://api.apis.guru/v2/specs/amazonaws.com/resourcegroupstaggingapi/2017-01-26/#X-Amz-Target=ResourceGroupsTaggingAPI_20170126.GetResources")
q := baseURL.Query()
q.Set("PaginationToken", "example")
q.Set("ResourcesPerPage", "example")
baseURL.RawQuery = q.Encode()
targetURL := baseURL.String()
req, _ := http.NewRequest("POST", targetURL, nil)
req.Header.Set("X-Amz-Target", "ResourceGroupsTaggingAPI_20170126.GetResources")
client := &http.Client{}
resp, _ := client.Do(req)
defer resp.Body.Close()
body, _ := io.ReadAll(resp.Body)
fmt.Println(string(body))
}require "net/http"
require "json"
uri = URI("https://api.apis.guru/v2/specs/amazonaws.com/resourcegroupstaggingapi/2017-01-26/#X-Amz-Target=ResourceGroupsTaggingAPI_20170126.GetResources")
uri.query = URI.encode_www_form({
"PaginationToken" => "example",
"ResourcesPerPage" => "example"
})
http = Net::HTTP.new(uri.host, uri.port)
http.use_ssl = uri.scheme == "https"
req = Net::HTTP::Post.new(uri)
req["X-Amz-Target"] = "ResourceGroupsTaggingAPI_20170126.GetResources"
res = http.request(req)
puts JSON.parse(res.body)<?php
$url = "https://api.apis.guru/v2/specs/amazonaws.com/resourcegroupstaggingapi/2017-01-26/#X-Amz-Target=ResourceGroupsTaggingAPI_20170126.GetResources?" . http_build_query([
"PaginationToken" => "example",
"ResourcesPerPage" => "example"
]);
$opts = ["http" => [
"method" => "POST",
"header" => implode("\r\n", [
"X-Amz-Target: ResourceGroupsTaggingAPI_20170126.GetResources"
]),
]];
$ctx = stream_context_create($opts);
$res = file_get_contents($url, false, $ctx);
print_r(json_decode($res, true));Returns all tag keys currently in use in the specified Amazon Web Services Region for the calling account. This operation supports pagination, where the response can be sent in multiple pages. You should check the PaginationToken response parameter to determine if there are ad
Hover any highlighted part to learn what it does
| X-Amz-Target | ResourceGroupsTaggingAPI_20170126.GetTagKeys |
curl -X POST "https://api.apis.guru/v2/specs/amazonaws.com/resourcegroupstaggingapi/2017-01-26/#X-Amz-Target=ResourceGroupsTaggingAPI_20170126.GetTagKeys?PaginationToken=example" \ -H "X-Amz-Target: ResourceGroupsTaggingAPI_20170126.GetTagKeys"
import requests
params = {
"PaginationToken": "example"
}
headers = {
"X-Amz-Target": "ResourceGroupsTaggingAPI_20170126.GetTagKeys"
}
response = requests.post(
"https://api.apis.guru/v2/specs/amazonaws.com/resourcegroupstaggingapi/2017-01-26/#X-Amz-Target=ResourceGroupsTaggingAPI_20170126.GetTagKeys",
params=params,
headers=headers,
)
print(response.json())const url = new URL('https://api.apis.guru/v2/specs/amazonaws.com/resourcegroupstaggingapi/2017-01-26/#X-Amz-Target=ResourceGroupsTaggingAPI_20170126.GetTagKeys');
url.searchParams.set('PaginationToken', 'example');
const response = await fetch(url, {
method: 'POST',
headers: {
'X-Amz-Target': 'ResourceGroupsTaggingAPI_20170126.GetTagKeys'
},
});
const data = await response.json();
console.log(data);package main
import (
"fmt"
"io"
"net/http"
"net/url"
)
func main() {
baseURL, _ := url.Parse("https://api.apis.guru/v2/specs/amazonaws.com/resourcegroupstaggingapi/2017-01-26/#X-Amz-Target=ResourceGroupsTaggingAPI_20170126.GetTagKeys")
q := baseURL.Query()
q.Set("PaginationToken", "example")
baseURL.RawQuery = q.Encode()
targetURL := baseURL.String()
req, _ := http.NewRequest("POST", targetURL, nil)
req.Header.Set("X-Amz-Target", "ResourceGroupsTaggingAPI_20170126.GetTagKeys")
client := &http.Client{}
resp, _ := client.Do(req)
defer resp.Body.Close()
body, _ := io.ReadAll(resp.Body)
fmt.Println(string(body))
}require "net/http"
require "json"
uri = URI("https://api.apis.guru/v2/specs/amazonaws.com/resourcegroupstaggingapi/2017-01-26/#X-Amz-Target=ResourceGroupsTaggingAPI_20170126.GetTagKeys")
uri.query = URI.encode_www_form({
"PaginationToken" => "example"
})
http = Net::HTTP.new(uri.host, uri.port)
http.use_ssl = uri.scheme == "https"
req = Net::HTTP::Post.new(uri)
req["X-Amz-Target"] = "ResourceGroupsTaggingAPI_20170126.GetTagKeys"
res = http.request(req)
puts JSON.parse(res.body)<?php
$url = "https://api.apis.guru/v2/specs/amazonaws.com/resourcegroupstaggingapi/2017-01-26/#X-Amz-Target=ResourceGroupsTaggingAPI_20170126.GetTagKeys?" . http_build_query([
"PaginationToken" => "example"
]);
$opts = ["http" => [
"method" => "POST",
"header" => implode("\r\n", [
"X-Amz-Target: ResourceGroupsTaggingAPI_20170126.GetTagKeys"
]),
]];
$ctx = stream_context_create($opts);
$res = file_get_contents($url, false, $ctx);
print_r(json_decode($res, true));Postman Setup Guide
- See official documentation for authentication and setup.
What can you build with AWS Resource Groups Tagging API?
AWS Resource Groups Tagging API is a Cloud API. Developers commonly use cloud APIs for:
- provisioning and managing cloud infrastructure
- automating deployments and container orchestration
- monitoring uptime and performance metrics
- managing storage buckets and databases
- setting up auto-scaling and load balancing
No authentication required. This API is open — no signup or key needed. Ideal for quick prototypes and public-facing features. AWS Resource Groups Tagging API is free to use, making it a low-risk choice to experiment with.
New to APIs? Read our beginner's guide