Skip to main content
POST
This call saves an application as a private template with a first version and answers 201 with the template. Variable values are never copied unless you choose keep for a variable that does not look like a credential. Call Review Template Draft first to see what the platform proposes. Needs the templates:write scope when called with an API key. The same plan, 5-template limit and workspace rules of Create a Private Template apply, and the template is not verified by Vertra Cloud. An application that came from a share link cannot be saved (TEMPLATE_SAVE_NOT_ALLOWED), and neither can an application of a closed template (TEMPLATE_CLOSED). An application that runs a platform image cannot be saved either.
string
required
The application ID.
string
If the application belongs to a workspace, the workspace’s ID.
string
required
The slug of the template, lowercase letters, digits and hyphens.
object
required
The name by language: pt-br (required), en and es, up to 50 characters each.
object
required
The description by language, same shape as name, up to 128 characters each.
string
required
automation, ai-agents, bots, apis, cms, monitoring, starters, databases or other.
string[]
Up to 10 tags.
string
The first version, as a semantic version. Default 1.0.0.
object
What users of the template may do, as in the permissions of the manifest. Absent fields take the defaults.
object
required
What to save of the application.
string
The workspace that will own the template. Without it, the template belongs to you.

Response

The same template object returned by Create a Private Template, with 201 Created: id, slug, origin (private), name, description, category, tags, current_version, services, inputs, permissions, outputs and the other fields listed there.

Error Responses

string
The error code indicating the reason for the failure. Possible values:
  • API_KEY_SCOPE_DENIED: The API key does not have the templates:write scope (403).
  • APP_NOT_FOUND: The application does not exist or is not yours.
  • TEMPLATE_SAVE_NOT_ALLOWED: The application came from a share link, or runs a platform image (403).
  • TEMPLATE_CLOSED: The application comes from a closed template (403).
  • TEMPLATE_MANIFEST_INVALID: The result is not a valid manifest, or a keep variable holds something that looks like a credential; details.issues lists the findings.
  • TEMPLATE_SECRET_IN_SOURCE: A file selected from /app holds a secret; details.files lists the paths (400).
  • TEMPLATE_SLUG_TAKEN: The slug is already in use among your templates or is reserved.
  • TEMPLATE_PRIVATE_LIMIT_REACHED: The account already has 5 private templates.
  • PLAN_DOES_NOT_SUPPORT_CUSTOM_IMAGES: The plan cannot create templates.
  • WORKSPACE_OWNER_ONLY: Only the workspace owner saves templates in it.
Last modified on October 28, 2026