---
title: "Create Share Link External"
method: POST
path: "/decks/{deck_id}/share-link"
tags: ["decks"]
---

# Create Share Link External

`POST /decks/{deck_id}/share-link`

## Request

- Base URL: `https://api.presentations.ai/api/v1`
- URL: `https://api.presentations.ai/api/v1/decks/{deck_id}/share-link`
- Auth: HTTP bearer

Enable the deck's share link and return its URL.

Reuses the existing link so the URL is stable; pass `rotate=true` to mint a
fresh token (the previous URL stops working).

## Path parameters

- `deck_id` string, uuid, required

## Query parameters

- `rotate` boolean

## Response `200`

Successful Response

- ShareLink: Response carrying the full share URL (includes raw token). Grows the access-control state additively so the share dialog can render its current settings from the same call that gives it the URL. The password's value is on `ShareLinkSettings`.
  - `url` string, uri, required
  - `password_set` boolean
  - `expires_at` string, date-time, nullable

## Other responses

- `401`: Missing, malformed, expired, or revoked Bearer API key.
- `403`: The API key, workspace role, project scope, or plan lacks permission.
- `404`: The resource does not exist or is outside the caller's scope.
- `422`: A path, query, header, or request-body field failed validation.
- `429`: The caller exceeded the API rate limit.
- `500`: Unexpected server failure. Retry only idempotent operations and retain trace_id.

---

[API](https://skmtc.dev/presentations/apis/presentation-services-api.md) · [All operations](https://skmtc.dev/presentations/apis/presentation-services-api/llms.txt) · [OpenAPI document](https://skmtc.dev/presentations/apis/presentation-services-api/revisions/da06cb2e2f32?raw)
