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

# Share links

> One Montra share link serves people and agents — and the connector resolves it without touching the web page.

A Montra share link looks like:

```text theme={null}
https://montra.com/share/<token>
```

The same link serves two audiences:

* **People** open it in a browser and get the share viewer — video, tickets, screenshots.
* **Agents** resolve it to a machine-readable payload: the document, every in-scope ticket with its markdown spec, annotated screenshot URLs, recordings, extracted frames, and a set of agent instructions.

There is no separate "agent link". When someone hands your agent a share link, the agent should never fetch or browse the web page.

## Resolving a link through the connector

Pass the link — exactly as given, query parameters included — to [`get_document_by_share_url`](/tools/get-document-by-share-url). Resolution happens in two legs:

1. **Public access.** If the link is set to *Anyone with the link*, it resolves through the link's own access. Every URL in the payload (images, media, transcript endpoints) is fetchable without authentication.
2. **Member access — "your agent is you."** If the link is invite-only, the tool resolves it as the Montra user who authorized the connection. You can always read your own links and links shared with you, no matter the link's visibility setting. In this mode media URLs are re-minted as short-lived signed links and transcripts are inlined in the response, because the payload's anonymous endpoints cannot serve a private link.

The response's `access` field says which leg applied, and `note` explains how to treat the URLs inside.

This works on links from **any** workspace — the share tool is the one deliberate exception to the connection's [workspace binding](/authentication#workspace-binding), because a pasted link names one specific resource.

## Query parameters carry scope

* `?tickets=<id,id,...>` — the person selected specific tickets before copying the link. The resolved payload is narrowed to those tickets; the rest of the document remains readable for context, but only the listed tickets are in scope for implementation.
* `?documentId=<id>` — for folder shares, points at one document inside the folder.

Folder links resolve to an index of the folder's documents; call the tool again with the same URL plus a `documentId` to read one of them in full.

## Fetching the payload without the connector

Public links also serve the payload over plain HTTP, for agents without MCP access:

* Append `.json` to the share path: `https://montra.com/share/<token>.json` (query parameters are honored).
* Or request the share URL with an `Accept` header that doesn't ask for HTML — non-browser fetches get the JSON payload directly.

This anonymous path only works when the link's access is *Anyone with the link*. Invite-only links return a structured `403` explaining that the caller should use the MCP connector instead — which resolves them as the signed-in user, as described above.

## If a link fails to resolve

The tool returns an actionable error when a link is invalid, expired, revoked, or invite-only for a user without access. The fixes are on the sharing side: invite the connecting user, switch the link to *Anyone with the link* in Montra's Share dialog, or send a fresh link.
