# Update Template Sharing

> Enable or disable public sharing and duplication for a studio template

- **URL**: https://orshot.com/docs/api-reference/template-sharing-post

---

## Overview

Turn public sharing on or off for a studio template, and control whether visitors can duplicate it. The response returns the public link, embed link and embed code, matching the studio's Share dialog.

The share link is minted once and stays stable: turning sharing off and back on brings the same link back to life, so anything you already shared keeps working.```markdown tab="Endpoint"
https://api.orshot.com/v1/studio/templates/:templateId/share
```## Path Parameters

| Parameter    | Type    | Required | Description                          |
| ------------ | ------- | -------- | ------------------------------------ |
| `templateId` | Integer | Yes      | The unique ID of the studio template |

## Request Body

Both fields are optional. A field you leave out keeps its current value, so you can toggle duplication without touching the sharing state. For a template that has never been shared, `allow_duplication` starts off — enabling sharing alone never makes the template duplicable; pass `allow_duplication: true` explicitly (paid plans only) to allow it.

| Parameter           | Type    | Required | Description                                                                                     |
| ------------------- | ------- | -------- | ----------------------------------------------------------------------------------------------- |
| `enabled`           | Boolean | No       | Turn public sharing on or off                                                                    |
| `allow_duplication` | Boolean | No       | Let visitors save a copy of the template to their own workspace. Requires a paid plan. Off by default. |

## Request```js
await fetch("https://api.orshot.com/v1/studio/templates/123/share", {
  method: "POST",
  headers: {
    "Content-Type": "application/json",
    Authorization: "Bearer <ORSHOT_API_KEY>",
  },
  body: JSON.stringify({
    enabled: true,
    allow_duplication: true, // Optional, paid plans only
  }),
});
```</Tab>```json
{
  "enabled": true,
  "allow_duplication": true,
  "share_url": "https://orshot.com/templates/shared/k3n9xq2w/preview?view=view",
  "embed_url": "https://orshot.com/templates/shared/k3n9xq2w/embed?view=view",
  "embed_code": "<iframe src=\"https://orshot.com/templates/shared/k3n9xq2w/embed?view=view\" title=\"Orshot Embed\" allow=\"clipboard-write\" style=\"width: 100%; height: 100%; min-height: 500px; border: none; border-radius: 8px;\"></iframe>",
  "stats": {
    "views": 0,
    "copies": 0
  },
  "created_at": "2026-07-11T08:05:18.491Z"
}
```</Tab>
</Tabs>

## Error Responses

### Duplication Requires a Paid Plan (403)

Sent when `allow_duplication: true` is requested on a free plan.```json
{
  "error": "Allowing template duplication requires a paid plan",
  "code": "duplication_paid_plan_required"
}
```### Template Not Found (404)```json
{
  "error": "Studio template with ID '123' not found in your workspace"
}
```## Notes

- Disabling sharing makes the public page return an error, but keeps the underlying link. Re-enabling restores the exact same URLs.
- Share changes never trigger the `template.update` embed webhook, since the design itself did not change.
- `allow_duplication` is always off while sharing is disabled.

## Rate Limits

- 30 requests per minute per API key