Create a template

Creates an email template project from Samva's canonical TSX starter and returns its template entry with status 201.

POST
/v1/templates

Creates an email template project from Samva's canonical TSX starter and returns its template entry with status 201.

x-api-key<token>

In: header

Request Body

application/json

TypeScript Definitions

Use the request body type in TypeScript.

name*string
Length1 <= length <= 200
projectName?|null
slug?|null
galleryTemplateId?|null
description?string|null|null
category?|null|null
isActive?boolean|null
idempotencyKey*string
Length1 <= length <= 255

Response Body

application/json

application/json

application/json

application/json

application/json

application/json

curl -X POST "https://example.com/v1/templates" \  -H "Content-Type: application/json" \  -d '{    "name": "string",    "idempotencyKey": "string"  }'
{  "id": "string",  "organizationId": "string",  "projectId": "string",  "entryPath": "string",  "name": "string",  "slug": "string",  "familyId": "string",  "channel": "email",  "description": "string",  "category": "string",  "fromDefault": {    "email": "string",    "name": "string"  },  "replyToDefault": [    "string"  ],  "trackingDefault": {    "opens": true,    "clicks": true  },  "email": {    "subject": "string",    "preheader": "string",    "headers": {      "property1": "string",      "property2": "string"    }  },  "publicationId": "string",  "inputContractId": "string",  "inputSchema": {},  "compliance": {    "metaStatus": "string",    "submittedAt": "string",    "qualityScore": "string",    "rejectedReason": "string",    "lastSyncedAt": "string",    "approvalStatus": "draft",    "approvedBy": "string",    "approvedAt": "string",    "approvalNotes": "string",    "regulatoryRequirements": [      {        "region": "string",        "requirement": "string",        "status": "compliant",        "notes": "string"      }    ]  },  "usageCount": 0,  "lastUsedAt": "string",  "status": "string",  "isActive": true,  "isDefault": true,  "publishedAt": "string",  "publishedBy": "string",  "createdAt": "string",  "updatedAt": "string"}