Cloud Management API 1.5

ServerArrays

A server array represents a logical group of instances and allows to resize(grow/shrink) that group based on certain elasticity parameters.

A server array just like a server always has a next_instance association, which will define the configuration to apply when a new instance is launched. But unlike a server which has a current_instance relationship, the server array has a current_instances relationship that gives the information about all the running instances in the array. Changes to the next_instance association prepares the configuration for the next instance that is to be launched in the array and will therefore not affect any of the currently running instances.

Actions

index

Lists server arrays.

By using the available filters, it is possible to retrieve server arrays that have common characteristics. For example, one can list: * arrays that have names that contain "my_server_array" * all arrays of a given deployment

URLs
GET /api/deployments/:deployment_id/server_arrays
GET /api/server_arrays
HTTP response code
200 OK
Content-type
application/vnd.rightscale.server_array;type=collection

Required roles

Parameters

name required type values regexp blank? description
filter no Array * * no See below for valid filter parameters.
view no String default, instance_detail * no Specifies how many attributes and/or expanded nested relationships to include.

Filters

name partial_match? description
cloud_href no The href of the Cloud to filter on.
deployment_href no The href of the Deployment to filter on.
name yes The name of the Server Array to filter on.

Example Responses

Click on a format below to see an example response for the 'default' view:

JSON XML
[{
  "name": "NICKNAME_787043355",
  "description": "DESCRIPTION_2344747241",
  "state": "enabled",
  "array_type": "alert",
  "instances_count": 0,
  "elasticity_params": {
    "bounds": {
      "min_count": "2",
      "max_count": "3"
    },
    "pacing": {
      "resize_up_by": "10",
      "resize_down_by": "5",
      "resize_calm_time": "6"
    },
    "schedule_entries": [
      {
        "day": "Monday",
        "time": "02:30",
        "min_count": 5,
        "max_count": 10
      },
      {
        "day": "Friday",
        "time": "14:00",
        "min_count": 6,
        "max_count": 11
      }
    ],
    "alert_specific_params": {
      "voters_tag_predicate": "pred1991490985",
      "decision_threshold": "50"
    }
  },
  "links": [
    {"rel":"self","href":"/api/server_arrays/1"},
    {"rel":"deployment","href":"/api/deployments/3"},
    {"rel":"current_instances","href":"/api/server_arrays/1/current_instances"},
    {"rel":"next_instance","href":"/api/clouds/888/instances/EJ772FA8DETC7"},
    {"rel":"alert_specs","href":"/api/server_arrays/1/alert_specs"},
    {"rel":"alerts","href":"/api/server_arrays/1/alerts"}
  ],
  "actions": [
    {
      "rel": "launch"
    },
    {
      "rel": "scale_up"
    },
    {
      "rel": "clone"
    }
  ]
},{
  "name": "NICKNAME_2094718046",
  "description": "DESCRIPTION_1577836750",
  "state": "enabled",
  "array_type": "alert",
  "instances_count": 0,
  "elasticity_params": {
    "bounds": {
      "min_count": "2",
      "max_count": "3"
    },
    "pacing": {
      "resize_up_by": "10",
      "resize_down_by": "5",
      "resize_calm_time": "6"
    },
    "schedule_entries": [
      {
        "day": "Monday",
        "time": "02:30",
        "min_count": 5,
        "max_count": 10
      },
      {
        "day": "Friday",
        "time": "14:00",
        "min_count": 6,
        "max_count": 11
      }
    ],
    "alert_specific_params": {
      "voters_tag_predicate": "pred1880222330",
      "decision_threshold": "50"
    }
  },
  "links": [
    {"rel":"self","href":"/api/server_arrays/2"},
    {"rel":"deployment","href":"/api/deployments/9"},
    {"rel":"current_instances","href":"/api/server_arrays/2/current_instances"},
    {"rel":"next_instance","href":"/api/clouds/888/instances/5G0K2MFHLGGND"},
    {"rel":"alert_specs","href":"/api/server_arrays/2/alert_specs"},
    {"rel":"alerts","href":"/api/server_arrays/2/alerts"}
  ],
  "actions": [
    {
      "rel": "launch"
    },
    {
      "rel": "scale_up"
    },
    {
      "rel": "clone"
    }
  ]
}]
<?xml version="1.0" encoding="UTF-8"?>
<server_arrays>
  <server_array>
    <name>NICKNAME_787043355</name>
    <description>DESCRIPTION_2344747241</description>
    <state>enabled</state>
    <array_type>alert</array_type>
    <instances_count>0</instances_count>
    <elasticity_params>
      <bounds>
        <min_count>2</min_count>
        <max_count>3</max_count>
      </bounds>
      <pacing>
        <resize_up_by>10</resize_up_by>
        <resize_down_by>5</resize_down_by>
        <resize_calm_time>6</resize_calm_time>
      </pacing>
      <schedule_entries>
        <schedule_entry>
          <day>Monday</day>
          <time>02:30</time>
          <min_count>5</min_count>
          <max_count>10</max_count>
        </schedule_entry>
        <schedule_entry>
          <day>Friday</day>
          <time>14:00</time>
          <min_count>6</min_count>
          <max_count>11</max_count>
        </schedule_entry>
      </schedule_entries>
      <alert_specific_params>
        <voters_tag_predicate>pred1991490985</voters_tag_predicate>
        <decision_threshold>50</decision_threshold>
      </alert_specific_params>
    </elasticity_params>
    <links>
      <link rel="self" href="/api/server_arrays/1"/>
      <link rel="deployment" href="/api/deployments/3"/>
      <link rel="current_instances" href="/api/server_arrays/1/current_instances"/>
      <link rel="next_instance" href="/api/clouds/888/instances/EJ772FA8DETC7"/>
      <link rel="alert_specs" href="/api/server_arrays/1/alert_specs"/>
      <link rel="alerts" href="/api/server_arrays/1/alerts"/>
    </links>
    <actions>
      <action rel="launch"/>
      <action rel="scale_up"/>
      <action rel="clone"/>
    </actions>
  </server_array>
  <server_array>
    <name>NICKNAME_2094718046</name>
    <description>DESCRIPTION_1577836750</description>
    <state>enabled</state>
    <array_type>alert</array_type>
    <instances_count>0</instances_count>
    <elasticity_params>
      <bounds>
        <min_count>2</min_count>
        <max_count>3</max_count>
      </bounds>
      <pacing>
        <resize_up_by>10</resize_up_by>
        <resize_down_by>5</resize_down_by>
        <resize_calm_time>6</resize_calm_time>
      </pacing>
      <schedule_entries>
        <schedule_entry>
          <day>Monday</day>
          <time>02:30</time>
          <min_count>5</min_count>
          <max_count>10</max_count>
        </schedule_entry>
        <schedule_entry>
          <day>Friday</day>
          <time>14:00</time>
          <min_count>6</min_count>
          <max_count>11</max_count>
        </schedule_entry>
      </schedule_entries>
      <alert_specific_params>
        <voters_tag_predicate>pred1880222330</voters_tag_predicate>
        <decision_threshold>50</decision_threshold>
      </alert_specific_params>
    </elasticity_params>
    <links>
      <link rel="self" href="/api/server_arrays/2"/>
      <link rel="deployment" href="/api/deployments/9"/>
      <link rel="current_instances" href="/api/server_arrays/2/current_instances"/>
      <link rel="next_instance" href="/api/clouds/888/instances/5G0K2MFHLGGND"/>
      <link rel="alert_specs" href="/api/server_arrays/2/alert_specs"/>
      <link rel="alerts" href="/api/server_arrays/2/alerts"/>
    </links>
    <actions>
      <action rel="launch"/>
      <action rel="scale_up"/>
      <action rel="clone"/>
    </actions>
  </server_array>
</server_arrays>

Click on a format below to see an example response for the 'instance_detail' view:

JSON XML
[{
  "name": "NICKNAME_787043355",
  "description": "DESCRIPTION_2344747241",
  "state": "enabled",
  "array_type": "alert",
  "instances_count": 0,
  "elasticity_params": {
    "bounds": {
      "min_count": "2",
      "max_count": "3"
    },
    "pacing": {
      "resize_up_by": "10",
      "resize_down_by": "5",
      "resize_calm_time": "6"
    },
    "schedule_entries": [
      {
        "day": "Monday",
        "time": "02:30",
        "min_count": 5,
        "max_count": 10
      },
      {
        "day": "Friday",
        "time": "14:00",
        "min_count": 6,
        "max_count": 11
      }
    ],
    "alert_specific_params": {
      "voters_tag_predicate": "pred1991490985",
      "decision_threshold": "50"
    }
  },
  "links": [
    {"rel":"self","href":"/api/server_arrays/1"},
    {"rel":"deployment","href":"/api/deployments/3"},
    {"rel":"current_instances","href":"/api/server_arrays/1/current_instances"},
    {"rel":"next_instance","href":"/api/clouds/888/instances/EJ772FA8DETC7"},
    {"rel":"alert_specs","href":"/api/server_arrays/1/alert_specs"},
    {"rel":"alerts","href":"/api/server_arrays/1/alerts"}
  ],
  "actions": [
    {
      "rel": "launch"
    },
    {
      "rel": "scale_up"
    },
    {
      "rel": "clone"
    }
  ],
  "next_instance": {
    "name": "NICKNAME_787043355",
    "created_at": "2023/10/09 11:06:01 +0000",
    "updated_at": "2023/10/09 11:06:01 +0000",
    "resource_uid": "d4cd33fe-6693-11ee-9391-0242ac110002",
    "links": [
      {"rel":"self","href":"/api/clouds/888/instances/EJ772FA8DETC7"},
      {"rel":"cloud","href":"/api/clouds/888"},
      {"rel":"deployment","href":"/api/deployments/3"},
      {"rel":"server_template","href":"/api/server_templates/1"},
      {"rel":"multi_cloud_image","href":"/api/multi_cloud_images/1","inherited_source":"server_template"},
      {"rel":"parent","href":"/api/server_arrays/1"},
      {"rel":"volume_attachments","href":"/api/clouds/888/instances/EJ772FA8DETC7/volume_attachments"},
      {"rel":"inputs","href":"/api/clouds/888/instances/EJ772FA8DETC7/inputs"},
      {"rel":"monitoring_metrics","href":"/api/clouds/888/instances/EJ772FA8DETC7/monitoring_metrics"},
      {"rel":"alerts","href":"/api/clouds/888/instances/EJ772FA8DETC7/alerts"},
      {"rel":"alert_specs","href":"/api/clouds/888/instances/EJ772FA8DETC7/alert_specs"}
    ],
    "cloud_specific_attributes": {},
    "associate_public_ip_address": true,
    "actions": [
      {
        "rel": "launch"
      }
    ],
    "public_ip_addresses": [

    ],
    "private_ip_addresses": [

    ],
    "pricing_type": "fixed",
    "locked": false,
    "state": "inactive"
  }
},{
  "name": "NICKNAME_2094718046",
  "description": "DESCRIPTION_1577836750",
  "state": "enabled",
  "array_type": "alert",
  "instances_count": 0,
  "elasticity_params": {
    "bounds": {
      "min_count": "2",
      "max_count": "3"
    },
    "pacing": {
      "resize_up_by": "10",
      "resize_down_by": "5",
      "resize_calm_time": "6"
    },
    "schedule_entries": [
      {
        "day": "Monday",
        "time": "02:30",
        "min_count": 5,
        "max_count": 10
      },
      {
        "day": "Friday",
        "time": "14:00",
        "min_count": 6,
        "max_count": 11
      }
    ],
    "alert_specific_params": {
      "voters_tag_predicate": "pred1880222330",
      "decision_threshold": "50"
    }
  },
  "links": [
    {"rel":"self","href":"/api/server_arrays/2"},
    {"rel":"deployment","href":"/api/deployments/9"},
    {"rel":"current_instances","href":"/api/server_arrays/2/current_instances"},
    {"rel":"next_instance","href":"/api/clouds/888/instances/5G0K2MFHLGGND"},
    {"rel":"alert_specs","href":"/api/server_arrays/2/alert_specs"},
    {"rel":"alerts","href":"/api/server_arrays/2/alerts"}
  ],
  "actions": [
    {
      "rel": "launch"
    },
    {
      "rel": "scale_up"
    },
    {
      "rel": "clone"
    }
  ],
  "next_instance": {
    "name": "NICKNAME_2094718046",
    "created_at": "2023/10/09 11:06:02 +0000",
    "updated_at": "2023/10/09 11:06:02 +0000",
    "resource_uid": "d5b7439a-6693-11ee-9391-0242ac110002",
    "links": [
      {"rel":"self","href":"/api/clouds/888/instances/5G0K2MFHLGGND"},
      {"rel":"cloud","href":"/api/clouds/888"},
      {"rel":"deployment","href":"/api/deployments/9"},
      {"rel":"server_template","href":"/api/server_templates/5"},
      {"rel":"multi_cloud_image","href":"/api/multi_cloud_images/2","inherited_source":"server_template"},
      {"rel":"parent","href":"/api/server_arrays/2"},
      {"rel":"volume_attachments","href":"/api/clouds/888/instances/5G0K2MFHLGGND/volume_attachments"},
      {"rel":"inputs","href":"/api/clouds/888/instances/5G0K2MFHLGGND/inputs"},
      {"rel":"monitoring_metrics","href":"/api/clouds/888/instances/5G0K2MFHLGGND/monitoring_metrics"},
      {"rel":"alerts","href":"/api/clouds/888/instances/5G0K2MFHLGGND/alerts"},
      {"rel":"alert_specs","href":"/api/clouds/888/instances/5G0K2MFHLGGND/alert_specs"}
    ],
    "cloud_specific_attributes": {},
    "associate_public_ip_address": true,
    "actions": [
      {
        "rel": "launch"
      }
    ],
    "public_ip_addresses": [

    ],
    "private_ip_addresses": [

    ],
    "pricing_type": "fixed",
    "locked": false,
    "state": "inactive"
  }
}]
<?xml version="1.0" encoding="UTF-8"?>
<server_arrays>
  <server_array>
    <name>NICKNAME_787043355</name>
    <description>DESCRIPTION_2344747241</description>
    <state>enabled</state>
    <array_type>alert</array_type>
    <instances_count>0</instances_count>
    <elasticity_params>
      <bounds>
        <min_count>2</min_count>
        <max_count>3</max_count>
      </bounds>
      <pacing>
        <resize_up_by>10</resize_up_by>
        <resize_down_by>5</resize_down_by>
        <resize_calm_time>6</resize_calm_time>
      </pacing>
      <schedule_entries>
        <schedule_entry>
          <day>Monday</day>
          <time>02:30</time>
          <min_count>5</min_count>
          <max_count>10</max_count>
        </schedule_entry>
        <schedule_entry>
          <day>Friday</day>
          <time>14:00</time>
          <min_count>6</min_count>
          <max_count>11</max_count>
        </schedule_entry>
      </schedule_entries>
      <alert_specific_params>
        <voters_tag_predicate>pred1991490985</voters_tag_predicate>
        <decision_threshold>50</decision_threshold>
      </alert_specific_params>
    </elasticity_params>
    <links>
      <link rel="self" href="/api/server_arrays/1"/>
      <link rel="deployment" href="/api/deployments/3"/>
      <link rel="current_instances" href="/api/server_arrays/1/current_instances"/>
      <link rel="next_instance" href="/api/clouds/888/instances/EJ772FA8DETC7"/>
      <link rel="alert_specs" href="/api/server_arrays/1/alert_specs"/>
      <link rel="alerts" href="/api/server_arrays/1/alerts"/>
    </links>
    <actions>
      <action rel="launch"/>
      <action rel="scale_up"/>
      <action rel="clone"/>
    </actions>
    <next_instance>
      <name>NICKNAME_787043355</name>
      <created_at>2023/10/09 11:06:01 +0000</created_at>
      <updated_at>2023/10/09 11:06:01 +0000</updated_at>
      <resource_uid>d4cd33fe-6693-11ee-9391-0242ac110002</resource_uid>
      <links>
        <link rel="self" href="/api/clouds/888/instances/EJ772FA8DETC7"/>
        <link rel="cloud" href="/api/clouds/888"/>
        <link rel="deployment" href="/api/deployments/3"/>
        <link rel="server_template" href="/api/server_templates/1"/>
        <link rel="multi_cloud_image" href="/api/multi_cloud_images/1" inherited_source="server_template"/>
        <link rel="parent" href="/api/server_arrays/1"/>
        <link rel="volume_attachments" href="/api/clouds/888/instances/EJ772FA8DETC7/volume_attachments"/>
        <link rel="inputs" href="/api/clouds/888/instances/EJ772FA8DETC7/inputs"/>
        <link rel="monitoring_metrics" href="/api/clouds/888/instances/EJ772FA8DETC7/monitoring_metrics"/>
        <link rel="alerts" href="/api/clouds/888/instances/EJ772FA8DETC7/alerts"/>
        <link rel="alert_specs" href="/api/clouds/888/instances/EJ772FA8DETC7/alert_specs"/>
      </links>
      <cloud_specific_attributes/>
      <associate_public_ip_address>true</associate_public_ip_address>
      <actions>
        <action rel="launch"/>
      </actions>
      <public_ip_addresses/>
      <private_ip_addresses/>
      <pricing_type>fixed</pricing_type>
      <locked>false</locked>
      <state>inactive</state>
    </next_instance>
  </server_array>
  <server_array>
    <name>NICKNAME_2094718046</name>
    <description>DESCRIPTION_1577836750</description>
    <state>enabled</state>
    <array_type>alert</array_type>
    <instances_count>0</instances_count>
    <elasticity_params>
      <bounds>
        <min_count>2</min_count>
        <max_count>3</max_count>
      </bounds>
      <pacing>
        <resize_up_by>10</resize_up_by>
        <resize_down_by>5</resize_down_by>
        <resize_calm_time>6</resize_calm_time>
      </pacing>
      <schedule_entries>
        <schedule_entry>
          <day>Monday</day>
          <time>02:30</time>
          <min_count>5</min_count>
          <max_count>10</max_count>
        </schedule_entry>
        <schedule_entry>
          <day>Friday</day>
          <time>14:00</time>
          <min_count>6</min_count>
          <max_count>11</max_count>
        </schedule_entry>
      </schedule_entries>
      <alert_specific_params>
        <voters_tag_predicate>pred1880222330</voters_tag_predicate>
        <decision_threshold>50</decision_threshold>
      </alert_specific_params>
    </elasticity_params>
    <links>
      <link rel="self" href="/api/server_arrays/2"/>
      <link rel="deployment" href="/api/deployments/9"/>
      <link rel="current_instances" href="/api/server_arrays/2/current_instances"/>
      <link rel="next_instance" href="/api/clouds/888/instances/5G0K2MFHLGGND"/>
      <link rel="alert_specs" href="/api/server_arrays/2/alert_specs"/>
      <link rel="alerts" href="/api/server_arrays/2/alerts"/>
    </links>
    <actions>
      <action rel="launch"/>
      <action rel="scale_up"/>
      <action rel="clone"/>
    </actions>
    <next_instance>
      <name>NICKNAME_2094718046</name>
      <created_at>2023/10/09 11:06:02 +0000</created_at>
      <updated_at>2023/10/09 11:06:02 +0000</updated_at>
      <resource_uid>d5b7439a-6693-11ee-9391-0242ac110002</resource_uid>
      <links>
        <link rel="self" href="/api/clouds/888/instances/5G0K2MFHLGGND"/>
        <link rel="cloud" href="/api/clouds/888"/>
        <link rel="deployment" href="/api/deployments/9"/>
        <link rel="server_template" href="/api/server_templates/5"/>
        <link rel="multi_cloud_image" href="/api/multi_cloud_images/2" inherited_source="server_template"/>
        <link rel="parent" href="/api/server_arrays/2"/>
        <link rel="volume_attachments" href="/api/clouds/888/instances/5G0K2MFHLGGND/volume_attachments"/>
        <link rel="inputs" href="/api/clouds/888/instances/5G0K2MFHLGGND/inputs"/>
        <link rel="monitoring_metrics" href="/api/clouds/888/instances/5G0K2MFHLGGND/monitoring_metrics"/>
        <link rel="alerts" href="/api/clouds/888/instances/5G0K2MFHLGGND/alerts"/>
        <link rel="alert_specs" href="/api/clouds/888/instances/5G0K2MFHLGGND/alert_specs"/>
      </links>
      <cloud_specific_attributes/>
      <associate_public_ip_address>true</associate_public_ip_address>
      <actions>
        <action rel="launch"/>
      </actions>
      <public_ip_addresses/>
      <private_ip_addresses/>
      <pricing_type>fixed</pricing_type>
      <locked>false</locked>
      <state>inactive</state>
    </next_instance>
  </server_array>
</server_arrays>

show

Shows the information of a single server array.

URLs
GET /api/deployments/:deployment_id/server_arrays/:id
GET /api/server_arrays/:id
HTTP response code
200 OK
Content-type
application/vnd.rightscale.server_array

Required roles

Parameters

name required type values regexp blank? description
view no String default, instance_detail * no Specifies how many attributes and/or expanded nested relationships to include.

Example Responses

Click on a format below to see an example response for the 'default' view:

JSON XML
{
  "name": "NICKNAME_787043355",
  "description": "DESCRIPTION_2344747241",
  "state": "enabled",
  "array_type": "alert",
  "instances_count": 0,
  "elasticity_params": {
    "bounds": {
      "min_count": "2",
      "max_count": "3"
    },
    "pacing": {
      "resize_up_by": "10",
      "resize_down_by": "5",
      "resize_calm_time": "6"
    },
    "schedule_entries": [
      {
        "day": "Monday",
        "time": "02:30",
        "min_count": 5,
        "max_count": 10
      },
      {
        "day": "Friday",
        "time": "14:00",
        "min_count": 6,
        "max_count": 11
      }
    ],
    "alert_specific_params": {
      "voters_tag_predicate": "pred1991490985",
      "decision_threshold": "50"
    }
  },
  "links": [
    {"rel":"self","href":"/api/server_arrays/1"},
    {"rel":"deployment","href":"/api/deployments/3"},
    {"rel":"current_instances","href":"/api/server_arrays/1/current_instances"},
    {"rel":"next_instance","href":"/api/clouds/888/instances/EJ772FA8DETC7"},
    {"rel":"alert_specs","href":"/api/server_arrays/1/alert_specs"},
    {"rel":"alerts","href":"/api/server_arrays/1/alerts"}
  ],
  "actions": [
    {
      "rel": "launch"
    },
    {
      "rel": "scale_up"
    },
    {
      "rel": "clone"
    }
  ]
}
<?xml version="1.0" encoding="UTF-8"?>
<server_array>
  <name>NICKNAME_787043355</name>
  <description>DESCRIPTION_2344747241</description>
  <state>enabled</state>
  <array_type>alert</array_type>
  <instances_count>0</instances_count>
  <elasticity_params>
    <bounds>
      <min_count>2</min_count>
      <max_count>3</max_count>
    </bounds>
    <pacing>
      <resize_up_by>10</resize_up_by>
      <resize_down_by>5</resize_down_by>
      <resize_calm_time>6</resize_calm_time>
    </pacing>
    <schedule_entries>
      <schedule_entry>
        <day>Monday</day>
        <time>02:30</time>
        <min_count>5</min_count>
        <max_count>10</max_count>
      </schedule_entry>
      <schedule_entry>
        <day>Friday</day>
        <time>14:00</time>
        <min_count>6</min_count>
        <max_count>11</max_count>
      </schedule_entry>
    </schedule_entries>
    <alert_specific_params>
      <voters_tag_predicate>pred1991490985</voters_tag_predicate>
      <decision_threshold>50</decision_threshold>
    </alert_specific_params>
  </elasticity_params>
  <links>
    <link rel="self" href="/api/server_arrays/1"/>
    <link rel="deployment" href="/api/deployments/3"/>
    <link rel="current_instances" href="/api/server_arrays/1/current_instances"/>
    <link rel="next_instance" href="/api/clouds/888/instances/EJ772FA8DETC7"/>
    <link rel="alert_specs" href="/api/server_arrays/1/alert_specs"/>
    <link rel="alerts" href="/api/server_arrays/1/alerts"/>
  </links>
  <actions>
    <action rel="launch"/>
    <action rel="scale_up"/>
    <action rel="clone"/>
  </actions>
</server_array>

Click on a format below to see an example response for the 'instance_detail' view:

JSON XML
{
  "name": "NICKNAME_787043355",
  "description": "DESCRIPTION_2344747241",
  "state": "enabled",
  "array_type": "alert",
  "instances_count": 0,
  "elasticity_params": {
    "bounds": {
      "min_count": "2",
      "max_count": "3"
    },
    "pacing": {
      "resize_up_by": "10",
      "resize_down_by": "5",
      "resize_calm_time": "6"
    },
    "schedule_entries": [
      {
        "day": "Monday",
        "time": "02:30",
        "min_count": 5,
        "max_count": 10
      },
      {
        "day": "Friday",
        "time": "14:00",
        "min_count": 6,
        "max_count": 11
      }
    ],
    "alert_specific_params": {
      "voters_tag_predicate": "pred1991490985",
      "decision_threshold": "50"
    }
  },
  "links": [
    {"rel":"self","href":"/api/server_arrays/1"},
    {"rel":"deployment","href":"/api/deployments/3"},
    {"rel":"current_instances","href":"/api/server_arrays/1/current_instances"},
    {"rel":"next_instance","href":"/api/clouds/888/instances/EJ772FA8DETC7"},
    {"rel":"alert_specs","href":"/api/server_arrays/1/alert_specs"},
    {"rel":"alerts","href":"/api/server_arrays/1/alerts"}
  ],
  "actions": [
    {
      "rel": "launch"
    },
    {
      "rel": "scale_up"
    },
    {
      "rel": "clone"
    }
  ],
  "next_instance": {
    "name": "NICKNAME_787043355",
    "created_at": "2023/10/09 11:06:01 +0000",
    "updated_at": "2023/10/09 11:06:01 +0000",
    "resource_uid": "d4cd33fe-6693-11ee-9391-0242ac110002",
    "links": [
      {"rel":"self","href":"/api/clouds/888/instances/EJ772FA8DETC7"},
      {"rel":"cloud","href":"/api/clouds/888"},
      {"rel":"deployment","href":"/api/deployments/3"},
      {"rel":"server_template","href":"/api/server_templates/1"},
      {"rel":"multi_cloud_image","href":"/api/multi_cloud_images/1","inherited_source":"server_template"},
      {"rel":"parent","href":"/api/server_arrays/1"},
      {"rel":"volume_attachments","href":"/api/clouds/888/instances/EJ772FA8DETC7/volume_attachments"},
      {"rel":"inputs","href":"/api/clouds/888/instances/EJ772FA8DETC7/inputs"},
      {"rel":"monitoring_metrics","href":"/api/clouds/888/instances/EJ772FA8DETC7/monitoring_metrics"},
      {"rel":"alerts","href":"/api/clouds/888/instances/EJ772FA8DETC7/alerts"},
      {"rel":"alert_specs","href":"/api/clouds/888/instances/EJ772FA8DETC7/alert_specs"}
    ],
    "cloud_specific_attributes": {},
    "associate_public_ip_address": true,
    "actions": [
      {
        "rel": "launch"
      }
    ],
    "public_ip_addresses": [

    ],
    "private_ip_addresses": [

    ],
    "pricing_type": "fixed",
    "locked": false,
    "state": "inactive"
  }
}
<?xml version="1.0" encoding="UTF-8"?>
<server_array>
  <name>NICKNAME_787043355</name>
  <description>DESCRIPTION_2344747241</description>
  <state>enabled</state>
  <array_type>alert</array_type>
  <instances_count>0</instances_count>
  <elasticity_params>
    <bounds>
      <min_count>2</min_count>
      <max_count>3</max_count>
    </bounds>
    <pacing>
      <resize_up_by>10</resize_up_by>
      <resize_down_by>5</resize_down_by>
      <resize_calm_time>6</resize_calm_time>
    </pacing>
    <schedule_entries>
      <schedule_entry>
        <day>Monday</day>
        <time>02:30</time>
        <min_count>5</min_count>
        <max_count>10</max_count>
      </schedule_entry>
      <schedule_entry>
        <day>Friday</day>
        <time>14:00</time>
        <min_count>6</min_count>
        <max_count>11</max_count>
      </schedule_entry>
    </schedule_entries>
    <alert_specific_params>
      <voters_tag_predicate>pred1991490985</voters_tag_predicate>
      <decision_threshold>50</decision_threshold>
    </alert_specific_params>
  </elasticity_params>
  <links>
    <link rel="self" href="/api/server_arrays/1"/>
    <link rel="deployment" href="/api/deployments/3"/>
    <link rel="current_instances" href="/api/server_arrays/1/current_instances"/>
    <link rel="next_instance" href="/api/clouds/888/instances/EJ772FA8DETC7"/>
    <link rel="alert_specs" href="/api/server_arrays/1/alert_specs"/>
    <link rel="alerts" href="/api/server_arrays/1/alerts"/>
  </links>
  <actions>
    <action rel="launch"/>
    <action rel="scale_up"/>
    <action rel="clone"/>
  </actions>
  <next_instance>
    <name>NICKNAME_787043355</name>
    <created_at>2023/10/09 11:06:01 +0000</created_at>
    <updated_at>2023/10/09 11:06:01 +0000</updated_at>
    <resource_uid>d4cd33fe-6693-11ee-9391-0242ac110002</resource_uid>
    <links>
      <link rel="self" href="/api/clouds/888/instances/EJ772FA8DETC7"/>
      <link rel="cloud" href="/api/clouds/888"/>
      <link rel="deployment" href="/api/deployments/3"/>
      <link rel="server_template" href="/api/server_templates/1"/>
      <link rel="multi_cloud_image" href="/api/multi_cloud_images/1" inherited_source="server_template"/>
      <link rel="parent" href="/api/server_arrays/1"/>
      <link rel="volume_attachments" href="/api/clouds/888/instances/EJ772FA8DETC7/volume_attachments"/>
      <link rel="inputs" href="/api/clouds/888/instances/EJ772FA8DETC7/inputs"/>
      <link rel="monitoring_metrics" href="/api/clouds/888/instances/EJ772FA8DETC7/monitoring_metrics"/>
      <link rel="alerts" href="/api/clouds/888/instances/EJ772FA8DETC7/alerts"/>
      <link rel="alert_specs" href="/api/clouds/888/instances/EJ772FA8DETC7/alert_specs"/>
    </links>
    <cloud_specific_attributes/>
    <associate_public_ip_address>true</associate_public_ip_address>
    <actions>
      <action rel="launch"/>
    </actions>
    <public_ip_addresses/>
    <private_ip_addresses/>
    <pricing_type>fixed</pricing_type>
    <locked>false</locked>
    <state>inactive</state>
  </next_instance>
</server_array>

create

Creates a new server array, and configures its corresponding "next" instance with the received parameters.

URLs
POST /api/deployments/:deployment_id/server_arrays
POST /api/server_arrays
HTTP response code
201 Created
Location
Href of the created ServerArray

Required roles

Parameters

name required type values regexp blank? description
server_array yes Hash * * no
server_array[array_type] yes String alert, queue * no The array type for the Server Array.
server_array[datacenter_policy] no Array * * no The Server Allocation policy. For a single Datacenter, use 'instance[datacenter_href]' instead.
server_array[datacenter_policy][][datacenter_href] yes String * * no The href of the Datacenter / Zone.
server_array[datacenter_policy][][max] yes String * * no Max instances (0 for unlimited).
server_array[datacenter_policy][][weight] yes String * * no Instance allocation (should total 100%).
server_array[deployment_href] no String * * no The href of the deployment for the Server Array.
server_array[description] no String * * no The description for the Server Array.
server_array[elasticity_params] yes Hash * * no
server_array[elasticity_params][alert_specific_params] no Hash * * no
server_array[elasticity_params][alert_specific_params][decision_threshold] no String * ^\d+$ no The percentage of servers that must agree in order to trigger an alert before an action is taken.
server_array[elasticity_params][alert_specific_params][voters_tag_predicate] no String * * no The Voters Tag that RightScale will use in order to determine when to scale up/down.
server_array[elasticity_params][bounds] yes Hash * * no
server_array[elasticity_params][bounds][max_count] no String * ^\d+$ no The maximum number of servers that can be operational at the same time in the server array.
server_array[elasticity_params][bounds][min_count] no String * ^\d+$ no The minimum number of servers that must be operational at all times in the server array.
server_array[elasticity_params][pacing] yes Hash * * no
server_array[elasticity_params][pacing][resize_calm_time] no String * ^\d+$ no The time (in minutes) on how long you want to wait before you repeat another action.
server_array[elasticity_params][pacing][resize_down_by] no String * ^\d+$ no The number of servers to scale down by.
server_array[elasticity_params][pacing][resize_up_by] no String * ^\d+$ no The number of servers to scale up by.
server_array[elasticity_params][queue_specific_params] no Hash * * no
server_array[elasticity_params][queue_specific_params][collect_audit_entries] no String * * no The audit SQS queue that will store audit entries.
server_array[elasticity_params][queue_specific_params][item_age] no Hash * * no
server_array[elasticity_params][queue_specific_params][item_age][algorithm] no String max_10, avg_10 * no The algorithm that defines how an item's age will be determined, either by the average age or max (oldest) age.
server_array[elasticity_params][queue_specific_params][item_age][max_age] no String * ^\d+$ no The threshold (in seconds) before a resize action occurs on the server array.
server_array[elasticity_params][queue_specific_params][item_age][regexp] no String * * no The regexp that helps the system determine an item's "age" in the queue. Example: created_at: (\d\d\d\d-\d\d-\d\d \d\d:\d\d:\d\d UTC)
server_array[elasticity_params][queue_specific_params][queue_size] no Hash * * no
server_array[elasticity_params][queue_specific_params][queue_size][items_per_instance] no String * ^\d+$ no Defines the ratio of worker instances per items in the queue. Example: If there are 50 items in the queue and "Items per instance" is set to 10, the server array will resize to 5 worker instances (50/10). Default = 10
server_array[elasticity_params][schedule] no Array * * no
server_array[elasticity_params][schedule][][day] yes String Sunday, Monday, Tuesday, Wednesday, Thursday, Friday, Saturday * no Specifies the day when an alert-based array resizes.
server_array[elasticity_params][schedule][][max_count] yes String * ^\d+$ no The maximum number of servers that must be operational at all times in the server array. NOTE: Any changes that are made to the min/max count in the server array schedule will overwrite the array's default min/max count settings.
server_array[elasticity_params][schedule][][min_count] yes String * ^\d+$ no The minimum number of servers that must be operational at all times in the server array. NOTE: Any changes that are made to the min/max count in the server array schedule will overwrite the array's default min/max count settings.
server_array[elasticity_params][schedule][][time] yes String * ^\d\d:\d\d$ no Specifies the time when an alert-based array resizes.
server_array[elasticity_params][workflow_specific_params] no Hash * * no
server_array[elasticity_params][workflow_specific_params][template] no String * * no The WAT used for scale up/down logic.
server_array[instance] yes Hash * * no
server_array[instance][associate_public_ip_address] no String true, false * no Specify whether or not you want a public IP assigned when this Instance is launched. Only applies to Network-enabled Instances. If this is not specified, it will default to true.
server_array[instance][cloud_href] yes String * * no The href of the Cloud that the array will be associated with.
server_array[instance][cloud_specific_attributes] no Hash * * no Cloud specific attributes that have no generic rightscale abstraction
server_array[instance][cloud_specific_attributes][admin_username] no String * * no The user that will be granted administrative privileges. Supported by AzureRM cloud only. For more information, review the documentation.
server_array[instance][cloud_specific_attributes][automatic_instance_store_mapping] no String true, false * no A flag indicating whether instance store mapping should be enabled. Not supported in all Clouds.
server_array[instance][cloud_specific_attributes][availability_set] no String * * no Availability set for raw instance. Supported by Azure v2 cloud only.
server_array[instance][cloud_specific_attributes][create_boot_volume] no String true, false * no If enabled, the instance will launch into volume storage. Otherwise, it will boot to local storage.
server_array[instance][cloud_specific_attributes][create_default_port_forwarding_rules] no String true, false * no Automatically create default port forwarding rules (enabled by default). Supported by Azure cloud only.
server_array[instance][cloud_specific_attributes][delete_boot_volume] no String true, false * no If enabled, the associated volume will be deleted when the instance is terminated.
server_array[instance][cloud_specific_attributes][disk_gb] no Integer * * no The size of root disk. Supported by UCA cloud only.
server_array[instance][cloud_specific_attributes][iam_instance_profile] no String * * yes The name or ARN of the IAM Instance Profile (IIP) to associate with the instance (Amazon only)
server_array[instance][cloud_specific_attributes][keep_alive_id] no String * * no The id of keep alive. Supported by UCA cloud only.
server_array[instance][cloud_specific_attributes][keep_alive_url] no String * * no The ulr of keep alive. Supported by UCA cloud only.
server_array[instance][cloud_specific_attributes][local_ssd_count] no String * * no Additional local SSDs. Supported by GCE cloud only
server_array[instance][cloud_specific_attributes][local_ssd_interface] no String * * no The type of SSD(s) to be created. Supported by GCE cloud only
server_array[instance][cloud_specific_attributes][max_spot_price] no String * * no Specify the max spot price you will pay for. Default is the on-demand price set by cloud.Only applies to clouds which support spot-pricing and when 'spot' is chosen as the 'pricing_type'. Can be blank or a float value >= 0.001, eg: 0.095, 0.123, 1.23, etc...
server_array[instance][cloud_specific_attributes][memory_mb] no Integer * * no The size of instance memory. Supported by UCA cloud only.
server_array[instance][cloud_specific_attributes][metadata] no String * * no Extra data used for configuration, in query string format.
server_array[instance][cloud_specific_attributes][num_cores] no Integer * * no The number of instance cores. Supported by UCA cloud only.
server_array[instance][cloud_specific_attributes][placement_tenancy] no String default, dedicated * no The tenancy of the server you want to launch. A server with a tenancy of dedicated runs on single-tenant hardware and can only be launched into a VPC.
server_array[instance][cloud_specific_attributes][preemptible] no String true, false * no Launch a preemptible instance. A preemptible instance costs much less, but lasts only 24 hours. It can be terminated sooner due to system demands. Supported by GCE cloud only.
server_array[instance][cloud_specific_attributes][pricing_type] no String fixed, spot * no Specify whether or not you want to utilize 'fixed' (on-demand) or 'spot' pricing. Defaults to 'fixed' and only applies to clouds which support spot instances. Can only be set on when creating a new Instance, Server, or ServerArray, or when updating a Server or ServerArray's next_instance.WARNING: By using spot pricing, you acknowledge that your instance/server/array may not be able to be launched (and arrays may be unable to grow) as newly launched instances might be stuck in bidding, and/or existing instances may be terminated at any time, due to the cloud's spot pricing changes and availability.
server_array[instance][cloud_specific_attributes][root_volume_performance] no String * * no The number of IOPS (I/O Operations Per Second) this root volume should support. Only available on clouds supporting performance provisioning.
server_array[instance][cloud_specific_attributes][root_volume_size] no String * * no The size for root disk. Not supported in all Clouds.
server_array[instance][cloud_specific_attributes][root_volume_type_uid] no String * * no The type of root volume for instance. Only available on clouds supporting root volume type.
server_array[instance][cloud_specific_attributes][service_account] no String * * no Email of service account for instance. Scope will default to cloud-platform. Supported by GCE cloud only.
server_array[instance][datacenter_href] no String * * no The href of the Datacenter / Zone. For multiple Datacenters, use 'datacenter_policy' instead.
server_array[instance][image_href] no String * * no The href of the Image to be used.
server_array[instance][inputs] no Enumerable * * no
server_array[instance][inputs][*] no String * * no The format used for passing 2.0-style Inputs. The key is the name of the Input, and the value is the value to assign to the Input. For more details on 2.0-style Inputs, please see Inputs#multi_update.
server_array[instance][inputs][][name] no String * * no The Input name.
server_array[instance][inputs][][value] no String * * no The value of that Input. Should be of the form 'text:my_value' or 'cred:MY_CRED' etc.
server_array[instance][instance_type_href] no String * * no The href of the Instance Type.
server_array[instance][ip_forwarding_enabled] no String true, false * no Allows this Instance to send and receive network traffic when the source and destination IP addresses do not match the IP address of this Instance.
server_array[instance][kernel_image_href] no String * * no The href of the Kernel Image.
server_array[instance][multi_cloud_image_href] no String * * no The href of the MultiCloudImage to be used.
server_array[instance][placement_group_href] no String * * no The href of the Placement Group.
server_array[instance][ramdisk_image_href] no String * * no The href of the Ramdisk Image.
server_array[instance][security_group_hrefs] no Array * * no The hrefs of the Security Groups.
server_array[instance][server_template_href] yes String * * no The ServerTemplate that will be used to create the worker instances in the server array.
server_array[instance][ssh_key_href] no String * * no The href of the SSH Key to be used.
server_array[instance][subnet_hrefs] no Array * * no The hrefs of the updated Subnets.
server_array[instance][user_data] no String * * no User data that RightScale automatically passes to your instance at boot time.
server_array[name] yes String * * no The name for the Server Array.
server_array[optimized] no String true, false * no A flag indicating whether Instances of this ServerArray should be optimized for high-performance volumes (e.g. Volumes supporting a specified number of IOPS). Not supported in all Clouds.
server_array[state] yes String enabled, disabled * no The status of the server array. If active, the server array is enabled for scaling actions.

update

Updates attributes of a single server array.

URLs
PUT /api/deployments/:deployment_id/server_arrays/:id
PUT /api/server_arrays/:id
HTTP response code
204 No Content

Required roles

Parameters

name required type values regexp blank? description
server_array yes Hash * * no
server_array[array_type] no String alert, queue * no The updated array type for the Server Array.
server_array[datacenter_policy] no Array * * no The Server Allocation policy. For a single Datacenter, use 'instance[datacenter_href]' instead.
server_array[datacenter_policy][][datacenter_href] yes String * * no The href of the Datacenter / Zone.
server_array[datacenter_policy][][max] yes String * * no Max instances (0 for unlimited).
server_array[datacenter_policy][][weight] yes String * * no Instance allocation (should total 100%).
server_array[deployment_href] no String * * no The updated href of the deployment for the Server Array.
server_array[description] no String * * no The updated description for the Server Array.
server_array[elasticity_params] no Hash * * no
server_array[elasticity_params][alert_specific_params] no Hash * * no
server_array[elasticity_params][alert_specific_params][decision_threshold] no String * ^\d+$ no The updated percentage of servers that must agree in order to trigger an alert before an action is taken.
server_array[elasticity_params][alert_specific_params][voters_tag_predicate] no String * * no The updated Voters Tag that RightScale will use in order to determine when to scale up/down.
server_array[elasticity_params][bounds] no Hash * * no
server_array[elasticity_params][bounds][max_count] no String * ^\d+$ no The updated maximum number of servers that can be operational at the same time in the server array.
server_array[elasticity_params][bounds][min_count] no String * ^\d+$ no The updated minimum number of servers that must be operational at all times in the server array.
server_array[elasticity_params][pacing] no Hash * * no
server_array[elasticity_params][pacing][resize_calm_time] no String * ^\d+$ no The updated time (in minutes) on how long you want to wait before you repeat another action.
server_array[elasticity_params][pacing][resize_down_by] no String * ^\d+$ no The updated number of servers to scale down by.
server_array[elasticity_params][pacing][resize_up_by] no String * ^\d+$ no The updated number of servers to scale up by.
server_array[elasticity_params][queue_specific_params] no Hash * * no
server_array[elasticity_params][queue_specific_params][collect_audit_entries] no String * * no The updated audit SQS queue that will store audit entries.
server_array[elasticity_params][queue_specific_params][item_age] no Hash * * no
server_array[elasticity_params][queue_specific_params][item_age][algorithm] no String max_10, avg_10 * no The updated algorithm that defines how an item's age will be determined, either by the average age or max (oldest) age.
server_array[elasticity_params][queue_specific_params][item_age][max_age] no String * ^\d+$ no The updated threshold (in seconds) before a resize action occurs on the server array.
server_array[elasticity_params][queue_specific_params][item_age][regexp] no String * * no The updated regexp that helps the system determine an item's "age" in the queue. Example: created_at: (\d\d\d\d-\d\d-\d\d \d\d:\d\d:\d\d UTC)
server_array[elasticity_params][queue_specific_params][queue_size] no Hash * * no
server_array[elasticity_params][queue_specific_params][queue_size][items_per_instance] no String * ^\d+$ no Defines the ratio of worker instances per items in the queue. Example: If there are 50 items in the queue and "Items per instance" is set to 10, the server array will resize to 5 worker instances (50/10). Default = 10
server_array[elasticity_params][schedule] no Array * * no
server_array[elasticity_params][schedule][][day] yes String Sunday, Monday, Tuesday, Wednesday, Thursday, Friday, Saturday * no The updated day when an alert-based array resizes.
server_array[elasticity_params][schedule][][max_count] yes String * ^\d+$ no The updated maximum number of servers that must be operational at all times in the server array. NOTE: Any changes that are made to the min/max count in the server array schedule will overwrite the array's default min/max count settings.
server_array[elasticity_params][schedule][][min_count] yes String * ^\d+$ no The updated minimum number of servers that must be operational at all times in the server array. NOTE: Any changes that are made to the min/max count in the server array schedule will overwrite the array's default min/max count settings.
server_array[elasticity_params][schedule][][time] yes String * ^\d\d:\d\d$ no The updated time when an alert-based array resizes.
server_array[elasticity_params][workflow_specific_params] no Hash * * no
server_array[elasticity_params][workflow_specific_params][template] no String * * no The WAT used for scale up/down logic.
server_array[name] no String * * no The updated name for the Server Array.
server_array[optimized] no String true, false * no A flag indicating whether Instances of this ServerArray should be optimized for high-performance volumes (e.g. Volumes supporting a specified number of IOPS). Not supported in all Clouds.
server_array[state] no String enabled, disabled * no The updated status of the server array. If active, the server array is enabled for scaling actions.

destroy

Deletes a given server array.

URLs
DELETE /api/deployments/:deployment_id/server_arrays/:id
DELETE /api/server_arrays/:id
HTTP response code
204 No Content

Required roles

clone

Clones a given server array.

URLs
POST /api/server_arrays/:id/clone
HTTP response code
201 Created
Location
Href of the newly cloned ServerArray

Required roles

current_instances

List the running instances belonging to the server array. See Instances#index for details. This action is slightly different from invoking the index action on the Instances resource with the filter "parent_href == /api/server_arrays/XX" because the latter will include 'next_instance' as well.

disable_runnable_bindings

Disables a list of runnable bindings associated with a given server.

URLs
POST /api/server_arrays/:id/disable_runnable_bindings
HTTP response code
204 No Content

Required roles

Parameters

name required type values regexp blank? description
runnable_binding_hrefs no Array * * no List of Runnable Bindings.

enable_runnable_bindings

Enables a list of runnable bindings associated with a given server.

URLs
POST /api/server_arrays/:id/enable_runnable_bindings
HTTP response code
204 No Content

Required roles

Parameters

name required type values regexp blank? description
runnable_binding_hrefs no Array * * no List of Runnable Bindings.

launch

Launches a new instance in the server array with the configuration defined in the 'next_instance'. This function is equivalent to invoking the launch action on the URL of this server_array's next_instance. See Instances#launch for details.

monitor

Run the monitoring workflow, if one is attached

URLs
POST /api/server_arrays/:id/monitor
HTTP response code
204 No Content

Required roles

multi_run_executable

Run an executable on all instances of this array. This function is equivalent to invoking the "multi_run_executable" action on the instances resource (Instances#multi_run_executable with the filter "parent_href == /api/server_arrays/XX"). To run an executable on a subset of the instances of the array, provide additional filters. To run an executable a single instance, invoke the action "run_executable" directly on the instance (see Instances#run_executable)

multi_terminate

Terminate all instances of this array. This function is equivalent to invoking the "multi_terminate" action on the instances resource ( Instances#multi_terminate with the filter "parent_href == /api/server_arrays/XX"). To terminate a subset of the instances of the array, provide additional filters. To terminate a single instance, invoke the action "terminate" directly on the instance (see Instances#terminate)

scale_down

Scale down the array by 1 instance using the array's scaling logic. For workflow- based arrays, this will scale using the defined workflow. For non-workflow based arrays this will scale using the same logic as if the system triggered the event.

URLs
POST /api/server_arrays/:id/scale_down
HTTP response code
204 No Content

Required roles

scale_up

Scale up the array by 1 instance using the array's scaling logic. For workflow- based arrays, this will scale using the defined workflow. For non-workflow based arrays this will scale using the same logic as if the system triggered the event.

URLs
POST /api/server_arrays/:id/scale_up
HTTP response code
204 No Content

Required roles