Chris C
Chris C

Reputation: 53

Retrieve Documents from a Template

I created a template within my DocuSign developer Sandbox that contains one document. I'm using the C# SDK to try and send out an envelope to a user, based on a template.

Here's the code where I retrieve all of the templates.

TemplatesApi templateApi = new TemplatesApi(ApiClient.Configuration);

         EnvelopeTemplateResults templateResults = templateApi.ListTemplates(AccountID);


The issue I am having is the EnvelopeTemplateResults does NOT have any documents associated with it.

When I use the REST API using POSTMAN, performing a GET to this URL, I can see that there's an envelopeTemplateDefinition, that has a Document on it, which is the one I want.

My question is, how, using the SDK API, can I get the envelopeTemplateDefinition ?

Upvotes: 0

Views: 479

Answers (2)

Inbar Gazit
Inbar Gazit

Reputation: 14005

Chris, if you are using the v2 API, there's an endpoint: GET /v2/accounts/{accountId}/templates/{templateId}/documents/{documentId}

you can try it here - https://apiexplorer.docusign.com/#/esign/restapi?categories=Templates&tags=TemplateDocuments&operations=get

the c# SDK inside TemplateAPI has GetDocument() and UpdateDocument() methods

Upvotes: 0

Drew
Drew

Reputation: 5029

In order to have the ListTemplates method include the Documents info, you have to set an Include parameter:

        var templatesApi = new TemplatesApi(apiClient.Configuration);
        var listTemplatesOptions = new TemplatesApi.ListTemplatesOptions { include = "documents" };
        var templateResults = templatesApi.ListTemplates(accountId, listTemplatesOptions);

If you are trying to get the Template Definition of a single template, the templatesApi.Get() method can be used with its own set of Include options:

        var getTemplateOptions = new TemplatesApi.GetOptions { include = "documents" };
        var templateDefinition = templatesApi.Get(accountId, templateId, getTemplateOptions);

Finally, if you're trying to get an actual PDF out of a specific template, that would be the templatesApi.GetDocument() method:

templatesApi.GetDocument(accountId, templateId, documentId);

Where DocumentId is the specific document you want to pull, or "Combined" if you want to pull all the documents in as a single PDF.

Upvotes: 2

Related Questions