---
title: "POST /projects/{project}/regions/{region}/instanceGroupManagers/{instanceGroupManager}/createInstances"
method: POST
path: "/projects/{project}/regions/{region}/instanceGroupManagers/{instanceGroupManager}/createInstances"
tags: ["regionInstanceGroupManagers"]
---

# POST /projects/{project}/regions/{region}/instanceGroupManagers/{instanceGroupManager}/createInstances

`POST /projects/{project}/regions/{region}/instanceGroupManagers/{instanceGroupManager}/createInstances`

Creates instances with per-instance configurations in this regional managed
instance group. Instances are created using the current instance template.
The create instances operation is marked DONE if
the createInstances request is successful. The underlying
actions take additional time. You must separately verify the status of thecreating or actions with the listmanagedinstances
method.

## Path parameters

- `project` string, required
- `region` string, required
- `instanceGroupManager` string, required

## Query parameters

- `requestId` string

## Request body

- RegionInstanceGroupManagersCreateInstancesRequest — RegionInstanceGroupManagers.createInstances
  - `instances` PerInstanceConfig[] — [Required] List of specifications of per-instance configs.
    - `preservedState` PreservedState — Preserved state for a given instance.
      - `disks` object — Preserved disks defined for this instance. This map is keyed with the device names of the disks.
      - `internalIPs` object — Preserved internal IPs defined for this instance. This map is keyed with the name of the network interface.
      - `metadata` object — Preserved metadata defined for this instance.
      - `externalIPs` object — Preserved external IPs defined for this instance. This map is keyed with the name of the network interface.
    - `fingerprint` string, byte — Fingerprint of this per-instance config. This field can be used in optimistic locking. It is ignored when inserting a per-instance config. An up-to-date fingerprint must be provided in order to update an existing per-instance configuration or the field needs to be unset.
    - `status` 'APPLYING' | 'DELETING' | 'EFFECTIVE' | 'NONE' | 'UNAPPLIED' | 'UNAPPLIED_DELETION' — The status of applying this per-instance configuration on the corresponding managed instance.
    - `name` string — The name of a per-instance configuration and its corresponding instance. Serves as a merge key during UpdatePerInstanceConfigs operations, that is, if a per-instance configuration with the same name exists then it will be updated, otherwise a new one will be created for the VM instance with the same name. An attempt to create a per-instance configuration for a VM instance that either doesn't exist or is not part of the group will result in an error.

## Response `200`

Successful response

---

[API](https://skmtc.net/google/apis/compute.md) · [All operations](https://skmtc.net/google/apis/compute/llms.txt) · [OpenAPI document](https://skmtc-service-staging.skmtc.workers.dev/v1/apis/google/compute/revisions/6120ed8969d4/schema)
