Volumez Orchestrator API

REST API for the Volumez orchestrator — create and modify volumes from declarative policies, plan and auto-provision infrastructure, manage media and nodes, take and roll back snapshots, attach volumes to nodes, publish NFS/exports, configure networks and connectivities, watch asynchronous jobs and alerts, and administer tenants, users, roles and cloud-provider credentials. 124 operations over 95 paths, described by a first-party OpenAPI 3.0.1 document Volumez publishes inside its generated Go client. Authenticated with a JWT bearer token in the `authorization` header, backed by an AWS Cognito user pool.

Operations 218

GET /volumes Get a list of volumes #
OPTIONS /volumes
POST /volumes Create a new volume #
OPTIONS /volumes/plan
POST /volumes/plan check if volumes can be created #
OPTIONS /volumes/snapshot
POST /volumes/snapshot Create a new snapshot for given consistency group #
GET /volumes/snapshot/{snapshot_group_name} List of snapshots group #
OPTIONS /volumes/snapshot/{snapshot_group_name}
DELETE /volumes/{volume} Delete a volume #
GET /volumes/{volume} Get the properties of a volume #
OPTIONS /volumes/{volume}
PATCH /volumes/{volume} Modify a volume #
GET /volumes/{volume}/describe describe existing volume #
OPTIONS /volumes/{volume}/describe
OPTIONS /volumes/{volume}/recover
POST /volumes/{volume}/recover Initiate recover on volume #
GET /volumes/{volume}/snapshots Get a list of snapshots #
OPTIONS /volumes/{volume}/snapshots
POST /volumes/{volume}/snapshots Create a new snapshot #
DELETE /volumes/{volume}/snapshots/{snapshot} Delete a snapshot #
GET /volumes/{volume}/snapshots/{snapshot} Get the properties of a snapshot #
OPTIONS /volumes/{volume}/snapshots/{snapshot}
PATCH /volumes/{volume}/snapshots/{snapshot} Modify a snapshot #
OPTIONS /volumes/{volume}/snapshots/{snapshot}/rollback
PATCH /volumes/{volume}/snapshots/{snapshot}/rollback Roll back to snapshot #
GET /associations Get a list of associations #
OPTIONS /associations
POST /associations Create association #
DELETE /associations/{association} Delete an association #
OPTIONS /associations/{association}
PATCH /associations/{association} Association modify #
GET /exports/ Get a list of associations #
OPTIONS /exports/
POST /exports/ Create export #
DELETE /exports/{export} Delete an export #
OPTIONS /exports/{export}
PATCH /exports/{export} Modify an export #
GET /exports/{export}/connect-script Retruns commands to connect to export #
OPTIONS /exports/{export}/connect-script
OPTIONS /autoprovisionvolumes
POST /autoprovisionvolumes Create a new auto provisioned volume #
GET /snapshots Get a list of all snapshots #
OPTIONS /snapshots
GET /attachments Get a list of all attachments #
OPTIONS /attachments
GET /volumes/{volume}/attachments Get a list of attachments for a given volume #
OPTIONS /volumes/{volume}/attachments
GET /volumes/{volume}/snapshots/{snapshot}/attachments Get a list of attachments for a given volume and snapshot #
OPTIONS /volumes/{volume}/snapshots/{snapshot}/attachments
POST /volumes/{volume}/snapshots/{snapshot}/attachments Create a new attachment #
DELETE /volumes/{volume}/snapshots/{snapshot}/attachments/{node} Delete an attachment #
GET /volumes/{volume}/snapshots/{snapshot}/attachments/{node} Get the properties of an attachment #
OPTIONS /volumes/{volume}/snapshots/{snapshot}/attachments/{node}
PATCH /volumes/{volume}/snapshots/{snapshot}/attachments/{node} Modify an attachment #
GET /nodes Get a list of nodes #
OPTIONS /nodes
OPTIONS /nodes/tags/{node}
PATCH /nodes/tags/{node} Set the tags of a node #
DELETE /nodes/{node} Delete a node #
GET /nodes/{node} Get the properties of a node #
OPTIONS /nodes/{node}
OPTIONS /nodes/{node}/hw
POST /nodes/{node}/hw Node hardware scan #
OPTIONS /nodes/{node}/drain
POST /nodes/{node}/drain Node drain #
GET /nodes/{node}/describe Node describe #
OPTIONS /nodes/{node}/describe
OPTIONS /nodes/upgrade/{node}
POST /nodes/upgrade/{node} performing node version upgrade #
GET /policies Get a list of policies #
OPTIONS /policies
POST /policies Create a new policy #
DELETE /policies/{policy} Delete a policy #
GET /policies/{policy} Get the properties of a policy #
OPTIONS /policies/{policy}
PATCH /policies/{policy} Modify a policy #
GET /policies/{policy}/volumes Get the properties of a policy #
OPTIONS /policies/{policy}/volumes
GET /policies/{policy}/size/{size}/zone/{zone} Show policy volume create plan #
OPTIONS /policies/{policy}/size/{size}/zone/{zone}
GET /networks Get a list of networks #
OPTIONS /networks
POST /networks Create a new network #
DELETE /networks/{network} Delete a network #
GET /networks/{network} Get the properties of a network #
OPTIONS /networks/{network}
PATCH /networks/{network} Modify a network #
GET /jobs Get a list of jobs #
OPTIONS /jobs
DELETE /jobs/{job} Delete a job #
GET /jobs/{job} Get the properties of a job #
OPTIONS /jobs/{job}
GET /media Get a list of media #
OPTIONS /media
DELETE /media/{media} Delete a media #
GET /media/{media} Get the properties of a media #
OPTIONS /media/{media}
OPTIONS /media/{media}/assign
PATCH /media/{media}/assign Assign media #
OPTIONS /media/{media}/unassign
PATCH /media/{media}/unassign Unassign media #
OPTIONS /media/{media}/profile
PATCH /media/{media}/profile Modify a media profile #
OPTIONS /media/{media}/drain
POST /media/{media}/drain Media drain #
GET /virtualmedia Get a list of virtual media #
OPTIONS /virtualmedia
POST /virtualmedia Create (virtual) media #
DELETE /virtualmedia/{media} Delete virtual media #
OPTIONS /virtualmedia/{media}
GET /connectivities Get a list of connectivities #
OPTIONS /connectivities
POST /connectivities Create a new connectivity #
DELETE /connectivities/{connectivity} Delete a connectivity #
GET /connectivities/{connectivity} Get the properties of a connectivity #
OPTIONS /connectivities/{connectivity}
PATCH /connectivities/{connectivity} Modify a connectivity #
OPTIONS /connectivities/test
POST /connectivities/test Test connectivity #
GET /capacitygroups Get available capacity groups #
OPTIONS /capacitygroups
GET /version Get version of sio #
OPTIONS /version
GET /alerts Get a list of alerts #
OPTIONS /alerts
OPTIONS /alerts/{alert}/acknowledge
POST /alerts/{alert}/acknowledge Acknowledge a pending alert #
GET /system/features #
OPTIONS /system/features
GET /system/machineinfo get system info #
OPTIONS /system/machineinfo
OPTIONS /charts
OPTIONS /charts/{proxy+}
GET /log/{tenantid}/{logfile}
OPTIONS /log/{tenantid}/{logfile}
GET /tenant-cloud-resources/role Get All Tenant roles #
OPTIONS /tenant-cloud-resources/role
POST /tenant-cloud-resources/role Create tenant cloud role #
GET /tenant-cloud-resources/vm/zones Get cloud provider zones for requested region #
OPTIONS /tenant-cloud-resources/vm/zones
DELETE /tenant-cloud-resources/{cloudProviderAccountId}/role Delete tenant role resource by the given cloudProviderAccountId query param #
OPTIONS /tenant-cloud-resources/{cloudProviderAccountId}/role
PUT /tenant-cloud-resources/{cloudProviderAccountId}/role Update tenant cloud role for the given cloudProviderAccountId #
GET /tenant-cloud-resources/{cloudProviderAccountId}/vm/vpcs Get all tenant's cloud VM's available VPCs #
OPTIONS /tenant-cloud-resources/{cloudProviderAccountId}/vm/vpcs
GET /tenant-cloud-resources/{cloudProviderAccountId}/vm/{region}/metadata/{nodeId} Get tenant's cloud VM' metadata by region #
OPTIONS /tenant-cloud-resources/{cloudProviderAccountId}/vm/{region}/metadata/{nodeId}
GET /tenant-cloud-resources/{cloudProviderAccountId}/vm/{region}/vpcs Get tenant's cloud VM's available VPCs by region #
OPTIONS /tenant-cloud-resources/{cloudProviderAccountId}/vm/{region}/vpcs
OPTIONS /infra-planner/create-infra-plan
POST /infra-planner/create-infra-plan #
OPTIONS /infra-planner/create-infra-plan/public
POST /infra-planner/create-infra-plan/public #
OPTIONS /infra-planner/provider-pricing-info
POST /infra-planner/provider-pricing-info #
OPTIONS /provision
POST /provision Volumez connector provisioning #
OPTIONS /signup
POST /signup Create Tenant's first user #
OPTIONS /signout
POST /signout Signs out user from all devices #
OPTIONS /signin
POST /signin User SignIn #
GET /tenant/user Get user details #
OPTIONS /tenant/user
POST /tenant/user Create Tenant's additional user #
OPTIONS /tenant/user/requestchangepassword
POST /tenant/user/requestchangepassword Request change client password #
OPTIONS /tenant/user/changepassword
POST /tenant/user/changepassword Change client password #
OPTIONS /tenant/user/changepasswordloggedin
POST /tenant/user/changepasswordloggedin Change clients password when user is logged in #
GET /tenant/user/confirmation Confirm user signup #
OPTIONS /tenant/user/confirmation
OPTIONS /add-user
POST /add-user Add user to tenant group users #
OPTIONS /disable-user/{email}
POST /disable-user/{email} disable user #
OPTIONS /enable-user/{email}
POST /enable-user/{email} enable user #
OPTIONS /invite-user/{email}
POST /invite-user/{email} invite a user to join tenant (send add user signup email #
GET /users/{tenantId} List all tenant group users #
OPTIONS /users/{tenantId}
GET /azuremarketplace/subscription get subscription #
OPTIONS /azuremarketplace/subscription
OPTIONS /tenant/refreshtoken
POST /tenant/refreshtoken #
GET /tenant/token #
OPTIONS /tenant/token
GET /tenant/tenantid #
OPTIONS /tenant/tenantid
DELETE /tenant/{tenantID}/tenanthosts/{tenantHost} #
OPTIONS /tenant/{tenantID}/tenanthosts/{tenantHost}
GET /tenant/tenanthost/credentials #
OPTIONS /tenant/tenanthost/credentials
GET /tenant/tenanthost #
OPTIONS /tenant/tenanthost
GET /tenant/apiaccess/credentials/refresh #
OPTIONS /tenant/apiaccess/credentials/refresh
DELETE /sso/azure/mapping Delete Azure SSO Mapping #
GET /sso/azure/mapping Get Azure SSO Mapping #
OPTIONS /sso/azure/mapping
PUT /sso/azure/mapping Put Azure SSO Mapping #
GET /sso/callback/{userPoolID}/{applicationClientId} Handle SSO callback #
OPTIONS /sso/callback/{userPoolID}/{applicationClientId}
GET /tenant-settings Get tenant settings #
OPTIONS /tenant-settings
PUT /tenant-settings Modify tenant settings #
OPTIONS /tenant-settings/reset
PATCH /tenant-settings/reset Reset tenant settings #
GET /roles/{tenantId}/{userId} Get all user roles #
OPTIONS /roles/{tenantId}/{userId}
GET /roles Get all tenant roles #
OPTIONS /roles
OPTIONS /role/{userId}/{roleId}
PATCH /role/{userId}/{roleId} Update user role #

Work with this as data

Every API 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 apis

7 MCP tools reach this
  • 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.
All 92 tools →

Call it yourself

curl for this page
This API
curl "https://apis.io/api/v1/apis/volumez-orchestrator-api"
All apis
curl "https://apis.io/api/v1/apis?limit=25"

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

Get an API key

Free tier, no email required.

A second provider on the same verified email joins the account you already have.

OpenAPI Specification

volumez-orchestrator-api-openapi.yaml Raw ↑
openapi: 3.0.1
info:
  description: Volumez orchestrator API
  title: Volumez API
  version: 1.0.0 - 8d1ee8c4
  x-squire-version: 1.54.0
servers:
- url: https://api.dev.volumez.com
tags:
- description: ""
  name: Volumes
- description: ""
  name: AutoProvisionVolumes
- description: ""
  name: Nodes
- description: "Policies allow you to declare the desired characteristics of volumes\
    \ you will later create. Policies are expressed in terms of outcomes (such as\
    \ desired performance and resiliency). When you later ask Volumez to create volumes\
    \ using a policy, it will automatically allocate and configure whatever is necessary\
    \ to match these desired outcomes."
  name: Policies
- description: ""
  name: Networks
- description: ""
  name: Jobs
- description: ""
  name: Snapshots
- description: ""
  name: Attachments
- description: ""
  name: Media
- description: ""
  name: Connectivities
- description: ""
  name: CapacityGroups
- description: ""
  name: Alerts
- description: ""
  name: Exports
- description: ""
  name: provision
paths:
  /volumes:
    get:
      operationId: VolumesList
      parameters:
      - explode: true
        in: query
        name: capacity
        required: false
        schema:
          type: boolean
        style: form
      - explode: false
        in: header
        name: authorization
        required: false
        schema:
          type: string
        style: simple
      responses:
        "200":
          content:
            application/json:
              schema:
                items:
                  $ref: "#/components/schemas/Volume"
                type: array
          description: List of volumes
          headers:
            Access-Control-Allow-Origin:
              explode: false
              schema:
                type: string
              style: simple
        "500":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ErrorResponse"
          description: Error getting a list of volumes
          headers:
            Access-Control-Allow-Origin:
              explode: false
              schema:
                type: string
              style: simple
        "404":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ErrorResponse"
          description: Error getting a list of volumes
          headers:
            Access-Control-Allow-Origin:
              explode: false
              schema:
                type: string
              style: simple
        "400":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ErrorResponse"
          description: Error getting a list of volumes
          headers:
            Access-Control-Allow-Origin:
              explode: false
              schema:
                type: string
              style: simple
      security:
      - storage.io-authorizer: []
      summary: Get a list of volumes
      tags:
      - Volumes
      x-amazon-apigateway-integration:
        httpMethod: get
        uri: http://vlz-main-nlb-18ba9f518fe57637.elb.us-east-1.amazonaws.com:8991:8000/volumes
        passthroughBehavior: when_no_match
        type: http_proxy
        timeoutInMillis: 29000
        requestParameters:
          integration.request.header.X-Request-ID: context.requestId
          integration.request.querystring.capacity: method.request.querystring.capacity
    options:
      responses:
        "200":
          content: {}
          description: 200 response
          headers:
            Access-Control-Allow-Origin:
              explode: false
              schema:
                type: string
              style: simple
            Access-Control-Allow-Methods:
              explode: false
              schema:
                type: string
              style: simple
            Access-Control-Allow-Headers:
              explode: false
              schema:
                type: string
              style: simple
        "500":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ErrorResponse"
          description: 500 response
          headers:
            Access-Control-Allow-Origin:
              explode: false
              schema:
                type: string
              style: simple
        "400":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ErrorResponse"
          description: 400 response
          headers:
            Access-Control-Allow-Origin:
              explode: false
              schema:
                type: string
              style: simple
        "404":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ErrorResponse"
          description: 404 response
          headers:
            Access-Control-Allow-Origin:
              explode: false
              schema:
                type: string
              style: simple
        "202":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ErrorResponse"
          description: 202 response
          headers:
            Access-Control-Allow-Origin:
              explode: false
              schema:
                type: string
              style: simple
        "409":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ErrorResponse"
          description: 409 response
          headers:
            Access-Control-Allow-Origin:
              explode: false
              schema:
                type: string
              style: simple
      x-amazon-apigateway-integration:
        responses:
          default:
            statusCode: "200"
            responseParameters:
              method.response.header.Access-Control-Allow-Methods: "'GET,OPTIONS,POST,PATCH,DELETE'"
              method.response.header.Access-Control-Allow-Headers: "'Content-Type,X-Amz-Date,Authorization,X-Api-Key,X-Amz-Security-Token'"
              method.response.header.Access-Control-Allow-Origin: '''*'''
        requestTemplates:
          application/json: "{\"statusCode\": 200}"
        passthroughBehavior: when_no_match
        type: mock
    post:
      operationId: VolumeCreate
      parameters:
      - explode: false
        in: header
        name: authorization
        required: false
        schema:
          type: string
        style: simple
      requestBody:
        content:
          application/json:
            schema:
              $ref: "#/components/schemas/Volume"
        description: A Volume object
        required: true
      responses:
        "200":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/RegularResponse"
          description: Volume has been created successfully
          headers:
            Access-Control-Allow-Origin:
              explode: false
              schema:
                type: string
              style: simple
        "409":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ErrorResponse"
          description: 409 response
          headers:
            Access-Control-Allow-Origin:
              explode: false
              schema:
                type: string
              style: simple
        "202":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ErrorResponse"
          description: 202 response
          headers:
            Access-Control-Allow-Origin:
              explode: false
              schema:
                type: string
              style: simple
        "500":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ErrorResponse"
          description: Error creating new volume
          headers:
            Access-Control-Allow-Origin:
              explode: false
              schema:
                type: string
              style: simple
        "404":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ErrorResponse"
          description: Error creating new volume
          headers:
            Access-Control-Allow-Origin:
              explode: false
              schema:
                type: string
              style: simple
        "400":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ErrorResponse"
          description: Error creating new volume
          headers:
            Access-Control-Allow-Origin:
              explode: false
              schema:
                type: string
              style: simple
      security:
      - storage.io-authorizer: []
      summary: Create a new volume
      tags:
      - Volumes
      x-amazon-apigateway-integration:
        httpMethod: post
        uri: http://vlz-main-nlb-18ba9f518fe57637.elb.us-east-1.amazonaws.com:8991:8000/volumes
        passthroughBehavior: when_no_match
        type: http_proxy
        timeoutInMillis: 29000
        requestParameters:
          integration.request.header.X-Request-ID: context.requestId
      x-codegen-request-body-name: body
  /volumes/plan:
    options:
      responses:
        "200":
          content: {}
          description: 200 response
          headers:
            Access-Control-Allow-Origin:
              explode: false
              schema:
                type: string
              style: simple
            Access-Control-Allow-Methods:
              explode: false
              schema:
                type: string
              style: simple
            Access-Control-Allow-Headers:
              explode: false
              schema:
                type: string
              style: simple
        "500":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ErrorResponse"
          description: 500 response
          headers:
            Access-Control-Allow-Origin:
              explode: false
              schema:
                type: string
              style: simple
        "400":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ErrorResponse"
          description: 400 response
          headers:
            Access-Control-Allow-Origin:
              explode: false
              schema:
                type: string
              style: simple
        "404":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ErrorResponse"
          description: 404 response
          headers:
            Access-Control-Allow-Origin:
              explode: false
              schema:
                type: string
              style: simple
        "202":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ErrorResponse"
          description: 202 response
          headers:
            Access-Control-Allow-Origin:
              explode: false
              schema:
                type: string
              style: simple
        "409":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ErrorResponse"
          description: 409 response
          headers:
            Access-Control-Allow-Origin:
              explode: false
              schema:
                type: string
              style: simple
      x-amazon-apigateway-integration:
        responses:
          default:
            statusCode: "200"
            responseParameters:
              method.response.header.Access-Control-Allow-Methods: "'GET,OPTIONS,POST,PATCH,DELETE'"
              method.response.header.Access-Control-Allow-Headers: "'Content-Type,X-Amz-Date,Authorization,X-Api-Key,X-Amz-Security-Token'"
              method.response.header.Access-Control-Allow-Origin: '''*'''
        requestTemplates:
          application/json: "{\"statusCode\": 200}"
        passthroughBehavior: when_no_match
        type: mock
    post:
      operationId: BatchVolumesPlan
      parameters:
      - description: if true will return the volume plan if false will omit the plan
          from the response
        explode: true
        in: query
        name: verbose
        required: false
        schema:
          default: true
          type: boolean
        style: form
      - explode: false
        in: header
        name: authorization
        required: false
        schema:
          type: string
        style: simple
      requestBody:
        content:
          application/json:
            schema:
              $ref: "#/components/schemas/BatchVolumesPlan_request"
        required: true
      responses:
        "200":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/VolumePlanOutput"
          description: volume plan output
          headers:
            Access-Control-Allow-Origin:
              explode: false
              schema:
                type: string
              style: simple
        "500":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ErrorResponse"
          description: Error creating new snapshot
          headers:
            Access-Control-Allow-Origin:
              explode: false
              schema:
                type: string
              style: simple
        "404":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ErrorResponse"
          description: Error creating new snapshot
          headers:
            Access-Control-Allow-Origin:
              explode: false
              schema:
                type: string
              style: simple
        "400":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ErrorResponse"
          description: Error creating new snapshot
          headers:
            Access-Control-Allow-Origin:
              explode: false
              schema:
                type: string
              style: simple
      security:
      - storage.io-authorizer: []
      summary: check if volumes can be created
      tags:
      - volumes
      x-amazon-apigateway-integration:
        httpMethod: post
        uri: http://vlz-main-nlb-18ba9f518fe57637.elb.us-east-1.amazonaws.com:8991:8000/volumes/plan
        passthroughBehavior: when_no_match
        type: http_proxy
        timeoutInMillis: 29000
        requestParameters:
          integration.request.header.X-Request-ID: context.requestId
          integration.request.querystring.verbose: method.request.querystring.verbose
      x-codegen-request-body-name: body
  /volumes/snapshot:
    options:
      responses:
        "200":
          content: {}
          description: 200 response
          headers:
            Access-Control-Allow-Origin:
              explode: false
              schema:
                type: string
              style: simple
            Access-Control-Allow-Methods:
              explode: false
              schema:
                type: string
              style: simple
            Access-Control-Allow-Headers:
              explode: false
              schema:
                type: string
              style: simple
        "500":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ErrorResponse"
          description: 500 response
          headers:
            Access-Control-Allow-Origin:
              explode: false
              schema:
                type: string
              style: simple
        "400":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ErrorResponse"
          description: 400 response
          headers:
            Access-Control-Allow-Origin:
              explode: false
              schema:
                type: string
              style: simple
        "404":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ErrorResponse"
          description: 404 response
          headers:
            Access-Control-Allow-Origin:
              explode: false
              schema:
                type: string
              style: simple
        "202":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ErrorResponse"
          description: 202 response
          headers:
            Access-Control-Allow-Origin:
              explode: false
              schema:
                type: string
              style: simple
        "409":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ErrorResponse"
          description: 409 response
          headers:
            Access-Control-Allow-Origin:
              explode: false
              schema:
                type: string
              style: simple
      x-amazon-apigateway-integration:
        responses:
          default:
            statusCode: "200"
            responseParameters:
              method.response.header.Access-Control-Allow-Methods: "'GET,OPTIONS,POST,PATCH,DELETE'"
              method.response.header.Access-Control-Allow-Headers: "'Content-Type,X-Amz-Date,Authorization,X-Api-Key,X-Amz-Security-Token'"
              method.response.header.Access-Control-Allow-Origin: '''*'''
        requestTemplates:
          application/json: "{\"statusCode\": 200}"
        passthroughBehavior: when_no_match
        type: mock
    post:
      operationId: ConsistencyGroupSnapshotCreate
      parameters:
      - explode: false
        in: header
        name: authorization
        required: false
        schema:
          type: string
        style: simple
      requestBody:
        content:
          application/json:
            schema:
              $ref: "#/components/schemas/ConsistencyGroupSnapshotCreate_request"
        description: A Snapshot object
        required: true
      responses:
        "200":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/RegularResponse"
          description: New snapshot was created successfully
          headers:
            Access-Control-Allow-Origin:
              explode: false
              schema:
                type: string
              style: simple
        "500":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ErrorResponse"
          description: Error creating new snapshot
          headers:
            Access-Control-Allow-Origin:
              explode: false
              schema:
                type: string
              style: simple
        "404":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ErrorResponse"
          description: Error creating new snapshot
          headers:
            Access-Control-Allow-Origin:
              explode: false
              schema:
                type: string
              style: simple
        "400":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ErrorResponse"
          description: Error creating new snapshot
          headers:
            Access-Control-Allow-Origin:
              explode: false
              schema:
                type: string
              style: simple
      security:
      - storage.io-authorizer: []
      summary: Create a new snapshot for given consistency group
      tags:
      - Snapshots
      x-amazon-apigateway-integration:
        httpMethod: post
        uri: http://vlz-main-nlb-18ba9f518fe57637.elb.us-east-1.amazonaws.com:8991:8000/volumes/snapshot
        passthroughBehavior: when_no_match
        type: http_proxy
        timeoutInMillis: 29000
        requestParameters:
          integration.request.header.X-Request-ID: context.requestId
      x-codegen-request-body-name: body
  /volumes/snapshot/{snapshot_group_name}:
    get:
      operationId: ConsistencyGroupGet
      parameters:
      - explode: false
        in: path
        name: snapshot_group_name
        required: true
        schema:
          type: string
        style: simple
      - explode: false
        in: header
        name: authorization
        required: false
        schema:
          type: string
        style: simple
      responses:
        "200":
          content:
            application/json:
              schema:
                items:
                  $ref: "#/components/schemas/Snapshot"
                type: array
          description: List of snapshots
          headers:
            Access-Control-Allow-Origin:
              explode: false
              schema:
                type: string
              style: simple
        "500":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ErrorResponse"
          description: Error getting a list of snapshots
          headers:
            Access-Control-Allow-Origin:
              explode: false
              schema:
                type: string
              style: simple
        "404":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ErrorResponse"
          description: Error getting a list of snapshots
          headers:
            Access-Control-Allow-Origin:
              explode: false
              schema:
                type: string
              style: simple
        "400":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ErrorResponse"
          description: Error getting a list of snapshots
          headers:
            Access-Control-Allow-Origin:
              explode: false
              schema:
                type: string
              style: simple
      security:
      - storage.io-authorizer: []
      summary: List of snapshots group
      tags:
      - Snapshots
      x-amazon-apigateway-integration:
        httpMethod: get
        uri: "http://vlz-main-nlb-18ba9f518fe57637.elb.us-east-1.amazonaws.com:8991:8000/volumes/snapshot/{snapshot_group_name}"
        passthroughBehavior: when_no_match
        type: http_proxy
        timeoutInMillis: 29000
        requestParameters:
          integration.request.header.X-Request-ID: context.requestId
          integration.request.path.snapshot_group_name: method.request.path.snapshot_group_name
    options:
      parameters:
      - explode: false
        in: path
        name: snapshot_group_name
        required: true
        schema:
          type: string
        style: simple
      responses:
        "200":
          content: {}
          description: 200 response
          headers:
            Access-Control-Allow-Origin:
              explode: false
              schema:
                type: string
              style: simple
            Access-Control-Allow-Methods:
              explode: false
              schema:
                type: string
              style: simple
            Access-Control-Allow-Headers:
              explode: false
              schema:
                type: string
              style: simple
        "500":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ErrorResponse"
          description: 500 response
          headers:
            Access-Control-Allow-Origin:
              explode: false
              schema:
                type: string
              style: simple
        "400":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ErrorResponse"
          description: 400 response
          headers:
            Access-Control-Allow-Origin:
              explode: false
              schema:
                type: string
              style: simple
        "404":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ErrorResponse"
          description: 404 response
          headers:
            Access-Control-Allow-Origin:
              explode: false
              schema:
                type: string
              style: simple
        "202":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ErrorResponse"
          description: 202 response
          headers:
            Access-Control-Allow-Origin:
              explode: false
              schema:
                type: string
              style: simple
        "409":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ErrorResponse"
          description: 409 response
          headers:
            Access-Control-Allow-Origin:
              explode: false
              schema:
                type: string
              style: simple
      x-amazon-apigateway-integration:
        responses:
          default:
            statusCode: "200"
            responseParameters:
              method.response.header.Access-Control-Allow-Methods: "'GET,OPTIONS,POST,PATCH,DELETE'"
              method.response.header.Access-Control-Allow-Headers: "'Content-Type,X-Amz-Date,Authorization,X-Api-Key,X-Amz-Security-Token'"
              method.response.header.Access-Control-Allow-Origin: '''*'''
        requestTemplates:
          application/json: "{\"statusCode\": 200}"
        passthroughBehavior: when_no_match
        type: mock
  /volumes/{volume}:
    delete:
      operationId: VolumeDelete
      parameters:
      - explode: false
        in: path
        name: volume
        required: true
        schema:
          type: string
        style: simple
      - allowEmptyValue: true
        explode: true
        in: query
        name: force
        required: false
        schema:
          default: false
          nullable: false
          type: boolean
        style: form
      - explode: false
        in: header
        name: authorization
        required: false
        schema:
          type: string
        style: simple
      responses:
        "200":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/RegularResponse"
          description: A volume was deleted successfully
          headers:
            Access-Control-Allow-Origin:
              explode: false
              schema:
                type: string
              style: simple
        "500":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ErrorResponse"
          description: Error deleting a volume
          headers:
            Access-Control-Allow-Origin:
              explode: false
              schema:
                type: string
              style: simple
        "404":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ErrorResponse"
          description: Error deleting a volume
          headers:
            Access-Control-Allow-Origin:
              explode: false
              schema:
                type: string
              style: simple
        "400":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ErrorResponse"
          description: Error deleting a volume
          headers:
            Access-Control-Allow-Origin:
              explode: false
              schema:
                type: string
              style: simple
      security:
      - storage.io-authorizer: []
      summary: Delete a volume
      tags:
      - Volumes
      x-amazon-apigateway-integration:
        httpMethod: delete
        uri: "http://vlz-main-nlb-18ba9f518fe57637.elb.us-east-1.amazonaws.com:8991:8000/volumes/{volume}"
        passthroughBehavior: when_no_match
        type: http_proxy
        timeoutInMillis: 29000
        requestParameters:
          integration.request.header.X-Request-ID: context.requestId
          integration.request.path.volume: method.request.path.volume
          integration.request.querystring.force: method.request.querystring.force
    get:
      operationId: VolumeGet
      parameters:
      - explode: false
        in: path
        name: volume
        required: true
        schema:
          type: string
        style: simple
      - explode: false
        in: header
        name: authorization
        required: false
        schema:
          type: string
        style: simple
      responses:
        "200":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Volume"
          description: Properties of a volume
          headers:
            Access-Control-Allow-Origin:
              explode: false
              schema:
                type: string
              style: simple
        "500":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ErrorResponse"
          description: Error getting properties of a volume
          headers:
            Access-Control-Allow-Origin:
              explode: false
              schema:
                type: string
              style: simple
        "404":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ErrorResponse"
          description: Error getting properties of a volume
          headers:
            Access-Control-Allow-Origin:
              explode: false
              schema:
                type: string
              style: simple
        "400":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ErrorResponse"
          description: Error getting properties of a volume
          headers:
            Access-Control-Allow-Origin:
              explode: false
              schema:
                type: string
              style: simple
      security:
      - storage.io-authorizer: []
      summary: Get the properties of a volume
      tags:
      - Volumes
      x-amazon-apigateway-integration:
        httpMethod: get
        uri: "http://vlz-main-nlb-18ba9f518fe57637.elb.us-east-1.amazonaws.com:8991:8000/volumes/{volume}"
        passthroughBehavior: when_no_match
        type: http_proxy
        timeoutInMillis: 29000
        requestParameters:
          integration.request.header.X-Request-ID: context.requestId
          integration.request.path.volume: method.request.path.volume
    options:
      parameters:
      - explode: false
        in: path
        name: volume
        required: true
        schema:
          type: string
        style: simple
      responses:
        "200":
          content: {}
          description: 200 response
          headers:
            Access-Control-Allow-Origin:
              explode: false
              schema:
                type: string
              style: simple
            Access-Control-Allow-Methods:
              explode: false
              schema:
                type: string
              style: simple
            Access-Control-Allow-Headers:
              explode: false
              schema:
                type: string
              style: simple
        "500":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ErrorResponse"
          description: 500 response
          headers:
            Access-Control-Allow-Origin:
              explode: false
              schema:
                type: string
              style: simple
        "400":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ErrorResponse"
          description: 400 response
          headers:
            Access-Control-Allow-Origin:
              explode: false
              schema:
                t

# --- truncated at 32 KB (632 KB total) ---
# Full source: https://raw.githubusercontent.com/api-evangelist/volumez/refs/heads/main/openapi/volumez-orchestrator-api-openapi.yaml