> ## Documentation Index
> This page is part of the Image and Video APIs product. Fetch the complete documentation index for Image and Video APIs at: https://cloudinary.com/documentation/llms-image-and-video-apis.txt?referrer=docpage and then use it to discover all relevant pages before exploring further.
> If your task extends beyond this product, fetch the top-level index covering all Cloudinary products and topics at: https://cloudinary.com/documentation/llms.txt?referrer=docpage

# Upload API reference


The Upload API is a **rate-unlimited** RESTful API that enables you to upload your media assets (resources) and provides a wide range of functionality, including basic and advanced [asset management](image_upload_api_reference_asset_management.md#asset_management), [metadata management](image_upload_api_reference_metadata_management.md#metadata_management), and [asset generation](image_upload_api_reference_asset_generation.md#asset_generation). 
[Cloudinary's backend SDKs](backend_sdks) wrap these REST APIs, handle authentication, and enable you to perform these methods using your preferred programming language or framework. This reference provides both SDK and REST/cURL syntax and examples for each endpoint method.
> **See also**:
>
> For a detailed walkthrough of the upload process, see the [Upload guide](upload_images).

> **TIP**:
>
> :title=Tips

> * [MediaFlows](https://console.cloudinary.com/mediaflows), Cloudinary’s drag-and-drop workflow builder for image and video, supports all Upload API parameters in a low-code environment. See MediaFlow’s documentation on media upload [here](mediaflows_block_reference#upload_media). 

> * You can open the **Media Library** to confirm that your programmatic upload succeeded and that the asset has the expected transformations, tags, metadata, and other parameters. For more information, see the [Media Library for Developers](media_library_for_developers) page.

> * You can also upload and manage assets directly from your IDE using the [Cloudinary VS Code Extension](cloudinary_vscode_extension). This eliminates context-switching between your code editor and browser, helping you stay focused on development.


## Endpoint index

Use this index to find Upload API endpoints. Each page includes the method syntax, parameters, and examples for that endpoint.

- **[Overview](image_upload_api_reference_overview.md)**: Base URL format, authentication methods (Basic and signature-based), API response structure, error handling, and EU/AP data center endpoints.
- **[Asset management](image_upload_api_reference_asset_management.md)**: Enables you to perform basic and advanced management tasks on your assets.
- **[upload](image_upload_api_reference_upload.md)**: Uploads an asset to your product environment.
- **[explicit](image_upload_api_reference_explicit.md)**: Updates existing assets already stored in your product environment.
- **[rename (public ID)](image_upload_api_reference_rename_public_id.md)**: Modifies the public ID (or optionally the delivery type) of an existing asset.
- **[destroy (by public ID)](image_upload_api_reference_destroy_by_public_id.md)**: Permanently deletes a single asset from your Cloudinary product environment based on public ID and resource type.
- **[destroy (by asset ID)](image_upload_api_reference_destroy_by_asset_id.md)**: Permanently deletes a single asset from your Cloudinary product environment based on asset ID.
- **[download (by asset ID)](image_upload_api_reference_download_by_asset_id.md)**: Downloads a single asset from your Cloudinary product environment by asset ID instead of by the `resource_type`/`type`/`public_id` triplet, reusing the same permission, transformation, and streaming logic used when downloading by public ID with [p...
- **[download_backup](image_upload_api_reference_download_backup.md)**: Retrieves a specific version of a [backed up asset](backups_and_version_management#versioning) without restoring it.
- **[Metadata management](image_upload_api_reference_metadata_management.md)**: Enables you to manage your assets' metadata.
- **[context](image_upload_api_reference_context.md)**: Enables you to manage the contextual metadata stored with an asset.
- **[metadata](image_upload_api_reference_metadata.md)**: Adds values to an asset's metadata fields.
- **[tags](image_upload_api_reference_tags.md)**: Enables you to manage the set of tags stored with an asset.
- **[Asset generation](image_upload_api_reference_asset_generation.md)**: Enables you to create different types of assets from existing assets. The generated assets are stored as new assets in your product environment.
- **[explode](image_upload_api_reference_explode.md)**: Generates derived images for each of the individual pages/frames in a multi-page file (PDF or animated image).
- **[generate_archive](image_upload_api_reference_generate_archive.md)**: Creates an archive file that contains all the assets meeting specified tag, public ID, or prefix criteria (or a combination thereof).
- **[multi](image_upload_api_reference_multi.md)**: Creates a single animated image (GIF, PNG or WebP), video (MP4 or WebM) or PDF from all image assets with a specified tag or from a set of specified image URLs.
- **[text](image_upload_api_reference_text.md)**: Dynamically generates an image from a specified text string.
