# REST Resource: targetInstances

- [Resource: TargetInstance](https://docs.cloud.google.com/compute/docs/reference/rest/beta/targetInstances#TargetInstance)
  - [JSON representation](https://docs.cloud.google.com/compute/docs/reference/rest/beta/targetInstances#TargetInstance.SCHEMA_REPRESENTATION)
- [Methods](https://docs.cloud.google.com/compute/docs/reference/rest/beta/targetInstances#METHODS_SUMMARY)

## Resource: TargetInstance

Represents a Target Instance resource.

You can use a target instance to handle traffic for one or more forwarding rules, which is ideal for forwarding protocol traffic that is managed by a single source. For example, ESP, AH, TCP, or UDP. For more information, read [Target instances](https://docs.cloud.google.com/compute/docs/protocol-forwarding#targetinstances).

| JSON representation |
|---|
| ``` { "kind": string, "id": string, "creationTimestamp": string, "name": string, "description": string, "zone": string, "natPolicy": enum, "instance": string, "selfLink": string, "network": string, "securityPolicy": string } ``` |

| Fields ||
|---|---|
| `kind` | `string` Output only. The type of the resource. Always `compute#targetInstance` for target instances. |
| `id` | `string (https://developers.google.com/discovery/v1/type-format format)` Output only. The unique identifier for the resource. This identifier is defined by the server. |
| `creationTimestamp` | `string` Output only. Creation timestamp in [RFC3339](https://www.ietf.org/rfc/rfc3339.txt) text format. |
| `name` | `string` Name of the resource. Provided by the client when the resource is created. The name must be 1-63 characters long, and comply with [RFC1035](https://www.ietf.org/rfc/rfc1035.txt). Specifically, the name must be 1-63 characters long and match the regular expression `[a-z]([-a-z0-9]*[a-z0-9])?` which means the first character must be a lowercase letter, and all following characters must be a dash, lowercase letter, or digit, except the last character, which cannot be a dash. |
| `description` | `string` An optional description of this resource. Provide this property when you create the resource. |
| `zone` | `string` Output only. URL of the zone where the target instance resides. You must specify this field as part of the HTTP request URL. It is not settable as a field in the request body. |
| `natPolicy` | `enum` Must have a value of `NO_NAT`. Protocol forwarding delivers packets while preserving the destination IP address of the forwarding rule referencing the target instance. |
| `instance` | `string` A URL to the virtual machine instance that handles traffic for this target instance. When creating a target instance, you can provide the fully-qualified URL or a valid partial URL to the desired virtual machine. For example, the following are all valid URLs: - `https://www.googleapis.com/compute/v1/projects/project/zones/zone/instances/instance` - `projects/project/zones/zone/instances/instance` - `zones/zone/instances/instance` <br /> |
| `selfLink` | `string` Output only. Server-defined URL for the resource. |
| `network` | `string` The URL of the network this target instance uses to forward traffic. If not specified, the traffic will be forwarded to the network that the default network interface belongs to. |
| `securityPolicy` | `string` Output only. The resource URL for the security policy associated with this target instance. |

| ## Methods ||
|---|---|
| ### `https://docs.cloud.google.com/compute/docs/reference/rest/beta/targetInstances/aggregatedList` | Retrieves an aggregated list of target instances. |
| ### `https://docs.cloud.google.com/compute/docs/reference/rest/beta/targetInstances/delete` | Deletes the specified TargetInstance resource. |
| ### `https://docs.cloud.google.com/compute/docs/reference/rest/beta/targetInstances/get` | Returns the specified TargetInstance resource. |
| ### `https://docs.cloud.google.com/compute/docs/reference/rest/beta/targetInstances/insert` | Creates a TargetInstance resource in the specified project and zone using the data included in the request. |
| ### `https://docs.cloud.google.com/compute/docs/reference/rest/beta/targetInstances/list` | Retrieves a list of TargetInstance resources available to the specified project and zone. |
| ### `https://docs.cloud.google.com/compute/docs/reference/rest/beta/targetInstances/setSecurityPolicy` | Sets the Google Cloud Armor security policy for the specified target instance. |
| ### `https://docs.cloud.google.com/compute/docs/reference/rest/beta/targetInstances/testIamPermissions` | Returns permissions that a caller has on the specified resource. |