diadoc / diadocapi-docs

HTTP API documentation - http://api-docs.diadoc.ru/
41 stars 90 forks source link

https://diadoc-api.kontur.ru/V3/PostMessage ответ Not authorized #1081

Closed E-k-u-t closed 4 months ago

E-k-u-t commented 4 months ago

Добрый вечер! Подскажите причину сообщения "Not authorized", Через постман методом POST по адресу https://diadoc-api.kontur.ru/V3/PostMessage пытаюсь отправить документ c одной тестовой организации в другую тестовую организацию. Выдается сообщение "Not authorized" если к примеру убрать тег TypeNamedId, то ругается на структуру, что нет этого тега - "MessageToPost.DocumentAttachments[0]: Incorrect DocumentAttachment. TypeNamedId must be specified" т.е тут дело явно не в авторизации.


{
    "FromBoxId": "a1fe2d5d705c4e03a1958260d514d086@diadoc.ru",
    "ToBoxId": "fb443219f712477291c0b019d3ec5d3f@diadoc.ru",
    "DocumentAttachments": [
        {
            "TypeNamedId": "UniversalTransferDocument",
            "SignedContent": {
                "Content": "U29tZSBhdHRhY2htZW50IGNvbnRlbnQgaW4gQmFzZTY0",
                "FileName": "attachment.pdf"
            }
        }
    ]
}

ну и в довесок, другие запросы проходят с сформированным токеном GetDocuments, GetOrganization, т.е дело не в токене. Может у тестовых организаций нет прав на передачу друг другу документов через API ?

E-k-u-t commented 4 months ago

Да, была проблема с учеткой(у тестовых нет прав), взял боевую учетку и документ попал в личный кабинет, но не ушел адресату.

E-k-u-t commented 3 months ago

Что бы сразу документ попал на подпись в другую организацию, нужно передать запрос с подписью. (Подпись на документ формировал на своей стороне и выкладывал в сервис)

{
    "FromBoxId": "1d5dd66de711111111111111111d@diadoc.ru",
    "ToBoxId": "fb443219f1111111111111111111111@diadoc.ru",
    "DocumentAttachments": [
        {
            "TypeNamedId": "Contract",
            "NeedReceipt": false,
            "SignedContent": {
                "Content": "Документ закодирован в B64",
                "Signature": "Подпись закодирована в B64"
                // Пример содержимого файла, закодированного в Base64
            },
            "Metadata": [
                {
                    "Key": "FileName",
                    "Value": "test.txt"
                },
                {
                    "Key": "DocumentNumber",
                    "Value": "196"
                },
                {
                    "Key": "DocumentDate",
                    "Value": "27.10.2017"
                },
                {
                    "Key": "ContractType",
                    "Value": "Тестовый документ!!!"
                },
                {
                    "Key": "ContractPrice",
                    "Value": "1.00"
                }
            ]
        }
    ]
}