Question

J'essaie d'ajouter des documents à un modèle composite à l'aide de l'API docusign et que les documents ne se chargeent pas dans l'enveloppe de la manière dont je m'attendrais. J'ai actuellement mon code avec un test JSON où j'ajoute des documents sans utiliser de modèles composites et cela fonctionne parfaitement. Il semble que les modèles composites ignorent cependant les documents cependant. Voici comment je le crée:

{
"emailSubject": "Test Email Subject_FA",
"emailBlurb": "Test Email Body_FA",
"status": "created",
"compositeTemplates": [
    {
        "inlineTemplates": [
            {
                "sequence": "1",
                "recipients": {
                    "signers": [
                        {
                            "email": "test1@yahoo.com",
                            "name": "test1",
                            "recipientId": "1",
                            "routingOrder": "1",
                            "roleName": "Client 1"
                        },
                        {
                            "email": "test2@gmail.com",
                            "name": "test2",
                            "recipientId": "2",
                            "routingOrder": "2",
                            "roleName": "Client 2"
                        }
                    ],
                    "documents": [
                        {
                            "transformPdfFields": "false",
                            "name": "test0.pdf",
                            "documentId": "1"
                        }
                    ]
                }
            }
        ]
    },
    {
        "inlineTemplates": [
            {
                "sequence": "1",
                "recipients": {
                    "signers": [
                        {
                            "email": "test1@yahoo.com",
                            "name": "test1",
                            "recipientId": "1",
                            "routingOrder": "1",
                            "roleName": "Client 1"
                        },
                        {
                            "email": "test2@gmail.com",
                            "name": "test2",
                            "recipientId": "2",
                            "routingOrder": "2",
                            "roleName": "Client 2"
                        }
                    ],
                    "documents": [
                        {
                            "transformPdfFields": "false",
                            "name": "test1.pdf",
                            "documentId": "2"
                        }
                    ]
                }
            }
        ]
    }
]

}

C'est un petit test que je le fais pour que je comprends cela n'est pas pratique. Mais ce que j'essaie de comprendre, c'est pourquoi cela ne voudrait pas ajouter de documents à l'enveloppe. La demande ci-dessous fait ce que j'essaie de faire ci-dessus.

{
"emailSubject": "Test Email Subject_FA",
"emailBlurb": "Test Email Body_FA",
"status": "created",
"documents": [
    {
        "name": "test0.pdf",
        "documentId": "1"
    },
    {
        "name": "test1.pdf",
        "documentId": "2"
    },
    {
        "name": "test2.pdf",
        "documentId": "3"
    }
],
"recipients": {
    "signers": [
        {
            "email": "test1@yahoo.com",
            "name": "test1",
            "recipientId": "1",
            "clientUserId": "1",
            "signerName": "test1",
            "defaultRecipient": "true",
            "defaultRecipientSpecified": "true",
            "routingOrder": "1"
        },
        {
            "email": "test2@gmail.com",
            "name": "test2",
            "recipientId": "2",
            "clientUserId": "2",
            "signerName": "test2",
            "routingOrder": "2"
        }
    ]
}

}

Quelqu'un sait-il pourquoi mon enveloppe pour le modèle composite ne charge pas les documents?

Merci d'avance!

mise à jour :

Voici ma demande de modèle composite:

--MY_BOUNDARY
Content-Type: application/json
Content-Disposition: form-data
{                
"emailSubject": "Test Email Subject_FA",
"emailBlurb": "Test Email Body_FA",
"status" : "created",               
"compositeTemplates": [               
{                    
"inlineTemplates": [  
{ 
    "sequence": "1",    
    "recipients": 
    {                           
        "signers": [                              
        {                              
            "email": "test1@yahoo.com",    
            "name": "test1",             
            "recipientId": "1"                
        },                              
        {                              
            "email": "test2@gmail.com",  
            "name": "test2",         
            "recipientId": "2"              
        }                            
        ],                           
        "document":                  
        {                            
            "name": "test0",              
            "documentId": "1",            
            "fileExtension": "pdf"         
        }                               
    }                  
}                  
]               
},               
{                
"inlineTemplates": [   
{                     
    "sequence": "2",       
    "recipients": {         
    "signers": [            
        {                        
            "email": "test1@yahoo.com",   
            "name": "test1",          
            "recipientId": "1"
        },
        {                              
            "email": "test3@yahoo.com",  
            "name": "test3",                           
            "recipientId": "2"                               
        }
    ],                  
    "document":                                 
        {    
            "name": "test1",                             
            "documentId": "2",                           
            "fileExtension": "pdf"                       
        }                                             
    }                  
}                  
]               
}               
]           
}
--MY_BOUNDARY

Content-Type: application/pdf
Content-Disposition: file; filename="test0.pdf"; documentid="1"

--MY_BOUNDARY

Content-Type: application/pdf
Content-Disposition: file; filename="test1.pdf"; documentid="2"




--MY_BOUNDARY--

J'ai ajusté mon document pour utiliser le nom et la filedxtress, donc j'ai laissé de côté l'extension .pdf sur le nom de fichier, car cela semble être une autre méthode de mise en œuvre. J'ai essayé les deux manières et n'avait pas de chance.

Était-ce utile?

La solution

Dans la demande JSON que vous avez posté, vous spécifiez " DOCUMENTS " (Pluriel) en tant que collection / gamme de documents objets , ce qui n'est pas correct. Chaque élément de modèle composite dans le tableau COMPOSITETEMLATS ne peut contenir que, au plus, un document . Cela signifie que la syntaxe JSON pour la spécification du document dans un modèle composite est la suivante:

"document": {
    "documentId": 1,
    "name": "test1.pdf"
}

I.e., Document est singulier, et c'est un objet (pas un tableau d'objets). La syntaxe de requête complète de la demande JSON 'composite des modèles' est affichée dans la réponse de votre question précédente:
Comment appliquer un modèle à un document utilisant API Docusign Repose .

re la "mise à jour" à votre question:

Dans la partie JSON de la demande que vous avez postée sous "Mise à jour", je remarque que vous avez inclus DOCUMENT DE DOCUMENT INTÉRIEUR DES DÉCISIONS (qui est contenu Dans les objets inllinetemplates ) - Ce n'est pas le bon emplacement pour Document . Comparez de près votre structure JSON avec la structure suivante (correcte) et ajustez votre demande en conséquence. Essentiellement, DOCUMENT doit être un pair de inlinetemplates - non localisé dans inllindemplates .

.
POST https://demo.docusign.net/restapi/v2/accounts/ACCOUNTNBR/envelopes HTTP/1.1

X-DocuSign-Authentication: {"Username":"USERNAME","Password":"PASSWORD","IntegratorKey":"INTEGRATORKEY"}
Content-Type: multipart/form-data; boundary=MY_BOUNDARY
Accept: application/json
Host: demo.docusign.net
Content-Length: 162100

--MY_BOUNDARY
Content-Type: application/json
Content-Disposition: form-data

{
    "status" : "sent",
    "emailSubject" : "Test Envelope Subject",
    "emailBlurb" : "Test Envelope Blurb",
    "compositeTemplates": [
    {
        "inlineTemplates": [
        {
            "sequence" : 1,
            "recipients": {
                "signers" : [{
                    "email": "abbysemail@outlook.com",
                    "name": "Abby Abbott",
                    "recipientId": "1"
                }]
            }
        }],
        "document": {
            "documentId": 1,
            "name": "CustomerAgreement",
            "fileExtension": "pdf"
        }
    }]
}

--MY_BOUNDARY
Content-Type: application/pdf
Content-Disposition: file; filename="CustomerAgreement.pdf"; documentid="1"

    <document bytes removed>

--MY_BOUNDARY
Content-Type: application/pdf
Content-Disposition: file; filename="Invoice.pdf"; documentid="2"

    <document bytes removed>

--MY_BOUNDARY--

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top