---
title: "/assets/:assetId/share-links"
method: GET
path: "/v1/assets/{assetId}/share-links"
tags: ["Share Links"]
---

# /assets/:assetId/share-links

`GET /v1/assets/{assetId}/share-links`

## Request

- Base URL: `api.air.inc` (relative, and the document’s source URL is not known)
- URL: `api.air.inc/v1/assets/{assetId}/share-links`
- Auth: one of:
  - API key in header `x-api-key` and API key in header `x-air-workspace-id`
  - HTTP bearer and API key in header `x-air-workspace-id`
- TypeScript: <https://skmtc.dev/air/apis/air-api/docs/v1/assets/:assetId/share-links/get.ts> (a function with typed inputs; its response is checked against the schema)

List the share links for an asset.

An asset can have one link that follows its current version and one link per pinned version. Older links created from inside a board are listed too, so an asset can have more than one link that follows the current version. Tell them apart by `id` and `createdAt`.

Links that follow the current version come first, then pinned links from the newest version to the oldest. If you can't view all of the asset's versions, only links for its current version are returned.

Disabled links are included with `active: false`. The password is never returned; `hasPassword` says whether one is set.

Requires the `share_links.read` and `assets.read` OAuth scopes.

## Query parameters

- `limit` string
- `cursor` string

## Response `200`

Share links listed successfully

- object
  - `data` AssetShareLink[]
    - `id` string, required: The share link ID. It is also the last part of `url`.
    - `url` string, uri, required: The public share link to give to people. It is not an Air app link and not a CDN link.
    - `active` boolean, required: Whether the link is enabled. Disabled links are still listed.
    - `hasPassword` boolean, required: Whether visitors must enter a password to open the link. The password itself is never returned.
    - `expiresAt` string, date-time, nullable, required: When the link stops working, or null if it never expires
    - `requireAccount` boolean, required: Whether visitors must sign in to Air to open the link
    - `allowDownload` boolean, required: Whether visitors can download the original files
    - `comments` 'hidden' | 'read_only' | 'allowed', required: What visitors can do with comments. `hidden`: they can't see comments. `read_only`: they can see comments but not add them. `allowed`: they can see and add comments, which writes to your workspace.
    - `customFields` 'hidden' | 'read_only' | 'editable', required: What visitors can do with custom field values. `hidden`: they can't see them. `read_only`: they can see them. `editable`: they can change them, which writes to your workspace. This controls what visitors are allowed to do, not whether the Air share page shows its info panel.
    - `createdAt` string, date-time, required
    - `followsDefaultVersion` boolean, required: When true, the link always shows the asset's current version. When false, the link is pinned to `versionId`.
    - `showAllVersions` boolean, required: Whether visitors can browse the asset's other versions
    - `versionId` string: Present when `followsDefaultVersion` is false. The asset version the link is pinned to.
  - `pagination` object
    - `hasMore` boolean
    - `cursor` string, nullable
  - `total` integer

## Other responses

- `400`: Invalid pagination cursor
- `403`: You do not have permission to view this asset's share links
- `404`: Asset not found

## Changes

- **2026-11-03** `8e6005b272a1`: 1 info
  - endpoint added

[Operation history](https://skmtc.dev/air/apis/air-api/changes/v1/assets/:assetId/share-links/get.md)

---

[API](https://skmtc.dev/air/apis/air-api.md) - [All operations](https://skmtc.dev/air/apis/air-api/llms.txt) - [OpenAPI document](https://skmtc.dev/air/apis/air-api/revisions/8e6005b272a1?raw)
