> ## Documentation Index
> Fetch the complete documentation index at: https://docs.tell.rs/llms.txt
> Use this file to discover all available pages before exploring further.

# Sharing

> Public share links for boards and saved metrics.

Share boards and saved metrics with anyone via a unique URL — no login required. Share links are useful for embedding dashboards in wikis, sending reports to stakeholders, or making specific metrics publicly accessible.

## Create a share link

### For a board

```bash theme={null}
curl -X POST https://your-tell-server/api/v1/boards/{board-id}/share \
  -H "Authorization: Bearer $TOKEN" \
  -H "X-Workspace-ID: ws_abc123"
```

### For a saved metric

```bash theme={null}
curl -X POST https://your-tell-server/api/v1/metrics/saved/{metric-id}/share \
  -H "Authorization: Bearer $TOKEN" \
  -H "X-Workspace-ID: ws_abc123"
```

Both return:

```json theme={null}
{
  "hash": "a1b2c3d4e5f6",
  "url": "https://your-tell-server/s/b/a1b2c3d4e5f6",
  "expires_at": null,
  "created_at": "2025-06-15T10:00:00Z"
}
```

Only the board/metric owner or an Admin can create share links. Each resource gets one share link at a time — creating a new one replaces the old one.

## View a shared resource

Anyone with the link can view the shared content without logging in:

```bash theme={null}
# Shared board
curl https://your-tell-server/s/b/{hash}

# Shared metric
curl https://your-tell-server/s/m/{hash}
```

Shared views return the content (title, description, settings/query) without any owner or workspace information.

## Get the current share link

```bash theme={null}
# For a board
curl https://your-tell-server/api/v1/boards/{board-id}/share \
  -H "Authorization: Bearer $TOKEN" \
  -H "X-Workspace-ID: ws_abc123"

# For a saved metric
curl https://your-tell-server/api/v1/metrics/saved/{metric-id}/share \
  -H "Authorization: Bearer $TOKEN" \
  -H "X-Workspace-ID: ws_abc123"
```

Returns `404` if no share link exists.

## Revoke a share link

```bash theme={null}
# For a board
curl -X DELETE https://your-tell-server/api/v1/boards/{board-id}/share \
  -H "Authorization: Bearer $TOKEN" \
  -H "X-Workspace-ID: ws_abc123"

# For a saved metric
curl -X DELETE https://your-tell-server/api/v1/metrics/saved/{metric-id}/share \
  -H "Authorization: Bearer $TOKEN" \
  -H "X-Workspace-ID: ws_abc123"
```

Once revoked, the public URL immediately stops working.

## Security

* Share URLs use a random hash — they can't be guessed or enumerated
* Public share endpoints are rate-limited to **60 requests per minute** to prevent brute-force scanning
* Shared views strip owner and workspace information from the response
* Expired links return `404`
* All share creation and revocation events are [audit logged](/running-tell/audit-privacy)

## Permissions

| Action                 | Required role            |
| ---------------------- | ------------------------ |
| Create share link      | Owner (Editor+) or Admin |
| View share link status | Owner or Admin           |
| Revoke share link      | Owner or Admin           |
| View shared content    | Anyone with the URL      |

## What's next

* [Boards & Metrics](/api/boards) — managing the resources you're sharing
* [Audit & Privacy](/running-tell/audit-privacy) — tracking who creates and revokes share links
