> You are reading the Docusign Developer Documentation. For clean Markdown of any page, append .md to the page URL.
>
> Documentation indexes by section:
> - APIs and SDKs: https://docusign.docs.buildwithfern.com/docs/llms.txt
> - Platform 101: https://docusign.docs.buildwithfern.com/platform/llms.txt
> - Extension Apps: https://docusign.docs.buildwithfern.com/extension-apps/llms.txt
> - Docusign CLI: https://docusign.docs.buildwithfern.com/docusign-cli/llms.txt
>
> Authentication (OAuth, JWT Grant, M2M): https://docusign.docs.buildwithfern.com/platform/auth
> Webhooks and Connect: https://docusign.docs.buildwithfern.com/platform/webhooks
>
> OpenAPI specifications: https://docusign.docs.buildwithfern.com/openapi.json
> MCP server: https://docusign.docs.buildwithfern.com/_mcp/server

# CreateEnvelopeFromTemplates

**Note:** CreateEnvelopeFromTemplates is an older method for creating templates and is not as robust as the CreateEnvelopeFromTemplatesAndForms method. Docusign recommends using the CreateEnvelopeFromTemplatesAndForms method to access the full system functionality when sending from templates. CreateEnvelopeFromTemplates does not reference the reminder and expiration notification settings from server templates. Reminder and Expiration Notification elements will need to be specified in the call or UseAccountDefaults will need to be used. CreateEnvelopeFromTemplates also does not fully support Signing Groups. The CreateEnvelopeFromTemplatesAndForms method does reference notifications from server templates and supports Signing Groups.

CreateEnvelopeFromTemplates uses templates as the basis for the definition of a signing ceremony. In contrast to the CreateAndSendEnvelope method, where the relationship of Tabs-to-Documents and Tabs-to-Recipients is passed in the request, CreateEnvelopeFromTemplates derives its Tab assignments from the pre-configured Template; and provides Recipient information to fulfill the Roles that are specified in the Template.

When provided one or more templates, along with their supplemental Document, Recipient and Envelope information, Docusign will merge the various Template references into a single Envelope and send to the Recipients.

When a template is added or applied to an envelope and the template has a locked email subject and message (MessageLock is true), that subject and message is used for the envelope and cannot be changed even if another locked template is subsequently added or applied to the envelope. If an email subject or message is entered before adding or applying a locked template, the email subject and message will be overwritten with the email subject and message from the locked template.

**`C#`**

```csharp title="C#"
// Create the recipient information
DocuSignWeb.Recipient recipient = new DocuSignWeb.Recipient();
recipient.Email = "Test email";
recipient.UserName = "Testing account";
recipient.Type = DocuSignWeb.RecipientTypeCode.Signer;
recipient.ID = "1";
recipient.RoutingOrder = 1;
DocuSignWeb.Recipient[] recipients = new DocuSignWeb.Recipient[] { recipient };

// Create the template reference from a server-side template ID
DocuSignWeb.TemplateReference templateReference = new DocuSignWeb.TemplateReference();
templateReference.Template = "Template ID";
templateReference.TemplateLocation = DocuSignWeb.TemplateLocationCode.Server;

// Construct the envelope information
DocuSignWeb.EnvelopeInformation envelopeInfo = new DocuSignWeb.EnvelopeInformation();
envelopeInfo.AccountId = _accountId;
envelopeInfo.Subject = "Subject";
envelopeInfo.EmailBlurb = "Email content";

// Create draft with all the template information
DocuSignWeb.EnvelopeStatus status = _apiClient.CreateEnvelopeFromTemplates(new
DocuSignWeb.TemplateReference[] { templateReference }, recipients,
envelopeInfo, false);

// Confirm that the envelope has been assigned an ID
Console.WriteLine("Status for envelope {0} is {1}", status.EnvelopeID, status.Status);
```

**`PHP`**

```php title="PHP"
// Create the recipient
$rcp1 = new Recipient();// First recipient to put in recipient array
$rcp1->UserName = "John Doe";
$rcp1->Email = $Recipient1Email;
$rcp1->Type = RecipientTypeCode::Signer;
$rcp1->ID = "1";
$rcp1->RoutingOrder = 1;
$rcp1->RequireIDLookup = FALSE;

// Use a server-side template
$templateRef = new TemplateReference();
$templateRef->TemplateLocation = TemplateLocationCode::Server;

// TODO: Replace string with the GUID of a template already uploaded to your account
$templateRef->Template = "put in a template GUID here";

// Construct the envelope info
$envInfo = new EnvelopeInformation();
$envInfo->AccountId = $AccountID;
$envInfo->Subject = "create envelope from templates test";
$envInfo->EmailBlurb = "testing docusign create services";

// Send creates draft with all the template info
$createEnvelopeFromTemplatesparams = new CreateEnvelopeFromTemplates();
$createEnvelopeFromTemplatesparams->TemplateReferences = array($templateRef);
$createEnvelopeFromTemplatesparams->Recipients = array($rcp1)
$createEnvelopeFromTemplatesparams->EnvelopeInformation = $envInfo;
$createEnvelopeFromTemplatesparams->ActivateEnvelope = false;
$response = $api->CreateEnvelopeFromTemplates($createEnvelopeFromTemplatesparams);
```

![](/_fern-files/_img/37450a133d1896f4842c33f89df4a54bb4bcd38c450f0442e144630c81c31040.webp)

| Name                | Schema Type         | Description                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                             |
| ------------------- | ------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| TemplateReferences  | TemplateReference   | Specifies the Templates that are included in this call. See the TemplateReference section for more information.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                         |
| Recipients          | Recipient           | Defines the Recipients that are included in this Envelope. These will be referenced from the RoleAssignment elements that are in each TemplateReference. The structure of a Recipient in the CreateEnvelopeFromTemplates method is similar to Recipients in other methods of the Docusign Connect API. However, since these properties may also be specified in Templates that are referenced in the request, override rules are in place to determine the order of precedence of values that are specified in multiple places for like fields. For more information on the override rules of Recipient data over the roles specifications in the Template(s), see the override rules section. For Recipient definition refer to the Recipient section. |
| EnvelopeInformation | EnvelopeInformation | The structure and usage of these Envelope-level concepts are similar with their counterparts in other methods of the API. However, since these properties may also be specified in Templates that are referenced in the request, override rules are in place to determine the order of precedence of values that are specified in multiple places for like fields. For more information on the override rules for EnvelopeInformation data see the override rules section. For Envelope information, refer to the EnvelopeInformation section.                                                                                                                                                                                                          |
| ActivateEnvelope    | Boolean             | Indicates whether the Envelope should be sent immediately or created as a Draft Envelope. Defaults to “True”, where the Envelope will be sent.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          |