---
title: "Получить артикулы строк документа для покупателя"
method: GET
path: "/api/v1/docflow/flow/documents/{id}/articles"
tags: ["Docflow flow"]
---

# Получить артикулы строк документа для покупателя

`GET /api/v1/docflow/flow/documents/{id}/articles`

## Request

- Base URL: `https://erp.akeda.ru`
- URL: `https://erp.akeda.ru/api/v1/docflow/flow/documents/{id}/articles`
- Auth: one of:
  - HTTP bearer
  - OAuth 2 (authorization code, authorization URL `https://erp.akeda.ru/oauth2/authorize`, token URL `https://erp.akeda.ru/oauth2/token`, scopes: `akeda:delegate`)

Что уйдёт покупателю в ДопСведТов@АртикулТов и @КодТов по каждой строке своего счёта, акта, накладной, УПД или УКД и откуда это взято: основной SKU, артикул производителя, артикул канала, ручная правка строки или ничего. Выбор идёт по настройке контрагента «Артикул товара в документах» (akeda_go_docflow_contact_paper_settings); вариант без своего артикула берёт артикул семейства (с шаблоном — «артикул-размер»); у товара без настроенного артикула уходит основной SKU с предупреждением, у кода запасного хода нет. Тот же выбор печатает графу «Код» бланка и собирает XML. editable отвечает, можно ли ещё править строки командой articles: после своей КЭП под файлом или отправки по ЭДО — нельзя. Входящие бумаги и бумаги без строк — 409 docflow.flow.line_articles_kind.

## Path parameters

- `id` string, uuid, required

## Headers

- `X-Tenant` string, required

## Response `200`

Артикулы строк документа

- DocflowFlowArticles: Артикулы строк документа и настройка покупателя, по которой они выбраны.
  - `document_id` string, uuid, required
  - `version` integer, required: Редакция документа, по которой выбраны артикулы
  - `contact_id` string, uuid
  - `setting` DocflowContactPaperSetting, required: Какой артикул и код товара уходят контрагенту в его документах. Настройка модуля docflow, ключ — контрагент; карточку контрагента она не меняет.
    - `contact_id` string, uuid, required
    - `article_source` 'sku' | 'manufacturer' | 'channel' | 'none', required: Источник артикула или кода: sku — основной артикул номенклатуры, manufacturer — артикул производителя, channel — артикул канала, none — не передавать
    - `article_channel` string: Пространство source_ref артикула канала; только при article_source=channel
    - `code_source` 'sku' | 'manufacturer' | 'channel' | 'none', required: Источник артикула или кода: sku — основной артикул номенклатуры, manufacturer — артикул производителя, channel — артикул канала, none — не передавать
    - `code_channel` string: Пространство source_ref кода; только при code_source=channel
    - `updated_at` string, date-time: Когда настройку меняли; отсутствует у ненастроенного контрагента
  - `setting_origin` 'contact' | 'channel' | 'default': Откуда действующая настройка: своя контрагента, канала продаж (ERP-2507) или умолчание
  - `channel` DocflowPaperChannelSetting: Настройка «Артикул и код в УПД» канала продаж (ERP-2507); source channel — артикул этого канала.
    - `channel_id` string, uuid, required
    - `channel_code` string, required
    - `channel_label` string, required
    - `article_source` 'sku' | 'manufacturer' | 'channel' | 'none': Источник артикула или кода: sku — основной артикул номенклатуры, manufacturer — артикул производителя, channel — артикул канала, none — не передавать
    - `article_channel` string
    - `code_source` 'sku' | 'manufacturer' | 'channel' | 'none': Источник артикула или кода: sku — основной артикул номенклатуры, manufacturer — артикул производителя, channel — артикул канала, none — не передавать
    - `code_channel` string
  - `editable` boolean, required: Строки ещё можно править командой articles: нет своей КЭП под файлом и отправки по ЭДО
  - `lines` DocflowFlowArticleLine[], required
    - `number` integer, required: Номер строки в документе с единицы
    - `line_id` string, uuid, required
    - `name` string, required
    - `product_id` string, uuid
    - `article` string, required: Что уйдёт в АртикулТов
    - `code` string, required: Что уйдёт в КодТов
    - `article_source` 'sku' | 'manufacturer' | 'channel' | 'manual' | 'none', required: Откуда взят артикул
    - `code_source` 'sku' | 'manufacturer' | 'channel' | 'manual' | 'none', required: Откуда взят код
    - `manual_article` string: Ручная правка артикула строки, если есть
    - `manual_code` string: Ручная правка кода строки, если есть
    - `fallback` boolean: Настроенного артикула у товара нет — ушёл основной SKU
  - `warnings` DocflowIssue[], required: Те же предупреждения, что покажет предпросмотр отправки: docflow.articles.fallback_sku, docflow.articles.code_missing
    - `code` string, required: Машинный код проверки. Стабилен: по нему интерфейс ищет перевод. Проверки формата приходят кодами docflow.formats.* (required, too_long, too_short, pattern, not_allowed, not_a_number, negative, too_many_decimals, too_many_digits, not_encodable, conflict, no_lines, unsupported), а перевод учётного документа в титул добавляет свои — docflow.edo.counterparty_required (в документе не указан контрагент) и docflow.edo.seller_title_missing (во входящем пакете нет формализованного документа продавца: отвечать титулом покупателя не на что, а принимать к учёту нечего). Приёмка к учёту добавляет свои пять: docflow.edo.contact_required (не выбран контрагент), docflow.edo.date_unreadable (дата документа продавца не разобралась), docflow.edo.no_lines (в титуле продавца нет ни одной товарной строки), docflow.edo.product_required (строке документа не сопоставлена номенклатура) и docflow.edo.sign_first (документ ещё не подписан: в учёт его принимают после подписи). Коды маркировки исходящего УПД добавляют три: docflow.edo.marks_missing (отгрузка проведена не со всеми кодами; params required и assigned), docflow.edo.marks_not_in_circulation (коды не в обороте у продавца по последнему статусу ГИС МТ; params value — сколько) и docflow.edo.marks_gtin_missing (товар передаётся по GTIN, а штрихкода GTIN у него нет)
    - `path` string, required: Путь до реквизита ИМЕНАМИ ФНС — именами приказа, а не нашими: этими же словами человек будет искать требование в письме налоговой. Например `Документ/СвСчФакт/СвПрод/Адрес`.
    - `line` integer: Номер товарной строки с единицы. Отсутствует, когда реквизит не про строку
    - `params` object: Подробности значениями: предел длины, перечень допустимых значений, пришедшее значение. Отсутствует, когда проверке нечего добавить.

## Other responses

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

---

[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)
