Skip to main content
Template names are unique identifiers used to reference and create sandboxes from your templates. They serve as human-readable names that make it easy to identify and use your templates across your applications.

What is a template name?

A name is a string identifier that you assign to a template when building it. Once a template is built with a name, you can use that name to create sandboxes from the template.

Team-local naming

Template names are scoped to your team. This means:
  • Your template named my-app is stored as your-team-slug/my-app
  • You can reference it simply as my-app within your team
  • Other teams can have their own my-app template without conflict
  • Public templates should be referenced using the full namespaced format (team-slug/template-name)
Backwards Compatibility: Existing public templates remain accessible without the team slug prefix. New public templates should be referenced using the full namespaced format (team-slug/template-name).

Common use cases

Development and production environments

Use different names for different environments:

Multiple template variants

Create different variants of the same template with different configurations:
When building variants with the same template definition but different CPU/RAM configurations, E2B’s caching system will reuse common layers, making subsequent builds much faster.

Checking name availability

You can check if a name is already in use within your team with the exists method.

Best practices

  1. Use descriptive names: Choose names that clearly indicate the template’s purpose or configuration
  2. Use tags for versioning: Instead of baking version numbers into names, use tags for version management (e.g., myapp:v1, myapp:v2)
  3. Use consistent naming: Establish a naming convention for your team and stick to it