Update a template
Updates template metadata. View request and response details for this Samva email API endpoint.
Updates template metadata. Setting entryPath points the template at another file in its project and keeps its id, slug, and publications; move the file in Git separately. Source changes use the project workspace API.
apiKeyx-api-key<token>id*string^tmpl_[0-9a-hjkmnp-tv-z]{16,24}$application/json- body
data*Template
application/json- response
id*TemplateId^tmpl_[0-9a-hjkmnp-tv-z]{16,24}$slug*stringname*stringchannel*string"sms""whatsapp""email"projectId*TemplateProjectId^tproj_[0-9a-hjkmnp-tv-z]{16,24}$namespaceId*|The namespace the template's project belongs to; every entry in a project shares it. Null at organization level. A namespace-scoped key reaches only its own namespace's templates and shared ones.
shared*booleanWhether the template's project is shared with every namespace. Every entry in a project shares it. A namespace-scoped key reads and sends a shared template in its own namespace but cannot change it. Only an organization-level project is shared.
entryPath*string^(?!\/)(?!.*\\)(?!.*(?:^|\/)\.{1,2}(?:\/|$))(?!.*(?:^|\/)\.git(?:\/|$))(?:templates|emails)\/.+\.tsx$length <= 1024status*string"draft""pending""approved""published""rejected""archived"isActive*booleanpublishedAt*string|nullbrand*|nullfromDefault*|nullusageCount*integer0 <= value <= 9007199254740991lastUsedAt*string|nullcreatedAt*stringupdatedAt*stringfamilyId*|nulldescription*string|nullcategory*|nullreplyToDefault*array<string>|nulltrackingDefault*|nullemail*|nullsms*|nullwhatsapp*|nullpublicationId*|nullinputContractId*|nullinputSchema*|nullimport { createClient } from "samva";const samva = createClient({ apiKey: process.env.SAMVA_API_KEY! });const result = await samva.templates.update({ "id": "example", "data": {}});{ "id": "string", "slug": "string", "name": "string", "channel": "sms", "projectId": "string", "namespaceId": "string", "shared": true, "entryPath": "string", "status": "draft", "isActive": true, "publishedAt": "string", "brand": { "slug": "string", "digest": "string", "stale": true }, "fromDefault": { "email": "string", "name": "string" }, "usageCount": 0, "lastUsedAt": "string", "createdAt": "string", "updatedAt": "string", "familyId": "string", "description": "string", "category": "transactional", "replyToDefault": [ "string" ], "trackingDefault": { "opens": true, "clicks": true }, "email": { "subject": "string", "preheader": "string", "headers": { "property1": "string", "property2": "string" } }, "sms": { "body": "string", "encoding": "string", "estimatedSegments": -9007199254740991, "category": "transactional" }, "whatsapp": { "name": "string", "language": "string", "category": "marketing", "components": [ { "type": "HEADER", "format": "TEXT", "text": "string", "example": { "header_text": [ "string" ] } } ] }, "publicationId": "string", "inputContractId": "string", "inputSchema": { "property1": "string", "property2": "string" }}Related documentation
Save a template project workspace
Validates the effective project tree and saves it as one Git commit on the template repository's default branch.
List template project commit history
Returns recent history from the template repository's default branch. Use this endpoint to list template project commit history through the Samva email API.