Adobe Acrobat Sign API — часто задаваемые вопросы

Последнее обновление 19 июн. 2026 г.

Доступ к API предусмотрен исключительно для учетных записей уровня организации и разработчика.

Ссылки на основную документацию

Полезные ссылки для REST API 6:

Примечание

Поддержка устаревших SOAP API прекращена в мае 2021 г.

Все клиенты, использующие SOAP API, должны как можно скорее перейти на REST API.

После входа в систему выберите Acrobat Sign API > Сведения об API > Rest API и документация.


Общие понятия

Вы не можете написать документ, просмотрев страницу в веб-интерфейсе или перетащив его, или назначить роли подписывающей стороны с помощью идентификатора transientDocumentId в API.

Вызов промежуточных документов возвращает идентификатор transientDocumentID, действительный в течение 7 дней.  Его можно использовать только для дальнейших вызовов API. Он хранится на сервере API и получает этот идентификатор. Загрузите файл и указывайте его идентификатор в последующих вызовах API.

Вы не можете напрямую загрузить документ в Соглашение с помощью REST API.

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

Промежуточный документ является исходным файлом, таким как PDF, doc, docx, загруженным на серверы Adobe. Это удобный способ передачи базового документа на серверы API и промежуточный документ в Интернете.

Да, соглашения можно публиковать с помощью рабочих процессов в версии 6 с помощью вызова API POST /agreements. Передайте параметр идентификатора рабочего процесса в вызове API.

Идентификатор рабочего процесса можно получить с помощью вызова GET /workflows.

Выполните вход в Acrobat Sign как администратор.

Перейдите в Acrobat Sign API > Журнал запросов API.

Страница «Журналы запросов API» с несколькими открытыми записями.

 Выполните вход в Acrobat Sign как администратор.

Перейдите в: Acrobat Sign API > Сведения об API

Нажмите ссылку Образцы REST API.

Примечание

Чтобы загрузить пакет SDK JavaScript, см. https://github.com/adobe-sign/AdobeSignJsSdk.

Страница «Информация об API» с выделенной ссылкой «Образцы REST API».

Начиная с версии 6, параметр sendTroughWeb больше не доступен. Вместо него предусмотрено state (состояние). Это состояние, в котором пребывает документ. Поле состояния можно указать только при выполнении вызовов POST. Оно не возвращается в GET /agreements/{ID} и игнорируется, если указано в вызове PUT /agreements/{ID}. Окончательный статус соглашения можно получить из GET /agreements/ID.

state(строка) = ['AUTHORING' или 'DRAFT' или 'IN_PROCESS'].

AUTHORING позволяет пользователю создавать документы соглашения перед их отправкой. Операция авторинга означает создание, редактирование или размещение полей формы вместе с их конфигурациями (назначенное лицо, условия, тип данных и т. д.) в документах соглашения. После публикации документа в состоянии «Авторинг» документ отображается в разделе «Черновик» на вкладке «Управление» Acrobat Sign.

DRAFT — это временный или начальный этап окончательного целевого ресурса, который можно обновить пошагово для создания окончательного ресурса, и не отображаемый в разделе «Черновик» на вкладке «Управление» Acrobat Sign. При использовании состояния «Черновик» информация о наборе участника не требуется, и ее можно назначить позже при создании PUT /agreements/agreementId для завершения этого черновика. Этот шаг можно повторять несколько раз, пока не будут получены все необходимые данные для создания соглашения.

IN_PROCESS  изменяет статус соглашения на «Отправлено на подпись» и отображается в разделе «Отправлено на подпись» на вкладке «Управление» Acrobat Sign.

sendThroughWeb позволяет отправлять соглашение в интерактивном режиме. Различные параметры в поле «options» в запросе POST /agreements версии 5 позволяют пользователю настроить это интерактивное представление (страницу Отправка). Все эти параметры конфигурации страницы, такие как fileUploadOptions, перемещаются в API POST agreements/ID/views.

Таким образом, вы можете выполнить sendThroughWeb, создав соглашение в состоянии AUTHORING с помощью API-интерфейса POST /agreements. Затем, чтобы запросить URL-адрес следующей страницы в нужной конфигурации, выполните вызов API POST agreements/ID/views.

Выполните следующие действия:

1. Перейдите к документацию REST API версии 6 и выберите метод POST/agreements.
2. Используйте следующий код запроса:

{

  "fileInfos": [

    {

      "transientDocumentId": "***************************"

    }

  ],

  "name": "test",

  "participantSetsInfo": [

    {

      "memberInfos": [

        {

          "email": "abc@gmail.com"

        }

      ],

      "order": 1,

      "role": "SIGNER"

    }

  ],

  "signatureType": "ESIGN",

  "state": "AUTHORING"

}

 

3. Теперь используйте метод post /agreements/{agreementId}/views со следующим кодом запроса:

 

{

  "name": "AUTHORING"

}

Код ответа содержит URL-адрес для полей авторинга.

URL-адрес обратного вызова можно определить следующими способами:

  • Используйте следующий параметр для определения URL-адреса обратного вызова по мере необходимости:

    "callbackInfo": "",
  • Обратитесь в службу поддержки Acrobat Sign, чтобы установить URL-адрес обратного вызова по умолчанию для всей учетной записи.

Интерфейс SOAP (SmartBear) отображает ошибку подключения SSL, аналогичную той, что появляется при вызове API и указана далее. Эта ошибка обычно возникает, если используется устаревший протокол SSL или протокол TLS ниже TLS1.2.

ERROR: Exception in request: javax.net.ssl.SSLException: Received fatal alert: protocol_version
ERROR: An error occurred [Received fatal alert: protocol_version], see error log for details

Добавьте (-Dsoapui.https.protocols=SSLv3,TLSv1.2) в файл VMOPTIONS в папке Bin.

Перейдите в папку C:\Program Files\SmartBear\SoapUI-5.2.1\bin  (зависит от того, где установлен интерфейс SOAP). Он может находиться в папке C:\Program Files (x86)).

В файле VMOPTIONS включите полное разрешение на чтение/запись файла.

VMOPTIONS

Нажмите правой кнопкой мыши на файл VMOPTIONS > «Свойства» > вкладка «Безопасность» > «Выбрать пользователя» > нажмите «Редактировать». (На кнопке «Редактировать» появится значок управления доступом пользователя) > установите все флажки и нажмите «OK».

Повторите эти действия для администраторов, систем и всех пакетов приложений.

Откройте файл с помощью «Блокнота».

Добавьте этот протокол внизу «-Dsoapui.https.protocols=SSLv3,TLSv1.2» и сохраните изменения.

Закройте интерфейс SOAP и перезапустите. При выполнении вызова API он работает без ошибок SSL. (Для проверки выполните тестовый ping-вызов).

Ниже приведены действия по созданию идентификатора клиента и секретного ключа клиента в приложении Acrobat Sign.

Войдите в Acrobat Sign как администратор.

Перейдите в Acrobat Sign API > Приложения API.

Чтобы создать приложение, выберите значок плюса ( + ).

Страница «Приложения API» с выделенным значком «Создать»

Введите Имя и отображаемое имя.

В разделе Домен выберите CUSTOMER.

Сохраните настройку.

Форма создания приложения с выделенным доменом CUSTOMER.

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

Выберите Настройка параметров OAuth для приложения.

Страница «Приложения API» с выбранным одним приложением, показывающая ссылку действия «Настроить OAuth для приложения»

Введите URI перенаправления.

Установите флажки для каждой области, которую необходимо включить, и определите, ограничена ли область пользователем (self), группой или учетной записью.

 

Панель «Настройка OAuth» с развернутым раскрывающимся меню «Модификатор».

Сохраните настройку.

Войдите в Acrobat Sign как администратор учетной записи.

Перейдите в: Acrobat Sign API > Сведения об API

Откройте ссылку Ключ интеграции.

Страница со сведениями об API и выделенной ссылкой на ключ интеграции

Примечание

Если вы не видите ссылку «Ключ интеграции», обратитесь в службу поддержки, чтобы включить учетную запись.

  • Назовите ключ интуитивно понятным значением.
  • Выберите различные Области, необходимые для работы приложения.
  • После настройки параметров ключа нажмите Сохранить.
Интерфейс «Создание ключа интеграции»

После сохранения ключ находится в: Личные настройки > Маркеры доступа.

Отображаются имя ключа и список всех включенных областей.  

Нажмите описание ключа один раз, чтобы отобразить ссылки на действия:

  • Ключ интеграции — эта ссылка предоставляет буквенный ключ. 
  • Отозвать — выполняет отзыв и удаление маркера доступа без возможности восстановления.
Маркеры доступа — Ключ интеграции

Войдите в Acrobat Sign как администратор.

Перейдите в Acrobat Sign API > Приложения API.

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

Страница «Приложения API» с выбранным одним приложением

Выберите Настройка параметров OAuth для приложения.

Страница «Приложения API» с выбранным одним приложением, отображающая ссылку «Настроить OAuth для приложения»

Сгенерируйте код авторизации, используя следующую ссылку. Идентификатор клиента, URI перенаправления и области должны совпадать со следующим URL-адресом, выбранным в приложении (не ставьте пробел в followingURL, и сегмент типа «NA1» соответствует принадлежности учетной записи Acrobat Sign):

https://secure.na1.echosign.com/public/oauth?redirect_uri=https://www.google.co.in&response_type=code&client_id=CBJCHBCAABAAo9FZgq31_5BVG_kcIXEe6gNtn-R-gdNe&scope=user_login:self+agreement_send:account

Настройка параметров OAuth для Postman

Если вызов выполнен успешно, выберите код авторизации в адресной строке.

Fnord.

Загрузите и установите Postman по ссылке  https://www.getpostman.com/apps.

После загрузки и установки выберите NEW  для создания POST.

Введите ссылку https://secure.na1.adobesign.com/oauth/token в соответствии с принадлежностью вашей учетной записи Acrobat Sign.

В разделе Headers введите  Content-Type как application/x-www-form-urlencoded.

Убедитесь, что в разделе Body выбрано x-www-form-urlencoded, введите следующие параметры с соответствующими значениями из приложения, созданного в учетной записи Acrobat Sign, и нажмите SEND.

Fnord.

Если вся информация верна, в ответе возвращается маркер доступа и маркер обновления:

Fnord.

При выполнении процесса OAuth необходимо выполнить следующие действия:

1. Указать правильный идентификатор клиента и URI перенаправления.
2. Учитывать, что области, указанные в URL-адресе авторизации, должны точно совпадать с областями, указанными в приложении Acrobat Sign.
3. Использовать правильный сегмент (na1, na2, au1, eu1, jp1) в соответствии с настройкой учетной записи.
4. Удалить все пробелы, указанные в URL-адресе авторизации (при наличии).
5. Проверить синтаксис URL-адреса авторизации.

https://secure.na1.echosign.com/public/oauth?redirect_uri=https://secure.na1.echosign.com/public/oauthDemo&
response_type=code&client_id=9MEJXY4Y4R7L2T&scope=agreement_send

Маркеры доступа действительны только в течение 3600 секунд (одного часа), после чего их срок действия истекает.

Владелец запроса API может использовать маркеры обновления для создания новых маркеров доступа по мере необходимости.

Веб-перехватчики поддерживаются в REST API версии 6 и выше.

Если получатель веб-перехватчика не отвечает в течение 72 часов, веб-перехватчик отключается и уведомление не отправляется.

Если целевой URL-адрес веб-перехватчика по какой-либо причине отключен, Acrobat Sign создает очередь JSON и повторяет попытку загрузки в нарастающем цикле в течение 72 часов.

Не доставленные события сохраняются в очереди повторных попыток, и в течение следующих 72 часов предпринимаются все усилия для доставки уведомлений в том порядке, в котором они возникали.

Стратегия повторной доставки уведомлений заключается в удвоении времени между попытками, начиная с 1-минутного интервала, увеличивающегося до 12 часов, что обеспечивает 15 попыток за 72 часа.

 

Чтобы создать веб-перехватчик непосредственно в интерфейсе пользователя Acrobat Sign, сначала создайте URL-адрес веб-перехватчика с помощью приложений-функций Azure AD, выполнив следующие действия:

Войдите в систему с помощью учетной записи Microsoft https://portal.azure.com/.

Зарегистрируйтесь в разделе «Приложения-функции» в учетной записи AzureAD.

Меню Azure

Перейдите в AzureAD и выберите Приложения-функции > нажмите значок + для доступа к функциям.

Выберите «Webhook+API» с Javascript в качестве языка и нажмите «Создать функцию».

API-интерфейс Azure

Замените файл Index.js фрагментом кода:

Нажмите кнопку «Тестировать» в правом углу и укажите следующий заголовок:

X-AdobeSign-ClientId как ***********************

Тест API

Выберите «Сохранить и запустить».

После получения 200 ответов OK со следующим заголовком нажмите «Получить URL-адрес функции».

200 ответов

Скопируйте URL-адрес и перейдите в пользовательский интерфейс Acrobat Sign > «Веб-перехватчики» > нажмите значок «+», чтобы создать.

Введите следующие данные: 

  • Имя: желательно интуитивно понятное имя, которое могут легко понять другие администраторы.
  • Область: диапазон сети, в которой действует веб-перехватчик. В интерфейсе доступны «Учетная запись» и «Группа».
    API поддерживает области «Учетная запись», «Группа», «Пользователь» и «Ресурс».
  • Для веб-перехватчика можно определить только одну область.
  • URL-адрес: целевой URL-адрес, на который приложение Acrobat Sign передало полезные данные JSON.
  • События: факторы, вызывающие создание JSON в Acrobat Sign и его передачу на URL-адрес.
    Каждое событие создает различные полезные данные, связанные с событием-триггером
    . В один веб-перехватчик можно включить несколько событий.
  • Параметры уведомления: параметры уведомления определяют разделы полезных данных JSON события, позволяющие выбрать только важные разделы события.
Пользовательский интерфейс веб-перехватчика

Полностью определив веб-перехватчик, нажмите «Сохранить», и новый веб-перехватчик немедленно начнет реагировать на события.

Ресурс соглашения относится к ресурсу, с помощью которого можно создать соглашение, например документ библиотеки, виджет и само соглашение.

Чтобы найти события ресурсов соглашения, сначала отправьте запрос к API, который создает agreementAssetEvents с соответствующими параметрами поиска.

Ответ — это первая страница результатов вместе с параметром идентификатора поиска и курсором следующей страницы. Его можно использовать для получения результатов на следующих страницах, если они доступны, с помощью API, который извлекает agreementAssetEvents на основе идентификатора поиска.

Откройте документацию по REST API для версии 5.

Перейдите к post/search/agreementAssetEvents и создайте маркер доступа с соответствующей областью.

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

Нажмите кнопку Try it out (Попробовать). Это извлечет идентификаторы ресурсов соглашения, которые также можно использовать в качестве идентификаторов соглашения.


Управление пользователями/учетными записями

  1. Выполните вход в Acrobat Sign.
  2. Перейдите в Acrobat Sign API > документация REST API.
  3. Выберите версию 5.
  4. В методе post /users используйте код запроса, указанный для метода
    UserCreationInfo
    {
    "email": "email@email.com",
    "firstName": "AA",
    "lastName": "AB",
    "password":"12******rte"
    }

Учетные записи Acrobat Sign, использующие Admin Console (Adobe One) для управления правами пользователей, не могут использовать Acrobat Sign API для создания пользователей или управления существующими пользователями.

Adobe One Admin Console использует другой API, а не Acrobat Sign API. Дополнительные сведения см. в следующих статьях:

 

Получение идентификатора группы:

Перейдите по ссылке https://secure.na1.echosign.com/public/docs/restapi/v5.

В разделе «Resources and Operations» (Ресурсы и операции) выберите группы.

Нажмите GET /groups.

Нажмите кнопку OAuth Access-token (Маркер доступа OAuth).

Создайте маркер доступа.

Нажмите кнопку Try it out (Попробовать).

Вы получите следующий ответ с именем группы и идентификатором группы:

Удаление группы:

Нажмите DELETE /groups/{groupId}.

Чтобы создать маркер доступа, нажмите кнопку OAuth Access-token.

Добавьте идентификатор удаляемой группы, полученный в ответ на предыдущий вызов, в поле groupId.

Нажмите Try it out.

После удаления группы вы получите ответ: No content (Контент отсутствует).

Примечание

Невозможно удалить группу, в которую назначен пользователь. По сути, можно удалить только пустую группу. Если в группе есть пользователь, вы получите следующий ответ.


{

  "code": "GROUP_NOT_EMPTY",

  "message": "Эту группу нельзя удалить — она не пустая."

}


Инициирование/отправка документов

Создание промежуточного документа

Перейдите по адресу: https://secure.na1.adobesign.com/public/docs/restapi/v6.

Нажмите transientDocuments (Промежуточные документы) и разверните метод POST /transientDocuments.

Нажмите кнопку OAuth Access-token.

Метод API TransientDocument

  • Включите Scopes (Области) для транзакции.
  • Нажмите Authorize (Авторизовать).
Области применения OAuth

Предоставление доступа

Если требуется, нажмите Разрешить доступ.

Вы вернетесь на страницу методов API. Значение авторизации будет уже указано.

  • Введите имя файла в поле File-Name.
  • Нажмите кнопку Choose File и добавьте документ для соглашения.
  • Нажмите Try it out.
Try it out!

Будет создан ответ.

Идентификатор transientDocumentID можно найти в теле ответа:

Идентификатор промежуточного документа

Создание документа с помощью промежуточного документа

Перейдите по адресу: https://secure.na1.adobesign.com/public/docs/restapi/v6.

Нажмите agreements (Соглашения) и разверните метод POST /agreements.

  • Нажмите кнопку OAuth Access-token.
  • Включите область OAuth.
  • Нажмите Authorize.
    • Если требуется, нажмите  Allow Access.

Вы вернетесь на страницу методов API. Значение авторизации будет уже указано.

  • Скопируйте приведенный ниже сценарий в текстовый редактор (этот сценарий является лишь примером минимальной конфигурации; ваш окончательный код будет другим).
  •  Вставьте значение идентификатора промежуточного документа в код, как указано:

 

  • Скопируйте свой собственный сценарий и вставьте его в поле AgreementInfo.
  • Нажмите Try it out.
Метод POST agreement

Будет создан ответ.

Значение agreementID можно найти в Теле ответа:

Ответ для метода POST agreement

Ниже приведены действия по добавлению файлов в параметр FileInfo.

Используйте идентификатор промежуточного документа:

Перейдите к POST/transientDocuments и добавьте из локальной системы документ для использования.
Используйте идентификатор промежуточного документа, сгенерированный в разделе «Сведения о файле» в POST/Agreements:

Используйте идентификатор библиотечного документа:

Перейдите на панель управления. Нажмите «Добавить документ в библиотеку» и сохраните шаблон.
В разделе «Документация по REST API» нажмите GET /libraryDocuments и извлеките идентификатор библиотеки для создаваемого шаблона.
В разделе POST/Agreements укажите идентификатор библиотечного документа:

Используйте общедоступный URL-адрес:

Укажите общедоступный URL-адрес для использования в параметре FileInfo:

Перейдите на веб-сайт https://secure.na1.adobesign.com/public/docs/restapi/v6.

Выберите вариант Agreements> POST/agreements. 

Выберите параметр Oauth Access-Token и укажите необходимые области.

После добавления маркера доступа можно использовать следующий код запроса:

В ходе вызова POST /agreements для параметра signatureflow можно передать значение SENDER_SIGNS_FIRST или SENDER_SIGNS_LAST, чтобы добавить отправителя как первую или последнюю подписывающую сторону, соответственно.

Это пример вызова в формате JSON:

{

  "documentCreationInfo": {

    "fileInfos": [

      {        "transientDocumentId":"3AAABLblqZ-yourIDGoesHere"

      }

    ],

    "name": "Test",

    "recipientSetInfos": [

      {

        "recipientSetMemberInfos": [

          {

            "email": "test@email.com"

          }

        ],

        "recipientSetRole": "SIGNER"

      }

    ],

    "signatureType": "ESIGN",

    "signatureFlow": "SENDER_SIGNS_FIRST"

  }

}

Примечание

Параметр отправки от имени доступен только в REST API версии 6 со включенным расширенным общим доступом.

Если разрешение на отправку не предоставлено в рамках общего доступа или если Расширенный общий доступ не включен, вы получите примерно следующий ответ:

 

{"code":"PERMISSION_DENIED","message":"У пользователя, указанного в заголовке x-on-behalf-of-user , нет разрешения, необходимого для выполнения этой операции."}

 

Для функции «Отправка от имени» включите «Расширенный общий доступ к учетной записи», чтобы пользователи могли предоставлять разрешения на отправку другим пользователям при совместном использовании учетной записи. Подробнее о расширенном общем доступе к учетной записи см. Включение расширенного общего доступа к учетной записи.

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

Создайте промежуточный документ:

Перейдите на веб-сайт https://secure.adobesign.com/public/docs/restapi/v6.

В разделе transientDocuments нажмите POST /transientDocuments.

Чтобы создать маркер для авторизации, нажмите кнопку OAUTH ACCESS-TOKEN.

В x-on-behalf-of-user укажите адрес электронной почты пользователя, от имени которого вы хотите отправить документ, в следующем формате: email:test@email.com.

Чтобы выбрать файл, нажмите Choose File, а затем нажмите Try it out (Попробовать).

Вы получаете ответ примерно следующего вида со значением transientDocumentId:

Создание соглашения с помощью промежуточного документа:

В разделе  agreements, нажмите POST /agreements.

Чтобы создать маркер для авторизации, нажмите кнопку OAUTH ACCESS-TOKEN.

В x-on-behalf-of-user укажите адрес электронной почты пользователя, как это было сделано при создании промежуточного документа.

В поле AgreementInfo добавьте следующий код и нажмите кнопку Try it out.

 

Вы получите ответ примерно следующего вида со значением agreementId:

Выполните вход в Acrobat Sign.

Перейдите в Acrobat Sign API > Сведения об API и нажмите «Документация по методу REST API».

Пользовательский интерфейс веб-перехватчика

Выполните POST /transientDocuments, загрузите файл и создайте идентификатор промежуточного документа.

Скопируйте идентификатор промежуточного документа и используйте его в методе POST /agreements. Укажите в поле следующий запрос JSON:

Чтобы выполнить запрос JSON, нажмите кнопку Try it out.

Пользовательский интерфейс веб-перехватчика

Правильный JSON возвращает ответ с идентификатором соглашения.

Пользовательский интерфейс веб-перехватчика

Ниже перечислены параметры, которые можно передать в код, чтобы установить открытый пароль:

 

{

    "documentCreationInfo":

    [{

        "signatureType": "ESIGN",

               "recipientSetInfos": [{

            "recipientSetMemberInfos": [{                      

                "email": "abc@xyz.com"                  

            }],

                   

            "recipientSetRole": "SIGNER"                         

        }],

               "signatureFlow": "SENDER_SIGNATURE_NOT_REQUIRED",

                   "fileInfos": [           {               

            "libraryDocumentId": "3AAABLblqZhBsm_vH7TVzU3hRdbtWuvzfTKDvBzaKZTiehjO2eGTk5Rlu02K-0BYn8HBJVFTWOmT_BQlrofPBlrCdjiJ_JI-V"        

        }       ],

               "name": "Open password to view document",

               "securityOptions": {        

            "openPassword": "1234",

                     "protectOpen": true   

        }  

    }]

}

 

Чтобы создать соглашение с помощью API с состоянием «AUTHORING», выполните следующие действия.

Перейдите к Post /agreements и создайте маркер доступа с необходимыми областями.

Используйте следующий код запроса:

 

{

  "fileInfos": [

    {

      "transientDocumentId": "*********************"

    }

  ],

  "name": "A1",

  "participantSetsInfo": [

    {

      "memberInfos": [

        {

          "email": "abc@xyz.com"

        }

      ],

      "order": 1,

      "role": "SIGNER"

    }

  ],

  "signatureType": "ESIGN",

  "state": "AUTHORING"

}

 

В версии 6 предусмотрен набор API авторинга для создания соглашения. В версии 5 поля форм используются непосредственно в POST /agreements api. Однако в версии 6 пользователь может создать соглашение в состоянии АВТОРИНГА (state = AUTHORING) с помощью POST /agreements версии 6 и использовать PUT /agreements/ID/formFields позже для добавления полей формы в документы этого соглашения.

Необходимые шаги указаны далее.

Перейдите к документации REST API версии 6 и выберите метод POST/agreements.

Используйте следующий код запроса:

Используйте метод put /agreements/{agreementId}/formFields со следующим запросом в качестве примера:

 

После завершения запроса соглашение будет отправлено указанному получателю.

Выполните вход в Acrobat Sign.

Перейдите в «Acrobat Sign API» > «Сведения об API» и нажмите «Документация по методу REST API».

Пользовательский интерфейс веб-перехватчика

Выполните POST /transientDocuments, загрузите файл и создайте идентификатор промежуточного документа.

Скопируйте идентификатор промежуточного документа и используйте его в методе POST /agreements. Укажите в поле следующий запрос JSON:

Чтобы выполнить запрос JSON, нажмите кнопку Try it out.

Пользовательский интерфейс веб-перехватчика

Правильный JSON возвращает ответ с идентификатором соглашения.

Пользовательский интерфейс веб-перехватчика

Выполните вход в Acrobat Sign.

Перейдите в «Acrobat Sign API» > «Сведения об API» и нажмите «Документация по методу REST API».

Fnord.

Выполните POST /transientDocuments, загрузите файл и создайте идентификатор промежуточного документа.

Скопируйте идентификатор промежуточного документа и используйте его в методе POST /agreements. Укажите в поле следующий запрос JSON:

Чтобы выполнить запрос JSON, нажмите кнопку Try it out.

Fnord.

Правильный JSON возвращает ответ с идентификатором соглашения.

Fnord.

Чтобы открыть соглашение в режиме авторинга, скопируйте URL-адрес и вставьте его в адресную строку браузера.

Перетащите поля формы в нужное место.

Чтобы отправить соглашение на подпись, нажмите «Отправка». 

Используйте POST /agreements для создания соглашения. Отправляет его на подпись и возвращает значение agreementID в ответ клиенту. Ниже приведен формат JSON для отправки соглашения с использованием метода аутентификации по телефону.

 

{

"documentCreationInfo": {

"mergeFieldInfo": null,

"recipientSetInfos": [{

"signingOrder": null,

"recipientSetRole": "SIGNER",

"recipientSetMemberInfos": [{

"securityOptions": null,

"email": "Signer@email.com"

}],

 

"privateMessage": null,

"securityOptions": [{

"authenticationMethod": "PHONE",

"phoneInfos": [{

"phone": "1111111111",

"countryCode": "+1"

}]

}]

}],

 

"signatureType": "ESIGN",

"callbackInfo": null,

"message": "Please review and sign this document.",

"locale": "en_US",

"vaultingInfo": null,

"securityOptions": null,

"reminderFrequency": null,

"ccs": null,

"postSignOptions": null,

"signatureFlow": "SENDER_SIGNATURE_NOT_REQUIRED",

"daysUntilSigningDeadline": null,

"formFieldLayerTemplates": [],

"name": "Acrobat Sign Agreement-Phone authentication testing",

"formFields": null,

"fileInfos": [{

"libraryDocumentName": null,

"transientDocumentId": "3AAABLYourTransactionID",

"documentURL": null,

"libraryDocumentId": null

}]

},

 

"options": {

"autoLoginUser": true,

"authoringRequested": false,

"noChrome": true,

"sendThroughWeb": null,

"sendThroughWebOptions": null,

"locale": "en_US"

}

}

 

Данные можно объединить непосредственно в поля формы следующими способами:

  • С помощью шаблона библиотеки:

    при использовании идентификатора шаблона библиотеки в параметре FileInfo обязательно укажите точное имя поля и относящиеся к нему данные в следующем разделе:

 

"mergeFieldInfo": [

     {

       "defaultValue": "",

       "fieldName": ""

     }

   ],

 

  • С помощью текстовых тегов в документе, загруженном как промежуточный:

    при загрузке документа, содержащего текстовые теги, добавленные в него как в промежуточный, обязательно укажите точное имя поля и относящиеся к нему данные в следующем разделе: 

 

"mergeFieldInfo": [

     {

       "defaultValue": "",

       "fieldName": ""

     }

   ],

 

Как отправить соглашение с помощью API с предварительно заполненными значениями для определенных полей формы (mergefield)?

Для выполнения этого вызова необходимо сначала выполнить шаг «Добавление промежуточного документа» и получить значение «transientDocumentId» (с помощью secure.na1.echosign.com/public/docs/restapi/v5#!/transientDocuments/createTransientDocument) для использования в этом шаге.

  • Этот вызов включает раздел «mergeFieldInfo», в котором указаны значения по умолчанию для определенных полей формы.
  • Это позволяет предварительно вносить данные из другой системы в вызове API.
  • Эти поля в соглашении доступны для редактирования или только для чтения.

 

Предварительные условия:

  1. Идентификатор промежуточного документа
  2. Имена полей и их значения

 

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

 

Запрос:

POST /api/rest/v5/agreements HTTP/1.1

Host: api.na1.echosign.com (или можно указать имя своего сегмента, которое можно узнать с помощью вызова getbaseURis: https://secure.na1.echosign.com/public/docs/restapi/v5#!/base_uris/getBaseUris

Access-Token: 2AAABLblqZhA_D1mluNKQP7py5vXtt-1UHl9NR25e_C3LnKTUH14IblbrXODbXGRozyr7ChBkJNM*

x-user-email: sender@yourdomain.com

Content-Type: application/json

Cache-Control: no-cache

 

{

   "documentCreationInfo": {

       "signatureType": "ESIGN",

       "recipientSetInfos": [

           {

               "recipientSetMemberInfos": [

                   {

                       "email": “signerEmail@domain.com"

                   }

               ],

               "recipientSetRole": "SIGNER"

           }

        ],

      

       "signatureFlow": "SENDER_SIGNATURE_NOT_REQUIRED",

       "message": "Please Sign this from us!",

       "fileInfos": [

           {

               "transientDocumentId": "3AAABLblqZhD1uP3ZnkJximC0JV1S677PR5xmybSJ-SJn6OtEy2tVqFyMN4xUAbhKTSkLw2Zb6HEF4zAGsrUd2ycoB8fFHQJhrci0O6267VztmIL4nCicSqvAjO7HckATHAsovVmuYwI9_FDDgHg0ogyti62L13HQFZIQRe9iyQMvvzbmksM7ODNK_HEepEKRCeJTtis9FOlz6uRCcIMNlbX_2GU8utWT"

           }

       ],

       "name": "MSA Edited”,

        "mergeFieldInfo": [

            {

                "fieldName": "AccountName",

                "defaultValue": "Sam's Garage"

            },

            {

                "fieldName": "AccountNumber",

                "defaultValue": "8756999"

            },

            {

                "fieldName": "Zip",

                "defaultValue": "94501"

            },

            {

                "fieldName": "City",

                "defaultValue": "CityVille"

            },

            {

                "fieldName": "State",

                "defaultValue": "CA"

            },

            {

                "fieldName": "Street",

                "defaultValue": "123 Some Road"

            },

            {

                "fieldName": "Title1",

                "defaultValue": "COO"

            },

            {

                "fieldName": "Description",

                "defaultValue": "Some new description here"

            }

        ]

   }

 

}

 

Ответом на этот вызов будет значение «agreementId», которое необходимо сохранить в системе для последующих вызовов (signingUrl, status, formData и т.д.)

 

Ответ:

{

  "agreementId": "3AAABLblqZhCf_7xDcrOgKFwAabp1S-OFfvUdHf2wJsSMwlB95_x_WdUeab67jOkJi1IJzWuSJ0zdNNKugS1blZB4LT5vNVyJ"

}

 

При запуске метода «post /megaSigns/{megaSignId}/views» отображается ошибка «Запрошенный просмотр ресурса в текущем состоянии недоступен».

Ошибка отображается, если указанное значение параметра имени является недопустимым в следующем коде запроса:

{
  "name": " "
}

Например, если соглашение MegaSign уже в состоянии IN_PROCESS, то, если указано значение AUTHORING, отображается упомянутая ошибка. Убедитесь, что указанное значение соответствует текущему состоянию соглашения.

При выполнении метода «put /megaSigns/{megaSignId}/state» отображается ошибка «Для информации об отмене MegaSign не указано значение».

Ошибка возникает, когда в коде запроса отсутствует параметр 

 "megaSignCancellationInfo": {
    "comment": "",
    "notifyOthers": false
  }

Вместо использования параметра «Minimal Schema» нажмите «Complete Model Schema» и введите полный код запроса для выполнения вызова API. 

Чтобы изменить состояние соглашения MegaSign, используйте put /megaSigns/{megaSignId}/state и выполните следующие действия:

  1. Перейдите в документацию по REST API версии 6 и выберите метод
    put /megaSigns/{megaSignId}/state.
  2. Укажите значение авторизации, а также If-Match и значение megasignID.
    • Для получения megasignID используйте get /megaSigns.
    • Для получения If-Match используйте get /megaSigns/{megaSignId} и под заголовком найдите «Etag».
  3. {
      "state": "CANCELED",
      "megaSignCancellationInfo": {
       "comment": "cancel",
       "notifyOthers": false
      }

Для успешной регистрации веб-перехватчика его URL-адрес отвечает на этот запрос на проверку, используя код ответа 2XX, а также может отправить одно и то же значение идентификатора клиента одним из следующих двух способов:

  1. В заголовке ответа X-AdobeSign-ClientId. Это тот же заголовок, который передается в запросе, и который снова отражается в ответе.
  2. В теле ответа JSON с ключом X-AdobeSign-ClientId, значением которого является тот же идентификатор клиента, который отправляется в запросе.

Acrobat Sign получает ответ 2xx со значением X-AdobeSign-ClientId. Пользователь может проверить, правильно ли оно настроено в веб-перехватчике.

URL-адрес веб-перехватчика не отвечает, как ожидается. Для каждого уведомления Post, отправленного Acrobat Sign, URL-адрес в ответ отправляет код статуса 2XX и тот же идентификатор клиента, отправленный в заголовках запросов (X-AdobeSign-ClientId), в заголовках ответов. 

Полную информацию можно найти по следующей ссылке:
https://developer.adobe.com/acrobat-sign/docs/overview/developer_guide/#!adobedocs/adobe-sign/master/webhooks/webhook_events.md

Если URL-адрес не соответствует данному протоколу, Acrobat Sign интерпретирует это как то, что он не подтвердил запрос и не попытался перенести его в соответствии с надежной политикой.

Если веб-перехватчик не отвечает, и превышено максимальное время повтора или максимальный интервал повтора, веб-перехватчик отключается.

Эта работа лицензируется по лицензии Creative Commons Attribution-Noncommercial-Share Alike 3.0 Unported.  Публикации Twitter™ и Facebook не подпадают под условия Creative Co.


Управление/получение информации о соглашениях

Чтобы изменить документ, который уже отправлен на подпись, используйте метод PUT /agreements/{agreementId}, который позволяет обновить существующее соглашение. Укажите идентификатор промежуточного документа вместе с идентификатором соглашения в следующем коде запроса:

 

{

  "documentUpdateInfo": {

    "fileInfos": [

      {

        "agreementDocumentId": "",

        "transientDocumentId": ""

      }

    ]

  }

}

 

Ниже приведены инструкции по обновлению состояния с «AUTHORING» на «IN_PROCESS» с помощью Put /agreements/{agreementId}/state.

Получите идентификатор соглашения с помощью метода POST/Agreement.

Используйте Get /agreements/{agreementId}, чтобы получить актуальный ETag.

Перейдите к  Put /agreements/{agreementId}/state и укажите следующую информацию: "state": "IN_PROCESS".

Нет.

В нынешнем REST API нет метода для загрузки подписанной копии.

Отправитель должен загрузить подписанную копию со страницы Управление.

DELETE /agreements/ID раньше позволял скрывать соглашение со страницы управления
.
В Adobe появился новый API PUT /agreements/ID/me/visibility для управления отображением соглашения (в GET /agreements). В дополнение к функциям, которые обеспечивает DELETE /agreements/ID, новая конечная точка отображения также позволяет пользователю отменить операцию скрытия, то есть снова сделать соглашение видимым. 

Другие возможные действия подробно описаны далее.

  1. Перейдите к методу get /agreements и получите идентификатор соглашения.
  2. Нажмите put /agreements/{agreementId}/me/visibility и укажите следующий запрос в качестве примера:
    {
      "visibility": "HIDE"
    }
    . Идентификатор соглашения скрыт только из get /libraryDocuments, однако он все еще отображается в пользовательском интерфейсе вкладки «Управление».
Примечание

По умолчанию функция хранения в API не включена.

Чтобы включить операцию DELETE/agreements , обратитесь к своему менеджеру по работе с клиентами с запросом на включение функции хранения в API для учетной записи.

Для получения дополнительной информации о включении функций хранения для вашей учетной записи см. Acrobat Sign — хранение документов.

Войдите в Acrobat Sign как администратор и перейдите по следующей ссылке: https://secure.adobesign.com/public/docs/restapi/v6.

  • Нажмите agreeements и разверните GET /agreements.
  • Нажмите кнопку OAUTH ACCESS-TOKEN. 
  • Включите область agreement_read:self.
  • Нажмите кнопку Authorize
    • Если требуется, нажмите  Allow Access.
  • Нажмите Try it out .
Метод Get Agreement

Будет создан ответ.

agreementId находится в теле ответа:

Ответ на Get Agreement

DELETE /agreements/{agreementId}/documents: удаление всех документов, связанных с соглашением. Само соглашение продолжает отображаться на странице «Управление».

  • Выберите операцию DELETE/agreements, которую необходимо выполнить.
  • Нажмите кнопку OAUTH ACCESS-TOKEN и создайте маркер доступа с областью agreement_retention.
  • Укажите agreementId соглашения, которое вы хотите удалить.
  • После удаления соглашения текст ответа выглядит как 'no content'.

Если операция DELETE/agreements не включена, вы получите следующий ответ:

 "code": "DYNAMIC_DOCUMENT_EXPIRATION_NOT_ENABLED",

  "message": "Для этой операции требуется активировать несколько параметров учетной записи. Обратитесь к специалистам Acrobat Sign, чтобы активировать эти параметры".

Как загрузить подписанный документ вместе с отчетом об аудите и сопутствующим документом через Acrobat Sign REST API, вместо того чтобы создавать отдельный вызов для загрузки отчета об аудите, используя следующий метод.

GET /agreements/{agreementId}/auditTrail

Перейдите на веб-сайт https://secure.na1.adobesign.com/public/docs/restapi/v5.

Нажмите GET /agreements/{agreementId}/combinedDocument.

Нажмите кнопку OAuth Access-token (Маркер доступа OAuth).

Маркер доступа генерируется автоматически после принятия авторизации.

Укажите agreementId.

В разделе attachSupportingDocuments выберите значение true в раскрывающемся списке.

В разделе attachAuditReport выберите значение true в раскрывающемся списке.

Нажмите кнопкуTry it out! (Попробовать).

Получение объединенных документов

Это обеспечивает загрузку объединенного PDF подписанного сопутствующего документа и отчета об аудите.

Для массовой загрузки документов доступен только инструмент экспорта документов, а с помощью API можно загружать документы только по одному. Ниже описан метод API, позволяющий сделать то же самое:

https://secure.na1.adobesign.com/public/docs/restapi/v5#!/agreements/getCombinedDocument


Шаблоны библиотек и веб-формы

Войдите Acrobat Sign как администратор и перейдите по адресу: https://secure.na1.adobesign.com/public/docs/restapi/v6.

  • Нажмите libraryDocuments и разверните метод GET /libraryDocuments.
  • Нажмите кнопку OAUTH ACCESS-TOKEN. 
  • Включите область library_read:self.
  • Нажмите кнопку Authorize
    • Если требуется, нажмите  Allow Access.
  • Нажмите Try it out кнопка
Метод Get LibraryDocument

Будет создан ответ.

LibraryDocumentId находится в теле ответа:

Ответ на Get LibraryDocument

В Adobe появился новый API PUT/libraryDocuments/ID/me/visibility для управления отображением соглашения (в GET /agreements). В дополнение к функциям, которые обеспечивает DELETE /agreements/ID, новая конечная точка отображения также позволяет пользователю отменить операцию скрытия, то есть снова сделать соглашение видимым.

Можно выполнить подробно описанные ниже действия:

  1. Перейдите к методу get / libraryDocuments и получите идентификатор соглашения.
  2. Нажмите put /libraryDocuments/{libraryDocumentId}/me/visibility и укажите следующий запрос в качестве примера:
    {
      "visibility": "HIDE"
    }
    . Идентификатор библиотеки скрыт только из get /libraryDocuments, однако он все еще отображается в пользовательском интерфейсе во вкладке «Управление».
Примечание
  • Отправьте запрос в службу поддержки, чтобы включить область для удаления библиотеки.
  • API удаляет библиотечный документ. Однако соглашения, созданные с помощью этого библиотечного документа, не затрагиваются.


Создание libraryDocumentID

Перейдите по ссылке: https://secure.echosign.com/public/docs/restapi/v5.

Нажмите libraryDocuments.

Нажмите кнопку OAuth Access-token

Авторизуйтемаркер доступа для себя, группы или учетной записи.

Выберите libraryTemplateType (Тип шаблона библиотеки) — Document (Документ) или Form_field_layer (слой полей формы).

Нажмите кнопку Try it out (Попробовать).

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


Удаление шаблонов библиотек

Скопируйте libraryDocumentID из тела ответа.

Перейдите к Delete libraryDocuments.

Нажмите кнопку OAuth Access-token (Маркер доступа OAuth). Авторизуйте маркер доступа для себя, группы или учетной записи.

Вставьте libraryDocumentId в поле Value (Значение).

Нажмите Try it out. 
Шаблон будет удален.

Вы получите следующий код ответа: 204.

Примечание

Можно обновить только веб-формы в состоянии Черновик.

Создайте виджет с помощью post /widgets.

Получите идентификатор виджета из get/widgets.

После создания с помощью метода GET /widgets/{widgetId} извлеките Etag из заголовка ответа.

Foo

В разделе put  /widgets/{widgetId} используйте Etag из GET /widgets/{widgetId}. В параметре If-Match введите widgetId и widgetInfo.

Foo


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

Создайте вызов get/agreements с соответствующим значением x-api-user.

В теле ответа найдите выходные данные для соглашения на подпись, для которого вы хотите найти URL-адрес для подписания, и запишите идентификатор соглашения.

Создайте вызов get/agreements/{agreementId}/signingUrls, используя идентификатор соглашения, полученный от вызова get/agreements.

 

Результат

В выходных данных будет указан адрес электронной почты подписывающих сторон и URL-адрес электронного подписания.

Метод Get Agreement