> For the complete documentation index, see [llms.txt](https://docs.imerit.net/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://docs.imerit.net/data/importing-assets.md).

# Importing Assets

<figure><picture><source srcset="https://angohub-docs-assets.s3.eu-central-1.amazonaws.com/cover/importing-assets-dark.png" media="(prefers-color-scheme: dark)"><img src="https://angohub-docs-assets.s3.eu-central-1.amazonaws.com/cover/importing-assets.png" alt=""></picture><figcaption></figcaption></figure>

Ango Hub provides several methods to import assets for labeling.

## Methods to Import Assets to Ango Hub

### Browser Upload <a href="#browser-import" id="browser-import"></a>

The Browser Upload method is a drag-and-drop interface, through which files can be imported directly from your system.

If Ango Hub was installed on-premises, assets imported this way will be copied to the `/uploaded-data/` folder within Ango Hub's root. If you are using Ango Hub on the cloud, assets imported this way will be uploaded to Ango's AWS encrypted cloud storage in Germany.

[Click for information on browser upload](/data/importing-assets/asset-browser-import.md).

### Cloud Import <a href="#cloud-import" id="cloud-import"></a>

You may alternatively upload a JSON containing the file paths and their [external IDs](/core-concepts/assets.md#External-ID). This is what we call Cloud Import. Assets imported this way are not copied over, and are simply fetched as necessary to display them. More details on this method can be found in the pages below:

* [Upload public cloud assets](/data/importing-assets/asset-cloud-import.md)
* Upload private cloud assets
  * [From AWS S3](/data/storages/importing-private-cloud-assets-aws.md)
  * [From GCP](/data/storages/importing-private-cloud-assets-gcp.md)

### File Explorer

You may import assets directly from a connected private cloud storage by navigating the storage from Ango Hub. See [File Explorer](/data/importing-assets/file-explorer.md) for more.

### SDK Import

By using our SDK, you can import assets, either from your local machine or from a cloud storage location such as an AWS S3 bucket or Azure storage, directly from your Python script. See our [SDK documentation](/sdk/sdk-documentation.md) for the functions [upload\_files](/sdk/sdk-documentation/project-level-sdk-functions/upload_files.md) and [upload\_files\_cloud](/sdk/sdk-documentation/project-level-sdk-functions/upload_files_cloud.md) for more.

### Asset Builder

Ango Hub provides an asset builder with which you may create custom assets using the information contained in a .csv you have imported. See the [Asset Builder](/data/importing-assets/asset-builder.md) page and [upload\_files\_with\_asset\_builder](/sdk/sdk-documentation/project-level-sdk-functions/upload_files_with_asset_builder.md) function for more.

### LLM Chat Assets

You may create empty LLM chat conversations or import existing conversations from JSON. See [Creating and Importing LLM Chat Assets](/data/importing-assets/creating-and-importing-llm-chat-assets.md) for more.

## Import Limits

The maximum number of assets you can import at once depends on the import method:

| Import method                                                                                                                     | Maximum per import                                                                |
| --------------------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------- |
| [Browser Upload](/data/importing-assets/asset-browser-import.md)                                                                  | 60,000 files, up to 5 GB total                                                    |
| [Cloud Import JSON](/data/importing-assets/asset-cloud-import.md)                                                                 | 60,000 JSON rows                                                                  |
| [File Explorer](/data/importing-assets/file-explorer.md)                                                                          | 30,000 files                                                                      |
| [Asset Builder](/data/importing-assets/asset-builder.md)                                                                          | 20,000 rows                                                                       |
| [LLM Chat assets](/data/importing-assets/creating-and-importing-llm-chat-assets.md)                                               | 10,000 conversations                                                              |
| [SDK: upload\_files](/sdk/sdk-documentation/project-level-sdk-functions/upload_files.md)                                          | No separate SDK function limit; project and subscription asset limits still apply |
| [SDK: upload\_files\_cloud](/sdk/sdk-documentation/project-level-sdk-functions/upload_files_cloud.md)                             | No separate SDK function limit; project and subscription asset limits still apply |
| [SDK: upload\_chat\_assets](/sdk/sdk-documentation/project-level-sdk-functions/upload_chat_assets.md)                             | 10,000 chat assets                                                                |
| [SDK: upload\_files\_with\_asset\_builder](/sdk/sdk-documentation/project-level-sdk-functions/upload_files_with_asset_builder.md) | 100,000 assets                                                                    |

All imports are also subject to your organization's asset quota and any project-level asset limits. If you need to import more assets than a method allows at once, split the import into multiple smaller uploads.

{% hint style="warning" %}
Audio files **must** have a constant bitrate.

Otherwise, the annotation timings will **not** be correct in the final export.
{% endhint %}
