---
title: "UploadAPI | Upload js | Api client"
description: "Documentation for Upload JS"
---

> For AI agents: a documentation index is available at [/llms.txt](https://docs.maptiler.com/llms.txt). Markdown versions of all pages are available by appending .md to any URL.

# Class UploadAPI

-   Defined in [client/index.ts:16](https://github.com/maptiler/maptiler-upload-js/blob/9a8e1ef4a2e85d959471c8ef80adaab2ecd39027/packages/core/src/client/index.ts#L16)

##### Index

### Constructors[](#constructors)

[constructor](#constructor)

### Properties[](#properties)

[file](#file) [id](#id)

### Methods[](#methods)

[cancel](#cancel) [getProgress](#getprogress) [getStatus](#getstatus) [start](#start) [initialize](#initialize)

## Constructors[](#constructors-1)

### constructor[](#constructor)

-   new UploadAPI(  
        config: [UploadConfig](https://docs.maptiler.com/upload-js/api/types/UploadConfig/),  
        onChange: [ChangeCallback](https://docs.maptiler.com/upload-js/api/types/ChangeCallback/),  
        onError: [ErrorCallback](https://docs.maptiler.com/upload-js/api/types/ErrorCallback/),  
    ): UploadAPI[](#constructoruploadapi)
    
    #### Parameters
    
    -   config: [UploadConfig](https://docs.maptiler.com/upload-js/api/types/UploadConfig/)
    -   onChange: [ChangeCallback](https://docs.maptiler.com/upload-js/api/types/ChangeCallback/)
    -   onError: [ErrorCallback](https://docs.maptiler.com/upload-js/api/types/ErrorCallback/)
    
    #### Returns UploadAPI
    
    -   Defined in [client/index.ts:32](https://github.com/maptiler/maptiler-upload-js/blob/9a8e1ef4a2e85d959471c8ef80adaab2ecd39027/packages/core/src/client/index.ts#L32)
    

## Properties[](#properties-1)

### `Readonly`file[](#file)

file: File

-   Defined in [client/index.ts:18](https://github.com/maptiler/maptiler-upload-js/blob/9a8e1ef4a2e85d959471c8ef80adaab2ecd39027/packages/core/src/client/index.ts#L18)

### `Readonly`id[](#id)

id: string

-   Defined in [client/index.ts:17](https://github.com/maptiler/maptiler-upload-js/blob/9a8e1ef4a2e85d959471c8ef80adaab2ecd39027/packages/core/src/client/index.ts#L17)

## Methods[](#methods-1)

### cancel[](#cancel)

-   cancel(): Promise<void\>[](#cancel-1)
    
    Cancels the upload by making a cancellation request to the backend. Triggers the `onChange` callback.
    
    #### Returns Promise<void\>
    
    -   Defined in [client/index.ts:121](https://github.com/maptiler/maptiler-upload-js/blob/9a8e1ef4a2e85d959471c8ef80adaab2ecd39027/packages/core/src/client/index.ts#L121)
    

### getProgress[](#getprogress)

-   getProgress(): [Progress](https://docs.maptiler.com/upload-js/api/types/Progress/)[](#getprogress-1)
    
    Returns the current upload progress metrics.
    
    #### Returns [Progress](https://docs.maptiler.com/upload-js/api/types/Progress/)
    
    The current upload progress metrics.
    
    -   Defined in [client/index.ts:104](https://github.com/maptiler/maptiler-upload-js/blob/9a8e1ef4a2e85d959471c8ef80adaab2ecd39027/packages/core/src/client/index.ts#L104)
    

### getStatus[](#getstatus)

-   getStatus(): [Status](https://docs.maptiler.com/upload-js/api/enums/Status/)[](#getstatus-1)
    
    Returns the current upload status.
    
    #### Returns [Status](https://docs.maptiler.com/upload-js/api/enums/Status/)
    
    The current upload status
    
    -   Defined in [client/index.ts:96](https://github.com/maptiler/maptiler-upload-js/blob/9a8e1ef4a2e85d959471c8ef80adaab2ecd39027/packages/core/src/client/index.ts#L96)
    

### start[](#start)

-   start(): void[](#start-1)
    
    Starts the file upload. Triggers the `onChange` callback.
    
    #### Returns void
    
    -   Defined in [client/index.ts:111](https://github.com/maptiler/maptiler-upload-js/blob/9a8e1ef4a2e85d959471c8ef80adaab2ecd39027/packages/core/src/client/index.ts#L111)
    

### `Static`initialize[](#initialize)

-   initialize(config: [ApiConfig](https://docs.maptiler.com/upload-js/api/types/ApiConfig/)): Promise<UploadAPI | null\>[](#initialize-1)
    
    #### Parameters
    
    -   config: [ApiConfig](https://docs.maptiler.com/upload-js/api/types/ApiConfig/)
    
    #### Returns Promise<UploadAPI | null\>
    
    -   Defined in [client/index.ts:281](https://github.com/maptiler/maptiler-upload-js/blob/9a8e1ef4a2e85d959471c8ef80adaab2ecd39027/packages/core/src/client/index.ts#L281)
