DocuSign: может определить, когда конверт не может быть просмотрен текущим аутентифицированным пользователем через REST API - PullRequest
0 голосов
/ 21 мая 2018

У меня есть приложение, которое создает конверт через API и сохраняет envelopeId, имя (тему) и статус.

Наше приложение отображает эту информацию конверта и предлагает кнопку «просмотреть в DocuSign», чтобы пользователь (который может быть отправителем или получателем, но, возможно, ни тем, ни другим) мог просматривать конверт в DocuSign, чтобы увидеть егополная история или редактирование, если это разрешено.

Эта кнопка вызвала метод createSender в EnvelopeViews, чтобы открыть вкладку браузера на странице DocuSign.Это прекрасно работает, когда пользователь является создателем конверта или ему предоставлен общий доступ к конверту.(Через DocuSign Admin.)

Однако, если пользователь не является создателем (владельцем), createSender отображает пустую страницу редактора с сообщением «у вас нет конвертов».

Редактировать: я перешел с createSender на CreateConsole, что лучше: он переносит пользователя на его домашнюю страницу, когда конверт ему недоступен.

Я понимаю необходимость ограничениядоступ, но есть ли способ определения владельца конверта или прав текущего пользователя на просмотр его до генерации и использования методов createSend или createConsole?Тогда мы можем четко сообщить: «У вас нет разрешения на просмотр этого конверта» или что-то подобное.

Очевидно, что существует концепция владения и обмена.Весьма удивительно, что эта информация недоступна при чтении метаданных конверта.

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

Ответы [ 2 ]

0 голосов
/ 22 мая 2018

Я бы попробовал позвонить Envelopes :: get с учетными данными потенциального зрителя.Если этот вызов будет успешным, то я думаю, что у них будет доступ к просмотру всей информации конверта с помощью веб-инструмента DocuSign.

0 голосов
/ 21 мая 2018

Нет способа узнать, кто является владельцем конверта.Но я думаю, что приведенное ниже решение должно дать вам общее представление о том, может ли пользователь получить доступ к конверту или нет (либо предоставил ему доступ, либо он является владельцем конверта).

a.Вызовите GET /v2/accounts/{accountId}/folders, чтобы получить список всех папок, к которым у пользователя есть доступ, а также список папок для других пользователей, которые поделились конвертами с этим пользователем.

b.В ответ на вышеуказанный вызов будут перечислены все идентификаторы папок, к которым у этого пользователя есть доступ, как показано в примере ниже. В нем будут показаны все папки, которыми этот пользователь владеет или поделился с ним.

{
    "folders": [
        {
            "ownerUserName": "AnotherUser Test",
            "ownerEmail": "anotheruseremail@gmail.com",
            "ownerUserId": "a832164e-0da7-449c-9405-be21632564a4",
            "type": "inbox",
            "name": "Inbox",
            "uri": "/folders/2980d14d-461b-4229-9ae7-b9d0c64371ea",
            "folderId": "2980d14d-461b-4229-9ae7-b9d0c64371ea"
        },
        {
            "ownerUserName": "AnotherUser Test",
            "ownerEmail": "anotheruseremail@gmail.com",
            "ownerUserId": "a832164e-0da7-449c-9405-be21632564a4",
            "type": "sentitems",
            "name": "Sent Items",
            "uri": "/folders/507050da-3817-47be-a20c-142374a50493",
            "folderId": "507050da-3817-47be-a20c-142374a50493"
        },
        {
            "ownerUserName": "OriginalUser Test",
            "ownerEmail": "amitkumar.bist+test@gmail.com",
            "ownerUserId": "87b00103-461d-487b-8928-1991dfdb8d19",
            "type": "inbox",
            "name": "Inbox",
            "uri": "/folders/b98cd590-c7b4-469a-bf7c-dd3be19d3763",
            "folderId": "b98cd590-c7b4-469a-bf7c-dd3be19d3763"
        }
    ]
}

c.Затем позвоните GET /v2/accounts/{accountId}/folders/{folderId}, чтобы узнать все имеющиеся в папке конверты.Проверьте, присутствует ли ваш envelopeId в этом списке или нет, если нет, то у этого пользователя нет доступа к этому конверту.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...