Skip to contentSkip to navigationSkip to topbar
On this page

Create a new transactional template version.



API Overview

api-overview page anchor

Represents the code for a particular transactional template. Each transactional template can have multiple versions, each version with its own subject and content. Each user can have up to 300 versions across all templates.

For more information about transactional templates, please see our Transactional Templates documentation. You can also manage your Transactional Templates in the Dynamic Templates section of the Twilio SendGrid App(link takes you to an external page).


POST/v3/templates/{template_id}/versions

Base url: https://api.sendgrid.com (for global users and subusers)

Base url: https://api.eu.sendgrid.com (for EU regional subusers)

This endpoint allows you to create a new version of a template.


Authentication

authentication page anchor
Property nameTypeRequiredDescription
Authorizationstringrequired
Default: Bearer <<YOUR_API_KEY_HERE>>

on-behalf-ofstringOptional

The on-behalf-of header allows you to make API calls from a parent account on behalf of the parent's Subusers or customer accounts. You will use the parent account's API key when using this header. When making a call on behalf of a customer account, the property value should be "account-id" followed by the customer account's ID (e.g., on-behalf-of: account-id <account-id>). When making a call on behalf of a Subuser, the property value should be the Subuser's username (e.g., on-behalf-of: <subuser-username>). See On Behalf Of for more information.

Property nameTypeRequiredDescription
template_idstring<uuid>required
Encoding type:application/json
SchemaExample
Property nameTypeRequiredDescriptionChild properties
activeenum<integer>Optional

Set the version as the active version associated with the template (0 is inactive, 1 is active). Only one version of a template can be active. The first version created for a template will automatically be set to Active.

Possible values:
01

namestringrequired

Name of the transactional template version.

Max length: 100

html_contentstringOptional

The HTML content of the version. Maximum of 1048576 bytes allowed.

Max length: 1048576

plain_contentstringOptional

Text/plain content of the transactional template version. Maximum of 1048576 bytes allowed.

Max length: 1048576Default: <generated from html_content if left empty>

generate_plain_contentbooleanOptional

If true, plain_content is always generated from html_content. If false, plain_content is not altered.

Default: true

subjectstringrequired

Subject of the new transactional template version.

Max length: 255

editorenum<string>Optional

The editor used in the UI.

Possible values:
codedesign

test_datastringOptional

For dynamic templates only, the mock json data that will be used for template preview and test sends.

201
SchemaExample
Property nameTypeRequiredDescriptionChild properties
warningsarray[object]

activeenum<integer>

Set the version as the active version associated with the template. Only one version of a template can be active. The first version created for a template will automatically be set to Active.

Possible values:
01

namestring

Name of the transactional template version.

Max length: 100

html_contentstring

The HTML content of the Design.


plain_contentstring

Plain text content of the Design.


generate_plain_contentboolean

If true, plain_content is always generated from html_content. If false, plain_content is not altered.

Default: true

subjectstring

Subject of the new transactional template version.

Max length: 255

editorenum<string>

The editor used in the UI.

Possible values:
codedesign

test_datastring

For dynamic templates only, the mock json data that will be used for template preview and test sends.


idstring<uuid>

ID of the transactional template version.


template_idstring

ID of the transactional template.


updated_atstring

The date and time that this transactional template version was updated.


thumbnail_urlstring

A Thumbnail preview of the template's html content.

Create a new transactional template version.Link to code sample: Create a new transactional template version.
1
const client = require('@sendgrid/client');
2
client.setApiKey(process.env.SENDGRID_API_KEY);
3
4
const template_id = "f15982c1-a82c-4e87-a6b2-a4a63b4b7644";
5
const data = {
6
"template_id": "Excepteur Ut qui",
7
"active": 1,
8
"name": "pariatur non incididunt commodo",
9
"html_content": "dolor",
10
"generate_plain_content": false,
11
"subject": "aliquip nulla Ut",
12
"editor": "design",
13
"plain_content": "labore dolore"
14
};
15
16
const request = {
17
url: `/v3/templates/${template_id}/versions`,
18
method: 'POST',
19
body: data
20
}
21
22
client.request(request)
23
.then(([response, body]) => {
24
console.log(response.statusCode);
25
console.log(response.body);
26
})
27
.catch(error => {
28
console.error(error);
29
});

Need some help?

Terms of service

Copyright © 2024 Twilio Inc.