How do I make my first API render call?
POST your template ID and modifications to /v1/studio/render and get back a hosted file URL.
Updated
You have a template and an API key. Now let's generate your first image.
Using REST API#
1. Get Your Template ID#
Go to your templates page and copy the template ID. The quickest way to get started is the Template Playground. It shows API examples and integration options, and lets you test renders in your browser.


2. Make a Render Request#
Send a POST request with your template ID and the values you want to change:
curl -X POST "https://api.orshot.com/v1/studio/render" \
-H "Authorization: Bearer YOUR_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"templateId": "YOUR_TEMPLATE_ID",
"modifications": {
"title": "Hello World",
"subtitle": "Welcome to Orshot",
"authorPhoto": "https://example.com/photo.jpg"
},
"response": {
"type": "url",
"format": "png"
}
}'const response = await fetch("https://api.orshot.com/v1/studio/render", {
method: "POST",
headers: {
"Authorization": "Bearer YOUR_API_KEY",
"Content-Type": "application/json",
},
body: JSON.stringify({
templateId: "YOUR_TEMPLATE_ID",
modifications: {
title: "Hello World",
subtitle: "Welcome to Orshot",
authorPhoto: "https://example.com/photo.jpg"
},
response: {
type: "url",
format: "png"
}
})
});
const data = await response.json();
console.log(data.data.content); // Image URLimport requests
response = requests.post(
"https://api.orshot.com/v1/studio/render",
headers={
"Authorization": "Bearer YOUR_API_KEY",
"Content-Type": "application/json"
},
json={
"templateId": "YOUR_TEMPLATE_ID",
"modifications": {
"title": "Hello World",
"subtitle": "Welcome to Orshot",
"authorPhoto": "https://example.com/photo.jpg"
},
"response": {
"type": "url",
"format": "png"
}
}
)
data = response.json()
print(data["data"]["content"]) # Image URLResponse Types#
Choose how you want to receive the image:
| Type | Description | Use Case |
|---|---|---|
url | Returns a hosted URL to the image | Web applications, sharing |
base64 | Returns base64-encoded image data | Email, inline embedding |
binary | Returns raw image binary data | Direct file download |
Response Formats#
Choose your output format:
png- Best for graphics with transparencyjpg- Smaller file size, no transparencywebp- Modern format, smaller sizepdf- For printable documents
Learn more about response options →
Example Response#
{
"data": {
"content": "https://storage.orshot.com/renders/user123/image-456.png",
"type": "url",
"format": "png",
"responseTime": 1234.56
}
}Using Integrations#
Prefer no-code? Use one of these integrations:
Zapier
Connect 7,000+ apps
Make
Visual automation
n8n
Self-hosted workflows
Pipedream
Developer automation
Dynamic URLs
No API calls needed
Spreadsheets
CSV, Excel or pasted tables
Next Steps#
Ready to automate?
Start rendering images, PDFs and videos from your templates in under 2 minutes. Free plan, no credit card.
Get your API key- Image, PDF and video generation via API
- Visual editor with AI and smart layouts
- Zapier, Make, MCP and 40+ integrations
- White-label embed for your own app
- 100 free credits a month, no credit card required