Scalr Clouds API
The Clouds API from Scalr — 2 operation(s) for clouds.
The Clouds API from Scalr — 2 operation(s) for clouds.
Every API here is available over the APIs.io API and to AI agents over MCP.
One button, every client — Claude, Cursor, VS Code and the rest.
https://apis.io/mcp
find_apisBrowse and filter every API in the catalog.get_api_artifactsOne API's artifacts, grouped by type.get_openapiThe primary OpenAPI for this API.find_similar_apisAPIs that look like this one.apis_io_searchSTART HERE — APIs, providers and tags for one query, each with its total.resolveTurn a domain, URL or GitHub org into the provider it belongs to.find_cohortsEvery scored population of providers in the catalog.curl "https://apis.io/api/v1/apis/scalr-clouds-api"
curl "https://apis.io/api/v1/apis?limit=25"
Discovery needs no key. Ratings and market analysis are Pro.
Free tier, no form to fill in. Signing in shares your email address with us — we store it to create your key and to recognise you if you sign in with another provider. See our Privacy Policy and Terms.
A second provider on the same verified email joins the account you already have.
openapi: 3.2.0
info:
description: Manage Roles, Images, Farms, Farm Roles, and Servers.
title: Scalr User Clouds API
version: 1.0.0
servers:
- url: /api/v1beta0/user
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
summary: Get by env id clouds by cloud platform cloud locations
x-summary-source: derived
operationId: getByEnvIdCloudsByCloudPlatformCloudLocations
x-operation-id-source: derived
/{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
summary: Get by env id clouds by cloud platform cloud locations by cloud location…
x-summary-source: derived
operationId: getByEnvIdCloudsByCloudPlatformCloudLocationsByCloudLocationInstanceTypes
x-operation-id-source: derived
components:
schemas:
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'
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/
ApiPagination:
properties:
first:
readOnly: true
type: string
last:
readOnly: true
type: string
next:
readOnly: true
type: string
prev:
readOnly: true
type: string
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/
ApiMetaContainer:
properties:
sample:
description: Actual properties TBD.
type: string
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/
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
ApiMessage:
properties:
code:
description: A machine-readable representation of the message.
type: string
message:
description: A human-readable representation of the message.
type: string
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/
x-dry-yaml-definitions:
FarmRoleExpandProperites:
advancedConfiguration:
$ref: '#/components/schemas/FarmRoleAdvancedConfiguration'
description: Advanced Farm Role configuration.
availabilityZones:
description: The list of availability zones. This property is available only for GCE, Openstack, Azure and AWS based Farm Roles. Please note, that the value is required for GCE Farm Roles, but for Openstack and AWS the availability zone will be chosen by the cloud engine if property is empty or not specified.
items:
type: string
type: array
bootstrapping:
$ref: '#/components/schemas/BootstrapConfiguration'
description: Farm Role bootstrap configuration. Please note this property is available only for Farm Roles configured with enabled Chef built-in automation.
cloudFeatures:
$ref: '#/components/schemas/CloudFeatures'
description: Cloud specifics Farm Role configuration. This property is available only for Azure and AWS based Farm Roles. Please note, that the value is required for AzureConfiguration.
networking:
$ref: '#/components/schemas/NetworkConfiguration'
description: Farm Role network configuration. Please note that this property is not available for AWS Farm Roles that weren't launched inside Amazon VPC.
security:
$ref: '#/components/schemas/SecurityConfiguration'
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
mounting:
$ref: '#/components/schemas/MountConfiguration'
description: Configuration contains the necessary information to automate the process of mounting partitions.
openstackProvider:
description: Cloud provider that should be specified for OpenStack based clouds.
enum:
- openstack
- ocs
- hpcloud
- mirantis
- vio
- cisco
type: string
pathParamsPatterns:
scalrId:
maxLength: 22
minLength: 17
pattern: '[a-zA-Z0-9]{1,6}-[a-v0-9]{15}'
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
unlockPermission:
enum:
- owner
- team
- anyone
type: string