PATCH /certificate-forms/{formId}

Метод позволяет обновить данные формы. Метод можно использовать только для форм, которые находятся в статусах created и validationError. Нельзя изменить форму:

  • которая находится в процессе выпуска или на проверке в удостоверяющем центре;
  • по которой уже выпущен сертификат. Чтобы обновить данные в выпущенном сертификате необходимо отозвать текущий сертификат и выпустить новый.

Переменные

Название Тип Формат Обязательность Описание
formId string Guid true Идентификатор формы

Заголовки

Название Описание
Authorization Заголовок авторизации
Content-Type Тип контента

Content-Type

Допустимые значения Content-Type:

  • application/json

Тело запроса

В теле запроса содержится массив изменений, которые необходимо совершить с формой. О каждом изменении нужно указать:

Название Тип Формат Обязательность Описание
op string OperationType true Тип операции, которую необходимо сделать с объектом формы
path string true Путь до объекта, над которым необходимо совершить операцию
value array Document false Описание значения обновляемого/добавляемого объекта.

OperationType

Название Принцип работы
update Обновляет/заменяет данные объекта, который указан в пути
add Добавляет или обновляет объект на форме

Какие объекты можно обновить OperationType:update

данные субъектов

Чтобы изменить персональные данные субъектов на форме необходимо:

  1. Предварительно актуализировать изменившиеся данные субъектов, которые указаны на форме:
  • Для форм на физическое лицо - это реквизиты субъекта физического лица;

  • Для форм на юридическое лицо - это могут быть:

    • реквизиты субъекта юридического лица;
    • реквизиты субъекта физического лица:
    • данные представителя.

Изменить персональные данные субъектов можно методом PUT /subjects/{subjectId}. Изменить данные представителя методом PUT /representatives/{representativeId}.

  1. Обновить данные в форме на выпуск сертификата:

Для изменения необходимо указать в параметре path значение subject.

PATCH /certificate-forms/70f78249-dc69-450f-ab38-19974a310020
Content-Type: Аpplication/json
Authorization: ReestroAuth auth.sid=717726209B543848879C33F2BDDAB9F8561EFAC465A5DC439193062C700FAFDA&portal.orgid=1269f58a-3d40-42e1-91ad-a4251566419c
[{
  "op": "update",
  "path": "/subject"
}]

После вызова данного метода, для форму подтянутся актуальные данные субъектов, идентификаторы которых указаны на форме.

Какие объекты можно добавить OperationType:add

документы

При добавлении документа система проверяет наличие на форме документа с указанным идентификатором и типом:

  • Если совпадений нет, то документ добавляется к форме.
  • Если найден документ с указанным идентификатором и типом, найденный документ обновится.
  • Если найден документ с указанным идентификатором, но другим типом или наоборот, то система выдаст ошибку.

При замене все документы из группы "Документы, удостоверяющие личность" считаются одинаковым типом.

Например

Если на форме есть документ с типом паспорт. При попытке добавить документ свидетельство о рождении с идентификатором документа, который указан в форме для паспорта, система заменит данные найденного документа

Для добавления документа необходимо указать в параметре path значение documents, а в value актуальное описание добавляемого документа.

Допустимые форматы документов:

  • pdf;
  • png;
  • jpg;
  • jpeg;
  • tiff.
PATCH /realty/crypto/v2/certificate-forms/70f78249-dc69-450f-ab38-19974a310020
Content-Type: Аpplication/json
Authorization: ReestroAuth auth.sid=717726209B543848879C33F2BDDAB9F8561EFAC465A5DC439193062C700FAFDA&portal.orgid=1269f58a-3d40-42e1-91ad-a4251566419c
[{
  "op": "add",
  "path": "/documents",
  "value":
  [
    {
      "documentId": "8f89b87b-778a-4185-95be-a2db2d50b8b9",
      "documentInfo":
      {
        "documentType": "100"   
      },
      "content":
      {
        "contentInfo":
        {
          "contentId": "3a8cf2b8-ee9e-47ca-9ff9-75efced2d52e",
          "contentType":"pdf",
          "md5":"7E0D44C48AF788657EA6F5C4C87589E8"
        }
      }
    }
  ]
}]

Ответы

200

Тело ответа

Изменения успешно применены. В ответе содержится актуальное описание формы CertificateForm.

Заголовки ответа

Название Описание
ETag Метка последнего изменения формы
Content-Type Тип содержимого

Пример ответа

  HTTP 200
  ETag: 686897696a7c876b7e
  Content-Type: Application/json
  {
    "formId": "70f78249-dc69-450f-ab38-19974a310020",
    "person":
    {
        "subjectId": "02ebde1d-bb11-49c9-a51e-387c559d29b6",
        "person": {
          "name": "Анастасия",
          "surname": "Тарасова",
          "patronymic": "Константиновна",
          "dateBirth": "2018-01-01",
          "birthPlace": "Где то",
          "snils": "000-000-000 55",
          "inn": "121212121212",
          "email": "imya@yandex.ru",
          "phone": "79699999999",
          "gender": "Female",
          "identityDocument":
          {
            "documentType": "008001001000",
            "number": "123456",
            "series": "1111",
            "issueDate": "2018-12-12",
            "issuer":
            {
              "issuerCode": "123-123",
              "issuerName": "кем-то"
            }
          },
          "citizenship": "848000000643",
          "address":
          {
            "structuralAddress":
            {
              "region": "54",
              "city":
              {
                "name": "Новосибирск",
                "abbreviation": "г"
              },
              "street":
              {
                "name": "Челюскинцев",
                "abbreviation": "ул"
              },
              "house":
              {
                "name": "14",
                "abbreviation": "д"
              }
            }
          }
        }
    },
    "documents:":
    [
      {
        "documentId": "f15596cf-b8f1-45a9-a674-20acb334a2f4",
        "documentInfo":
        {
          "documentType": "008001001000",
          "number": "123456",
          "series": "1111",
          "issueDate": "2018-12-12",
          "issuer":
          {
            "issuerCode": "123-123",
            "issuerName": "кем-то"
          }
        },
        "content":
        {
          "contentInfo":
          {
            "contentId": "3a8cf2b8-ee9e-47ca-9ff9-75efced2d52e",
            "contentType":"pdf",
            "md5":"7E0D44C48AF788657EA6F5C4C87589E8"
          }
        }
      },
      {
        "documentId": "3e605336-a34d-4f34-93dc-b5fd78c21d6a",
        "documentInfo":
        {
        "documentType": "100"
        },
        "content":
        {
          "contentInfo":
          {
            "contentId": "3a8cf2b8-ee9e-47ca-9ff9-75efced2d52e",
            "contentType":"pdf",
            "md5":"7E0D44C48AF788657EA6F5C4C87589E8"
          }
        }
      },
      {
        "documentId": "f0478c91-a93e-45cc-81f6-482a4e0d3443",
        "documentInfo":
        {
          "documentType": "200"
        },
        "content":
        {
          "contentInfo":
          {
            "contentId": "cb351abb-36fb-43be-9194-639be38b5617",
            "contentType":"pdf",
            "md5":"F7415E33F972C03ABD4F3FED36748F7A"
          }
        }
      }
    ],
    "state": "released"
  }

400

Ошибки валидации запроса. В теле ответа содержится описание ошибки Error. Для данного метода возможны следующие ошибки:

Код ошибки Описание Содержимое контекста
NotAllowedFormState Статус формы не позволяет редактировать
WrongFieldValue Значение поля не соответствует требуемому формату. Поле, формат которого не соответствует, указано в описании ошибки в message
AbsenceOfRequiredField Не указано одно из обязательных полей
DuplicateDocument Указано более одного документа с одним типом Массив документов, которые дублируют друг друга по смыслу Document[]
MismatchDocumentRequisites Реквизиты документа удостоверяющего личность в описании субъекта и в приложенном документе не совпадают
UnexistingRepresentative Представитель для пары физическое лицо и организация не был создан -
UnexistentSubject Не удалось найти указанного субъекта Идентификатор субъекта, которого не удалось найти
BigContentSize Размер контента превышает 10 мб Описание неправильного контента ContetnIfo
UnsupportedContentType Указан контент, формат которого не поддерживается методом Описание неправильного контента ContetnIfo
UnexistentContent Не удалось найти контент в базе по указанному идентификатору Описание ненайденного контента ContetnIfo
WrongAddress Не удается определить адрес субъекта Описание неправильного адреса Address

Пример ответа

  HTTP 400
  Content-Type Application/json
  {
    "code": "validation",
    "message": "Failed to validate input request",
    "target": "api"
  }

401

Ошибка авторизации: пользователь не авторизован

403

Ошибка аутентификации: пользователь не имеет доступа к ресурсам организации, которая указана в заголовке авторизации

404

Форма с указанным идентификатором не найдена

415

В заголовке Content-Type указан тип контента, который не поддерживается для данного метода