Skip to content

URL Parameters Reference

This page provides a comprehensive reference of all URL parameters you can use to customize the embedded editor’s behavior and appearance.

Required Parameters

embed string
Your embed configuration ID from the dashboard. This parameter is required for all embeds.

Basic Embed with Required Parameter
<embed
src="https://app.templated.io/editor?embed=YOUR_EMBED_CONFIG_ID"
width="100%"
height="100%"
/>

Basic Configuration

preview boolean
Launch in preview mode (canvas-only, no UI panels). Default: false

zoom number (10-100)
Initial zoom level. 50 equals 100% scale. Auto-calculated if not set.

clone boolean
Create a clone instead of editing the original template. Default: false

copy boolean
Alternative to the clone parameter. Default: false

launch-mode string
Control how the editor launches. Options: 'account', 'gallery', 'blank'

Template and Content

render string
Load a specific render ID for editing (creates a template clone automatically)

folder string
Limit template selection to a specific folder ID

image-url string
URL of an image to load as background or layer

w number
Custom template width in pixels

h number
Custom template height in pixels

layers string
Base64-encoded JSON with initial layer data

metadata string
Base64-encoded JSON with custom metadata for webhooks

Permission Controls

Template Permissions

allow-rename boolean
Allow users to rename templates. Default: true

allow-save boolean
Enable the save functionality. Default: true

allow-download boolean
Enable template download. Default: true

allow-resize boolean
Allow users to resize the template dimensions. Default: false

allow-create-template boolean
Enable creating new templates from the editor. Default: true

Layer Permissions

allow-layer-move boolean
Allow moving layers around the canvas. Default: false

allow-layer-resize boolean
Enable resizing of individual layers. Default: false

allow-layer-unlock boolean
Allow users to unlock locked layers. Default: false

allow-layer-rename boolean
Enable renaming of layers. Default: false

allow-text-edition boolean
Allow double-click text editing. Default: false

UI Customization

hide-sidebar boolean
Hide the left sidebar panel. Default: false

hide-header boolean
Hide the top header bar. Default: false

hide-layers-panel boolean
Hide the layers panel. Default: false

hide-language-toggle boolean
Hide the language switcher. Default: false

Integration Options

webhook-url string
Override the default webhook URL for this session

external-id string
Session identifier that tags templates, uploads, fonts, and renders. Acts as a persistent session - when the editor is launched again with the same ID, previously uploaded assets and fonts will be available

move-to-folder string
Automatically move saved templates to this folder ID

load-uploads boolean
Load user uploads in the assets panel. Default: false

Usage Examples

Preview Mode with Layer Controls

Preview Mode with Interactive Layers
<embed
src="https://app.templated.io/editor/preview/TEMPLATE_ID?embed=CONFIG_ID
&zoom=60
&allow-layer-move=true
&allow-layer-resize=true
&allow-text-edition=true
&hide-sidebar=true"
width="100%"
height="600"
/>
Gallery Mode with Limited Permissions
<embed
src="https://app.templated.io/editor?embed=CONFIG_ID
&launch-mode=gallery
&allow-download=false
&allow-resize=false
&hide-language-toggle=true"
width="100%"
height="700"
/>

Folder-Specific Templates

Templates from Specific Folder
<embed
src="https://app.templated.io/editor?embed=CONFIG_ID
&folder=FOLDER_ID
&clone=true
&allow-create-template=false"
width="100%"
height="700"
/>

Custom Dimensions and Image

Custom Template with Background Image
<embed
src="https://app.templated.io/editor?embed=CONFIG_ID
&w=1200
&h=800
&image-url=https://example.com/background.jpg
&zoom=40"
width="100%"
height="700"
/>

Render Editing with Session

Edit Existing Render with User Session
<embed
src="https://app.templated.io/editor?embed=CONFIG_ID
&render=RENDER_ID
&allow-save=true
&move-to-folder=EDITED_RENDERS_FOLDER
&external-id=user-456-editing-session"
width="100%"
height="700"
/>

Multi-User Environment

Agency Portal with Client Sessions
<!-- Each client gets their own persistent session -->
<embed
src="https://app.templated.io/editor?embed=CONFIG_ID
&folder=CLIENT_TEMPLATES_FOLDER
&external-id=client-acme-corp-2024
&clone=true
&allow-create-template=false"
width="100%"
height="700"
/>

Parameter Combinations

Common Parameter Combinations

Preview Mode for Interactive Demos:

?embed=CONFIG&preview=true&allow-layer-move=true&allow-text-edition=true&zoom=50

Restricted Editor for End Users:

?embed=CONFIG&clone=true&allow-download=false&allow-resize=false&hide-sidebar=true

Agency Client Portal:

?embed=CONFIG&folder=CLIENT_FOLDER&clone=true&allow-create-template=false&external-id=client-acme-corp

Educational Platform:

?embed=CONFIG&launch-mode=gallery&allow-layer-unlock=true&load-uploads=true

External ID Sessions

The external-id parameter creates persistent sessions for your embedded editor instances. This is particularly useful for maintaining user context and asset continuity across multiple editor sessions.

How External ID Works

When you provide an external-id, the editor:

  1. Tags all created content with this identifier
  2. Persists user uploads and custom fonts for future sessions
  3. Makes tagged entities accessible via the API using the same ID
  4. Maintains session continuity when users return to the editor

What Gets Tagged

All content created during the session is tagged with the external ID:

Templates
Any templates created or saved during the session

Renders
All renders generated from templates in this session

Uploads
Images and assets uploaded by the user

Fonts
Custom fonts added during the session

Usage Examples

User-Specific Session
<!-- Each user gets their own persistent session -->
<embed
src="https://app.templated.io/editor?embed=CONFIG_ID&external-id=user-123"
width="100%"
height="700"
/>

When user-123 returns to the editor, all their previous uploads and fonts will be available.

API Integration

All entities tagged with an external ID can be retrieved via the Templated API:

Fetch Templates by External ID
// Get all templates for a specific external ID
const response = await fetch('https://api.templated.io/v1/templates?external_id=user-123', {
headers: {
'Authorization': 'Bearer YOUR_API_KEY'
}
});
const templates = await response.json();
Fetch Uploads by External ID
// Get all uploads for a specific external ID
const response = await fetch('https://api.templated.io/v1/uploads?external_id=project-abc-campaign', {
headers: {
'Authorization': 'Bearer YOUR_API_KEY'
}
});
const uploads = await response.json();

Best Practices

External ID Best Practices

Naming Convention:

  • Use descriptive, unique identifiers
  • Include context: user-{id}, project-{name}, client-{company}
  • Avoid special characters that might cause URL encoding issues

Session Management:

  • Use the same external ID consistently for the same user/project/client
  • Consider implementing session cleanup for inactive external IDs
  • Document your external ID strategy for your team

API Integration:

  • Use external IDs to filter API responses
  • Implement external ID-based data exports
  • Consider external IDs in your backup and archival strategies

Data Encoding

For parameters that accept JSON data (layers, metadata), you must base64-encode the JSON string:

Encoding Layer Data
const layerData = {
"headline": { text: "Custom Title", color: "#FF0000" },
"description": { text: "Custom description text" }
};
const encodedLayers = btoa(JSON.stringify(layerData));
const embedUrl = `https://app.templated.io/editor/TEMPLATE_ID?embed=CONFIG_ID&layers=${encodedLayers}`;

See Also