Scalr Images API
The Images API from Scalr — 12 operation(s) for images.
The Images API from Scalr — 12 operation(s) for images.
swagger: '2.0'
info:
description: Manage Roles, Images, Environments and etc.
title: Scalr Account Acl Roles Images API
version: 1.0.0
basePath: /api/v1beta0/account
produces:
- application/json
tags:
- name: Images
paths:
/{accountId}/images/:
parameters:
- description: The ID of the Account scoping this request.
in: path
name: accountId
required: true
type: integer
get:
description: List all the Images available in this Account.
responses:
200:
description: A list of Image objects.
schema:
$ref: '#/definitions/ImageListResponse'
400:
description: A client-side error was made.
schema:
$ref: '#/definitions/ApiErrorResponse'
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
401:
description: The request was not authenticated.
schema:
$ref: '#/definitions/ApiErrorResponse'
x-errorCodes:
- description: The request was not properly authenticated.
name: BadAuthentication
403:
description: Insufficient permissions.
schema:
$ref: '#/definitions/ApiErrorResponse'
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
404:
description: Resource not found.
schema:
$ref: '#/definitions/ApiErrorResponse'
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
409:
description: Conflict with current state.
schema:
$ref: '#/definitions/ApiErrorResponse'
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 these settings cannot be applied, they either conflict with the current state or are invalid.
name: UnacceptableObjectConfiguration
422:
description: This request was well-formed but was rejected due to semantic errors.
schema:
$ref: '#/definitions/ApiErrorResponse'
x-errorCodes:
- description: Some of the configuration settings cannot be applied because they conflict with the current state.
name: ConfigurationMismatch
500:
description: A server-side error occurred.
schema:
$ref: '#/definitions/ApiErrorResponse'
501:
description: This feature is not implemented in Scalr.
schema:
$ref: '#/definitions/ApiErrorResponse'
503:
description: The service is currently unavailable.
schema:
$ref: '#/definitions/ApiErrorResponse'
tags:
- Images
post:
description: Register a new Image in this Account.
parameters:
- description: The JSON representation of a Image object.
in: body
name: imageObject
required: true
schema:
$ref: '#/definitions/Image'
responses:
201:
description: The JSON representation of a Image object.
schema:
$ref: '#/definitions/ImageDetailsResponse'
400:
description: A client-side error was made.
schema:
$ref: '#/definitions/ApiErrorResponse'
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
401:
description: The request was not authenticated.
schema:
$ref: '#/definitions/ApiErrorResponse'
x-errorCodes:
- description: The request was not properly authenticated.
name: BadAuthentication
403:
description: Insufficient permissions.
schema:
$ref: '#/definitions/ApiErrorResponse'
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
404:
description: Resource not found.
schema:
$ref: '#/definitions/ApiErrorResponse'
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
409:
description: Conflict with current state.
schema:
$ref: '#/definitions/ApiErrorResponse'
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 these settings cannot be applied, they either conflict with the current state or are invalid.
name: UnacceptableObjectConfiguration
422:
description: This request was well-formed but was rejected due to semantic errors.
schema:
$ref: '#/definitions/ApiErrorResponse'
x-errorCodes:
- description: Some of the configuration settings cannot be applied because they conflict with the current state.
name: ConfigurationMismatch
500:
description: A server-side error occurred.
schema:
$ref: '#/definitions/ApiErrorResponse'
501:
description: This feature is not implemented in Scalr.
schema:
$ref: '#/definitions/ApiErrorResponse'
503:
description: The service is currently unavailable.
schema:
$ref: '#/definitions/ApiErrorResponse'
tags:
- Images
/{accountId}/images/{imageId}/:
parameters:
- description: The ID of the Account scoping this request.
in: path
name: accountId
required: true
type: integer
- description: The ID of a Image object.
in: path
maxLength: 36
minLength: 36
name: imageId
pattern: '[A-Fa-f0-9]{8}-([A-Fa-f0-9]{4}-){3}[A-Fa-f0-9]{12}'
required: true
type: string
x-references:
$ref: '#/definitions/Image'
delete:
description: Remove an Image from this Account. This does not remove the underlying machine image from the Cloud it resides in.
responses:
204:
description: Successful deletion.
400:
description: A client-side error was made.
schema:
$ref: '#/definitions/ApiErrorResponse'
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
401:
description: The request was not authenticated.
schema:
$ref: '#/definitions/ApiErrorResponse'
x-errorCodes:
- description: The request was not properly authenticated.
name: BadAuthentication
403:
description: Insufficient permissions.
schema:
$ref: '#/definitions/ApiErrorResponse'
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
404:
description: Resource not found.
schema:
$ref: '#/definitions/ApiErrorResponse'
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
409:
description: Conflict with current state.
schema:
$ref: '#/definitions/ApiErrorResponse'
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 these settings cannot be applied, they either conflict with the current state or are invalid.
name: UnacceptableObjectConfiguration
422:
description: This request was well-formed but was rejected due to semantic errors.
schema:
$ref: '#/definitions/ApiErrorResponse'
x-errorCodes:
- description: Some of the configuration settings cannot be applied because they conflict with the current state.
name: ConfigurationMismatch
500:
description: A server-side error occurred.
schema:
$ref: '#/definitions/ApiErrorResponse'
501:
description: This feature is not implemented in Scalr.
schema:
$ref: '#/definitions/ApiErrorResponse'
503:
description: The service is currently unavailable.
schema:
$ref: '#/definitions/ApiErrorResponse'
tags:
- Images
get:
description: Retrieve detailed information about an image.
responses:
200:
description: The JSON representation of a Image object.
schema:
$ref: '#/definitions/ImageDetailsResponse'
400:
description: A client-side error was made.
schema:
$ref: '#/definitions/ApiErrorResponse'
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
401:
description: The request was not authenticated.
schema:
$ref: '#/definitions/ApiErrorResponse'
x-errorCodes:
- description: The request was not properly authenticated.
name: BadAuthentication
403:
description: Insufficient permissions.
schema:
$ref: '#/definitions/ApiErrorResponse'
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
404:
description: Resource not found.
schema:
$ref: '#/definitions/ApiErrorResponse'
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
409:
description: Conflict with current state.
schema:
$ref: '#/definitions/ApiErrorResponse'
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 these settings cannot be applied, they either conflict with the current state or are invalid.
name: UnacceptableObjectConfiguration
422:
description: This request was well-formed but was rejected due to semantic errors.
schema:
$ref: '#/definitions/ApiErrorResponse'
x-errorCodes:
- description: Some of the configuration settings cannot be applied because they conflict with the current state.
name: ConfigurationMismatch
500:
description: A server-side error occurred.
schema:
$ref: '#/definitions/ApiErrorResponse'
501:
description: This feature is not implemented in Scalr.
schema:
$ref: '#/definitions/ApiErrorResponse'
503:
description: The service is currently unavailable.
schema:
$ref: '#/definitions/ApiErrorResponse'
tags:
- Images
patch:
description: Modify the attributes of an Image. Currently only the name of the Image can be changed.
parameters:
- description: The updated definition.
in: body
name: image
required: true
schema:
$ref: '#/definitions/Image'
responses:
200:
description: The JSON representation of a Image object.
schema:
$ref: '#/definitions/ImageDetailsResponse'
400:
description: A client-side error was made.
schema:
$ref: '#/definitions/ApiErrorResponse'
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
401:
description: The request was not authenticated.
schema:
$ref: '#/definitions/ApiErrorResponse'
x-errorCodes:
- description: The request was not properly authenticated.
name: BadAuthentication
403:
description: Insufficient permissions.
schema:
$ref: '#/definitions/ApiErrorResponse'
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
404:
description: Resource not found.
schema:
$ref: '#/definitions/ApiErrorResponse'
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
409:
description: Conflict with current state.
schema:
$ref: '#/definitions/ApiErrorResponse'
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 these settings cannot be applied, they either conflict with the current state or are invalid.
name: UnacceptableObjectConfiguration
422:
description: This request was well-formed but was rejected due to semantic errors.
schema:
$ref: '#/definitions/ApiErrorResponse'
x-errorCodes:
- description: Some of the configuration settings cannot be applied because they conflict with the current state.
name: ConfigurationMismatch
500:
description: A server-side error occurred.
schema:
$ref: '#/definitions/ApiErrorResponse'
501:
description: This feature is not implemented in Scalr.
schema:
$ref: '#/definitions/ApiErrorResponse'
503:
description: The service is currently unavailable.
schema:
$ref: '#/definitions/ApiErrorResponse'
tags:
- Images
/{accountId}/images/{imageId}/actions/copy/:
parameters:
- description: The ID of the Account scoping this request.
in: path
name: accountId
required: true
type: integer
- description: The ID of a Image object.
in: path
maxLength: 36
minLength: 36
name: imageId
pattern: '[A-Fa-f0-9]{8}-([A-Fa-f0-9]{4}-){3}[A-Fa-f0-9]{12}'
required: true
type: string
x-references:
$ref: '#/definitions/Image'
post:
description: Copy an Image from one EC2 region to another.
parameters:
- description: Copy Image options.
in: body
name: copyImageRequest
required: true
schema:
properties:
cloudCredentials:
$ref: '#/definitions/CloudCredentialsForeignKey'
cloudLocation:
description: The EC2 destination region where this Image will be copied.
type: string
required:
- cloudLocation
- cloudCredentials
responses:
201:
description: The JSON representation of a Image object.
schema:
$ref: '#/definitions/ImageDetailsResponse'
400:
description: A client-side error was made.
schema:
$ref: '#/definitions/ApiErrorResponse'
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
401:
description: The request was not authenticated.
schema:
$ref: '#/definitions/ApiErrorResponse'
x-errorCodes:
- description: The request was not properly authenticated.
name: BadAuthentication
403:
description: Insufficient permissions.
schema:
$ref: '#/definitions/ApiErrorResponse'
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
404:
description: Resource not found.
schema:
$ref: '#/definitions/ApiErrorResponse'
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
409:
description: Conflict with current state.
schema:
$ref: '#/definitions/ApiErrorResponse'
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 these settings cannot be applied, they either conflict with the current state or are invalid.
name: UnacceptableObjectConfiguration
422:
description: This request was well-formed but was rejected due to semantic errors.
schema:
$ref: '#/definitions/ApiErrorResponse'
x-errorCodes:
- description: Some of the configuration settings cannot be applied because they conflict with the current state.
name: ConfigurationMismatch
500:
description: A server-side error occurred.
schema:
$ref: '#/definitions/ApiErrorResponse'
501:
description: This feature is not implemented in Scalr.
schema:
$ref: '#/definitions/ApiErrorResponse'
503:
description: The service is currently unavailable.
schema:
$ref: '#/definitions/ApiErrorResponse'
tags:
- Images
/{accountId}/images/{imageId}/actions/replace/:
parameters:
- description: The ID of the Account scoping this request.
in: path
name: accountId
required: true
type: integer
- description: The identifier of the old Image object.
in: path
maxLength: 36
minLength: 36
name: imageId
pattern: '[A-Fa-f0-9]{8}-([A-Fa-f0-9]{4}-){3}[A-Fa-f0-9]{12}'
required: true
type: string
x-references:
$ref: '#/definitions/Image'
post:
description: Replace the current Image with a specified one for all Roles which use this Image.
parameters:
- description: Replace image options.
in: body
name: replaceImageRequest
required: true
schema:
properties:
deprecateOldImage:
default: false
description: If the value is true Scalr will mark old Image as deprecated.
type: boolean
newImage:
$ref: '#/definitions/ImageForeignKey'
description: The identifier of a new Image object.
scope:
default:
- account
description: Make a replacement for all Roles from the selected scopes. If you choose to make a replacement including lower scope you must also choose higher scope values.
items:
enum:
- account
- environment
type: string
type: array
required:
- newImage
responses:
200:
description: A list of RoleScopeIdentity objects.
schema:
$ref: '#/definitions/RoleScopeIdentityListResponse'
400:
description: A client-side error was made.
schema:
$ref: '#/definitions/ApiErrorResponse'
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
401:
description: The request was not authenticated.
schema:
$ref: '#/definitions/ApiErrorResponse'
x-errorCodes:
- description: The request was not properly authenticated.
name: BadAuthentication
403:
description: Insufficient permissions.
schema:
$ref: '#/definitions/ApiErrorResponse'
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
404:
description: Resource not found.
schema:
$ref: '#/definitions/ApiErrorResponse'
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
409:
description: Conflict with current state.
schema:
$ref: '#/definitions/ApiErrorResponse'
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 these settings cannot be applied, they either conflict with the current state or are invalid.
name: UnacceptableObjectConfiguration
422:
description: This request was well-formed but was rejected due to semantic errors.
schema:
$ref: '#/definitions/ApiErrorResponse'
x-errorCodes:
- description: Some of the configuration settings cannot be applied because they conflict with the current state.
name: ConfigurationMismatch
500:
description: A server-side error occurred.
schema:
$ref: '#/definitions/ApiErrorResponse'
501:
description: This feature is not implemented in Scalr.
schema:
$ref: '#/definitions/ApiErrorResponse'
503:
description: The service is currently unavailable.
schema:
$ref: '#/definitions/ApiErrorResponse'
tags:
- Images
/images/:
get:
description: List all the Images available in the global scope.
responses:
200:
description: A list of Image objects.
schema:
$ref: '#/definitions/ImageListResponse_2'
400:
description: A client-side error was made.
schema:
# --- truncated at 32 KB (127 KB total) ---
# Full source: https://raw.githubusercontent.com/api-evangelist/scalr/refs/heads/main/openapi/scalr-images-api-openapi.yml