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

# Using Assets

> Managing assets

export const LastUpdated = ({date, lang = "en"}) => {
  const translations = {
    en: "Last updated:",
    es: "Última actualización:",
    pt: "Última atualização:",
    fr: "Dernière mise à jour:",
    de: "Zuletzt aktualisiert:"
  };
  const label = translations[lang] || translations.en;
  return <>
<style>{`
.last-updated-component {
display: inline-flex;
align-items: center;
gap: 8px;
padding: 10px 16px;
border-radius: 8px;
margin-top: 12px;
margin-bottom: 16px;
font-size: 14px;
background-color: rgba(0, 0, 0, 0.05);
border: 1px solid rgba(0, 0, 0, 0.12);
color: rgba(0, 0, 0, 0.75);
line-height: 1;
}

        .last-updated-component svg {
          flex-shrink: 0;
          vertical-align: middle;
        }

        .last-updated-component span {
          display: inline-flex !important;
          align-items: center !important;
          line-height: 1 !important;
        }

        [data-theme="dark"] .last-updated-component {
          background-color: #3a3a3a;
          border: 2px solid #888888;
          color: #ffffff;
        }

        [data-theme="dark"] .last-updated-component svg {
          stroke: #ffffff;
        }
      `}</style>
      <div className="last-updated-component">
        <svg width="16" height="16" viewBox="0 0 24 24" fill="none" stroke="currentColor" strokeWidth="2" strokeLinecap="round" strokeLinejoin="round">
          <circle cx="12" cy="12" r="10" />
          <polyline points="12 6 12 12 16 14" />
        </svg>
        <span>
          <strong style={{
    fontWeight: 600
  }}>{label}</strong> 
          <time dateTime={date}>{date}</time>
        </span>
      </div>
    </>;
};

<div style={{textAlign: 'justify', marginBottom: '1.5rem'}}>
  Topsort supports many types of assets that can be used in campaigns. See below for supported asset types.
</div>

## How It Works

### Uploading Assets

<div style={{textAlign: 'justify', marginBottom: '1.5rem'}}>
  While creating a campaign, you can upload assets to banner or sponsored brand campaigns. These assets can be images, videos, html or externally hosted files (a url). These assets will be returned as part of a winning auction and suitable for inclusion in the ad creative.
</div>

<div style={{textAlign: 'justify', marginBottom: '1.5rem'}}>
  You can also use our [Assets API](/en/api-reference/assets-api), to create and manage assets without necessarily using them in campaigns.
</div>

### Supported Asset Types

<div style={{textAlign: 'justify', marginBottom: '1.5rem'}}>
  We support the following asset types:
</div>

<div style={{textAlign: 'justify', marginBottom: '1.5rem'}}>
  * **Images**: PNG, JPEG, GIF and WEBP.
  * **Video**: MP4, WEBM, MOV.
  * **External URL** (can be anything you want to use from a third party service)
  * **HTML**: HTML code that can be used to render a custom creative. We return the link to said HTML file which you can include via an `<iframe>` tag.
  * **JSON**
</div>

### Asset Size

<div style={{textAlign: 'justify', marginBottom: '1.5rem'}}>
  * For images we support up to 50MB.
  * For videos we support up to 200MB.
</div>

***

<LastUpdated date="2025-11-18" />
