JSON Документы Docusign Inline Mulitpule - PullRequest
0 голосов
/ 04 мая 2020

У меня Json работает для одного документа и преобразует поля PDF, но когда я пытаюсь добавить второй документ. Я получаю JSON Ошибка разбора.

Это работает

"document": {
"documentId": "1",
"name": "Test Contract With Fields.pdf",
"transformPdfFields": "true",
"documentBase64": "'.$documentHashpdf.'"
    }

, это также работает, но не преобразует PDFFields.

 "inlineTemplates": [
        {
          "documents": [
            {
              "documentBase64": "<Base64BytesHere>",
              "documentId": "1",
              "name": "test",
              "transformPdfFields": "true"
            },
            {
              "documentBase64": "<Base64BytesHere>",
              "documentId": "2",
              "name": "test 2",
              "order": "2"
            }
          ],

Добавление квадрата [] и второй документ разрывается. Попытка создания Documents

    "document": [{
        "documentId": "1",
        "name": "Test Contract With Fields.pdf",
        "transformPdfFields": "true",
        "documentBase64": "'.$documentHashpdf.'"
    },
    {

        "documentId": "2",
        "name": "Test Contract With Fields 2.pdf",
        "transformPdfFields": "true",
        "documentBase64": "'.$documentHashpdf.'"

    }]

** Обновление: завершено JSON Хотите добавить второй ** документ ****

{
    "emailBlurb": "Test Blurb",
    "emailSubject": "Test subject",
    "status": "sent",
    "compositeTemplates": [
        {
            "compositeTemplateId": "1",
            "inlineTemplates": [
                {
                    "sequence": "1","documents": [
              {
                "documentBase64": "'.$documentHashpdf.'",
"documentId": "2",
              "name": "Not working", "order": "2"
            }
          ],

                    "recipients": {
                        "signers": [
                            {
                                "email": "*******",
                                "name": "********e",
                                "recipientId": "1",
                                "smsAuthentication": {
                                "senderProvidedNumbers": ["******"]
                                },
                                "idCheckConfigurationName": "SMS Auth $",
                                "requireIdLookup": "true",
                                "clientUserId": "1001",
                                "defaultRecipient": "true",
                                "tabs": {
                                    "signHereTabs": [
                                        {
                                            "pageNumber": "1",
                                            "documentId": "1",
                                            "tabLabel": "text 1",
                                            "recipientId": "1"
                                        }
                                    ],
                                    "fullNameTabs": [
                                        {
                                            "pageNumber": "1",
                                            "documentId": "1",
                                            "xPosition": "20",
                                            "yPosition": "20",
                                            "height": "10",
                                            "width": "20",
                                            "tabLabel": "Text 2",
                                            "recipientId": "1"
                                        }
                                    ],
                                    "dateSignedTabs": [
                                        {
                                            "pageNumber": "1",
                                            "documentId": "1",
                                            "xPosition": "20",
                                            "yPosition": "30",
                                            "height": "10",
                                            "width": "20",
                                            "tabLabel": "text 3",
                                            "recipientId": "1"
                                        }
                                    ]
                                }
                            }
                        ]
                    }
                }
            ],
            "document": {
                "documentId": "1",
                "name": "Working",
                "transformPdfFields": "true",
                "documentBase64": "'.$documentHashpdf.'"
            }       }
    ]

Ответы [ 2 ]

0 голосов
/ 08 мая 2020

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

{
  "emailBlurb": "Test Blurb",
  "emailSubject": "Test subject",
  "status": "sent",
  "compositeTemplates": [{
      "compositeTemplateId": "1",
      "document": {
        "documentId": "1",
        "name": "Working",
        "transformPdfFields": "true",
        "documentBase64": "'.$documentHashpdf.'"
      },
      "inlineTemplates": [{
        "sequence": "1",
        "recipients": {
          "signers": [{
            "email": "*******",
            "name": "********e",
            "recipientId": "1",
            "smsAuthentication": {
              "senderProvidedNumbers": ["******"]
            },
            "idCheckConfigurationName": "SMS Auth $",
            "requireIdLookup": "true",
            "clientUserId": "1001",
            "defaultRecipient": "true"
          }]
        }
      }]
    },
    {
      "compositeTemplateId": "2",
      "document": {
        "documentBase64": "'.$documentHashpdf.'",
        "documentId": "2",
        "name": "Not working",
        "transformPdfFields": "true"
      },
      "inlineTemplates": [{
        "sequence": "1",
        "recipients": {
          "signers": [{
            "email": "*******",
            "name": "********e",
            "recipientId": "1",
            "smsAuthentication": {
              "senderProvidedNumbers": ["******"]
            },
            "idCheckConfigurationName": "SMS Auth $",
            "requireIdLookup": "true",
            "clientUserId": "1001",
            "defaultRecipient": "true"
          }]
        }
      }]
    }
  ]
}

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

Обратите внимание, что использование CompositeTemplateId требуется только для связи вложений из нескольких частей, что является более удобным способом обработки документов, чем кодировка base64 их в элементах documentBase64 .

0 голосов
/ 08 мая 2020

Вот фиксированный JSON:

    {
        "emailBlurb": "Test Blurb",
        "emailSubject": "Test subject",
        "status": "sent",
        "compositeTemplates": [
            {
                "compositeTemplateId": "1",
                "inlineTemplates": [
                    {
                        "sequence": "1","documents": [
                  {
                    "documentBase64": "'.$documentHashpdf.'",
    "documentId": "2",
                  "name": "Not working", "order": "2"
                }
              ],

                        "recipients": {
                            "signers": [
                                {
                                    "email": "*******",
                                    "name": "********e",
                                    "recipientId": "1",
                                    "smsAuthentication": {
                                    "senderProvidedNumbers": ["******"]
                                    },
                                    "idCheckConfigurationName": "SMS Auth $",
                                    "requireIdLookup": "true",
                                    "clientUserId": "1001",
                                    "defaultRecipient": "true",
                                    "tabs": {
                                        "signHereTabs": [
                                            {
                                                "pageNumber": "1",
                                                "documentId": "1",
                                                "tabLabel": "text 1",
                                                "recipientId": "1"
                                            }
                                        ],
                                        "fullNameTabs": [
                                            {
                                                "pageNumber": "1",
                                                "documentId": "1",
                                                "xPosition": "20",
                                                "yPosition": "20",
                                                "height": "10",
                                                "width": "20",
                                                "tabLabel": "Text 2",
                                                "recipientId": "1"
                                            }
                                        ],
                                        "dateSignedTabs": [
                                            {
                                                "pageNumber": "1",
                                                "documentId": "1",
                                                "xPosition": "20",
                                                "yPosition": "30",
                                                "height": "10",
                                                "width": "20",
                                                "tabLabel": "text 3",
                                                "recipientId": "1"
                                            }
                                        ]
                                    }
                                }
                            ]
                        }
                    },
                    {
                    "documentId": "1",
                    "name": "Working",
                    "transformPdfFields": "true",
                    "documentBase64": "'.$documentHashpdf.'"
                    }       
               ]}
        ]
    }
...