---
# System prepended metadata

title: Запросить код подписания пакета документов
tags: [arithmetic-integration]

---

---
tags: arithmetic-integration
title: Запросить код подписания пакета документов
---
# Запросить код подписания пакета документов

Данная операция может запрашиваться несколько раз для разных пакетов.
Важен только идентификатор пакета внутри тела сообщения.

При успешном запросе операция возвращает данные в формате json - ожидаемый код подписания.
При ошибке вернёт [ошибочный результат](/NIkubqRkR5STebBQd8690g#Формат-ошибочных-результатов).

## 1. Запрос выполнения операции

### Request --->

#### URL:
Стандартный, [см. шаблон обращения](/NIkubqRkR5STebBQd8690g#URL)

#### Headers:
* **apikey**: ==[apikey](/NIkubqRkR5STebBQd8690g?both#URL)==
* **Content-type**: application/json; charset=utf-8
* **Mq-Jrb-Exchange**: PersonalAccount
* **Mq-Jrb-Routing-key**: contract-reg-process-==base_source==
* **Mq-Jrb-Operation**: RequestContractPackageSigningCode
* **Mq-Jrb-Object**: ==phone==, ==contract_num==

:::info
:::spoiler Описание полей
==base_source==: код базы, определяется по выбранному населённому пункту для оформления, список которых можно получить через операцию [Получение списка регионов](/Rssiwh6CSr6QXB4JekBuuA))
==phone==: номер телефона клиента, 10 цифр, без "+7" или "8"
==contract_num==: номер договора, строка до 20 символов
:::

#### Body:
```json
{
    "personal_account": "XXXXXXXXX",
    "contract_num": "А99АААА999999999",
    "doc_pack_id": "xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx",
    "repeat": true/false
}
```

:::info
:::spoiler Описание полей
- **personal_account**: принадлежность личного кабинета(lk_arifmetika, lk_give_money)
- **contract_num**: номер договора, строка до 20 символов
- **doc_pack_id**: идентификатор пакета документов, строка переменной длины не более 256
- **repeat**: признак повторного запроса, булево
:::

---
### Response <---

Стандартный, [см. шаблон обращения](/NIkubqRkR5STebBQd8690g?view#Response-lt—)

---

## 2. Получение результата

### Request --->
Стандартный, [см. шаблон обращения](/NIkubqRkR5STebBQd8690g?view#URL1)

### Response <---

#### Headers:
* **Content-type**: application/json; charset=utf-8
* **Mq-Jrb-Id**: ==[id](/NIkubqRkR5STebBQd8690g?view#Headers3)==
* **Mq-Jrb-Id-Result**: ==[id-result](/NIkubqRkR5STebBQd8690g?view#Headers3)==

#### Body:
```json
{
    "doc_pack_id": "xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx",
    "code": "999999",
    "length": 9,
    "time": 999
}
```

:::info
:::spoiler Описание полей
- **doc_pack_id**: идентификатор пакета документов, строка переменной длины не более 256
- **code**: ожидаемый код, если длина равна 32 символа, то это MD5 от кода, а ожидаемая длина передана параметром **length** (см. ниже)
- **length**: длина ожидаемого кода, целое число [0-9]; используется, если параметр **code** возвращён в виде MD5
- **time**: время в секундах, через которое можно запросить код повторно
:::
