> This page is for Piattaforma, version V4 (default).
> For other versions, use one of these documentation indexes:
> - V4 (default): https://developer.frame.io/platform/v4/llms.txt
> - V4 sperimentale: https://developer.frame.io/platform/v4-experimental/llms.txt
> - Versione precedente: https://developer.frame.io/platform/v2/llms.txt

> For clean Markdown of any page, append .md to the page URL.
> For a complete documentation index, see https://developer.frame.io/llms.txt.
> For AI client integration (Claude Code, Cursor, etc.), connect to the MCP server at https://developer.frame.io/_mcp/server.

# Mostra condivisione

GET https://api.frame.io/v4/accounts/{account_id}/shares/{share_id}

Show a single Share. Rate Limits: 100 calls per 1.00 minute(s) per account\_user

Reference: https://developer.frame.io/platform/api-reference/shares/show

## Authentication

- `Authorization` header (bearer token, required) — Bearer authentication of the form `Bearer <token>`, where token is your auth token.

## Request

### Path parameters

- `account_id` (string, required)
- `share_id` (string, required)

## Response

### 200

OK

- `data` (Share, required)

## Errors

### 400 Bad Request Error

Bad request

- `errors` (list of BadRequestErrorsItems, required)

### 401 Unauthorized Error

Unauthorized

- `errors` (list of UnauthorizedErrorsItems, required)

### 403 Forbidden Error

Forbidden

- `errors` (list of ForbiddenErrorsItems, required)

### 404 Not Found Error

Not found

- `errors` (list of NotFoundErrorsItems, required)

### 409 Conflict Error

Conflict

- `errors` (list of ConflictErrorsItems, required)

### 422 Unprocessable Entity Error

Unprocessable content

- `errors` (list of UnprocessableContentErrorsItems, required)

### 429 Too Many Requests Error

Too many requests

- `errors` (list of TooManyRequestsErrorsItems, required)

## Types

### Share

- `enabled` (boolean, required) — Whether the share link is active
- `access` (enum, required)
  - Allowed values: `public`, `secure`
- `last_viewed_at` (string, required, nullable) — Last viewed timestamp
- `updated_at` (string, required) — Update timestamp
- `commenting_enabled` (boolean, required) — Whether commenting is enabled on the share
- `description` (string, required, nullable) — Share description
- `created_at` (string, required) — Creation timestamp
- `name` (string, required, nullable) — Share name
- `collection_id` (string, required) — Collection ID
- `short_url` (string, required, nullable) — Share URL
- `downloading_enabled` (boolean, required) — Whether downloading is enabled on the share
- `id` (string, required) — Share ID
- `expiration` (string, required, nullable) — Expiration timestamp
- `card_info_enabled` (boolean, optional) — Whether to show card info (metadata) on cards when layout is grid
- `icons_visible_on_list` (boolean, optional) — Whether visible-field icons are shown alongside text when layout is list
- `theme` (enum, optional) — Color theme
  - Allowed values: `dark`, `light`, `neutral`
- `editable_fields_enabled` (boolean, optional) — When true, all visible non-system fields can be edited by share recipients. When false, only the featured field is editable.
- `card_aspect_ratio` (enum, optional) — Aspect ratio of cards. Applies to layouts: grid, reel.
  - Allowed values: `horizontal`, `square`, `vertical`
- `passphrase` (string, optional, nullable) — Passphrase to access share, if passphrase is required and not given it will be generated
- `sort_by` (ShareSortBy, optional) — Field ID and direction by which share assets will be sorted
- `forensic_watermark_enabled` (boolean, optional) — Whether forensic watermarking is enabled on the share
- `list_row_size` (enum, optional) — Row size when layout is list
  - Allowed values: `small`, `medium`, `large`
- `card_size` (enum, optional) — Relative size of cards when layout is grid
  - Allowed values: `small`, `medium`, `large`
- `reel_card_aspect_ratio` (enum, optional) — Aspect ratio of cards when layout is reel
  - Allowed values: `horizontal`, `square`, `vertical`
- `drm_enabled` (boolean, optional) — Whether digital rights management is enabled on the share
- `show_asset_name_in_reel_layout` (boolean, optional) — Whether the asset name is displayed when layout is reel
- `captions_enabled` (boolean, optional, nullable) — Whether reviewers can view captions on shared assets
- `transcripts_enabled` (boolean, optional, nullable) — Whether reviewers can view transcripts on shared assets
- `watermark_enabled` (boolean, optional, nullable) — Whether watermarking is enabled on the share
- `reel_card_fit_image` (boolean, optional) — Thumbnail scale when layout is reel. `true` fills the card (may crop); `false` fits the thumbnail inside the card.
- `featured_field_definition_id` (string, optional, nullable) — ID of the field definition to set as the featured (always-editable) field for share recipients
- `open_in_viewer_enabled` (boolean, optional) — Whether shares with a single asset will open in a larger view. Applies to layouts: grid, list.
- `accent_color` (string, optional, nullable) — Hex code for accent color
- `layout` (enum, optional) — Share layout. Required when updating appearance fields
  - Allowed values: `grid`, `list`, `reel`
- `show_all_asset_versions` (boolean, optional, nullable) — Whether reviewers can see every version in a shared version stack (rather than only the head version)
- `name_column_width` (integer, optional, nullable) — Width of the name column in pixels when layout is list
- `thumbnail_scale` (enum, optional) — Thumbnail scale. `fill` may crop; `fit` letterboxes inside the card.
  - Allowed values: `fit`, `fill`
- `title_line_count` (integer, optional) — Number of lines for the card title (1 or 2) when layout is grid
- `visible_field_definition_ids` (list of string, optional) — IDs of field definitions to show in the share. Applies to the share's active layout. When omitted, inherits from the project's default field visibility.

### BadRequestErrorsItems

- `detail` (string, required)
- `source` (BadRequestErrorsItemsSource, optional)
- `title` (string, optional)

### UnauthorizedErrorsItems

- `detail` (string, required)
- `source` (UnauthorizedErrorsItemsSource, optional)
- `title` (string, optional)

### ForbiddenErrorsItems

- `detail` (string, required)
- `source` (ForbiddenErrorsItemsSource, optional)
- `title` (string, optional)

### NotFoundErrorsItems

- `detail` (string, required)
- `source` (NotFoundErrorsItemsSource, optional)
- `title` (string, optional)

### ConflictErrorsItems

- `detail` (string, required)
- `source` (ConflictErrorsItemsSource, optional)
- `title` (string, optional)

### UnprocessableContentErrorsItems

- `detail` (string, required)
- `source` (UnprocessableContentErrorsItemsSource, optional)
- `title` (string, optional)

### TooManyRequestsErrorsItems

- `detail` (string, required)
- `source` (TooManyRequestsErrorsItemsSource, optional)
- `title` (string, optional)

### ShareSortBy

Field ID and direction by which share assets will be sorted

- `direction` (enum, required)
  - Allowed values: `asc`, `desc`
- `field_definition_id` (string, required) — A UUID string that uniquely identifies a Frame.io entity.

### BadRequestErrorsItemsSource

- `pointer` (string, optional)

### UnauthorizedErrorsItemsSource

- `pointer` (string, optional)

### ForbiddenErrorsItemsSource

- `pointer` (string, optional)

### NotFoundErrorsItemsSource

- `pointer` (string, optional)

### ConflictErrorsItemsSource

- `pointer` (string, optional)

### UnprocessableContentErrorsItemsSource

- `pointer` (string, optional)

### TooManyRequestsErrorsItemsSource

- `pointer` (string, optional)

## Examples

**Response**

```json
{
  "data": {
    "enabled": true,
    "access": "public",
    "last_viewed_at": "2024-03-02T21:19:24.828948Z",
    "updated_at": "2024-02-02T21:19:24.828948Z",
    "commenting_enabled": true,
    "description": "Description of share",
    "created_at": "2024-02-02T21:19:24.828948Z",
    "name": "Test Share",
    "collection_id": "59be2601-437c-404a-bf15-7bb3d5e16bac",
    "short_url": "https://f.io/GGa9wPw5",
    "downloading_enabled": true,
    "id": "1495288a-7ac4-4a56-a5bb-7e54ff0b8c44",
    "expiration": "2026-10-15T23:54:40.706608Z",
    "card_info_enabled": true,
    "icons_visible_on_list": true,
    "theme": "dark",
    "editable_fields_enabled": false,
    "card_aspect_ratio": "square",
    "passphrase": "as!dfj39sd(*",
    "sort_by": {
      "direction": "asc",
      "field_definition_id": "4c338e5a-02e1-4f48-99f5-1ed3f30939b2"
    },
    "forensic_watermark_enabled": false,
    "list_row_size": "small",
    "card_size": "medium",
    "reel_card_aspect_ratio": "square",
    "drm_enabled": false,
    "show_asset_name_in_reel_layout": false,
    "captions_enabled": true,
    "transcripts_enabled": true,
    "watermark_enabled": true,
    "reel_card_fit_image": false,
    "featured_field_definition_id": "b18a4ebf-4480-46e5-8650-1c647ac0afdd",
    "open_in_viewer_enabled": true,
    "accent_color": "#FF0000",
    "layout": "grid",
    "show_all_asset_versions": true,
    "name_column_width": null,
    "thumbnail_scale": "fill",
    "title_line_count": 1,
    "visible_field_definition_ids": [
      "19002cdb-24f9-4fec-bcdd-4f6be8f3ac2f"
    ]
  }
}
```

**SDK Code**

```python
import requests

url = "https://api.frame.io/v4/accounts/e478ccf0-da0e-4e94-97b7-fec377b0e351/shares/16cb6723-db6b-4eb5-a1b0-3b3f352c64af"

headers = {"Authorization": "Bearer <token>"}

response = requests.get(url, headers=headers)

print(response.json())
```

```javascript
const url = 'https://api.frame.io/v4/accounts/e478ccf0-da0e-4e94-97b7-fec377b0e351/shares/16cb6723-db6b-4eb5-a1b0-3b3f352c64af';
const options = {method: 'GET', headers: {Authorization: 'Bearer <token>'}};

try {
  const response = await fetch(url, options);
  const data = await response.json();
  console.log(data);
} catch (error) {
  console.error(error);
}
```

```go
package main

import (
	"fmt"
	"net/http"
	"io"
)

func main() {

	url := "https://api.frame.io/v4/accounts/e478ccf0-da0e-4e94-97b7-fec377b0e351/shares/16cb6723-db6b-4eb5-a1b0-3b3f352c64af"

	req, _ := http.NewRequest("GET", url, nil)

	req.Header.Add("Authorization", "Bearer <token>")

	res, _ := http.DefaultClient.Do(req)

	defer res.Body.Close()
	body, _ := io.ReadAll(res.Body)

	fmt.Println(res)
	fmt.Println(string(body))

}
```

```ruby
require 'uri'
require 'net/http'

url = URI("https://api.frame.io/v4/accounts/e478ccf0-da0e-4e94-97b7-fec377b0e351/shares/16cb6723-db6b-4eb5-a1b0-3b3f352c64af")

http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true

request = Net::HTTP::Get.new(url)
request["Authorization"] = 'Bearer <token>'

response = http.request(request)
puts response.read_body
```

```java
import com.mashape.unirest.http.HttpResponse;
import com.mashape.unirest.http.Unirest;

HttpResponse<String> response = Unirest.get("https://api.frame.io/v4/accounts/e478ccf0-da0e-4e94-97b7-fec377b0e351/shares/16cb6723-db6b-4eb5-a1b0-3b3f352c64af")
  .header("Authorization", "Bearer <token>")
  .asString();
```

```php
<?php
require_once('vendor/autoload.php');

$client = new \GuzzleHttp\Client();

$response = $client->request('GET', 'https://api.frame.io/v4/accounts/e478ccf0-da0e-4e94-97b7-fec377b0e351/shares/16cb6723-db6b-4eb5-a1b0-3b3f352c64af', [
  'headers' => [
    'Authorization' => 'Bearer <token>',
  ],
]);

echo $response->getBody();
```

```csharp
using RestSharp;

var client = new RestClient("https://api.frame.io/v4/accounts/e478ccf0-da0e-4e94-97b7-fec377b0e351/shares/16cb6723-db6b-4eb5-a1b0-3b3f352c64af");
var request = new RestRequest(Method.GET);
request.AddHeader("Authorization", "Bearer <token>");
IRestResponse response = client.Execute(request);
```

```swift
import Foundation

let headers = ["Authorization": "Bearer <token>"]

let request = NSMutableURLRequest(url: NSURL(string: "https://api.frame.io/v4/accounts/e478ccf0-da0e-4e94-97b7-fec377b0e351/shares/16cb6723-db6b-4eb5-a1b0-3b3f352c64af")! as URL,
                                        cachePolicy: .useProtocolCachePolicy,
                                    timeoutInterval: 10.0)
request.httpMethod = "GET"
request.allHTTPHeaderFields = headers

let session = URLSession.shared
let dataTask = session.dataTask(with: request as URLRequest, completionHandler: { (data, response, error) -> Void in
  if (error != nil) {
    print(error as Any)
  } else {
    let httpResponse = response as? HTTPURLResponse
    print(httpResponse)
  }
})

dataTask.resume()
```