Показать/Скрыть содержание

    Конечная точка Documents

    Внимание!

    Данная конечная точка работает только в режиме обратной совместимости и НЕ поддерживает подтверждение операций.

    Конечная точка /documents предоставляет следующие методы:

    • Зашифрование документа
    • Расшифрование документа
    • Разбор зашифрованного документа
    • Усовершенствование подписи
    • Хэширование документа

    Примеры подписи приведены в разделе Примеры запросов на создание подписи

    Зашифрование документа

    Параметр Значение
    HTTP-метод POST
    Путь https://{{hostname}}/{{instanceName}}/api/documents/encrypt
    Параметры Document - Информация о документе
    Возвращаемое значение string - Зашифрованный документ в кодировке Base64
    Примечание

    В структуре Document должно быть заполнено поле Encryption

    Типовые ошибки

    HTTP-код Ошибка Описание
    400 parameters_required Не заполнено поле Encryption
    400 content_required Не передан документ для зашифрования
    400 invalid_content Неправильный формат документа (например, в случае XML шифрования, необходимо передать корректный xml-документ)
    400 invalid_recipients Сертификаты получателей не заданы или невалидны
    500 An error has occurred Внутренняя ошибка сервера

    Примеры запросов

    Запрос

    POST https://{{hostname}}/{{instanceName}}/api/documents/encrypt HTTP/1.1
    Authorization: Bearer eyJ0eXAiOi ... P9RY0lwn-r5HGc7ZyTQ
    Content-Type: application/json; charset=utf-8
    Host: host
    Content-Length: 1827
    
    {
        "Content": "PHJvb3Q+P ... ZT48L3Jvb3Q+",
        "Encryption": {
            "Type": 1,
            "Parameters": {},
            "Certificates": [ "MIIE7DC ... 4oXwmndTQ==" ]
        }
    }
    

    Ответ

    HTTP/1.1 200 OK
    Content-Length: 3543
    Content-Type: application/json; charset=utf-8
    
    "PEVuY3J5 ... J5cHRlZERhdGE+"
    

    Поиск подходящих сертификатов для расшифрования

    Метод /decrypt/parse должен быть использован, если пользователь не знает заранее идентификатор сертификата для расшифрования. Результатом работы метода будет список идентификаторов сертификатов пользователя.

    Параметр Значение
    HTTP-метод POST
    Путь https://{{hostname}}/{{instanceName}}/api/documents/decrypt/parse
    Параметры Document - Информация о документе
    Возвращаемое значение List - Список идентификаторов сертификатов пользователя

    Типовые ошибки

    HTTP-код Ошибка Описание
    400 content_required Не передан документ для расшифрования
    400 invalid_content Неправильный формат документа (например, в случае XML шифрования, необходимо передать корректный xml-документ)
    400 certificate_not_found Не найден сертификат для расшифрования
    400 invalid_certificate Указан неверный идентификатор сертификата
    400 invalid_pin Указан неверный ПИН-код
    500 An error has occurred Внутренняя ошибка сервера

    Примеры запросов

    Запрос на получение идентификаторов сертификатов для расшифрования

    POST https://{{hostname}}/{{instanceName}}/api/documents/decrypt/parse HTTP/1.1
    Authorization: Bearer eyJ0eXAiOi ... P9RY0lwn-r5HGc7ZyTQ
    Content-Type: application/json; charset=utf-8
    Host: host
    Content-Length: 3597
    
    {
        "Content": "PEVuY3J5 ... J5cHRlZERhdGE+",
        "Decryption": {
            "Type": 1,
            "CertificateId": 0
        }
    }
    

    Ответ

    HTTP/1.1 200 OK
    Content-Length: 5
    Content-Type: application/json; charset=utf-8
    
    [680]
    

    Усовершенствование подписи

    Параметр Значение
    HTTP-метод POST
    Путь https://{{hostname}}/{{instanceName}}/api/documents/enhancesignature
    Параметры Document - Информация о документе
    Возвращаемое значение string - Подписанный документ в кодировке Base64
    Примечание

    В структуре Document должно быть заполнено поле Signature.

    Типовые ошибки

    HTTP-код Ошибка Описание
    400 invalid_signature_params Неверно указаны параметры подписи
    400 content_required Не передан документ для подписания
    400 tsp_error Ошибка получения штампа времени
    400 ocsp_error Ошибка получения OCSP-ответа
    400 cert_chain_error Ошибка построения цепочки сертификата
    400 invalid_cert Ошибка проверки сертификата
    400 invalid_content Невалидный формат подписи
    500 An error has occurred Внутренняя ошибка сервера
    Примеры запросов

    Запрос

    POST https://dss.cryptopro.ru...cuments/enhancesignature HTTP/1.1
    Authorization: Bearer eyJ0eXAiOi ... P9RY0lwn-r5HGc7ZyTQ
    Content-Type: application/json; charset=utf-8
    Host: host
    {
        "Content":"signature",
        "Signature":
        {
            "Type":2,
            "Parameters":
            {
                "CADESType":"XLT1",
                "TSPAddress":"https://dss-ca20-w12r2/tsp/tsp.srf"
            }
        }
    }
    

    Ответ

    HTTP/1.1 200 OK
    Content-Length: 3543
    Content-Type: application/json; charset=utf-8
    
    "YwZTUwYTJiM2E4MD ... 3de9sjgg"
    

    Хэширование документа

    Параметр Значение
    HTTP-метод POST
    Путь https://{{hostname}}/{{instanceName}}/api/documents/hash
    Параметры Document - Информация о документе
    Возвращаемое значение string - Хэш-значение документа в кодировке Base64
    Примечание

    Хэширование документа работает только в поточном режиме. Подробнее о поточной обработке данных см. Потоковая обработка

    В начало © ООО "КРИПТО-ПРО", 2000–2025