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

# Download File Representation

export const MultiRelatedLinks = ({sections = []}) => {
  if (!sections || sections.length === 0) {
    return null;
  }
  return <div className="space-y-8">
      {sections.map((section, index) => <RelatedLinks key={index} title={section.title} items={section.items} />)}
    </div>;
};

export const RelatedLinks = ({title, items = []}) => {
  const getBadgeClass = badge => {
    if (!badge) return "badge-default";
    const badgeType = badge.toLowerCase().replace(/\s+/g, "-");
    return `badge-${badge === "ガイド" ? "guide" : badgeType}`;
  };
  if (!items || items.length === 0) {
    return null;
  }
  return <div className="my-8">
      {}
      <h3 className="text-sm font-bold uppercase tracking-wider mb-4">{title}</h3>

      {}
      <div className="flex flex-col gap-3">
        {items.map((item, index) => <a key={index} href={item.href} className="py-2 px-3 rounded related_link hover:bg-[#f2f2f2] dark:hover:bg-[#111827] flex items-center gap-3 group no-underline hover:no-underline border-b-0">
            {}
            <span className={`px-2 py-1 rounded-full text-xs font-semibold uppercase tracking-wide flex-shrink-0 ${getBadgeClass(item.badge)}`}>
              {item.badge}
            </span>

            {}
            <span className="text-base">{item.label}</span>
          </a>)}
      </div>
    </div>;
};

export const Link = ({href, children, className, ...props}) => {
  const localizedHref = href;
  return <a href={localizedHref} className={className} {...props}>
      {children}
    </a>;
};

<RelatedLinks
  title="REQUIRED GUIDES"
  items={[
{ label: translate("Request Desired Representation"), href: "/guides/representations/request-a-representation", badge: "GUIDE" }
]}
/>

Use the`url_template` that was received when
<Link href="/guides/representations/request-a-representation">selecting the representation</Link> to download
the representation. Replace the `{+asset_path}` depending on
the type of representation.

## Paginated representations

For paged representations like PDFs replace `{+asset_path}`
with the desired page number and the file extension, for example
`1.pdf`.

```sh theme={null}
curl https://dl.boxcloud.com/api/2.0/internal_files/123/versions/345/representations/pdf/content/3.pdf \
    -H "authorization: Bearer ACCESS_TOKEN"
```

## Non-paginated representations

For non-paged representations, replace the `{+asset_path}` with
an empty string.

```sh theme={null}
curl https://dl.boxcloud.com/api/2.0/internal_files/123/versions/345/representations/jpg_32x32/content/ \
    -H "authorization: Bearer ACCESS_TOKEN"
```

## Optional query parameters

When fetching the representation the following optional headers
are supported.

| Parameter                      | Options                 | Default |
| ------------------------------ | ----------------------- | ------- |
| `set_content_disposition_type` | `inline` / `attachment` | `null`  |

Sets the `content-disposition` header in the API response with the specified
value. A disposition type of `attachment` causes most web browsers to prompt
the user to save the response to their device, where the type `inline`
will open the file in the browser.

If not supplied, the `content-disposition` header is not included in the
response.

| Parameter                          | Options                    | Default |
| ---------------------------------- | -------------------------- | ------- |
| `set_content_disposition_filename` | Filename without extension | `null`  |

Allows the application to define the downloaded representation's file name.

If not defined, the file name is derived from the source file name in Box,
replacing the extension with the representation's file type.

<RelatedLinks
  title="RELATED APIS"
  items={[
{ label: translate("Get file information"), href: "/reference/get-files-id", badge: "GET" }
]}
/>

<RelatedLinks
  title="RELATED GUIDES"
  items={[
{ label: translate("Get Thumbnail Representation"), href: "/guides/representations/thumbnail-representation", badge: "GUIDE" },
{ label: translate("Supported File Types"), href: "/guides/representations/supported-file-types", badge: "GUIDE" }
]}
/>
