# Upload a file

Uploads a file in chunks or as a whole. The URL is generated by the upload URL endpoint. When uploading in chunks, the current chunk number starts at 0 and the total number of chunks must be provided as a query string parameter. Multiple chunks can be uploaded in parallel. To notify that the last chunk has been uploaded and no more are expected, a final request needs to be made with only the parameter of the chunk.

Endpoint: POST /api/v2.0/upload/process
Version: v2.0
Security: OAuth2

## Security:

  - `OAuth2` (unknown)
    oauth2

## Query parameters:

  - `key` (string, required)
    The file identifier.

  - `name` (string, required)
    The file name.

  - `expires` (string, required)
    The expiration date of the request after which the upload URL becomes invalid.

  - `chunk` (integer)
    When uploading in chunks, the current chunk number.

  - `chunks` (integer)
    When uploading in chunks, the total number of chunks.

## Response 200:

  - `200` (unknown)
    File successfully uploaded

## Response 200 fields (application/json):

  - `success` (boolean)

  - `message` (string)

## Response 400:

  - `400` (unknown)
    Request not valid

## Response 400 fields (application/json):

  - `type` (string)

  - `title` (string)

  - `status` (integer)

  - `detail` (string)

  - `instance` (string)

## Response 403:

  - `403` (unknown)
    Request has expired or user is not authorized

## Response 403 fields (application/json):

  - `type` (string)

  - `title` (string)

  - `status` (integer)

  - `detail` (string)

  - `instance` (string)

## Response 500:

  - `500` (unknown)
    An internal server error occurred

