PATCH: Update Template
Update template name and description
Enterprise Only
This is an Enterprise only private endpoint. Checkout the Enterprise Pricing to get access.
Update the metadata of an existing studio template, including its name and description. This is a lightweight endpoint for updating template metadata without modifying the template structure or content.
Endpoint
https://api.orshot.com/v1/studio/templates/:templateId/updateRequest Examples
// Update only the template name
await fetch("https://api.orshot.com/v1/studio/templates/12345/update", {
method: "PATCH",
headers: {
"Content-Type": "application/json",
Authorization: "Bearer <ORSHOT_API_KEY>",
},
body: JSON.stringify({
name: "Summer Sale Banner - Updated"
}),
});// Update only the template description
await fetch("https://api.orshot.com/v1/studio/templates/12345/update", {
method: "PATCH",
headers: {
"Content-Type": "application/json",
Authorization: "Bearer <ORSHOT_API_KEY>",
},
body: JSON.stringify({
description: "Updated promotional banner for the summer 2026 campaign"
}),
});// Update both name and description
await fetch("https://api.orshot.com/v1/studio/templates/12345/update", {
method: "PATCH",
headers: {
"Content-Type": "application/json",
Authorization: "Bearer <ORSHOT_API_KEY>",
},
body: JSON.stringify({
name: "Black Friday Sale Banner",
description: "High-impact promotional banner for Black Friday 2026"
}),
});{
"success": true,
"template": {
"id": 12345,
"name": "Black Friday Sale Banner",
"description": "High-impact promotional banner for Black Friday 2026",
"updated_at": "2026-01-29T12:00:00.000Z"
}
}Rate Limits
| Limit | Value |
|---|---|
| Requests per minute | 30 |
URL Parameters
| Parameter | Type | Required | Description |
|---|---|---|---|
templateId | Integer | Yes | The ID of the template to update |
Request Body Parameters
At least one of the following parameters must be provided:
| Parameter | Type | Required | Description |
|---|---|---|---|
name | String | No | New name for the template (max 255 characters) |
description | String | No | New description for the template |
Response Fields
| Field | Type | Description |
|---|---|---|
success | Boolean | Whether the update was successful |
template | Object | Updated template information |
template.id | Integer | Template ID |
template.name | String | Updated template name |
template.description | String | Updated template description |
template.updated_at | String | ISO 8601 timestamp of the update |
Error Responses
| Status Code | Error | Description |
|---|---|---|
| 400 | At least one field required | Neither name nor description provided |
| 400 | name must be non-empty string | Empty or invalid name provided |
| 400 | name must be 255 characters or less | Name exceeds maximum length |
| 400 | description must be a string | Invalid description type |
| 403 | Access Forbidden | Invalid API key or template not in workspace |
| 404 | Template not found | Template ID doesn't exist |
| 429 | Rate limit exceeded | Too many requests (max 30/min) |
| 500 | Internal server error | Server-side error |
Cache Invalidation
When the template is updated:
- Template render cache is automatically invalidated
- Dynamic URL cache for the template is cleared
Use Cases
- Rename templates after generation or import
- Update descriptions for better organization
- Batch rename templates via programmatic naming conventions
- Add metadata to generated variant templates