cloudenv / server /providers /aws /ec2_api.md
Vishvam10
initial space commit
b404de3
|
Raw History Blame Contribute Delete
40.3 kB

EC2 Service API

Requests use CloudEnvAction: service, operation, and payload (boto3 parameters for the operation).

Operations are enforced by IAM as ec2:<OperationName> (see adapter).

Operations

RunInstances

Boto3 client method: run_instances

Other boto3 parameters (optional): AdditionalInfo, BlockDeviceMappings, CapacityReservationSpecification, ClientToken, CpuOptions, CreditSpecification, DisableApiStop, DisableApiTermination, DryRun, EbsOptimized, ElasticGpuSpecification, ElasticInferenceAccelerators, EnablePrimaryIpv6, EnclaveOptions, HibernationOptions, IamInstanceProfile, ImageId, InstanceInitiatedShutdownBehavior, InstanceMarketOptions, InstanceType, Ipv6AddressCount, Ipv6Addresses, KernelId, KeyName, LaunchTemplate (+17 more)

curl -X POST http://localhost:8000/step \
  -H "Content-Type: application/json" \
  -d @- <<'EOF'
{
  "service": "ec2",
  "operation": "RunInstances",
  "payload": {
    "MaxCount": 0,
    "MinCount": 0
  }
}

DescribeInstances

Boto3 client method: describe_instances

Other boto3 parameters (optional): DryRun, Filters, InstanceIds, MaxResults, NextToken

curl -X POST http://localhost:8000/step \
  -H "Content-Type: application/json" \
  -d @- <<'EOF'
{
  "service": "ec2",
  "operation": "DescribeInstances",
  "payload": {}
}

TerminateInstances

Boto3 client method: terminate_instances

Other boto3 parameters (optional): DryRun, Force, SkipOsShutdown

curl -X POST http://localhost:8000/step \
  -H "Content-Type: application/json" \
  -d @- <<'EOF'
{
  "service": "ec2",
  "operation": "TerminateInstances",
  "payload": {
    "InstanceIds": [
      "example-instanceid"
    ]
  }
}

StopInstances

Boto3 client method: stop_instances

Other boto3 parameters (optional): DryRun, Force, Hibernate, SkipOsShutdown

curl -X POST http://localhost:8000/step \
  -H "Content-Type: application/json" \
  -d @- <<'EOF'
{
  "service": "ec2",
  "operation": "StopInstances",
  "payload": {
    "InstanceIds": [
      "example-instanceid"
    ]
  }
}

StartInstances

Boto3 client method: start_instances

Other boto3 parameters (optional): AdditionalInfo, DryRun

curl -X POST http://localhost:8000/step \
  -H "Content-Type: application/json" \
  -d @- <<'EOF'
{
  "service": "ec2",
  "operation": "StartInstances",
  "payload": {
    "InstanceIds": [
      "example-instanceid"
    ]
  }
}

RebootInstances

Boto3 client method: reboot_instances

Other boto3 parameters (optional): DryRun

curl -X POST http://localhost:8000/step \
  -H "Content-Type: application/json" \
  -d @- <<'EOF'
{
  "service": "ec2",
  "operation": "RebootInstances",
  "payload": {
    "InstanceIds": [
      "example-instanceid"
    ]
  }
}

DescribeImages

Boto3 client method: describe_images

Other boto3 parameters (optional): DryRun, ExecutableUsers, Filters, ImageIds, IncludeDeprecated, IncludeDisabled, MaxResults, NextToken, Owners

curl -X POST http://localhost:8000/step \
  -H "Content-Type: application/json" \
  -d @- <<'EOF'
{
  "service": "ec2",
  "operation": "DescribeImages",
  "payload": {}
}

CreateSecurityGroup

Boto3 client method: create_security_group

Other boto3 parameters (optional): DryRun, TagSpecifications, VpcId

curl -X POST http://localhost:8000/step \
  -H "Content-Type: application/json" \
  -d @- <<'EOF'
{
  "service": "ec2",
  "operation": "CreateSecurityGroup",
  "payload": {
    "Description": "example-string",
    "GroupName": "example-string"
  }
}

DeleteSecurityGroup

Boto3 client method: delete_security_group

Other boto3 parameters (optional): DryRun, GroupId, GroupName

curl -X POST http://localhost:8000/step \
  -H "Content-Type: application/json" \
  -d @- <<'EOF'
{
  "service": "ec2",
  "operation": "DeleteSecurityGroup",
  "payload": {}
}

DescribeSecurityGroups

Boto3 client method: describe_security_groups

Other boto3 parameters (optional): DryRun, Filters, GroupIds, GroupNames, MaxResults, NextToken

curl -X POST http://localhost:8000/step \
  -H "Content-Type: application/json" \
  -d @- <<'EOF'
{
  "service": "ec2",
  "operation": "DescribeSecurityGroups",
  "payload": {}
}

AuthorizeSecurityGroupIngress

Boto3 client method: authorize_security_group_ingress

Other boto3 parameters (optional): CidrIp, DryRun, FromPort, GroupId, GroupName, IpPermissions, IpProtocol, SourceSecurityGroupName, SourceSecurityGroupOwnerId, TagSpecifications, ToPort

curl -X POST http://localhost:8000/step \
  -H "Content-Type: application/json" \
  -d @- <<'EOF'
{
  "service": "ec2",
  "operation": "AuthorizeSecurityGroupIngress",
  "payload": {}
}

RevokeSecurityGroupIngress

Boto3 client method: revoke_security_group_ingress

Other boto3 parameters (optional): CidrIp, DryRun, FromPort, GroupId, GroupName, IpPermissions, IpProtocol, SecurityGroupRuleIds, SourceSecurityGroupName, SourceSecurityGroupOwnerId, ToPort

curl -X POST http://localhost:8000/step \
  -H "Content-Type: application/json" \
  -d @- <<'EOF'
{
  "service": "ec2",
  "operation": "RevokeSecurityGroupIngress",
  "payload": {}
}

AuthorizeSecurityGroupEgress

Boto3 client method: authorize_security_group_egress

Other boto3 parameters (optional): CidrIp, DryRun, FromPort, IpPermissions, IpProtocol, SourceSecurityGroupName, SourceSecurityGroupOwnerId, TagSpecifications, ToPort

curl -X POST http://localhost:8000/step \
  -H "Content-Type: application/json" \
  -d @- <<'EOF'
{
  "service": "ec2",
  "operation": "AuthorizeSecurityGroupEgress",
  "payload": {
    "GroupId": "example-securitygroupid"
  }
}

RevokeSecurityGroupEgress

Boto3 client method: revoke_security_group_egress

Other boto3 parameters (optional): CidrIp, DryRun, FromPort, IpPermissions, IpProtocol, SecurityGroupRuleIds, SourceSecurityGroupName, SourceSecurityGroupOwnerId, ToPort

curl -X POST http://localhost:8000/step \
  -H "Content-Type: application/json" \
  -d @- <<'EOF'
{
  "service": "ec2",
  "operation": "RevokeSecurityGroupEgress",
  "payload": {
    "GroupId": "example-securitygroupid"
  }
}

CreateKeyPair

Boto3 client method: create_key_pair

Other boto3 parameters (optional): DryRun, KeyFormat, KeyType, TagSpecifications

curl -X POST http://localhost:8000/step \
  -H "Content-Type: application/json" \
  -d @- <<'EOF'
{
  "service": "ec2",
  "operation": "CreateKeyPair",
  "payload": {
    "KeyName": "example-string"
  }
}

DeleteKeyPair

Boto3 client method: delete_key_pair

Other boto3 parameters (optional): DryRun, KeyName, KeyPairId

curl -X POST http://localhost:8000/step \
  -H "Content-Type: application/json" \
  -d @- <<'EOF'
{
  "service": "ec2",
  "operation": "DeleteKeyPair",
  "payload": {}
}

DescribeKeyPairs

Boto3 client method: describe_key_pairs

Other boto3 parameters (optional): DryRun, Filters, IncludePublicKey, KeyNames, KeyPairIds

curl -X POST http://localhost:8000/step \
  -H "Content-Type: application/json" \
  -d @- <<'EOF'
{
  "service": "ec2",
  "operation": "DescribeKeyPairs",
  "payload": {}
}

ImportKeyPair

Boto3 client method: import_key_pair

Other boto3 parameters (optional): DryRun, TagSpecifications

curl -X POST http://localhost:8000/step \
  -H "Content-Type: application/json" \
  -d @- <<'EOF'
{
  "service": "ec2",
  "operation": "ImportKeyPair",
  "payload": {
    "KeyName": "example-string",
    "PublicKeyMaterial": "base64-encoded-bytes"
  }
}

CreateVpc

Boto3 client method: create_vpc

Other boto3 parameters (optional): AmazonProvidedIpv6CidrBlock, CidrBlock, DryRun, InstanceTenancy, Ipv4IpamPoolId, Ipv4NetmaskLength, Ipv6CidrBlock, Ipv6CidrBlockNetworkBorderGroup, Ipv6IpamPoolId, Ipv6NetmaskLength, Ipv6Pool, TagSpecifications, VpcEncryptionControl

curl -X POST http://localhost:8000/step \
  -H "Content-Type: application/json" \
  -d @- <<'EOF'
{
  "service": "ec2",
  "operation": "CreateVpc",
  "payload": {}
}

DeleteVpc

Boto3 client method: delete_vpc

Other boto3 parameters (optional): DryRun

curl -X POST http://localhost:8000/step \
  -H "Content-Type: application/json" \
  -d @- <<'EOF'
{
  "service": "ec2",
  "operation": "DeleteVpc",
  "payload": {
    "VpcId": "example-vpcid"
  }
}

DescribeVpcs

Boto3 client method: describe_vpcs

Other boto3 parameters (optional): DryRun, Filters, MaxResults, NextToken, VpcIds

curl -X POST http://localhost:8000/step \
  -H "Content-Type: application/json" \
  -d @- <<'EOF'
{
  "service": "ec2",
  "operation": "DescribeVpcs",
  "payload": {}
}

ModifyVpcAttribute

Boto3 client method: modify_vpc_attribute

Other boto3 parameters (optional): EnableDnsHostnames, EnableDnsSupport, EnableNetworkAddressUsageMetrics

curl -X POST http://localhost:8000/step \
  -H "Content-Type: application/json" \
  -d @- <<'EOF'
{
  "service": "ec2",
  "operation": "ModifyVpcAttribute",
  "payload": {
    "VpcId": "example-vpcid"
  }
}

CreateSubnet

Boto3 client method: create_subnet

Other boto3 parameters (optional): AvailabilityZone, AvailabilityZoneId, CidrBlock, DryRun, Ipv4IpamPoolId, Ipv4NetmaskLength, Ipv6CidrBlock, Ipv6IpamPoolId, Ipv6Native, Ipv6NetmaskLength, OutpostArn, TagSpecifications

curl -X POST http://localhost:8000/step \
  -H "Content-Type: application/json" \
  -d @- <<'EOF'
{
  "service": "ec2",
  "operation": "CreateSubnet",
  "payload": {
    "VpcId": "example-vpcid"
  }
}

DeleteSubnet

Boto3 client method: delete_subnet

Other boto3 parameters (optional): DryRun

curl -X POST http://localhost:8000/step \
  -H "Content-Type: application/json" \
  -d @- <<'EOF'
{
  "service": "ec2",
  "operation": "DeleteSubnet",
  "payload": {
    "SubnetId": "example-subnetid"
  }
}

DescribeSubnets

Boto3 client method: describe_subnets

Other boto3 parameters (optional): DryRun, Filters, MaxResults, NextToken, SubnetIds

curl -X POST http://localhost:8000/step \
  -H "Content-Type: application/json" \
  -d @- <<'EOF'
{
  "service": "ec2",
  "operation": "DescribeSubnets",
  "payload": {}
}

ModifySubnetAttribute

Boto3 client method: modify_subnet_attribute

Other boto3 parameters (optional): AssignIpv6AddressOnCreation, CustomerOwnedIpv4Pool, DisableLniAtDeviceIndex, EnableDns64, EnableLniAtDeviceIndex, EnableResourceNameDnsAAAARecordOnLaunch, EnableResourceNameDnsARecordOnLaunch, MapCustomerOwnedIpOnLaunch, MapPublicIpOnLaunch, PrivateDnsHostnameTypeOnLaunch

curl -X POST http://localhost:8000/step \
  -H "Content-Type: application/json" \
  -d @- <<'EOF'
{
  "service": "ec2",
  "operation": "ModifySubnetAttribute",
  "payload": {
    "SubnetId": "example-subnetid"
  }
}

CreateInternetGateway

Boto3 client method: create_internet_gateway

Other boto3 parameters (optional): DryRun, TagSpecifications

curl -X POST http://localhost:8000/step \
  -H "Content-Type: application/json" \
  -d @- <<'EOF'
{
  "service": "ec2",
  "operation": "CreateInternetGateway",
  "payload": {}
}

DeleteInternetGateway

Boto3 client method: delete_internet_gateway

Other boto3 parameters (optional): DryRun

curl -X POST http://localhost:8000/step \
  -H "Content-Type: application/json" \
  -d @- <<'EOF'
{
  "service": "ec2",
  "operation": "DeleteInternetGateway",
  "payload": {
    "InternetGatewayId": "example-internetgatewayid"
  }
}

DescribeInternetGateways

Boto3 client method: describe_internet_gateways

Other boto3 parameters (optional): DryRun, Filters, InternetGatewayIds, MaxResults, NextToken

curl -X POST http://localhost:8000/step \
  -H "Content-Type: application/json" \
  -d @- <<'EOF'
{
  "service": "ec2",
  "operation": "DescribeInternetGateways",
  "payload": {}
}

AttachInternetGateway

Boto3 client method: attach_internet_gateway

Other boto3 parameters (optional): DryRun

curl -X POST http://localhost:8000/step \
  -H "Content-Type: application/json" \
  -d @- <<'EOF'
{
  "service": "ec2",
  "operation": "AttachInternetGateway",
  "payload": {
    "InternetGatewayId": "example-internetgatewayid",
    "VpcId": "example-vpcid"
  }
}

DetachInternetGateway

Boto3 client method: detach_internet_gateway

Other boto3 parameters (optional): DryRun

curl -X POST http://localhost:8000/step \
  -H "Content-Type: application/json" \
  -d @- <<'EOF'
{
  "service": "ec2",
  "operation": "DetachInternetGateway",
  "payload": {
    "InternetGatewayId": "example-internetgatewayid",
    "VpcId": "example-vpcid"
  }
}

CreateRouteTable

Boto3 client method: create_route_table

Other boto3 parameters (optional): ClientToken, DryRun, TagSpecifications

curl -X POST http://localhost:8000/step \
  -H "Content-Type: application/json" \
  -d @- <<'EOF'
{
  "service": "ec2",
  "operation": "CreateRouteTable",
  "payload": {
    "VpcId": "example-vpcid"
  }
}

DeleteRouteTable

Boto3 client method: delete_route_table

Other boto3 parameters (optional): DryRun

curl -X POST http://localhost:8000/step \
  -H "Content-Type: application/json" \
  -d @- <<'EOF'
{
  "service": "ec2",
  "operation": "DeleteRouteTable",
  "payload": {
    "RouteTableId": "example-routetableid"
  }
}

DescribeRouteTables

Boto3 client method: describe_route_tables

Other boto3 parameters (optional): DryRun, Filters, MaxResults, NextToken, RouteTableIds

curl -X POST http://localhost:8000/step \
  -H "Content-Type: application/json" \
  -d @- <<'EOF'
{
  "service": "ec2",
  "operation": "DescribeRouteTables",
  "payload": {}
}

AssociateRouteTable

Boto3 client method: associate_route_table

Other boto3 parameters (optional): DryRun, GatewayId, PublicIpv4Pool, SubnetId

curl -X POST http://localhost:8000/step \
  -H "Content-Type: application/json" \
  -d @- <<'EOF'
{
  "service": "ec2",
  "operation": "AssociateRouteTable",
  "payload": {
    "RouteTableId": "example-routetableid"
  }
}

DisassociateRouteTable

Boto3 client method: disassociate_route_table

Other boto3 parameters (optional): DryRun

curl -X POST http://localhost:8000/step \
  -H "Content-Type: application/json" \
  -d @- <<'EOF'
{
  "service": "ec2",
  "operation": "DisassociateRouteTable",
  "payload": {
    "AssociationId": "example-routetableassociationid"
  }
}

CreateRoute

Boto3 client method: create_route

Other boto3 parameters (optional): CarrierGatewayId, CoreNetworkArn, DestinationCidrBlock, DestinationIpv6CidrBlock, DestinationPrefixListId, DryRun, EgressOnlyInternetGatewayId, GatewayId, InstanceId, LocalGatewayId, NatGatewayId, NetworkInterfaceId, OdbNetworkArn, TransitGatewayId, VpcEndpointId, VpcPeeringConnectionId

curl -X POST http://localhost:8000/step \
  -H "Content-Type: application/json" \
  -d @- <<'EOF'
{
  "service": "ec2",
  "operation": "CreateRoute",
  "payload": {
    "RouteTableId": "example-routetableid"
  }
}

ReplaceRoute

Boto3 client method: replace_route

Other boto3 parameters (optional): CarrierGatewayId, CoreNetworkArn, DestinationCidrBlock, DestinationIpv6CidrBlock, DestinationPrefixListId, DryRun, EgressOnlyInternetGatewayId, GatewayId, InstanceId, LocalGatewayId, LocalTarget, NatGatewayId, NetworkInterfaceId, OdbNetworkArn, TransitGatewayId, VpcEndpointId, VpcPeeringConnectionId

curl -X POST http://localhost:8000/step \
  -H "Content-Type: application/json" \
  -d @- <<'EOF'
{
  "service": "ec2",
  "operation": "ReplaceRoute",
  "payload": {
    "RouteTableId": "example-routetableid"
  }
}

DeleteRoute

Boto3 client method: delete_route

Other boto3 parameters (optional): DestinationCidrBlock, DestinationIpv6CidrBlock, DestinationPrefixListId, DryRun

curl -X POST http://localhost:8000/step \
  -H "Content-Type: application/json" \
  -d @- <<'EOF'
{
  "service": "ec2",
  "operation": "DeleteRoute",
  "payload": {
    "RouteTableId": "example-routetableid"
  }
}

CreateNetworkInterface

Boto3 client method: create_network_interface

Other boto3 parameters (optional): ClientToken, ConnectionTrackingSpecification, Description, DryRun, EnablePrimaryIpv6, Groups, InterfaceType, Ipv4PrefixCount, Ipv4Prefixes, Ipv6AddressCount, Ipv6Addresses, Ipv6PrefixCount, Ipv6Prefixes, Operator, PrivateIpAddress, PrivateIpAddresses, SecondaryPrivateIpAddressCount, TagSpecifications

curl -X POST http://localhost:8000/step \
  -H "Content-Type: application/json" \
  -d @- <<'EOF'
{
  "service": "ec2",
  "operation": "CreateNetworkInterface",
  "payload": {
    "SubnetId": "example-subnetid"
  }
}

DeleteNetworkInterface

Boto3 client method: delete_network_interface

Other boto3 parameters (optional): DryRun

curl -X POST http://localhost:8000/step \
  -H "Content-Type: application/json" \
  -d @- <<'EOF'
{
  "service": "ec2",
  "operation": "DeleteNetworkInterface",
  "payload": {
    "NetworkInterfaceId": "example-networkinterfaceid"
  }
}

DescribeNetworkInterfaces

Boto3 client method: describe_network_interfaces

Other boto3 parameters (optional): DryRun, Filters, MaxResults, NetworkInterfaceIds, NextToken

curl -X POST http://localhost:8000/step \
  -H "Content-Type: application/json" \
  -d @- <<'EOF'
{
  "service": "ec2",
  "operation": "DescribeNetworkInterfaces",
  "payload": {}
}

AttachNetworkInterface

Boto3 client method: attach_network_interface

Other boto3 parameters (optional): DryRun, EnaQueueCount, EnaSrdSpecification, NetworkCardIndex

curl -X POST http://localhost:8000/step \
  -H "Content-Type: application/json" \
  -d @- <<'EOF'
{
  "service": "ec2",
  "operation": "AttachNetworkInterface",
  "payload": {
    "NetworkInterfaceId": "example-networkinterfaceid",
    "InstanceId": "example-instanceid",
    "DeviceIndex": 0
  }
}

DetachNetworkInterface

Boto3 client method: detach_network_interface

Other boto3 parameters (optional): DryRun, Force

curl -X POST http://localhost:8000/step \
  -H "Content-Type: application/json" \
  -d @- <<'EOF'
{
  "service": "ec2",
  "operation": "DetachNetworkInterface",
  "payload": {
    "AttachmentId": "example-networkinterfaceattachmentid"
  }
}

CreateVpcEndpoint

Boto3 client method: create_vpc_endpoint

Other boto3 parameters (optional): ClientToken, DnsOptions, DryRun, IpAddressType, PolicyDocument, PrivateDnsEnabled, ResourceConfigurationArn, RouteTableIds, SecurityGroupIds, ServiceName, ServiceNetworkArn, ServiceRegion, SubnetConfigurations, SubnetIds, TagSpecifications, VpcEndpointType

curl -X POST http://localhost:8000/step \
  -H "Content-Type: application/json" \
  -d @- <<'EOF'
{
  "service": "ec2",
  "operation": "CreateVpcEndpoint",
  "payload": {
    "VpcId": "example-vpcid"
  }
}

DeleteVpcEndpoints

Boto3 client method: delete_vpc_endpoints

Other boto3 parameters (optional): DryRun

curl -X POST http://localhost:8000/step \
  -H "Content-Type: application/json" \
  -d @- <<'EOF'
{
  "service": "ec2",
  "operation": "DeleteVpcEndpoints",
  "payload": {
    "VpcEndpointIds": [
      "example-vpcendpointid"
    ]
  }
}

DescribeVpcEndpoints

Boto3 client method: describe_vpc_endpoints

Other boto3 parameters (optional): DryRun, Filters, MaxResults, NextToken, VpcEndpointIds

curl -X POST http://localhost:8000/step \
  -H "Content-Type: application/json" \
  -d @- <<'EOF'
{
  "service": "ec2",
  "operation": "DescribeVpcEndpoints",
  "payload": {}
}

DescribeAvailabilityZones

Boto3 client method: describe_availability_zones

Other boto3 parameters (optional): AllAvailabilityZones, DryRun, Filters, ZoneIds, ZoneNames

curl -X POST http://localhost:8000/step \
  -H "Content-Type: application/json" \
  -d @- <<'EOF'
{
  "service": "ec2",
  "operation": "DescribeAvailabilityZones",
  "payload": {}
}

AllocateAddress

Boto3 client method: allocate_address

Other boto3 parameters (optional): Address, CustomerOwnedIpv4Pool, Domain, DryRun, IpamPoolId, NetworkBorderGroup, PublicIpv4Pool, TagSpecifications

curl -X POST http://localhost:8000/step \
  -H "Content-Type: application/json" \
  -d @- <<'EOF'
{
  "service": "ec2",
  "operation": "AllocateAddress",
  "payload": {}
}

ReleaseAddress

Boto3 client method: release_address

Other boto3 parameters (optional): AllocationId, DryRun, NetworkBorderGroup, PublicIp

curl -X POST http://localhost:8000/step \
  -H "Content-Type: application/json" \
  -d @- <<'EOF'
{
  "service": "ec2",
  "operation": "ReleaseAddress",
  "payload": {}
}

AssociateAddress

Boto3 client method: associate_address

Other boto3 parameters (optional): AllocationId, AllowReassociation, DryRun, InstanceId, NetworkInterfaceId, PrivateIpAddress, PublicIp

curl -X POST http://localhost:8000/step \
  -H "Content-Type: application/json" \
  -d @- <<'EOF'
{
  "service": "ec2",
  "operation": "AssociateAddress",
  "payload": {}
}

DisassociateAddress

Boto3 client method: disassociate_address

Other boto3 parameters (optional): AssociationId, DryRun, PublicIp

curl -X POST http://localhost:8000/step \
  -H "Content-Type: application/json" \
  -d @- <<'EOF'
{
  "service": "ec2",
  "operation": "DisassociateAddress",
  "payload": {}
}

DescribeAddresses

Boto3 client method: describe_addresses

Other boto3 parameters (optional): AllocationIds, DryRun, Filters, PublicIps

curl -X POST http://localhost:8000/step \
  -H "Content-Type: application/json" \
  -d @- <<'EOF'
{
  "service": "ec2",
  "operation": "DescribeAddresses",
  "payload": {}
}

CreateTags

Boto3 client method: create_tags

Other boto3 parameters (optional): DryRun

curl -X POST http://localhost:8000/step \
  -H "Content-Type: application/json" \
  -d @- <<'EOF'
{
  "service": "ec2",
  "operation": "CreateTags",
  "payload": {
    "Resources": [
      "example-taggableresourceid"
    ],
    "Tags": [
      {}
    ]
  }
}

DeleteTags

Boto3 client method: delete_tags

Other boto3 parameters (optional): DryRun, Tags

curl -X POST http://localhost:8000/step \
  -H "Content-Type: application/json" \
  -d @- <<'EOF'
{
  "service": "ec2",
  "operation": "DeleteTags",
  "payload": {
    "Resources": [
      "example-taggableresourceid"
    ]
  }
}

DescribeTags

Boto3 client method: describe_tags

Other boto3 parameters (optional): DryRun, Filters, MaxResults, NextToken

curl -X POST http://localhost:8000/step \
  -H "Content-Type: application/json" \
  -d @- <<'EOF'
{
  "service": "ec2",
  "operation": "DescribeTags",
  "payload": {}
}

CreateNatGateway

Boto3 client method: create_nat_gateway

Other boto3 parameters (optional): AllocationId, AvailabilityMode, AvailabilityZoneAddresses, ClientToken, ConnectivityType, DryRun, PrivateIpAddress, SecondaryAllocationIds, SecondaryPrivateIpAddressCount, SecondaryPrivateIpAddresses, SubnetId, TagSpecifications, VpcId

curl -X POST http://localhost:8000/step \
  -H "Content-Type: application/json" \
  -d @- <<'EOF'
{
  "service": "ec2",
  "operation": "CreateNatGateway",
  "payload": {}
}

DescribeNatGateways

Boto3 client method: describe_nat_gateways

Other boto3 parameters (optional): DryRun, Filter, MaxResults, NatGatewayIds, NextToken

curl -X POST http://localhost:8000/step \
  -H "Content-Type: application/json" \
  -d @- <<'EOF'
{
  "service": "ec2",
  "operation": "DescribeNatGateways",
  "payload": {}
}

DeleteNatGateway

Boto3 client method: delete_nat_gateway

Other boto3 parameters (optional): DryRun

curl -X POST http://localhost:8000/step \
  -H "Content-Type: application/json" \
  -d @- <<'EOF'
{
  "service": "ec2",
  "operation": "DeleteNatGateway",
  "payload": {
    "NatGatewayId": "example-natgatewayid"
  }
}

CreateNetworkAcl

Boto3 client method: create_network_acl

Other boto3 parameters (optional): ClientToken, DryRun, TagSpecifications

curl -X POST http://localhost:8000/step \
  -H "Content-Type: application/json" \
  -d @- <<'EOF'
{
  "service": "ec2",
  "operation": "CreateNetworkAcl",
  "payload": {
    "VpcId": "example-vpcid"
  }
}

DescribeNetworkAcls

Boto3 client method: describe_network_acls

Other boto3 parameters (optional): DryRun, Filters, MaxResults, NetworkAclIds, NextToken

curl -X POST http://localhost:8000/step \
  -H "Content-Type: application/json" \
  -d @- <<'EOF'
{
  "service": "ec2",
  "operation": "DescribeNetworkAcls",
  "payload": {}
}

DeleteNetworkAcl

Boto3 client method: delete_network_acl

Other boto3 parameters (optional): DryRun

curl -X POST http://localhost:8000/step \
  -H "Content-Type: application/json" \
  -d @- <<'EOF'
{
  "service": "ec2",
  "operation": "DeleteNetworkAcl",
  "payload": {
    "NetworkAclId": "example-networkaclid"
  }
}

CreateNetworkAclEntry

Boto3 client method: create_network_acl_entry

Other boto3 parameters (optional): CidrBlock, DryRun, IcmpTypeCode, Ipv6CidrBlock, PortRange

curl -X POST http://localhost:8000/step \
  -H "Content-Type: application/json" \
  -d @- <<'EOF'
{
  "service": "ec2",
  "operation": "CreateNetworkAclEntry",
  "payload": {
    "NetworkAclId": "example-networkaclid",
    "RuleNumber": 0,
    "Protocol": "example-string",
    "RuleAction": "allow",
    "Egress": false
  }
}

DeleteNetworkAclEntry

Boto3 client method: delete_network_acl_entry

Other boto3 parameters (optional): DryRun

curl -X POST http://localhost:8000/step \
  -H "Content-Type: application/json" \
  -d @- <<'EOF'
{
  "service": "ec2",
  "operation": "DeleteNetworkAclEntry",
  "payload": {
    "NetworkAclId": "example-networkaclid",
    "RuleNumber": 0,
    "Egress": false
  }
}

ReplaceNetworkAclEntry

Boto3 client method: replace_network_acl_entry

Other boto3 parameters (optional): CidrBlock, DryRun, IcmpTypeCode, Ipv6CidrBlock, PortRange

curl -X POST http://localhost:8000/step \
  -H "Content-Type: application/json" \
  -d @- <<'EOF'
{
  "service": "ec2",
  "operation": "ReplaceNetworkAclEntry",
  "payload": {
    "NetworkAclId": "example-networkaclid",
    "RuleNumber": 0,
    "Protocol": "example-string",
    "RuleAction": "allow",
    "Egress": false
  }
}

ReplaceNetworkAclAssociation

Boto3 client method: replace_network_acl_association

Other boto3 parameters (optional): DryRun

curl -X POST http://localhost:8000/step \
  -H "Content-Type: application/json" \
  -d @- <<'EOF'
{
  "service": "ec2",
  "operation": "ReplaceNetworkAclAssociation",
  "payload": {
    "AssociationId": "example-networkaclassociationid",
    "NetworkAclId": "example-networkaclid"
  }
}

CreateFlowLogs

Boto3 client method: create_flow_logs

Other boto3 parameters (optional): ClientToken, DeliverCrossAccountRole, DeliverLogsPermissionArn, DestinationOptions, DryRun, LogDestination, LogDestinationType, LogFormat, LogGroupName, MaxAggregationInterval, TagSpecifications, TrafficType

curl -X POST http://localhost:8000/step \
  -H "Content-Type: application/json" \
  -d @- <<'EOF'
{
  "service": "ec2",
  "operation": "CreateFlowLogs",
  "payload": {
    "ResourceIds": [
      "example-flowlogresourceid"
    ],
    "ResourceType": "VPC"
  }
}

DescribeFlowLogs

Boto3 client method: describe_flow_logs

Other boto3 parameters (optional): DryRun, Filter, FlowLogIds, MaxResults, NextToken

curl -X POST http://localhost:8000/step \
  -H "Content-Type: application/json" \
  -d @- <<'EOF'
{
  "service": "ec2",
  "operation": "DescribeFlowLogs",
  "payload": {}
}

DeleteFlowLogs

Boto3 client method: delete_flow_logs

Other boto3 parameters (optional): DryRun

curl -X POST http://localhost:8000/step \
  -H "Content-Type: application/json" \
  -d @- <<'EOF'
{
  "service": "ec2",
  "operation": "DeleteFlowLogs",
  "payload": {
    "FlowLogIds": [
      "example-vpcflowlogid"
    ]
  }
}

CreateVpcPeeringConnection

Boto3 client method: create_vpc_peering_connection

Other boto3 parameters (optional): DryRun, PeerOwnerId, PeerRegion, PeerVpcId, TagSpecifications

curl -X POST http://localhost:8000/step \
  -H "Content-Type: application/json" \
  -d @- <<'EOF'
{
  "service": "ec2",
  "operation": "CreateVpcPeeringConnection",
  "payload": {
    "VpcId": "example-vpcid"
  }
}

AcceptVpcPeeringConnection

Boto3 client method: accept_vpc_peering_connection

Other boto3 parameters (optional): DryRun

curl -X POST http://localhost:8000/step \
  -H "Content-Type: application/json" \
  -d @- <<'EOF'
{
  "service": "ec2",
  "operation": "AcceptVpcPeeringConnection",
  "payload": {
    "VpcPeeringConnectionId": "example-vpcpeeringconnectionidwithresolver"
  }
}

DescribeVpcPeeringConnections

Boto3 client method: describe_vpc_peering_connections

Other boto3 parameters (optional): DryRun, Filters, MaxResults, NextToken, VpcPeeringConnectionIds

curl -X POST http://localhost:8000/step \
  -H "Content-Type: application/json" \
  -d @- <<'EOF'
{
  "service": "ec2",
  "operation": "DescribeVpcPeeringConnections",
  "payload": {}
}

DeleteVpcPeeringConnection

Boto3 client method: delete_vpc_peering_connection

Other boto3 parameters (optional): DryRun

curl -X POST http://localhost:8000/step \
  -H "Content-Type: application/json" \
  -d @- <<'EOF'
{
  "service": "ec2",
  "operation": "DeleteVpcPeeringConnection",
  "payload": {
    "VpcPeeringConnectionId": "example-vpcpeeringconnectionid"
  }
}

CreateDhcpOptions

Boto3 client method: create_dhcp_options

Other boto3 parameters (optional): DryRun, TagSpecifications

curl -X POST http://localhost:8000/step \
  -H "Content-Type: application/json" \
  -d @- <<'EOF'
{
  "service": "ec2",
  "operation": "CreateDhcpOptions",
  "payload": {
    "DhcpConfigurations": [
      {}
    ]
  }
}

AssociateDhcpOptions

Boto3 client method: associate_dhcp_options

Other boto3 parameters (optional): DryRun

curl -X POST http://localhost:8000/step \
  -H "Content-Type: application/json" \
  -d @- <<'EOF'
{
  "service": "ec2",
  "operation": "AssociateDhcpOptions",
  "payload": {
    "DhcpOptionsId": "example-defaultingdhcpoptionsid",
    "VpcId": "example-vpcid"
  }
}

DescribeDhcpOptions

Boto3 client method: describe_dhcp_options

Other boto3 parameters (optional): DhcpOptionsIds, DryRun, Filters, MaxResults, NextToken

curl -X POST http://localhost:8000/step \
  -H "Content-Type: application/json" \
  -d @- <<'EOF'
{
  "service": "ec2",
  "operation": "DescribeDhcpOptions",
  "payload": {}
}

DeleteDhcpOptions

Boto3 client method: delete_dhcp_options

Other boto3 parameters (optional): DryRun

curl -X POST http://localhost:8000/step \
  -H "Content-Type: application/json" \
  -d @- <<'EOF'
{
  "service": "ec2",
  "operation": "DeleteDhcpOptions",
  "payload": {
    "DhcpOptionsId": "example-dhcpoptionsid"
  }
}

CreateEgressOnlyInternetGateway

Boto3 client method: create_egress_only_internet_gateway

Other boto3 parameters (optional): ClientToken, DryRun, TagSpecifications

curl -X POST http://localhost:8000/step \
  -H "Content-Type: application/json" \
  -d @- <<'EOF'
{
  "service": "ec2",
  "operation": "CreateEgressOnlyInternetGateway",
  "payload": {
    "VpcId": "example-vpcid"
  }
}

DescribeEgressOnlyInternetGateways

Boto3 client method: describe_egress_only_internet_gateways

Other boto3 parameters (optional): DryRun, EgressOnlyInternetGatewayIds, Filters, MaxResults, NextToken

curl -X POST http://localhost:8000/step \
  -H "Content-Type: application/json" \
  -d @- <<'EOF'
{
  "service": "ec2",
  "operation": "DescribeEgressOnlyInternetGateways",
  "payload": {}
}

DeleteEgressOnlyInternetGateway

Boto3 client method: delete_egress_only_internet_gateway

Other boto3 parameters (optional): DryRun

curl -X POST http://localhost:8000/step \
  -H "Content-Type: application/json" \
  -d @- <<'EOF'
{
  "service": "ec2",
  "operation": "DeleteEgressOnlyInternetGateway",
  "payload": {
    "EgressOnlyInternetGatewayId": "example-egressonlyinternetgatewayid"
  }
}

CreateVolume

Boto3 client method: create_volume

Other boto3 parameters (optional): AvailabilityZone, AvailabilityZoneId, ClientToken, DryRun, Encrypted, Iops, KmsKeyId, MultiAttachEnabled, Operator, OutpostArn, Size, SnapshotId, TagSpecifications, Throughput, VolumeInitializationRate, VolumeType

curl -X POST http://localhost:8000/step \
  -H "Content-Type: application/json" \
  -d @- <<'EOF'
{
  "service": "ec2",
  "operation": "CreateVolume",
  "payload": {}
}

DeleteVolume

Boto3 client method: delete_volume

Other boto3 parameters (optional): DryRun

curl -X POST http://localhost:8000/step \
  -H "Content-Type: application/json" \
  -d @- <<'EOF'
{
  "service": "ec2",
  "operation": "DeleteVolume",
  "payload": {
    "VolumeId": "example-volumeid"
  }
}

DescribeVolumes

Boto3 client method: describe_volumes

Other boto3 parameters (optional): DryRun, Filters, MaxResults, NextToken, VolumeIds

curl -X POST http://localhost:8000/step \
  -H "Content-Type: application/json" \
  -d @- <<'EOF'
{
  "service": "ec2",
  "operation": "DescribeVolumes",
  "payload": {}
}

DescribeVolumeStatus

Boto3 client method: describe_volume_status

Other boto3 parameters (optional): DryRun, Filters, MaxResults, NextToken, VolumeIds

curl -X POST http://localhost:8000/step \
  -H "Content-Type: application/json" \
  -d @- <<'EOF'
{
  "service": "ec2",
  "operation": "DescribeVolumeStatus",
  "payload": {}
}

AttachVolume

Boto3 client method: attach_volume

Other boto3 parameters (optional): DryRun, EbsCardIndex

curl -X POST http://localhost:8000/step \
  -H "Content-Type: application/json" \
  -d @- <<'EOF'
{
  "service": "ec2",
  "operation": "AttachVolume",
  "payload": {
    "Device": "example-string",
    "InstanceId": "example-instanceid",
    "VolumeId": "example-volumeid"
  }
}

DetachVolume

Boto3 client method: detach_volume

Other boto3 parameters (optional): Device, DryRun, Force, InstanceId

curl -X POST http://localhost:8000/step \
  -H "Content-Type: application/json" \
  -d @- <<'EOF'
{
  "service": "ec2",
  "operation": "DetachVolume",
  "payload": {
    "VolumeId": "example-volumeidwithresolver"
  }
}

ModifyVolume

Boto3 client method: modify_volume

Other boto3 parameters (optional): DryRun, Iops, MultiAttachEnabled, Size, Throughput, VolumeType

curl -X POST http://localhost:8000/step \
  -H "Content-Type: application/json" \
  -d @- <<'EOF'
{
  "service": "ec2",
  "operation": "ModifyVolume",
  "payload": {
    "VolumeId": "example-volumeid"
  }
}

DescribeVolumesModifications

Boto3 client method: describe_volumes_modifications

Other boto3 parameters (optional): DryRun, Filters, MaxResults, NextToken, VolumeIds

curl -X POST http://localhost:8000/step \
  -H "Content-Type: application/json" \
  -d @- <<'EOF'
{
  "service": "ec2",
  "operation": "DescribeVolumesModifications",
  "payload": {}
}

EnableVolumeIO

Boto3 client method: enable_volume_io

Other boto3 parameters (optional): DryRun

curl -X POST http://localhost:8000/step \
  -H "Content-Type: application/json" \
  -d @- <<'EOF'
{
  "service": "ec2",
  "operation": "EnableVolumeIO",
  "payload": {
    "VolumeId": "example-volumeid"
  }
}

ModifyVolumeAttribute

Boto3 client method: modify_volume_attribute

Other boto3 parameters (optional): AutoEnableIO, DryRun

curl -X POST http://localhost:8000/step \
  -H "Content-Type: application/json" \
  -d @- <<'EOF'
{
  "service": "ec2",
  "operation": "ModifyVolumeAttribute",
  "payload": {
    "VolumeId": "example-volumeid"
  }
}

DescribeVolumeAttribute

Boto3 client method: describe_volume_attribute

Other boto3 parameters (optional): DryRun

curl -X POST http://localhost:8000/step \
  -H "Content-Type: application/json" \
  -d @- <<'EOF'
{
  "service": "ec2",
  "operation": "DescribeVolumeAttribute",
  "payload": {
    "Attribute": "autoEnableIO",
    "VolumeId": "example-volumeid"
  }
}

CreateSnapshot

Boto3 client method: create_snapshot

Other boto3 parameters (optional): Description, DryRun, Location, OutpostArn, TagSpecifications

curl -X POST http://localhost:8000/step \
  -H "Content-Type: application/json" \
  -d @- <<'EOF'
{
  "service": "ec2",
  "operation": "CreateSnapshot",
  "payload": {
    "VolumeId": "example-volumeid"
  }
}

DeleteSnapshot

Boto3 client method: delete_snapshot

Other boto3 parameters (optional): DryRun

curl -X POST http://localhost:8000/step \
  -H "Content-Type: application/json" \
  -d @- <<'EOF'
{
  "service": "ec2",
  "operation": "DeleteSnapshot",
  "payload": {
    "SnapshotId": "example-snapshotid"
  }
}

DescribeSnapshots

Boto3 client method: describe_snapshots

Other boto3 parameters (optional): DryRun, Filters, MaxResults, NextToken, OwnerIds, RestorableByUserIds, SnapshotIds

curl -X POST http://localhost:8000/step \
  -H "Content-Type: application/json" \
  -d @- <<'EOF'
{
  "service": "ec2",
  "operation": "DescribeSnapshots",
  "payload": {}
}

CopySnapshot

Boto3 client method: copy_snapshot

Other boto3 parameters (optional): CompletionDurationMinutes, Description, DestinationAvailabilityZone, DestinationOutpostArn, DestinationRegion, DryRun, Encrypted, KmsKeyId, PresignedUrl, TagSpecifications

curl -X POST http://localhost:8000/step \
  -H "Content-Type: application/json" \
  -d @- <<'EOF'
{
  "service": "ec2",
  "operation": "CopySnapshot",
  "payload": {
    "SourceRegion": "example-string",
    "SourceSnapshotId": "example-string"
  }
}

ModifySnapshotAttribute

Boto3 client method: modify_snapshot_attribute

Other boto3 parameters (optional): Attribute, CreateVolumePermission, DryRun, GroupNames, OperationType, UserIds

curl -X POST http://localhost:8000/step \
  -H "Content-Type: application/json" \
  -d @- <<'EOF'
{
  "service": "ec2",
  "operation": "ModifySnapshotAttribute",
  "payload": {
    "SnapshotId": "example-snapshotid"
  }
}

DescribeSnapshotAttribute

Boto3 client method: describe_snapshot_attribute

Other boto3 parameters (optional): DryRun

curl -X POST http://localhost:8000/step \
  -H "Content-Type: application/json" \
  -d @- <<'EOF'
{
  "service": "ec2",
  "operation": "DescribeSnapshotAttribute",
  "payload": {
    "Attribute": "productCodes",
    "SnapshotId": "example-snapshotid"
  }
}