Amazon EC2 Ec2 Tag API
The Ec2 Tag API from Amazon EC2 — 3 operation(s) for ec2 tag.
The Ec2 Tag API from Amazon EC2 — 3 operation(s) for ec2 tag.
Every API here is available over the APIs.io API and to AI agents over MCP.
One button, every client — Claude, Cursor, VS Code and the rest.
https://apis.io/mcp
find_apisBrowse and filter every API in the catalog.get_api_artifactsOne API's artifacts, grouped by type.get_openapiThe primary OpenAPI for this API.find_similar_apisAPIs that look like this one.apis_io_searchSTART HERE — APIs, providers and tags for one query, each with its total.resolveTurn a domain, URL or GitHub org into the provider it belongs to.find_cohortsEvery scored population of providers in the catalog.curl "https://apis.io/api/v1/apis/amazon-ec2:amazon-ec2-tag-api"
curl "https://apis.io/api/v1/apis?limit=25"
Calls without X-API-Key need no key. Calls with it need a paid plan — get a key.
Free tier, no form to fill in. Signing in shares your email address with us — we store it to create your key and to recognise you if you sign in with another provider. See our Privacy Policy and Terms.
A second provider on the same verified email joins the account you already have.
openapi: 3.2.0
info:
title: Amazon Elastic Compute Cloud Tag API
version: '2016-11-15'
description: Generated from AWS's published Smithy model for Amazon Elastic Compute Cloud. 3 operation(s).
contact:
name: Amazon Web Services
url: https://aws.amazon.com/contact-us/
license:
name: Apache 2.0
identifier: Apache-2.0
url: https://github.com/aws/api-models-aws/blob/main/LICENSE
servers:
- url: https://ec2.{region}.amazonaws.com
variables:
region:
default: us-east-1
security:
- sigv4: []
tags:
- name: Tag
paths:
/?Action=CreateTags:
post:
operationId: CreateTags
summary: Create Tags
description: Adds or overwrites only the specified tags for the specified Amazon EC2 resource or resources. When you specify an existing tag key, the value is overwritten with the new value. Each resource can have a maximum of 50 tags. Each tag consists of a key and optional value. Tag keys must be unique per resource. For more information about tags, see Tag your Amazon EC2 resources in the Amazon Elastic Compute Cloud User Guide. For more information about creating IAM policies that control users' access to resources based on tags, see Supported resource-level permissions for Amazon EC2 API actions in the Amazon Elastic Compute Cloud User Guide.
responses:
'200':
description: Success
content:
text/xml:
schema:
type: string
requestBody:
required: true
content:
application/x-www-form-urlencoded:
schema:
allOf:
- type: object
required:
- Action
- Version
properties:
Action:
type: string
const: CreateTags
Version:
type: string
const: '2016-11-15'
- $ref: '#/components/schemas/CreateTagsRequest'
example:
Resources:
- ami-78a54011
Tags:
- Key: Stack
Value: production
tags:
- Tag
/?Action=DeleteTags:
post:
operationId: DeleteTags
summary: Delete Tags
description: Deletes the specified set of tags from the specified set of resources. To list the current tags, use DescribeTags. For more information about tags, see Tag your Amazon EC2 resources in the Amazon Elastic Compute Cloud User Guide.
responses:
'200':
description: Success
content:
text/xml:
schema:
type: string
requestBody:
required: true
content:
application/x-www-form-urlencoded:
schema:
allOf:
- type: object
required:
- Action
- Version
properties:
Action:
type: string
const: DeleteTags
Version:
type: string
const: '2016-11-15'
- $ref: '#/components/schemas/DeleteTagsRequest'
example:
Resources:
- ami-78a54011
Tags:
- Key: Stack
Value: test
tags:
- Tag
/?Action=DescribeTags:
post:
operationId: DescribeTags
summary: Describe Tags
description: Describes the specified tags for your EC2 resources. For more information about tags, see Tag your Amazon EC2 resources in the Amazon Elastic Compute Cloud User Guide. We strongly recommend using only paginated requests. Unpaginated requests are susceptible to throttling and timeouts. The order of the elements in the response, including those within nested structures, might vary. Applications should not assume the elements appear in a particular order.
responses:
'200':
description: Success
content:
text/xml:
schema:
$ref: '#/components/schemas/DescribeTagsResult'
example:
Tags:
- ResourceType: instance
ResourceId: i-1234567890abcdef8
Value: test
Key: Stack
- ResourceType: instance
ResourceId: i-1234567890abcdef8
Value: Beta Server
Key: Name
requestBody:
required: true
content:
application/x-www-form-urlencoded:
schema:
allOf:
- type: object
required:
- Action
- Version
properties:
Action:
type: string
const: DescribeTags
Version:
type: string
const: '2016-11-15'
- $ref: '#/components/schemas/DescribeTagsRequest'
example:
Filters:
- Name: resource-id
Values:
- i-1234567890abcdef8
tags:
- Tag
components:
schemas:
DeleteTagsRequest:
type: object
properties:
DryRun:
type: boolean
description: Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.
Resources:
type: array
items:
type: string
description: 'The IDs of the resources, separated by spaces. Constraints: Up to 1000 resource IDs. We recommend breaking up this request into smaller batches.'
Tags:
type: array
items:
$ref: '#/components/schemas/Tag'
description: 'The tags to delete. Specify a tag key and an optional tag value to delete specific tags. If you specify a tag key without a tag value, we delete any tag with this key regardless of its value. If you specify a tag key with an empty string as the tag value, we delete the tag only if its value is an empty string. If you omit this parameter, we delete all user-defined tags for the specified resources. We do not delete Amazon Web Services-generated tags (tags that have the aws: prefix). Constraints: Up to 1000 tags.'
required:
- Resources
Tag:
type: object
properties:
Key:
type: string
description: 'The key of the tag. Constraints: Tag keys are case-sensitive and accept a maximum of 127 Unicode characters. May not begin with aws:.'
Value:
type: string
description: 'The value of the tag. Constraints: Tag values are case-sensitive and accept a maximum of 256 Unicode characters.'
DescribeTagsRequest:
type: object
properties:
DryRun:
type: boolean
description: Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.
Filters:
type: array
items:
$ref: '#/components/schemas/Filter'
description: 'The filters. key - The tag key. resource-id - The ID of the resource. resource-type - The resource type. For a list of possible values, see TagSpecification. tag: - The key/value combination of the tag. For example, specify "tag:Owner" for the filter name and "TeamA" for the filter value to find resources with the tag "Owner=TeamA". value - The tag value.'
MaxResults:
type: integer
description: The maximum number of items to return for this request. This value can be between 5 and 1000. To get the next page of items, make another request with the token returned in the output. For more information, see Pagination.
NextToken:
type: string
description: The token returned from a previous paginated request. Pagination continues from the end of the items returned by the previous request.
DescribeTagsResult:
type: object
properties:
NextToken:
type: string
description: The token to include in another request to get the next page of items. This value is null when there are no more items to return.
Tags:
type: array
items:
$ref: '#/components/schemas/TagDescription'
description: The tags.
TagDescription:
type: object
properties:
Key:
type: string
description: The tag key.
ResourceId:
type: string
description: The ID of the resource.
ResourceType:
type: string
enum:
- capacity-reservation
- client-vpn-endpoint
- customer-gateway
- carrier-gateway
- coip-pool
- declarative-policies-report
- dedicated-host
- dhcp-options
- egress-only-internet-gateway
- elastic-ip
- elastic-gpu
- export-image-task
- export-instance-task
- fleet
- fpga-image
- host-reservation
- image
- image-usage-report
- import-image-task
- import-snapshot-task
- instance
- instance-event-window
- internet-gateway
- ipam
- ipam-pool
- ipam-scope
- ipv4pool-ec2
- ipv6pool-ec2
- key-pair
- launch-template
- local-gateway
- local-gateway-route-table
- local-gateway-virtual-interface
- local-gateway-virtual-interface-group
- local-gateway-route-table-vpc-association
- local-gateway-route-table-virtual-interface-group-association
- natgateway
- network-acl
- network-interface
- network-insights-analysis
- network-insights-path
- network-insights-access-scope
- network-insights-access-scope-analysis
- outpost-lag
- placement-group
- prefix-list
- replace-root-volume-task
- reserved-instances
- route-table
- security-group
- security-group-rule
- service-link-virtual-interface
- snapshot
- spot-fleet-request
- spot-instances-request
- subnet
- subnet-cidr-reservation
- traffic-mirror-filter
- traffic-mirror-session
- traffic-mirror-target
- transit-gateway
- transit-gateway-attachment
- transit-gateway-connect-peer
- transit-gateway-multicast-domain
- transit-gateway-policy-table
- transit-gateway-metering-policy
- transit-gateway-route-table
- transit-gateway-route-table-announcement
- volume
- vpc
- vpc-endpoint
- vpc-endpoint-connection
- vpc-endpoint-service
- vpc-endpoint-service-permission
- vpc-peering-connection
- vpn-connection
- vpn-gateway
- vpc-flow-log
- capacity-reservation-fleet
- traffic-mirror-filter-rule
- vpc-endpoint-connection-device-type
- verified-access-instance
- verified-access-group
- verified-access-endpoint
- verified-access-policy
- verified-access-trust-provider
- vpn-connection-device-type
- vpc-block-public-access-exclusion
- vpc-encryption-control
- route-server
- route-server-endpoint
- route-server-peer
- ipam-resource-discovery
- ipam-resource-discovery-association
- instance-connect-endpoint
- verified-access-endpoint-target
- ipam-external-resource-verification-token
- capacity-block
- mac-modification-task
- ipam-prefix-list-resolver
- ipam-policy
- ipam-prefix-list-resolver-target
- ipam-internet-registry-association
- secondary-interface
- secondary-network
- secondary-subnet
- capacity-manager-data-export
- vpn-concentrator
- ipam-pool-allocation
- capacity-reservation-cancellation-quote
- application-status-check
- capacity-reservation-modification-quote
description: The resource type.
Value:
type: string
description: The tag value.
Filter:
type: object
properties:
Name:
type: string
description: The name of the filter. Filter names are case-sensitive.
Values:
type: array
items:
type: string
description: The filter values. Filter values are case-sensitive. If you specify multiple values for a filter, the values are joined with an OR, and the request returns all results that match any of the specified values.
CreateTagsRequest:
type: object
properties:
DryRun:
type: boolean
description: Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.
Resources:
type: array
items:
type: string
description: 'The IDs of the resources, separated by spaces. Constraints: Up to 1000 resource IDs. We recommend breaking up this request into smaller batches.'
Tags:
type: array
items:
$ref: '#/components/schemas/Tag'
description: The tags. The value parameter is required, but if you don't want the tag to have a value, specify the parameter with no value, and we set the value to an empty string.
required:
- Resources
- Tags
securitySchemes:
sigv4:
type: apiKey
in: header
name: Authorization
description: AWS Signature Version 4. The Authorization header carries an AWS4-HMAC-SHA256 signature over the canonical request, with X-Amz-Date (and X-Amz-Security-Token for temporary credentials). Not a bearer token.
x-aws-sigv4:
signingName: ec2
x-provenance:
method: harvested
publisher: Amazon Web Services
source: https://raw.githubusercontent.com/aws/api-models-aws/582e55931c45b944739742a2c1620b6026dd2d13/models/ec2/service/2016-11-15/ec2-2016-11-15.json
note: converted by smithy-to-openapi.py from AWS's Smithy model (roadmap#1001)