---
title: "Create a shadow experiment target"
method: POST
path: "/v2/projects/{projectId}/endpoints/{endpointId}/shadowExperiments/{experimentId}/targets"
tags: ["ShadowExperimentService"]
---

# Create a shadow experiment target

`POST /v2/projects/{projectId}/endpoints/{endpointId}/shadowExperiments/{experimentId}/targets`

## Request

- Base URL: `https://api.together.ai`
- URL: `https://api.together.ai/v2/projects/{projectId}/endpoints/{endpointId}/shadowExperiments/{experimentId}/targets`
- Auth: HTTP bearer

Adds a deployment under the same endpoint as a target for mirrored requests.

## Path parameters

- `projectId` string, required: Project identifier.
- `endpointId` string, required: Endpoint identifier.
- `experimentId` string, required: Shadow experiment identifier.

## Request body

- DECreateShadowExperimentTargetRequest: Deployment under the parent endpoint that should receive mirrored requests from a shadow experiment.
  - `name` string, required: Human-readable target name, unique within the shadow experiment. At most 256 characters.
  - `targetDeploymentId` string, required: Deployment under the parent endpoint that receives mirrored traffic. It must not be a live traffic-split member or the source or target of an active rollout; traffic-split weight 0 warm-up targets are allowed.
  - `description` string: Optional free-form target description.

## Response `200`

OK

- DEShadowExperimentTarget: Deployment that receives mirrored traffic for a shadow experiment.
  - `id` string, required: Output only. Unique shadow experiment target identifier.
  - `experimentId` string, required: Output only. Shadow experiment this target belongs to.
  - `name` string, required: Human-readable target name, unique within the shadow experiment. At most 256 characters.
  - `targetDeploymentId` string, required: Deployment under the parent endpoint that receives mirrored traffic. It must not be a live traffic-split member or the source or target of an active rollout; traffic-split weight 0 warm-up targets are allowed.
  - `description` string: Optional free-form target description.
  - `createdAt` string, date-time, required: Output only. Timestamp when the target was created.
  - `updatedAt` string, date-time, required: Output only. Timestamp when the target was last updated.
  - `etag` string, required: Opaque version tag for optimistic concurrency control. Returned on read; set it on update or delete requests for consistent read-modify-write.

## Other responses

- `400`: Invalid request
- `default`: Default error response

## Changes

- **2026-10-22** `bb5257b3173a`: 1 info
  - endpoint added

[Operation history](https://skmtc.dev/together/apis/together-apis/changes/v2/projects/:projectId/endpoints/:endpointId/shadowExperiments/:experimentId/targets/post.md)

---

[API](https://skmtc.dev/together/apis/together-apis.md) - [All operations](https://skmtc.dev/together/apis/together-apis/llms.txt) - [OpenAPI document](https://skmtc.dev/together/apis/together-apis/revisions/93438ddac711?raw)
