---
title: "Admin Assign Targets"
method: POST
path: "/admin/surveys/{survey_id}/targets"
---

# Admin Assign Targets

`POST /admin/surveys/{survey_id}/targets`

## Request

- Base URL: `https://api.local-mcp.com` (the document declares no server; this is the origin it was published from)
- URL: `https://api.local-mcp.com/admin/surveys/{survey_id}/targets`
- Auth: none declared. Required headers: `x-admin-key`

Bulk-assign machines to a survey (idempotent — ON CONFLICT DO NOTHING).

Fatigue cap (spec §14.2): by default, skip any machine that ANSWERED a DIFFERENT survey in the
last 30 days — repeated (blocking) surveys read as nagging and drive uninstalls, and that's
impossible to undo once you've burned users. Pass ?ignore_fatigue=true for a deliberate re-survey.

## Path parameters

- `survey_id` integer, required

## Query parameters

- `ignore_fatigue` boolean

## Headers

- `x-admin-key` string, required

## Request body

- TargetsBody
  - `machine_ids` unknown[], required
    - unknown
  - `confirm` boolean

## Response `200`

Successful Response

- unknown

## Other responses

- `422`: Validation Error

---

[API](https://skmtc.dev/local-mcp/apis/lmcp-api.md) · [All operations](https://skmtc.dev/local-mcp/apis/lmcp-api/llms.txt) · [OpenAPI document](https://skmtc.dev/local-mcp/apis/lmcp-api/revisions/f1f1c502623a?raw)
