Asset Permalinks (assetdetail.v1)
The bridge from API identifiers to the product UI: give it an OID or an asset Number, and it redirects to the asset's detail view. This is the URL to emit whenever an integration mentions an asset to a human — a chat message, an email, a webhook consumer's UI.
GET ~/assetdetail.v1?oid=Story:1154
GET ~/assetdetail.v1?Number=S-01001
Both forms answer 302 Found to the asset's per-type view — for example
story.mvc/Summary?oidToken=Story:1154. The Number form resolves the
human-facing number to the asset first, so it is the right choice when all
you have is what a person typed. Parameter names are case-insensitive.
| Input | Result |
|---|---|
oid=<Type:id> | 302 to the asset's detail view |
Number=<S-…, D-…, …> | Resolved to the asset, then 302 to its detail view |
| A Number that matches nothing | 404 |
| Unauthenticated request | 302 to the login page, with the permalink preserved as the destination — the reader lands on the asset after signing in |
Because the login redirect carries the destination, these links are safe to share with people who are not signed in yet — which is exactly what makes them permalinks rather than session URLs.
An assetdetail.v1 URL is for eyeballs. Programs consuming your output
should get the OID token (or a rest-1.v1 address); a
program that follows the permalink gets the HTML UI, not data.
Webhook payloads already use this endpoint: the href fields on delivered
events are assetdetail.v1?oid=… permalinks — see
webhook payloads.
Related
- Webhook payloads — where these links appear in delivered events
- Working with comments — pair a mention with a permalink so the notified member can click through