Amazon EC2 · Arazzo Workflow

Amazon EC2 Place an Instance in an Availability Zone

Version 1.0.0

Describe regions and availability zones, then launch an instance in a chosen zone.

1 workflow 2 source APIs 1 provider
View Spec View on GitHub Cloud ComputingComputeInfrastructure-as-a-ServiceInfrastructureVirtual MachinesArazzoWorkflows

Provider

amazon-ec2

Workflows

place-instance-in-zone
Survey regions and zones, then launch an instance.
Chains DescribeRegions, DescribeAvailabilityZones, and RunInstances so a placement decision is informed by live region and zone data before launch.
3 steps inputs: imageId, instanceType, subnetId outputs: instanceId
1
listRegions
List the regions enabled for the account.
2
listZones
List the availability zones in the current region.
3
launchInZone
Launch an instance into the selected placement.

Source API Descriptions

Arazzo Workflow Specification

Raw ↑
arazzo: 1.0.1
info:
  title: Amazon EC2 Place an Instance in an Availability Zone
  summary: Describe regions and availability zones, then launch an instance in a chosen zone.
  description: >-
    Picks a placement target and launches into it. The workflow lists the
    enabled regions, lists the availability zones available in the current
    region, and then launches an instance using the supplied AMI and instance
    type. Every step spells out its request inline using the Amazon EC2 query
    protocol (Action and Version parameters) so the flow can be read and
    executed without opening the underlying OpenAPI description.
  version: 1.0.0
sourceDescriptions:
- name: instancesApi
  url: ../openapi/amazon-ec2-instances-api-openapi.yml
  type: openapi
- name: regionsApi
  url: ../openapi/amazon-ec2-regions-api-openapi.yml
  type: openapi
workflows:
- workflowId: place-instance-in-zone
  summary: Survey regions and zones, then launch an instance.
  description: >-
    Chains DescribeRegions, DescribeAvailabilityZones, and RunInstances so a
    placement decision is informed by live region and zone data before launch.
  inputs:
    type: object
    required:
    - imageId
    - instanceType
    properties:
      imageId:
        type: string
        description: The AMI ID to launch the instance from.
      instanceType:
        type: string
        description: The EC2 instance type to launch.
      subnetId:
        type: string
        description: Optional subnet ID identifying the target zone placement.
  steps:
  - stepId: listRegions
    description: List the regions enabled for the account.
    operationId: describeRegions
    parameters:
    - name: Action
      in: query
      value: DescribeRegions
    - name: Version
      in: query
      value: '2016-11-15'
    successCriteria:
    - condition: $statusCode == 200
    outputs:
      regionsStatus: $statusCode
  - stepId: listZones
    description: List the availability zones in the current region.
    operationId: describeAvailabilityZones
    parameters:
    - name: Action
      in: query
      value: DescribeAvailabilityZones
    - name: Version
      in: query
      value: '2016-11-15'
    successCriteria:
    - condition: $statusCode == 200
    outputs:
      zonesStatus: $statusCode
  - stepId: launchInZone
    description: Launch an instance into the selected placement.
    operationId: runInstances
    parameters:
    - name: Action
      in: query
      value: RunInstances
    - name: Version
      in: query
      value: '2016-11-15'
    - name: ImageId
      in: query
      value: $inputs.imageId
    - name: InstanceType
      in: query
      value: $inputs.instanceType
    - name: MinCount
      in: query
      value: 1
    - name: MaxCount
      in: query
      value: 1
    - name: SubnetId
      in: query
      value: $inputs.subnetId
    successCriteria:
    - condition: $statusCode == 200
    outputs:
      instanceId: $response.body#/instances/0/instanceId
  outputs:
    instanceId: $steps.launchInZone.outputs.instanceId

Work with this as data

Every workflow here is available over the APIs.io API and to AI agents over MCP.

MCP server

One button, every client — Claude, Cursor, VS Code and the rest.

https://apis.io/mcp

Tools for arazzo workflows

4 MCP tools reach this
  • find_arazzoBrowse and filter every workflow in the catalog.
  • 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.
All 92 tools →

Call it yourself

curl for this page
This workflow
curl "https://apis.io/api/v1/arazzo/amazon-ec2-place-instance-in-zone-workflow"
All arazzo workflows
curl "https://apis.io/api/v1/arazzo?limit=25"

Discovery needs no key. Ratings and market analysis are Pro.

Get an API 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.