Orshot Logo
OrshotDocs

Dynamic URLs

Generate dynamic images from custom templates from URLs

Dynamic URLs allow you to generate images from Studio templates by passing parameters directly in the URL. This feature enables you to create dynamic images without making API calls, perfect for embedding in emails, social media, or any context where you need on-the-fly image generation

How It Works

Dynamic URLs work by encoding template modifications as URL parameters. When accessed, the URL automatically generates an image with the specified modifications applied to your Studio template

Video demo:

URL Structure

https://api.orshot.com/v1/studio/dynamic-url?templateId={TEMPLATE_ID}&{PARAMETERS}&sign={SIGNATURE}

Parameters

  • templateId - Your Studio template ID (required)
  • {modification_key} - Any text-type modification from your template
  • sign - Security signature to authorize access (required)

Example

https://api.orshot.com/v1/studio/dynamic-url?templateId=123&title=Hello%20World&subtitle=Welcome&sign=abc123def456

Setting Up Dynamic URLs

1. Enable Dynamic URLs

Navigate to your Studio template's playground and go to the "Dynamic URL" tab. Toggle "Enable Dynamic URL" to activate this feature.

2. Configure Security Settings

Max Renders Allowed

Set a limit on how many times the URL can be used. Leave empty for unlimited renders.

Expiration Time

Control how long the URL remains valid:

  • 1 hour
  • 12 hours
  • 1 day
  • 3 days
  • 1 month
  • 1 year
  • Never expire

Security Signature

Each dynamic URL includes a unique signature (sign parameter) that authorizes access. You can:

  • Copy the current signature
  • Reset to generate a new signature (invalidates the old one)

Usage Examples

Basic Text Replacement

If your template has text modifications named title and subtitle:

https://api.orshot.com/v1/studio/dynamic-url?templateId=123&title=Dynamic%20Title&subtitle=Custom%20Subtitle&sign=your_signature

In HTML

<img
  src="https://api.orshot.com/v1/studio/dynamic-url?templateId=123&title=Welcome&sign=your_signature"
  alt="Dynamic Image"
/>

In Email Templates

<img
  src="https://api.orshot.com/v1/studio/dynamic-url?templateId=123&name={{user.name}}&date={{current_date}}&sign=your_signature"
/>

Best Practices

URL Encoding

Always encode parameter values to handle special characters:

const encodedTitle = encodeURIComponent("Hello & Welcome!");
const url = `https://api.orshot.com/v1/studio/dynamic-url?templateId=123&title=${encodedTitle}&sign=your_signature`;

Security Considerations

  • Set appropriate expiration times for time-sensitive content
  • Use render limits to prevent abuse
  • Reset signatures if unintended access consumes your Orshot renders

Limitations

  • Cannot pass values containing the # character
  • URL length limits apply (typically ~2000 characters)