Как указать размеры таблицы шаблонов docusign

#docusignapi

#docusignapi

Вопрос:

Я пытаюсь программно добавить вкладки в шаблон, используя конечную точку
POST /v2/accounts/{accountId}/templates/{templateId}/recipients/{recipientId}/tabs

Я могу надежно разместить checkboxTabs , dateSignedTabs , signHereTabs , и initialHereTabs , но когда дело доходит до размещения textTabs (наиболее важных) Кажется, я не могу управлять размерами при использовании API Explorer.

Я ввожу параметры высоты и ширины

высота 11 ширина 456

Но запрос становится

 {
  "textTabs": [
    {
      "documentId": "1",
      "locked": "true",
      "pageNumber": "1",
      "required": "false",
      "tabLabel": "dataLabel",
      "xPosition": "200",
      "yPosition": "200"
    }
  ]
}
 

С таким ответом, как

 {
    "textTabs": [
        {
            "isPaymentAmount": "false",
            "shared": "false",
            "requireInitialOnSharedChange": "false",
            "requireAll": "false",
            "required": "false",
            "locked": "true",
            "concealValueOnDocument": "false",
            "disableAutoSize": "false",
            "tabLabel": "dataLabel",
            "font": "arial",
            "bold": "false",
            "italic": "false",
            "underline": "false",
            "fontColor": "black",
            "fontSize": "size7",
            "documentId": "1",
            "recipientId": "XXXXXX",
            "pageNumber": "1",
            "xPosition": "200",
            "yPosition": "200",
            "tabId": "e940cc97-a68c-4da6-9ffe-487439579bc6"
        }
    ]
}

 

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

наименьшее текстовое поле, которое невозможно представить

1) Является ли это ограничением проводника API?

2) Или высота и ширина недопустимые параметры при создании вкладок из этой конечной точки? 2.а) и если да, то каков правильный способ?

Ответ №1:

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

 {
  "textTabs": [
    {
      "documentId": "1",
      "locked": "true",
      "pageNumber": "1",
      "required": "false",
      "tabLabel": "dataLabel",
            "height": "11",
            "width": "400",
      "xPosition": "200",
      "yPosition": "200"
    }
  ]
}
 

вы сможете установить height amp; width !

текстовое поле с высотой и шириной

Теперь Docusign может изменить их по причинам, которые ваш человеческий разум не может понять. 400 !== 396 in the response но не волнуйтесь, надеюсь, это только часть процесса. И считайте, что вам повезло, по крайней мере, эта страница API Explorer работает, в отличие от некоторых конечных точек, которые прямо не имеют документации!

кроме того, пример реализации этого с использованием python sdk: (на случай, если чтение автоматически созданного кода непонятно)

 tabs = {
    "checkboxTabs": [
        {
            "documentId": "1",
            "locked": "true",
            "pageNumber": "1",
            "tabLabel": "check1",
            "xPosition": "100",
            "yPosition": "100"
        }
    ],
    "dateSignedTabs": [
        {
            "documentId": "1",
            "pageNumber": "1",
            "xPosition": "300",
            "yPosition": "100"
        }
    ],
    "signHereTabs": [
        {
            "documentId": "1",
            "pageNumber": "1",
            "xPosition": "200",
            "yPosition": "200"
        }
    ],
    "initialHereTabs": [
        {
            "documentId": "1",
            "pageNumber": "1",
            "xPosition": "300",
            "yPosition": "200"
        }
    ],
    "textTabs": [
        {
            "pageNumber": "1",
            "xPosition": "50",
            "yPosition": "50",
            "tabLabel": "text1",
            "locked": "true",
            "required": "false",
            "documentId": "1",
            "height": "11",
            "width": "400"
        }
    ]
}
response = Template.template_api.create_tabs(recipient_id=recipient_id, template_id=template_id, account_id=Template.accountID, template_tabs=tabs).to_dict()