Scalr Clouds API

The Clouds API from Scalr — 2 operation(s) for clouds.

Operations 2

GET /{envId}/clouds/{cloudPlatform}/cloud-locations/
GET /{envId}/clouds/{cloudPlatform}/cloud-locations/{cloudLocation}/instance-types/

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/scalr-clouds-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 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 Specification

scalr-clouds-api-openapi.yml Raw ↑
openapi: 3.2.0
info:
  description: Manage Roles, Images, Environments and etc.
  title: Scalr Account Acl Roles Clouds API
  version: 1.0.0
servers:
- url: /api/v1beta0/account
tags:
- name: Clouds
paths:
  /{envId}/clouds/{cloudPlatform}/cloud-locations/:
    parameters:
    - description: The ID of the Environment scoping this request.
      in: path
      name: envId
      required: true
      schema:
        type: integer
    - description: The Cloud Platform this resource resides in.
      in: path
      name: cloudPlatform
      required: true
      schema:
        type: string
        enum:
        - ec2
        - gce
        - azure
        - cloudstack
        - idcf
        - openstack
        - ocs
        - otc
        - rackspacenguk
        - rackspacengus
        - hpcloud
        - mirantis
        - vio
        - cisco
        - vmware
    get:
      description: The list of the Cloud Locations.
      responses:
        200:
          description: A list of CloudLocation objects.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/CloudLocationListResponse'
        400:
          description: A client-side error was made.
          x-errorCodes:
          - description: The request was structurally incorrect, and was not understood by the API.
            name: InvalidStructure
          - description: The request was understood by the API, but included invalid data.
            name: InvalidValue
          - description: The request wasn't understood by the API.
            name: BadRequest
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ApiErrorResponse'
        401:
          description: The request was not authenticated.
          x-errorCodes:
          - description: The request was not properly authenticated.
            name: BadAuthentication
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ApiErrorResponse'
        403:
          description: Insufficient permissions.
          x-errorCodes:
          - description: This request should be made in a different Scope.
            name: ScopeViolation
          - description: You do not have the necessary permissions to perform this request.
            name: PermissionViolation
          - description: The maximum memory limit in GB has been reached.
            name: MemoryQuotaExceeded
          - description: The vCPUs limit has been reached.
            name: VcpusQuotaExceeded
          - description: The maximum number of the Servers that you can launch or resume has been reached.
            name: ServersQuotaExceeded
          - description: The maximum number of the Servers that you can launch or resume on current Farm has been reached.
            name: ServersPerFarmQuotaExceeded
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ApiErrorResponse'
        404:
          description: Resource not found.
          x-errorCodes:
          - description: This endpoint does not exist.
            name: EndpointNotFound
            noDoc: true
          - description: The object you are trying to access does not exist.
            name: ObjectNotFound
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ApiErrorResponse'
        409:
          description: Conflict with current state.
          x-errorCodes:
          - description: These changes aren't possible while this object is in use.
            name: ObjectInUse
          - description: These changes would violate a policy.
            name: PolicyViolation
          - description: These changes would violate a unicity constraint.
            name: UnicityViolation
          - description: Some of the objects being changed are locked and cannot be changed.
            name: Locked
          - description: This Cloud platform is not enabled.
            name: NotEnabledPlatform
          - description: The Operating System does not match.
            name: OperatingSystemMismatch
          - description: Some of the objects or actions being access are deprecated.
            name: Deprecated
          - description: The action can't be perfomed in the current object's state.
            name: UnacceptableState
          - description: The object that you are trying to access does not exist on the cloud.
            name: ObjectNotFoundOnCloud
          - description: Some of these settings cannot be applied, they either conflict with the current state or are invalid.
            name: UnacceptableObjectConfiguration
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ApiErrorResponse'
        422:
          description: This request was well-formed but was rejected due to semantic errors.
          x-errorCodes:
          - description: Some of the configuration settings cannot be applied because they conflict with the current state.
            name: ConfigurationMismatch
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ApiErrorResponse'
        500:
          description: A server-side error occurred.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ApiErrorResponse'
        501:
          description: This feature is not implemented in Scalr.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ApiErrorResponse'
        503:
          description: The service is currently unavailable.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ApiErrorResponse'
      tags:
      - Clouds
  /{envId}/clouds/{cloudPlatform}/cloud-locations/{cloudLocation}/instance-types/:
    parameters:
    - description: The ID of the Environment scoping this request.
      in: path
      name: envId
      required: true
      schema:
        type: integer
    - description: The Cloud Platform this resource resides in.
      in: path
      name: cloudPlatform
      required: true
      schema:
        type: string
        enum:
        - ec2
        - gce
        - azure
        - cloudstack
        - idcf
        - openstack
        - ocs
        - otc
        - rackspacenguk
        - rackspacengus
        - hpcloud
        - mirantis
        - vio
        - cisco
        - vmware
    - description: 'Cloud Location, inside a given Cloud Platform, for this resource. May be null if this resource does not have a specific location. Note: if you would like to filter on this property, you **must** also filter on `cloudPlatform`.'
      in: path
      name: cloudLocation
      required: true
      schema:
        type: string
    get:
      description: The list of all Instance Types available for the specified Cloud Location.
      responses:
        200:
          description: A list of InstanceType objects.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/InstanceTypeListResponse'
        400:
          description: A client-side error was made.
          x-errorCodes:
          - description: The request was structurally incorrect, and was not understood by the API.
            name: InvalidStructure
          - description: The request was understood by the API, but included invalid data.
            name: InvalidValue
          - description: The request wasn't understood by the API.
            name: BadRequest
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ApiErrorResponse'
        401:
          description: The request was not authenticated.
          x-errorCodes:
          - description: The request was not properly authenticated.
            name: BadAuthentication
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ApiErrorResponse'
        403:
          description: Insufficient permissions.
          x-errorCodes:
          - description: This request should be made in a different Scope.
            name: ScopeViolation
          - description: You do not have the necessary permissions to perform this request.
            name: PermissionViolation
          - description: The maximum memory limit in GB has been reached.
            name: MemoryQuotaExceeded
          - description: The vCPUs limit has been reached.
            name: VcpusQuotaExceeded
          - description: The maximum number of the Servers that you can launch or resume has been reached.
            name: ServersQuotaExceeded
          - description: The maximum number of the Servers that you can launch or resume on current Farm has been reached.
            name: ServersPerFarmQuotaExceeded
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ApiErrorResponse'
        404:
          description: Resource not found.
          x-errorCodes:
          - description: This endpoint does not exist.
            name: EndpointNotFound
            noDoc: true
          - description: The object you are trying to access does not exist.
            name: ObjectNotFound
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ApiErrorResponse'
        409:
          description: Conflict with current state.
          x-errorCodes:
          - description: These changes aren't possible while this object is in use.
            name: ObjectInUse
          - description: These changes would violate a policy.
            name: PolicyViolation
          - description: These changes would violate a unicity constraint.
            name: UnicityViolation
          - description: Some of the objects being changed are locked and cannot be changed.
            name: Locked
          - description: This Cloud platform is not enabled.
            name: NotEnabledPlatform
          - description: The Operating System does not match.
            name: OperatingSystemMismatch
          - description: Some of the objects or actions being access are deprecated.
            name: Deprecated
          - description: The action can't be perfomed in the current object's state.
            name: UnacceptableState
          - description: The object that you are trying to access does not exist on the cloud.
            name: ObjectNotFoundOnCloud
          - description: Some of these settings cannot be applied, they either conflict with the current state or are invalid.
            name: UnacceptableObjectConfiguration
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ApiErrorResponse'
        422:
          description: This request was well-formed but was rejected due to semantic errors.
          x-errorCodes:
          - description: Some of the configuration settings cannot be applied because they conflict with the current state.
            name: ConfigurationMismatch
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ApiErrorResponse'
        500:
          description: A server-side error occurred.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ApiErrorResponse'
        501:
          description: This feature is not implemented in Scalr.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ApiErrorResponse'
        503:
          description: The service is currently unavailable.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ApiErrorResponse'
      tags:
      - Clouds
components:
  schemas:
    CloudLocation:
      properties:
        cloudLocation:
          description: 'Cloud Location, inside a given Cloud Platform, for this resource. May be null if this resource does not have a specific location. Note: if you would like to filter on this property, you **must** also filter on `cloudPlatform`.'
          type: string
        cloudPlatform:
          description: The Cloud Platform this resource resides in.
          enum:
          - ec2
          - gce
          type: string
      required:
      - cloudPlatform
      x-usedIn:
      - /user/{envId}/images/{imageId}/actions/copy/
    InstanceTypeListResponse:
      properties:
        data:
          items:
            $ref: '#/components/schemas/InstanceType'
          readOnly: true
          type: array
        errors:
          items:
            $ref: '#/components/schemas/ApiMessage'
          readOnly: true
          type: array
        meta:
          $ref: '#/components/schemas/ApiMetaContainer'
          readOnly: true
        pagination:
          $ref: '#/components/schemas/ApiPagination'
          readOnly: true
        warnings:
          items:
            $ref: '#/components/schemas/ApiMessage'
          readOnly: true
          type: array
      x-derived:
        $ref: '#/components/schemas/InstanceType'
      x-usedIn:
      - /user/{envId}/clouds/{cloudPlatform}/cloud-locations/{cloudLocation}/instance-types/
    ApiMessage:
      properties:
        code:
          description: A machine-readable representation of the message.
          type: string
        message:
          description: A human-readable representation of the message.
          type: string
    ApiPagination:
      properties:
        first:
          readOnly: true
          type: string
        last:
          readOnly: true
          type: string
        next:
          readOnly: true
          type: string
        prev:
          readOnly: true
          type: string
    InstanceType:
      properties:
        cloudFeatures:
          $ref: '#/components/schemas/InstanceTypeCloudFeatures'
          description: Cloud specific parameters related to Instance Type.
          readOnly: true
        id:
          description: Identifier of the InstanceType object.
          readOnly: true
          type: string
        memory:
          description: Memory in GB allocated for the Instance.
          readOnly: true
          type: number
        name:
          description: The Instance Type Name in the Cloud.
          readOnly: true
          type: string
        storage:
          description: Total disks size in GB.
          readOnly: true
          type: integer
        vcpus:
          description: Virtual CPUs count.
          readOnly: true
          type: integer
      x-filterable:
      - id
      - name
      - storage
    InstanceTypeCloudFeatures:
      description: Cloud specific Instance type configuration.
      discriminator:
        propertyName: type
      properties:
        type:
          enum:
          - AwsInstanceTypeCloudFeatures
          type: string
      required:
      - type
      x-concreteTypes:
      - $ref: '#/components/schemas/AwsInstanceTypeCloudFeatures'
    ApiErrorResponse:
      description: Common response for erroneous requests.
      properties:
        errors:
          items:
            $ref: '#/components/schemas/ApiMessage'
          readOnly: true
          type: array
        meta:
          $ref: '#/components/schemas/ApiMetaContainer'
          readOnly: true
        warnings:
          items:
            $ref: '#/components/schemas/ApiMessage'
          readOnly: true
          type: array
      x-usedIn:
      - /user/{envId}/global-variables/
      - /user/{envId}/global-variables/{globalVariableName}/
      - /user/{envId}/orchestration-rules/
      - /user/{envId}/orchestration-rules/{orchestrationRuleId}/
      - /user/{envId}/projects/
      - /user/{envId}/projects/{projectId}/
      - /user/{envId}/cost-centers/
      - /user/{envId}/cost-centers/{costCenterId}/
      - /user/{envId}/role-categories/
      - /user/{envId}/role-categories/{roleCategoryId}/
      - /user/{envId}/roles/
      - /user/{envId}/roles/{roleId}/
      - /user/{envId}/roles/{roleId}/actions/promote/
      - /user/{envId}/roles/{roleId}/actions/clone/
      - /user/{envId}/roles/{roleId}/actions/deprecate/
      - /user/{envId}/roles/{roleId}/images/
      - /user/{envId}/roles/{roleId}/images/{imageId}/
      - /user/{envId}/roles/{roleId}/images/{imageId}/actions/replace/
      - /user/{envId}/roles/{roleId}/global-variables/
      - /user/{envId}/roles/{roleId}/global-variables/{globalVariableName}/
      - /user/{envId}/roles/{roleId}/orchestration-rules/
      - /user/{envId}/roles/{roleId}/orchestration-rules/{orchestrationRuleId}/
      - /user/{envId}/images/
      - /user/{envId}/images/{imageId}/
      - /user/{envId}/images/{imageId}/actions/copy/
      - /user/{envId}/images/{imageId}/actions/replace/
      - /user/{envId}/servers/
      - /user/{envId}/servers/{serverId}/
      - /user/{envId}/servers/{serverId}/actions/suspend/
      - /user/{envId}/servers/{serverId}/actions/terminate/
      - /user/{envId}/servers/{serverId}/actions/resume/
      - /user/{envId}/servers/{serverId}/actions/reboot/
      - /user/{envId}/servers/{serverId}/actions/sync/
      - /user/{envId}/servers/{serverId}/global-variables/
      - /user/{envId}/servers/{serverId}/global-variables/{globalVariableName}/
      - /user/{envId}/farms/{farmId}/servers/
      - /user/{envId}/farm-roles/{farmRoleId}/servers/
      - /user/{envId}/scripts/
      - /user/{envId}/scripts/{scriptId}/
      - /user/{envId}/scripts/{scriptId}/actions/execute/
      - /user/{envId}/scripts/{scriptId}/script-versions/
      - /user/{envId}/scripts/{scriptId}/script-versions/{scriptVersionNumber}/
      - /user/{envId}/scripts/{scriptId}/script-versions/{scriptVersionNumber}/actions/execute/
      - /user/{envId}/script-executions/{scriptExecutionId}/
      - /user/{envId}/orchestration-logs/
      - /user/{envId}/orchestration-logs/{logEntryId}/
      - /user/{envId}/event-logs/
      - /user/{envId}/event-logs/{eventLogEntryId}/
      - /user/{envId}/webhook-endpoints/
      - /user/{envId}/os/
      - /user/{envId}/os/{osId}/
      - /user/{envId}/events/
      - /user/{envId}/events/{eventId}/
      - /user/{envId}/events/{eventId}/actions/fire/
      - /user/{envId}/farms/
      - /user/{envId}/farms/{farmId}/
      - /user/{envId}/farms/{farmId}/cloud-services/
      - /user/{envId}/farms/{farmId}/cloud-services/{farmCloudServiceLinkId}/
      - /user/{envId}/farms/{farmId}/actions/generate-template/
      - /user/{envId}/farms/{farmId}/actions/launch/
      - /user/{envId}/farms/{farmId}/actions/suspend/
      - /user/{envId}/farms/{farmId}/actions/resume/
      - /user/{envId}/farms/{farmId}/actions/terminate/
      - /user/{envId}/farms/{farmId}/actions/lock/
      - /user/{envId}/farms/{farmId}/actions/unlock/
      - /user/{envId}/farms/{farmId}/actions/clone/
      - /user/{envId}/farms/{farmId}/global-variables/
      - /user/{envId}/farms/{farmId}/global-variables/{globalVariableName}/
      - /user/{envId}/farms/{farmId}/farm-roles/
      - /user/{envId}/farm-roles/{farmRoleId}/
      - /user/{envId}/farm-roles/{farmRoleId}/actions/import-server/
      - /user/{envId}/farm-roles/{farmRoleId}/actions/generate-template/
      - /user/{envId}/farm-roles/{farmRoleId}/actions/clone/
      - /user/{envId}/farm-roles/{farmRoleId}/scaling/
      - /user/{envId}/farm-roles/{farmRoleId}/scaling/{metricName}/
      - /user/{envId}/farm-roles/{farmRoleId}/storage/
      - /user/{envId}/farm-roles/{farmRoleId}/storage/{storageConfigurationId}/
      - /user/{envId}/scaling-metrics/
      - /user/{envId}/scaling-metrics/{metricName}/
      - /user/{envId}/farm-roles/{farmRoleId}/global-variables/
      - /user/{envId}/farm-roles/{farmRoleId}/global-variables/{globalVariableName}/
      - /user/{envId}/farm-roles/{farmRoleId}/orchestration-rules/
      - /user/{envId}/farm-roles/{farmRoleId}/orchestration-rules/{orchestrationRuleId}/
      - /user/{envId}/clouds/{cloudPlatform}/cloud-locations/
      - /user/{envId}/clouds/{cloudPlatform}/cloud-locations/{cloudLocation}/instance-types/
    CloudLocationListResponse:
      properties:
        data:
          items:
            $ref: '#/components/schemas/CloudLocation'
          readOnly: true
          type: array
        errors:
          items:
            $ref: '#/components/schemas/ApiMessage'
          readOnly: true
          type: array
        meta:
          $ref: '#/components/schemas/ApiMetaContainer'
          readOnly: true
        pagination:
          $ref: '#/components/schemas/ApiPagination'
          readOnly: true
        warnings:
          items:
            $ref: '#/components/schemas/ApiMessage'
          readOnly: true
          type: array
      x-derived:
        $ref: '#/components/schemas/CloudLocation'
      x-usedIn:
      - /user/{envId}/clouds/{cloudPlatform}/cloud-locations/
    AwsInstanceTypeCloudFeatures:
      description: AWS instance type configuration.
      properties:
        ebsEncryption:
          description: Whether current instance type supports EBS encryption.
          type: boolean
        ebsOptimized:
          description: EBS-optimized instance uses an optimized configuration stack and provides additional, dedicated capacity for Amazon EBS I/O.
          type: boolean
        enhancedNetworking:
          description: Enhanced networking uses single root I/O virtualization (SR-IOV) to provide high-performance networking capabilities on supported instance types.
          type: boolean
        hvmOnly:
          description: Instance type supports only HVM images.
          type: boolean
        type:
          enum:
          - AwsInstanceTypeCloudFeatures
          type: string
        vpcOnly:
          description: Instance type can be launched only in VPC.
          type: boolean
      required:
      - type
      x-abstractType:
        $ref: '#/components/schemas/InstanceTypeCloudFeatures'
      x-discriminator: type
    ApiMetaContainer:
      properties:
        sample:
          description: Actual properties TBD.
          type: string
x-dry-yaml-definitions:
  architecture:
    enum:
    - i386
    - x86_64
    type: string
  cloudLocationProperties:
    cloudLocation:
      description: 'Cloud Location, inside a given Cloud Platform, for this resource. May be null if this resource does not have a specific location. Note: if you would like to filter on this property, you **must** also filter on `cloudPlatform`.'
      type: string
    cloudPlatform:
      description: The Cloud Platform this resource resides in.
      enum:
      - ec2
      - gce
      type: string
  cloudstackProvider:
    description: Cloud provider that should be specified for CloudStack based clouds.
    enum:
    - cloudstack
    - idcf
    type: string
  openstackProvider:
    description: Cloud provider that should be specified for OpenStack based clouds.
    enum:
    - openstack
    - ocs
    - hpcloud
    - mirantis
    - vio
    - cisco
    type: string
  pathParamsPatterns:
    uuid:
      maxLength: 36
      minLength: 36
      pattern: '[A-Fa-f0-9]{8}-([A-Fa-f0-9]{4}-){3}[A-Fa-f0-9]{12}'
    uuidShort:
      maxLength: 12
      minLength: 12
      pattern: '[A-Fa-f0-9]+'
  scopeProperty:
    enum:
    - scalr
    - account
    - environment
    - farm
    - farmrole
    - role
    - server
    type: string