---
title: "Отметить коды заказа испорченными"
method: POST
path: "/api/v1/marking/orders/{id}/codes/spoil"
tags: ["Marking orders"]
---

# Отметить коды заказа испорченными

`POST /api/v1/marking/orders/{id}/codes/spoil`

## Request

- Base URL: `https://erp.akeda.ru`
- URL: `https://erp.akeda.ru/api/v1/marking/orders/{id}/codes/spoil`
- Auth: one of:
  - HTTP bearer
  - API key in header `X-Api-Key`
  - OAuth 2 (authorization code, authorization URL `https://erp.akeda.ru/oauth2/authorize`, token URL `https://erp.akeda.ru/oauth2/token`, scopes: `akeda:delegate`)

Ставит или снимает отметку «испорчен» у кодов заказа: этикетка утрачена или испорчена до ввода в оборот. Испорченный код не печатается и не попадает в отчёт о нанесении; в ЧЗ ничего не уходит, отметку можно снять. Код в отчёте о нанесении, который ещё обрабатывается, и код в обороте — 409 `marking.lifecycle.spoil_state`.

## Path parameters

- `id` string, uuid, required

## Headers

- `X-Tenant` string, required

## Request body

- MarkingSpoilInput
  - `code_ids` UUID[], required
  - `spoiled` boolean, required: true — отметить испорченными, false — снять отметку
  - `note` string: Что случилось: испорчена, утрачена

## Response `200`

Сколько кодов изменилось

- object
  - `changed` integer, required: У скольких кодов отметка изменилась

## Other responses

- `400`: Пустой список, больше 30 000 кодов или длинное пояснение
- `401`: Сессия, ключ или кабинет не подтверждены
- `403`: Текущая роль не имеет требуемого права
- `404`: Заказ или код не найден
- `409`: Код в обрабатываемом отчёте о нанесении или в обороте

---

[API](https://skmtc.dev/akeda/apis/akeda-erp-client-api.md) · [All operations](https://skmtc.dev/akeda/apis/akeda-erp-client-api/llms.txt) · [OpenAPI document](https://skmtc.dev/akeda/apis/akeda-erp-client-api/revisions/3c60ded179f2?raw)
