---
title: "Preview Paper Share Endpoint"
method: POST
path: "/v1/paper/{deployment_id}/share-links/preview"
tags: ["paper"]
---

# Preview Paper Share Endpoint

`POST /v1/paper/{deployment_id}/share-links/preview`

## Request

- Base URL: `https://api.usekeel.io` (the document declares no server; this is the origin it was published from)
- URL: `https://api.usekeel.io/v1/paper/{deployment_id}/share-links/preview`
- Auth: none declared

The link a create would write, without allocating a capability.

The source resolves under ``{'practice'}``: a ``real`` id is the typed
404 an unknown id gets (AC-05-25).

## Path parameters

- `deployment_id` string, required

## Headers

- `Authorization` string, nullable
- `X-Org-Id` string, nullable

## Request body

- PreviewLiveShareRequest: Side-effect-free preview request.
  - `show_dollar_values` boolean
  - `show_positions` boolean
  - `include_strategy_source` boolean
  - `show_creator_profile` boolean
  - `discoverability` 'unlisted' | 'public'
  - `title_override` string, nullable
  - `about_markdown` string, nullable

## Response `200`

Successful Response

- PaperSharePreviewResponse: ``POST /v1/paper/{deployment_id}/share-links/preview`` (S05 §3.12.1). The link the create would write, before any capability exists: the ``LiveShareLink`` fields that do not depend on an allocated share (no ``share_id``, ``url``, counters or timestamps), with the normalized configuration and its disclosure summary. Side-effect free.
  - `share_type` 'paper'
  - `deployment_id` string, required
  - `strategy_id` string, required
  - `commit_id` string, required
  - `deployed_version_string` string, nullable, required
  - `deployment_status` string, required
  - `effective_title` string, required
  - `title_override` string, nullable, required
  - `about_markdown` string, nullable, required
  - `show_dollar_values` boolean, required
  - `show_positions` boolean, required
  - `include_strategy_source` boolean, required
  - `show_creator_profile` boolean, required
  - `discoverability` 'unlisted' | 'public', required
  - `policy_schema_version` integer, required
  - `policy_revision` integer, required
  - `permission` 'view' | 'fork', required
  - `disclosure_summary` string[], required
  - `card` PublicPaperSocialCardV1, required: ``GET /s/{share_id}/card-input/{policy_revision}`` for a paper link: the inputs of LA2's paper card (S05 §3.12.3). Percentages only. ``sparkline`` is the record's ``return_pct`` series (range ``all``), evenly downsampled to at most 60 points with the last point kept (FDR-7); empty while the record has fewer than two points.
    - `schema_version` 1
    - `share_type` 'paper'
    - `share_id` string, required
    - `policy_revision` integer, required
    - `title` string, required
    - `status` 'LIVE' | 'PAUSED' | 'STOPPED', required
    - `total_return_pct` number, nullable
    - `max_drawdown_pct` number, nullable
    - `as_of` string, nullable
    - `record_age_days` integer, required
    - `sparkline` number[]

## Other responses

- `422`: Validation Error

---

[API](https://skmtc.dev/usekeel/apis/keel-api.md) · [All operations](https://skmtc.dev/usekeel/apis/keel-api/llms.txt) · [OpenAPI document](https://skmtc.dev/usekeel/apis/keel-api/revisions/3191ca10b0ab?raw)
