swagger: '2.0' info: description: Manage Roles, Images, Environments and etc. title: Scalr Account Acl Roles Orchestration Logs API version: 1.0.0 basePath: /api/v1beta0/account produces: - application/json tags: - name: Orchestration Logs paths: /{envId}/orchestration-logs/: parameters: - description: The ID of the Environment scoping this request. in: path name: envId required: true type: integer get: description: List of all Orchestration logs. responses: 200: description: A list of LogEntrySummary objects. schema: $ref: '#/definitions/LogEntrySummaryListResponse' 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 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 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: - Orchestration Logs /{envId}/orchestration-logs/{logEntryId}/: parameters: - description: The ID of the Environment scoping this request. in: path name: envId required: true type: integer - description: The ID of a LogEntry object. in: path maxLength: 36 minLength: 36 name: logEntryId 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/LogEntry' get: description: Describes detailed information about a result of the orchestration. responses: 200: description: The JSON representation of a LogEntry object. schema: $ref: '#/definitions/LogEntryDetailsResponse' 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 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 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: - Orchestration Logs definitions: FarmForeignKey: properties: id: description: Identifier of the Farm. type: integer required: - id x-derived: $ref: '#/definitions/Farm' x-references: $ref: '#/definitions/Farm' ScriptVariableRemoteList: properties: category: description: The category of this Variable. type: string description: description: A description that explains what this Global Variable is used for. type: string hidden: description: Whether this Script Variable is hidden in Orchestration Rules or execute Script action. type: boolean integrationEndpoint: $ref: '#/definitions/WebhookEndpointForeignKey' locked: description: Whether this Script Variable value is locked in Orchestration Rules or execute Script action. type: boolean name: description: The Variable Name type: string required: description: Whether this Script Variable value is required in Orchestration Rules or execute Script action. type: boolean type: description: The type of Script Variable. enum: - ScriptVariableJson - ScriptVariableString - ScriptVariableList - ScriptVariableRemoteList type: string value: description: The value declared in the script level. This property can be redefined for not locked variables in Orhestration Rules or execute Script action. Also this field supports Global Variable interpolation. type: string required: - name - type - integrationEndpoint x-abstractType: $ref: '#/definitions/ScriptVariable' x-createOnly: - name x-discriminator: type ComposedUserIdentity: properties: email: description: Email of the User. format: email readOnly: true type: string id: description: Unique identifier of the User. type: integer required: - id ServerForeignKey: properties: id: description: Unique identifier for this Server. type: string required: - id x-derived: $ref: '#/definitions/Server' x-references: $ref: '#/definitions/Server' HostnameConfiguration: description: Farm Role hostname configuration. discriminator: type properties: domainName: description: Domain name template. This field supports Global Variable interpolation. Please note this property is available for AWS, Azure, VMware. For VMware it is not editable and set from IP Pool associated with primary network. type: string type: description: Hostname configuration type. enum: - TemplateHostnameConfiguration - WebhookHostnameConfiguration type: string required: - type x-concreteTypes: - $ref: '#/definitions/TemplateHostnameConfiguration' - $ref: '#/definitions/WebhookHostnameConfiguration' FarmLightsOutConfiguration: description: LightsOut configuration for a Farm. properties: autostart: description: Start a Farm automatically at the beginning of the allowed timeFrame. type: boolean enabled: description: Whether the LightsOut should be used or not. type: boolean notifications: description: Sends notification before Light-Out execution. items: $ref: '#/definitions/LightsOutNotification' type: array schedule: description: A schedule to run the Farm. items: $ref: '#/definitions/LightsOutTimeFrame' type: array shutdownBehavior: description: The method to shutdown a Farm. enum: - terminate - suspend type: string required: - shutdownBehavior - schedule - notifications NetworkCloudFeatures: description: Cloud specifics Farm Role Network configuration. discriminator: type properties: type: enum: - OpenstackNetworkCloudFeatures - AzureNetworkCloudFeatures type: string required: - type x-concreteTypes: - $ref: '#/definitions/OpenstackNetworkCloudFeatures' - $ref: '#/definitions/AzureNetworkCloudFeatures' CloudFeatures: description: Cloud specifics Farm Role configuration. discriminator: type properties: type: enum: - AwsCloudFeatures - AzureCloudFeatures - VmwareCloudFeatures - GceCloudFeatures - OpenstackCloudFeatures type: string required: - type x-concreteTypes: - $ref: '#/definitions/AwsCloudFeatures' - $ref: '#/definitions/AzureCloudFeatures' - $ref: '#/definitions/VmwareCloudFeatures' - $ref: '#/definitions/GceCloudFeatures' - $ref: '#/definitions/OpenstackCloudFeatures' x-createOnly: - type ScriptVariable: discriminator: type properties: category: description: The category of this Variable. type: string description: description: A description that explains what this Global Variable is used for. type: string hidden: description: Whether this Script Variable is hidden in Orchestration Rules or execute Script action. type: boolean locked: description: Whether this Script Variable value is locked in Orchestration Rules or execute Script action. type: boolean name: description: The Variable Name type: string required: description: Whether this Script Variable value is required in Orchestration Rules or execute Script action. type: boolean type: description: The type of Script Variable. enum: - ScriptVariableJson - ScriptVariableString - ScriptVariableList - ScriptVariableRemoteList type: string value: description: The value declared in the script level. This property can be redefined for not locked variables in Orhestration Rules or execute Script action. Also this field supports Global Variable interpolation. type: string required: - name - type x-concreteTypes: - $ref: '#/definitions/ScriptVariableString' - $ref: '#/definitions/ScriptVariableJson' - $ref: '#/definitions/ScriptVariableList' - $ref: '#/definitions/ScriptVariableRemoteList' x-createOnly: - name TemplateHostnameConfiguration: description: Template for hostname generation. properties: domainName: description: Domain name template. This field supports Global Variable interpolation. Please note this property is available for AWS, Azure, VMware. For VMware it is not editable and set from IP Pool associated with primary network. type: string template: description: Hostname template. This field supports Global Variable interpolation. type: string type: description: Hostname configuration type. enum: - TemplateHostnameConfiguration - WebhookHostnameConfiguration type: string required: - type x-abstractType: $ref: '#/definitions/HostnameConfiguration' x-discriminator: type FarmRoleAnsibleTowerConfiguration: properties: id: description: The Ansible Tower configuration identifier. maxLength: 36 minLength: 36 pattern: '[A-Fa-f0-9]{8}-([A-Fa-f0-9]{4}-){3}[A-Fa-f0-9]{12}' type: string name: description: The Ansible Tower configuration name. type: string scope: description: The scope of AnsiblTower bootstrap configuration. Property is returned only with FarmTemplates. enum: - role - farmrole readOnly: true type: string variables: description: The Ansible Tower variables to override. JSON or YAML representation. type: string ChefServerBootstrapConfiguration: description: Farm Role Chef server configuration. Please note that almost all properties are read-only if Chef is configured at higher scope and it is only possible to override "environment" and "attributes" properties. properties: attributes: description: The attributes are specific details about a node. type: string daemonize: description: Whether Run Chef client as a daemon. type: boolean enabled: default: false type: boolean environment: default: _default description: Identifier of the Chef Environment. type: string logLevel: default: auto description: The level of the chef log. enum: - auto - debug - info - warn - error - fatal type: string node: description: The Chef node name. type: string roleName: description: A Chef role which to be applied for bootstrapping. Please note that this property can not be set simultaneously with runList property. type: string runList: description: A list of Chef recipes / roles which is applied. It defines all information necessary for Chef to configure a node. type: string scope: enum: - scalr - account - environment - farm - farmrole - role - server readOnly: true type: string server: $ref: '#/definitions/ChefServerForeignKey' description: Identifier of the Chef Server. sslVerificationMode: default: none enum: - auto - peer - none type: string template: description: A cookbook template is an Embedded Ruby template that is used to dynamically generate static text files. type: string type: description: Bootstrap configuration type. enum: - ChefServerBootstrapConfiguration - ChefSoloBootstrapConfiguration - AnsibleTowerBootstrapConfiguration type: string workflow: default: classic description: Chef workflow. enum: - classic - policyfiles type: string required: - type - server x-abstractType: $ref: '#/definitions/ChefBootstrapConfiguration' x-discriminator: type CloudNetworkForeignKey: properties: id: type: string required: - id SecurityGroupIdentity: properties: id: description: Identifier of the SecurityGroup object. type: string name: description: The name of the Security Group which can be used to set a default Security Group when ID is unknown. type: string required: - id FarmLockOptions: properties: comment: description: A brief comment or explanation. readOnly: true type: string unlockPermission: description: 'The field may have a three possible values: ''owner'', ''team'' or ''anyone''. Owner - operation is allowed only for the owner of the Farm Team - operation is allowed only for the members of the Farm''s Team. Anyone - operation is allowed for anybody who has access permissions to Farms.' enum: - owner - team - anyone readOnly: true type: string user: $ref: '#/definitions/UserForeignKey' description: The identifier of the User who locked a Farm. readOnly: true LightsOutTimeFrame: description: Time frame for the LightsOut schedule. properties: daysOfWeek: items: description: The days this rule is applied on. enum: - sun - mon - tue - wed - thu - fri - sat type: string type: array end: description: End of the frame. format: date-time type: string start: description: Start time. format: date-time type: string required: - daysOfWeek AwsCloudFeatures: description: AWS Farm Role configuration. Available only for AWS Farm Roles. properties: backupInstanceTypes: description: 'The list of instance types to use as a backup when Amazon capacity reached. Note: Instances will be used in order they have been passed.' items: $ref: '#/definitions/InstanceTypeForeignKey' type: array ebsOptimized: description: Enable EBS optimization for all instances of this Farm Role. Note that this option is available only for EBS-optimized instance types. type: boolean iamInstanceProfile: description: The Specific Amazon IAM instance profile. type: string spotInstances: $ref: '#/definitions/AwsSpotInstanceConfiguration' description: Spot Instance configuration for this Farm Role. type: enum: - AwsCloudFeatures - AzureCloudFeatures - VmwareCloudFeatures - GceCloudFeatures - OpenstackCloudFeatures type: string required: - type x-abstractType: $ref: '#/definitions/CloudFeatures' x-createOnly: - type x-discriminator: type LightsOutNotification: discriminator: type properties: minutes: description: A time prior to Lights-out execution the notification to be sent. type: integer type: description: A type of the notification to send. enum: - LightsOutEmailNotification - LightsOutFarmOwnerNotification type: string required: - type - minutes x-concreteTypes: - $ref: '#/definitions/LightsOutEmailNotification' - $ref: '#/definitions/LightsOutFarmOwnerNotification' RoleCategory: properties: id: description: Identifier of the Role Category. readOnly: true type: integer name: description: The name of the Role Category. type: string scope: description: The Scope in which this Role Category is defined. enum: - scalr - account - environment - farm - farmrole - role - server readOnly: true type: string required: - name x-filterable: - id - name - scope x-usedIn: - /user/{envId}/role-categories/ - /user/{envId}/role-categories/{roleCategoryId}/ ChefServerForeignKey: properties: id: type: integer required: - id ApiPagination: properties: first: readOnly: true type: string last: readOnly: true type: string next: readOnly: true type: string prev: readOnly: true type: string RoleDeprecatedOptions: properties: deprecated: description: The timestamp at which this Role was deprecated. format: date-time readOnly: true type: string replacement: $ref: '#/definitions/RoleForeignKey' description: The suggested replacement Role foreign key for the current Role. readOnly: true AwsSpotInstanceConfiguration: description: EC2 Spot instance configuration. properties: enabled: description: Set to TRUE to enable launch the Farm Role Server as a Spot Instance. type: boolean maxPrice: description: The maximum price per hour that you are willing to pay for a Spot Instance. If empty, On-Demand price will be used. type: number required: - enabled ScriptVersionForeignKey: properties: script: $ref: '#/definitions/ScriptForeignKey' description: The Script this ScriptVersion is a version of. version: description: The Script version number. null is interpreted as the latest Version. type: string required: - script CloudSubnetForeignKey: properties: id: type: string required: - id ApplicationGroupForeignKey: properties: id: description: Identifier of the SecurityGroup object. type: string required: - id WebhookEndpoint: description: Webhook endpoint summary. properties: id: description: Webhook endpoint identifier. maxLength: 36 minLength: 36 pattern: '[A-Fa-f0-9]{8}-([A-Fa-f0-9]{4}-){3}[A-Fa-f0-9]{12}' type: string scope: enum: - scalr - account - environment - farm - farmrole - role - server type: string url: description: Endpoint URL. type: string ServerAlert: description: Alerts about server state properties: message: description: Full error message type: string occurred: description: Datetime alert occurred at format: date-time type: string status: description: Status of an alert enum: - failed - warning type: string type: description: Type of alert enum: - SCALARIZR_CONNECT - SCALARIZR_UPD_CLIENT_CONNECT - AWS_SYSTEM_STATUS - AWS_INSTANCE_STATUS - AWS_RETIREMENT type: string required: - type - occurred - status VmwareCloudFeatures: description: VMware Farm Role configuration. Required for VMware Farm Roles. properties: computeResource: description: Identifier of the VMware compute resource. type: string customizationSpec: description: Unique name of the specification. type: string dataStore: description: The data storage or storage pod identifier. Storage pod with enabled SDRS is allowed to pass only. type: string folder: description: A VMware folder. type: string hosts: description: The machine host addresses. If property is empty or not specified, host will be chosen by the Distributed Resource Scheduler. items: type: string type: array placementStrategy: default: manual description: Passing with scalr-auto value means enabling 'auto' mode (Compute resource will be selected by Scalr). The next properties computeResource, resourcePool, dataStore and hosts have to be empty or omitted. enum: - manual - scalr-auto type: string resourcePool: description: The resource pool identifier. type: string type: enum: - AwsCloudFeatures - AzureCloudFeatures - VmwareCloudFeatures - GceCloudFeatures - OpenstackCloudFeatures type: string required: - type - folder x-abstractType: $ref: '#/definitions/CloudFeatures' x-createOnly: - type x-discriminator: type ScalingConfiguration: properties: considerSuspendedServers: default: running description: By default Scalr considers all suspended servers as running when calculating the number of running instances to make a scaling decision. enum: - running - terminated type: string enabled: default: false type: boolean maxInstances: default: 2 type: integer minInstances: default: 1 type: integer rules: items: description: A list of Scaling Metrics' names. type: string readOnly: true type: array scalingBehavior: default: launch-terminate description: By default value is 'launch-terminate', Scalr autoscales by launching and terminating servers. If you change this options to 'suspend-resume' Scalr will automatically scale servers by suspending and resuming servers. enum: - suspend-resume - launch-terminate type: string x-usedIn: - /user/{envId}/farm-roles/{farmRoleId}/scaling/ LogEntrySummaryListResponse: properties: data: items: $ref: '#/definitions/LogEntrySummary' readOnly: true type: array errors: items: $ref: '#/definitions/ApiMessage' readOnly: true type: array meta: $ref: '#/definitions/ApiMetaContainer' readOnly: true pagination: $ref: '#/definitions/ApiPagination' readOnly: true warnings: items: $ref: '#/definitions/ApiMessage' readOnly: true type: array x-derived: $ref: '#/definitions/LogEntrySummary' x-usedIn: - /user/{envId}/orchestration-logs/ LogEntryDetailsResponse: properties: data: $ref: '#/definitions/LogEntry' readOnly: true errors: items: $ref: '#/definitions/ApiMessage' readOnly: true type: array meta: $ref: '#/definitions/ApiMetaContainer' readOnly: true warnings: items: $ref: '#/definitions/ApiMessage' readOnly: true type: array x-derived: $ref: '#/definitions/LogEntry' x-usedIn: - /user/{envId}/orchestration-logs/{logEntryId}/ SecurityConfiguration: properties: securityGroups: description: The list of the Security Groups associated to the Farm Role. Please note that this property is not available for GCE and VMware Farm Roles. It is required for AWS Farm Roles were was launched inside Amazon VPC. items: $ref: '#/definitions/SecurityGroupIdentity' type: array required: - securityGroups NetworkConfiguration: description: Farm Role network configuration. properties: hostname: $ref: '#/definitions/HostnameConfiguration' description: Hostname configuration networks: description: The network identifiers. items: $ref: '#/definitions/FarmRoleNetwork' type: array subnets: description: The subnet identifiers. items: $ref: '#/definitions/CloudSubnet' type: array IpPoolForeignKey: properties: id: description: Identifier of the IpPool configuration. maxLength: 36 minLength: 36 pattern: '[A-Fa-f0-9]{8}-([A-Fa-f0-9]{4}-){3}[A-Fa-f0-9]{12}' type: string required: - id LogEntry: properties: executionExitCode: description: The exit status code of the Script. The value is zero when the script is executed successfully and non-zero when it fails. readOnly: true type: integer executionTime: description: Total Script execution time in seconds. readOnly: true type: integer farm: $ref: '#/definitions/FarmForeignKey' description: Identifier of the Farm that the target Server is related to. readOnly: true farmRole: $ref: '#/definitions/FarmRoleForeignKey' description: Identifier of the Farm Role that the target Server is related to. readOnly: true id: description: Orchestration log entry identifier. maxLength: 36 minLength: 36 pattern: '[A-Fa-f0-9]{8}-([A-Fa-f0-9]{4}-){3}[A-Fa-f0-9]{12}' readOnly: true type: string result: description: The result of the Script execution. readOnly: true type: string scriptName: description: The name of the Script that is executed. readOnly: true type: string scriptVersion: $ref: '#/definitions/ScriptVersionForeignKey' description: The version of the Script that is executed. readOnly: true server: $ref: '#/definitions/ServerForeignKey' description: Identifier of the target Server. readOnly: true triggeredBy: description: The context that caused excecution of the Script. enum: - ui - api - system readOnly: true type: string x-filterable: - id - server - farm - triggeredBy x-usedIn: - /user/{envId}/orchestration-logs/{logEntryId}/ ScalrAgent: description: The information about Scalr Agent. properties: deployCommand: description: Command to launch Scalr Agent on your Server. readOnly: true type: string initializationStatus: $ref: '#/definitions/InitializationStatus' description: The detailed information about Scalr Agent initialization status. readOnly: true reachabilityStatus: $ref: '#/definitions/ReachabilityStatus' description: The detailed information about Scalr Agent reachability status check. readOnly: true version: description: The installed version of the Scalr Agent. readOnly: true type: string InstanceType: properties: cloudFeatures: $ref: '#/definitions/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 LightsOutEmailNotification: properties: email: description: The email address to send the notification. format: email type: string minutes: description: A time prior to Lights-out execution the notification to be sent. type: integer type: description: A type of the notification to send. enum: - LightsOutEmailNotification - LightsOutFarmOwnerNotification type: string required: - type - minutes - email x-abstractType: $ref: '#/definitions/LightsOutNotification' x-discriminator: type InstanceTypeForeignKey: properties: id: description: Identifier of the InstanceType object. type: string required: - id x-derived: $ref: '#/definitions/InstanceType' x-references: $ref: '#/definitions/InstanceType' ReachabilityStatus: properties: message: description: The reachability status description. readOnly: true type: string status: description: The status of the reachability check. enum: - insufficient-data - ok - failed readOnly: true type: string RoleForeignKey: properties: id: type: integer required: - id x-derived: $ref: '#/definitions/Role' x-references: $ref: '#/definitions/Role' CloudSubnet: properties: id: type: string networkId: description: Identifier of the Network this Subnet belongs to. readOnly: true type: string required: - id InstanceTypeCloudFeatures: description: Cloud specific Instance type configuration. discriminator: type properties: type: enum: - AwsInstanceTypeCloudFeatures type: string required: - type x-concreteTypes: - $ref: '#/definitions/AwsInstanceTypeCloudFeatures' UserForeignKey: properties: id: description: Unique identifier for an User. type: integer required: - id ComposedTeamIdentity: properties: id: description: Unique identifier for a Team. type: integer name: description: Team name. readOnly: true type: string required: - id IpAddressConfiguration: description: The Farm Role network ip configuration properties: ipAddress: description: The address of the Server by index. type: string serverIndex: description: The index of this Server in the Farm Role. type: integer type: description: The Type of the IP address. Openstack accepts OpenstackFloatingIP and GenericStaticIp. EC2 accepts AwsElasticIp and GenericStaticIp. Azure accepts AzureStaticPublicIp and GenericStaticIp. GCE accepts GceStaticExternalIp and GenericStaticIp. enum: - GenericStaticIp - AwsElasticIp - AzureStaticPublicIp - OpenstackFloatingIP - GceStaticExternalIp type: string Role: properties: builtinAutomation: items: enum: - base - chef - mysql - percona - postgresql - redis - apache - nginx - tomcat - haproxy - rabbitmq - memcached type: string type: array category: $ref: '#/definitions/RoleCategoryForeignKey' deprecated: $ref: '#/definitions/RoleDeprecatedOptions' description: The deprecation options associated with this Role. readOnly: true description: type: string id: readOnly: true type: integer name: description: The name of the Role. type: string os: $ref: '#/definitions/OsForeignKey' quickStart: description: Whether this Role is a QuickStart Role. type: boolean quickStartGroup: description: The name of the QuickStart Group. type: string scope: enum: - scalr - account - environment - farm - farmrole - role - server readOnly: true type: string tags: description: The list of tags that should be applied to the Role. items: type: string type: array useScalrAgent: description: Whether this Role uses Scalarizr, the Scalr agent. type: boolean required: - name - category - os x-createOnly: - useScalrAgent - builtinAutomation - os x-filterable: - id - name - os - category - scope - quickStart - quickStartGroup - useScalrAgent - builtinAutomation x-usedIn: - /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}/ ServerOperations: description: List of the temporary operations being processed in the Cloud Server by one or a number of requests. properties: name: description: Name of the current operation being processed on a Cloud server. enum: - resizing - rebooting type: string required: - name OsForeignKey: properties: id: description: An ID uniquely identifying this OS in Scalr. type: string required: - id x-derived: $ref: '#/definitions/Os' x-references: $ref: '#/definitions/Os' OpenstackNetworkCloudFeatures: description: Cloud specifics Farm Role Network configuration. properties: floatingIpPool: $ref: '#/definitions/CloudNetworkForeignKey' description: Floating IP identifier. type: enum: - OpenstackNetworkCloudFeatures - AzureNetworkCloudFeatures type: string required: - type x-abstractType: $ref: '#/definitions/NetworkCloudFeatures' x-discriminator: type ChefBootstrapConfiguration: description: Farm Role bootstrap configuration. Please note that this configuration is available only for Roles configured with Chef built-in automation. properties: attributes: description: The attributes are specific details about a node. type: string enabled: default: false type: boolean runList: description: A list of Chef recipes / roles which is applied. It defines all information necessary for Chef to configure a node. type: string scope: enum: - scalr - account - environment - farm - farmrole - role - server readOnly: true type: string template: description: A cookbook template is an Embedded Ruby template that is used to dynamically generate static text files. type: string type: description: Bootstrap configuration type. enum: - ChefServerBootstrapConfiguration - ChefSoloBootstrapConfiguration - AnsibleTowerBootstrapConfiguration type: string required: - type x-abstractType: $ref: '#/definitions/BootstrapConfiguration' x-concreteTypes: - $ref: '#/definitions/ChefServerBootstrapConfiguration' - $ref: '#/definitions/ChefSoloBootstrapConfiguration' x-discriminator: type GceCloudFeatures: description: GCE Farm Role configuration. Available only for GCE Farm Roles. properties: networkTags: description: The list of Network tags. These tags are used by networks to identify which instances are subject to certain firewall rules and network routes. Tags name must conform RFC1035. items: type: string type: array serviceAccount: $ref: '#/definitions/GceServiceAccount' description: The Service Accounts for Instances. type: enum: - AwsCloudFeatures - AzureCloudFeatures - VmwareCloudFeatures - GceCloudFeatures - OpenstackCloudFeatures type: string required: - type x-abstractType: $ref: '#/definitions/CloudFeatures' x-createOnly: - type x-discriminator: type ChefSoloBootstrapConfiguration: description: Farm Role Chef server configuration. Please note that almost all properties are read-only if Chef is configured at higher scope and it is only possible to override "environment" and "attributes" properties. properties: attributes: description: The attributes are specific details about a node. type: string cookbookUrl: description: Location from which cookbook can be run. type: string enabled: default: false type: boolean privateKey: description: The private key. Please note that this property is available only if urlType value is "git". type: string relativePath: description: The relative path witch can be used with any resource. Please note that this property is available only if urlType value is "git". type: string runList: description: A list of Chef recipes / roles which is applied. It defines all information necessary for Chef to configure a node. type: string scope: enum: - scalr - account - environment - farm - farmrole - role - server readOnly: true type: string template: description: A cookbook template is an Embedded Ruby template that is used to dynamically generate static text files. type: string type: description: Bootstrap configuration type. enum: - ChefServerBootstrapConfiguration - ChefSoloBootstrapConfiguration - AnsibleTowerBootstrapConfiguration type: string urlType: default: http description: The url type. enum: - git - http type: string required: - type - cookbookUrl x-abstractType: $ref: '#/definitions/ChefBootstrapConfiguration' x-discriminator: type AzureNetworkCloudFeatures: description: Cloud specifics Farm Role Network configuration. properties: applicationSecurityGroups: description: 'The Application Security Group identifiers. ' items: $ref: '#/definitions/ApplicationGroupForeignKey' type: array type: enum: - OpenstackNetworkCloudFeatures - AzureNetworkCloudFeatures type: string required: - type x-abstractType: $ref: '#/definitions/NetworkCloudFeatures' x-discriminator: type FarmRoleNetwork: properties: associatePublicIpAddress: description: Whether we need to associate a public IP address to the instance of the current Farm Role. type: boolean cloudFeatures: $ref: '#/definitions/NetworkCloudFeatures' description: Cloud specifics Farm Role Network configuration. id: type: string ipPool: $ref: '#/definitions/IpPoolForeignKey' description: Identifier of the IpPool configuration. primary: description: Whether this network is primary. Only one network from the list can be primary. If primary flag is omitted in all networks first network will be marked as primary. type: boolean staticIpMap: description: The configuration of IP addresses for Servers in the current Farm Role. Currently is being supported by EC2 and Openstack platform. items: $ref: '#/definitions/IpAddressConfiguration' type: array subnets: description: The subnet identifiers. items: $ref: '#/definitions/CloudSubnetForeignKey' type: array required: - id LightsOutFarmOwnerNotification: properties: minutes: description: A time prior to Lights-out execution the notification to be sent. type: integer type: description: A type of the notification to send. enum: - LightsOutEmailNotification - LightsOutFarmOwnerNotification type: string required: - type - minutes x-abstractType: $ref: '#/definitions/LightsOutNotification' 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 GceServiceAccount: properties: email: description: Email address of the service account. format: email type: string required: - email BootstrapConfiguration: description: Farm Role bootstrap configuration. Please note that this configuration is available only for Roles configured with Chef built-in automation. discriminator: type properties: enabled: default: false type: boolean type: description: Bootstrap configuration type. enum: - ChefServerBootstrapConfiguration - ChefSoloBootstrapConfiguration - AnsibleTowerBootstrapConfiguration type: string required: - type x-concreteTypes: - $ref: '#/definitions/ChefBootstrapConfiguration' - $ref: '#/definitions/AnsibleTowerBootstrapConfiguration' InitializationStatus: properties: message: description: The initialization status description. readOnly: true type: string status: description: The status of the Scalr Agent initialization. enum: - insufficient-data - initializing - ok - failed readOnly: true type: string ScriptForeignKey: properties: id: type: integer required: - id x-derived: $ref: '#/definitions/Script' x-references: $ref: '#/definitions/Script' ScriptVariableList: properties: allowedValues: description: The list of values to which the Global Variable value must correspond. items: $ref: '#/definitions/VariableAllowedValue' type: array category: description: The category of this Variable. type: string description: description: A description that explains what this Global Variable is used for. type: string hidden: description: Whether this Script Variable is hidden in Orchestration Rules or execute Script action. type: boolean locked: description: Whether this Script Variable value is locked in Orchestration Rules or execute Script action. type: boolean name: description: The Variable Name type: string required: description: Whether this Script Variable value is required in Orchestration Rules or execute Script action. type: boolean type: description: The type of Script Variable. enum: - ScriptVariableJson - ScriptVariableString - ScriptVariableList - ScriptVariableRemoteList type: string value: description: The value declared in the script level. This property can be redefined for not locked variables in Orhestration Rules or execute Script action. Also this field supports Global Variable interpolation. type: string required: - name - type - allowedValues x-abstractType: $ref: '#/definitions/ScriptVariable' x-createOnly: - name x-discriminator: type FarmRole: properties: advancedConfiguration: $ref: '#/definitions/FarmRoleAdvancedConfiguration' description: Advanced Farm Role configuration. alias: description: The Alias for this Farm Role. type: string 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: '#/definitions/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: '#/definitions/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. cloudLocation: description: The Cloud Location. type: string cloudPlatform: description: The Cloud Platform this Farm Role runs on. enum: - ec2 - gce - azure - cloudstack - idcf - openstack - ocs - otc - rackspacenguk - rackspacengus - hpcloud - mirantis - vio - cisco - vmware type: string farm: $ref: '#/definitions/FarmForeignKey' description: Farm this Farm Role should be added to. readOnly: true id: description: Unique identifier for this Farm Role. readOnly: true type: integer instanceType: $ref: '#/definitions/InstanceTypeForeignKey' description: The instance type that should be used for all instances related to this Farm Role. launchIndex: description: Launch index for this Farm Role. type: integer networking: $ref: '#/definitions/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. role: $ref: '#/definitions/RoleIdentity' description: Identifier of the Role. scaling: $ref: '#/definitions/ScalingConfiguration' description: Farm Role scaling configuration. security: $ref: '#/definitions/SecurityConfiguration' required: - role - cloudPlatform - cloudLocation - instanceType - alias x-createOnly: - cloudPlatform - cloudLocation x-filterable: - id - alias - farm - role - cloudPlatform - cloudLocation x-usedIn: - /user/{envId}/farm-roles/{farmRoleId}/servers/ - /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}/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}/ Os: properties: family: description: OS family. type: string generation: type: string id: description: An ID uniquely identifying this OS in Scalr. pattern: '[A-Za-z0-9-]+' type: string name: description: A human-readable name for this OS. type: string version: type: string required: - id - name - family - generation - version x-filterable: - id - name - family - generation x-usedIn: - /user/{envId}/os/{osId}/ LogEntrySummary: properties: executionExitCode: description: The exit status code of the Script. The value is zero when the script is executed successfully and non-zero when it fails. readOnly: true type: integer executionTime: description: Total Script execution time in seconds. readOnly: true type: integer farm: $ref: '#/definitions/FarmForeignKey' description: Identifier of the Farm that the target Server is related to. readOnly: true farmRole: $ref: '#/definitions/FarmRoleForeignKey' description: Identifier of the Farm Role that the target Server is related to. readOnly: true id: description: Orchestration log entry identifier. maxLength: 36 minLength: 36 pattern: '[A-Fa-f0-9]{8}-([A-Fa-f0-9]{4}-){3}[A-Fa-f0-9]{12}' readOnly: true type: string scriptName: description: The name of the Script that is executed. readOnly: true type: string scriptVersion: $ref: '#/definitions/ScriptVersionForeignKey' description: The version of the Script that is executed. readOnly: true server: $ref: '#/definitions/ServerForeignKey' description: Identifier of the target Server. readOnly: true triggeredBy: description: The context that caused excecution of the Script. enum: - ui - api - system readOnly: true type: string x-filterable: - id - server - farm - triggeredBy AnsibleTowerBootstrapConfiguration: description: Farm Role bootstrap configuration. Please note that this configuration is available only for Roles configured with Chef built-in automation. properties: configurations: description: The list of Ansible Tower Bootstrap Configuration identifiers. items: $ref: '#/definitions/FarmRoleAnsibleTowerConfiguration' type: array enabled: default: false type: boolean hostName: default: publicIp description: Hostname source. Selected value will be used as name for Ansible Tower host. enum: - publicIp - privateIp - hostname type: string type: description: Bootstrap configuration type. enum: - ChefServerBootstrapConfiguration - ChefSoloBootstrapConfiguration - AnsibleTowerBootstrapConfiguration type: string required: - type - configurations x-abstractType: $ref: '#/definitions/BootstrapConfiguration' x-discriminator: type Server: description: A Scalr Server. properties: alerts: description: Alerts about server state items: $ref: '#/definitions/ServerAlert' readOnly: true type: array 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`.' readOnly: true type: string cloudPlatform: description: The Cloud Platform this resource resides in. enum: - ec2 - gce - azure - cloudstack - idcf - openstack - ocs - otc - rackspacenguk - rackspacengus - hpcloud - mirantis - vio - cisco - vmware readOnly: true type: string cloudServerId: description: Identifier of the Server on the cloud. readOnly: true type: string farm: $ref: '#/definitions/FarmForeignKey' description: Identifier of the Farm this Server belongs to. readOnly: true farmRole: $ref: '#/definitions/FarmRoleForeignKey' description: Identifier of the Farm Role this Server belongs to. readOnly: true hostname: description: The hostname of this Server. readOnly: true type: string id: description: Unique identifier for this Server. maxLength: 36 minLength: 36 pattern: '[A-Fa-f0-9]{8}-([A-Fa-f0-9]{4}-){3}[A-Fa-f0-9]{12}' readOnly: true type: string index: description: The index of this Server in the Farm Role. readOnly: true type: integer instanceType: $ref: '#/definitions/InstanceTypeForeignKey' description: Instance type on the Cloud Platform. launchReason: description: The reason this Server was launched. readOnly: true type: string launched: description: The date at which this Server was launched. format: date-time readOnly: true type: string launchedBy: $ref: '#/definitions/ComposedUserIdentity' description: The identifier and email of the User who launched this Server. readOnly: true operations: description: Temporary states of the Cloud Server being processed by one or a number of Requests. items: $ref: '#/definitions/ServerOperations' readOnly: true type: array privateIp: description: The private IP address of this Server. items: type: string readOnly: true type: array publicIp: description: The public IP address of this Server. items: type: string readOnly: true type: array scalrAgent: $ref: '#/definitions/ScalrAgent' description: The information about Scalr Agent. This property is available only for a servers which have Scalr agent installed. readOnly: true status: description: Server status. enum: - temporary - running - pending - pending_launch - initializing - importing - terminated - pending_terminate - pending_suspend - suspended - resuming readOnly: true type: string suspended: description: Datetime when server was suspended. format: date-time readOnly: true type: string x-filterable: - index - publicIp - privateIp - id - cloudServerId - status - cloudPlatform - cloudLocation - hostname - launchReason - launchedBy - farmRole - farm - instanceType x-usedIn: - /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}/ 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: '#/definitions/InstanceTypeCloudFeatures' x-discriminator: type ApiErrorResponse: description: Common response for erroneous requests. properties: errors: items: $ref: '#/definitions/ApiMessage' readOnly: true type: array meta: $ref: '#/definitions/ApiMetaContainer' readOnly: true warnings: items: $ref: '#/definitions/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 AzureCloudFeatures: description: Azure Farm Role configuration. Required for Azure Farm Roles. properties: availabilitySet: description: The identifier of the availability set. type: string resourceGroup: description: An Azure resource group. type: string storageAccount: description: Identifier of the general-purpose storage account. type: string type: enum: - AwsCloudFeatures - AzureCloudFeatures - VmwareCloudFeatures - GceCloudFeatures - OpenstackCloudFeatures type: string required: - type - resourceGroup x-abstractType: $ref: '#/definitions/CloudFeatures' x-createOnly: - type - resourceGroup x-discriminator: type FarmRoleAdvancedConfiguration: properties: abortInitializationOnOrchestrationFailure: description: Abort Server initialization when a Blocking HostInit or BeforeHostUp Script fails (non-zero exit code). type: boolean disableAgentHostnameManagement: description: 'General Scalr Agent option: Enable/Disable Scalr Agent management of hostname.' type: boolean disableAgentIptablesManagement: description: 'General Scalr Agent option: Enable/Disable Scalr Agent management of firewall.' type: boolean disableAgentNtpManagement: description: 'General Scalr Agent option: Enable/Disable Scalr Agent time synchronization.' type: boolean instanceName: description: The instance name in the cloud. Please note this property is available for AWS, OpenStack and VMware based Farm Roles. type: string rebootAfterHostInit: description: 'Orchestration HostInit behavior: Enable/Disable reboot after HostInit Scripts have executed.' type: boolean ScriptVariableString: properties: category: description: The category of this Variable. type: string description: description: A description that explains what this Global Variable is used for. type: string hidden: description: Whether this Script Variable is hidden in Orchestration Rules or execute Script action. type: boolean locked: description: Whether this Script Variable value is locked in Orchestration Rules or execute Script action. type: boolean name: description: The Variable Name type: string outputFormat: description: The formatting to apply when displaying this variable. type: string required: description: Whether this Script Variable value is required in Orchestration Rules or execute Script action. type: boolean type: description: The type of Script Variable. enum: - ScriptVariableJson - ScriptVariableString - ScriptVariableList - ScriptVariableRemoteList type: string validationPattern: description: The validation regular expresion to validate the value. type: string value: description: The value declared in the script level. This property can be redefined for not locked variables in Orhestration Rules or execute Script action. Also this field supports Global Variable interpolation. type: string required: - name - type x-abstractType: $ref: '#/definitions/ScriptVariable' x-createOnly: - name x-discriminator: type WebhookHostnameConfiguration: description: Webhook endpoint configuration to obtain hostname. properties: domainName: description: Domain name template. This field supports Global Variable interpolation. Please note this property is available for AWS, Azure, VMware. For VMware it is not editable and set from IP Pool associated with primary network. type: string endpoint: $ref: '#/definitions/WebhookEndpointForeignKey' description: Webhook endpoint to obtain hostname. type: description: Hostname configuration type. enum: - TemplateHostnameConfiguration - WebhookHostnameConfiguration type: string required: - type - endpoint x-abstractType: $ref: '#/definitions/HostnameConfiguration' x-discriminator: type VariableAllowedValue: properties: label: description: The Variable Value label. type: string value: description: The Variable value. type: string required: - value Script: properties: added: format: date-time readOnly: true type: string blockingDefault: description: Whether this Script is blocking by default. This can be overridden in the Orchestration Rules that use this Script. type: boolean deprecated: default: false description: Whether the Script is deprecated. type: boolean description: type: string id: readOnly: true type: integer lastChanged: format: date-time readOnly: true type: string name: description: The name of the Script. type: string osType: description: Type of OS this Script should execute on. This will influence Orchestration Rules, and will impact the validation rules applied to the ScriptVersions. enum: - linux - windows - cross-platform type: string requireAdminPrivileges: default: false description: Whether the Script requires root/Administrator privileges to be executed. type: boolean scope: enum: - scalr - account - environment - farm - farmrole - role - server readOnly: true type: string tags: description: The list of tags that should be applied to the Script. items: type: string type: array timeoutDefault: description: The time after which Scalr will abort the execution of this Script, in seconds. This can be overridden in the Orchestration Rules that use this Script. type: integer variables: description: The list of Script variables for the current script. items: $ref: '#/definitions/ScriptVariable' type: array required: - name - osType x-createOnly: - osType x-filterable: - id - name - osType - blockingDefault - scope - deprecated - requireAdminPrivileges x-usedIn: - /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/ RoleCategoryForeignKey: properties: id: description: Identifier of the Role Category. type: integer required: - id x-derived: $ref: '#/definitions/RoleCategory' x-references: $ref: '#/definitions/RoleCategory' RoleIdentity: properties: deprecated: $ref: '#/definitions/RoleDeprecatedOptions' id: type: integer required: - id x-derived: $ref: '#/definitions/Role' x-references: $ref: '#/definitions/Role' OpenstackCloudFeatures: description: OpenStack Farm Role configuration. Available only for OpenStack Farm Roles. properties: disableKeyPairManagement: default: false description: Whether this Farm Role's Servers would be launched with disabled access management to be able to use credentials that are bundled into the Image. type: boolean type: enum: - AwsCloudFeatures - AzureCloudFeatures - VmwareCloudFeatures - GceCloudFeatures - OpenstackCloudFeatures type: string required: - type x-abstractType: $ref: '#/definitions/CloudFeatures' x-createOnly: - type x-discriminator: type ScriptVariableJson: properties: category: description: The category of this Variable. type: string description: description: A description that explains what this Global Variable is used for. type: string hidden: description: Whether this Script Variable is hidden in Orchestration Rules or execute Script action. type: boolean locked: description: Whether this Script Variable value is locked in Orchestration Rules or execute Script action. type: boolean name: description: The Variable Name type: string required: description: Whether this Script Variable value is required in Orchestration Rules or execute Script action. type: boolean type: description: The type of Script Variable. enum: - ScriptVariableJson - ScriptVariableString - ScriptVariableList - ScriptVariableRemoteList type: string value: description: The value declared in the script level. This property can be redefined for not locked variables in Orhestration Rules or execute Script action. Also this field supports Global Variable interpolation. type: string required: - name - type x-abstractType: $ref: '#/definitions/ScriptVariable' x-createOnly: - name x-discriminator: type FarmRoleForeignKey: properties: id: description: Unique identifier for this Farm Role. type: integer required: - id x-derived: $ref: '#/definitions/FarmRole' x-references: $ref: '#/definitions/FarmRole' Farm: properties: description: type: string id: description: Identifier of the Farm. readOnly: true type: integer launchOrder: default: simultaneous enum: - simultaneous - sequential type: string lightsOut: $ref: '#/definitions/FarmLightsOutConfiguration' description: Farm launch and shutdown schedule management. locked: $ref: '#/definitions/FarmLockOptions' description: This property available only for locked Farm and included options with which the Farm has been locked. readOnly: true name: type: string owner: $ref: '#/definitions/ComposedUserIdentity' status: description: Farm status. enum: - running - suspended - terminated - pending_terminate - pending_launch readOnly: true type: string teams: description: List of the Teams that have access to this Farm. items: $ref: '#/definitions/ComposedTeamIdentity' type: array timezone: type: string required: - name x-filterable: - id - name - project - launchOrder - owner - teams - timezone - status x-usedIn: - /user/{envId}/farms/{farmId}/servers/ - /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/ WebhookEndpointForeignKey: properties: id: description: Webhook endpoint identifier. type: string required: - id x-derived: $ref: '#/definitions/WebhookEndpoint' x-references: $ref: '#/definitions/WebhookEndpoint' 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