2017-02-20 8 views
1

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

До сих пор у меня не было проблем с аутентификацией или созданием «конверта», построенного из шаблона, или назначением ролей. Я могу получить идентификаторы шаблонов, конвертов, документов без проблем. Тем не менее, ни одна из моих попыток получить список пользовательских полей или заполнить их через API REST не удалась.

Я попытался вытащить поля из шаблона и из конверта после применения шаблона. Я даже вручную задал значения через пользовательский интерфейс, но ничего не получил. И запросы не терпят неудачу. Они успешны. Там либо только пустые структуры данных ответа, либо обновление не выполняется.

Например, при попытке восстановить пользовательские поля, это то, что я получаю:

{ 
    "textCustomFields": [], 
    "listCustomFields": [] 
} 

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

{ 
    "documentFields": [] 
} 

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

  • /конверты/{1}/custom_fields
  • /конверты/{1}/документы/{2 }/поля
  • /конверты/{1}/получатели/{2}/вкладки
  • /шаблоны/{1}/custom_fields
  • /шаблоны/{1}/документы/{2}/поля

- E DIT -

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

DocuSign envelope roles

Вкладка не возвращается на «That Guy», несмотря на то, что роль отмечена «необходимо подписать» , Они возвращаются для «Другого парня», хотя эта роль предназначена только для копирования. Итак, возможно, теперь похоже, что проблема связана с определением роли, чем с чем-либо еще. Или мне нужно снова рассмотреть все это, потому что эти поля, нуждающиеся в предпопуляции, должны быть установлены для всех получателей и не зависят от роли. Все должны видеть одно и то же.

+0

Не могли бы вы разместить полный URL-адрес своего запроса на получение. –

+0

Как вы заполняете пользовательские поля через REST_API? Не могли бы вы отправить свой полный запрос. –

ответ

1

DocuSign использует термин «пользовательские поля» в (по крайней мере) 3 различных способах:

  • Конверт Пользовательских поля позволяют указать метаданные, которые получают связанные на уровне конвертов.Эти данные не видны получателям; это просто дополнительные метаданные, которые можно связать с конвертом и запросом позже (через API). См. here для получения дополнительной информации.

  • Документ Пользовательские поля позволяет указывать метаданные, которые ассоциируются на уровне документа. Эти данные никоим образом не видны получателям; это дополнительные метаданные, которые можно связать с конкретным документом и запросом позже (через API). См. here для получения дополнительной информации.

  • Пользовательские поля (так называемое «пользовательские вкладки») позволяют создавать (и сохранить) свою собственную пользовательские вкладки для использования в документах - см here и here для получения дополнительной информации.

Основываясь на информации, предоставленной Вами в вопросе Ты, я предполагаю, что вы используете термин «пользовательские поля» для обозначения вкладок вы разместили по всему документу (s) в шаблоне, некоторые из которых вы хотите динамически заполнять данными через API при создании конверта, а другие, которые получатели будут заполнять данными во время подписания. Это верно?

Если это то, что вы имеете в виду, вы можете получить список вкладок (полей), что конкретный получатель владеет путем выполнения Список Конверт Вкладка запроса, как описано here.

GET /v2/accounts/{accountId}/envelopes/{envelopeId}/recipients/{recipientId}/tabs

Чтобы получить вкладки для шаблона (а не как конверт), использовать этот же URI, но задать значение шаблона ID вместо {envelopeId}. Также обратите внимание, что значение, указанное вами для {recipientId}, должно идентифицировать получателя, который «владеет» вкладками в шаблоне/конверте. (Каждая вкладка в шаблоне/конверте «принадлежит» конкретным получателем.)

Если я неправильно понял вашу проблему (или что вы подразумеваете под «настраиваемыми полями»), прокомментируйте этот ответ, и я попытаться прояснить далее.

+0

Из того, что вы сказали здесь, на самом деле, я не думаю, что добавил какие-либо вкладки, и, возможно, то, что я добавил, было просто контейнерами метаданных. Мне придется немного подсунуть шаблон в шаблон и создать новый конверт для тестирования. Было бы неплохо, если бы их документация сделала это немного более ясным. Но даже при этом, независимо от того, заполнялись ли поля через REST, я все еще не уверен, почему вызовы API не возвращают ни одно из полей. –

+0

Итак, хотя в пользовательском интерфейсе были созданы несколько полей, как «настраиваемые поля», все, по-видимому, было «вкладкой», но отображалось только для одного получателя. Я никогда не думал проверять вкладки для этого получателя из-за двух определенных ролей, которые не являются подписывающими. Я собираюсь сделать редактирование на свой пост, надеюсь, это поможет. –

+0

Если вы выполните запрос «Вкладки списка конвертов» (используя URI, который я разместил выше), и укажите получателя, соответствующего Получателю, которому были назначены вкладки в шаблоне/конверте, вы должны увидеть вкладки, возвращенные в ответе. Примечание. Вы можете увидеть получателей (и каждый из них), выполнив запрос «Получить получателей»: GET/v2/accounts/{accountId}/envelopes/{envelope-or-template-Id}/recipients.Этот ответ содержит пару различных свойств, связанных с идентификатором получателя - вы захотите использовать значение «recipientIdGuid» в запросе «Вкладки списка конвертов». –

Смежные вопросы