---
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**: время в секундах, через которое можно запросить код повторно
:::