> Documentation index: [Saleor](/llms.txt) · [This section](/api-reference/miscellaneous/llms.txt)
> Source: https://docs.saleor.io/api-reference/miscellaneous/mutations/file-upload

# fileUpload Mutation

Upload a file. This mutation must be sent as a `multipart` request. More detailed specs of the upload format can be found here: [https://github.com/jaydenseric/graphql-multipart-request-spec](https://github.com/jaydenseric/graphql-multipart-request-spec)

Requires one of the following permissions: AUTHENTICATED\_APP AUTHENTICATED\_STAFF\_USER

```graphql
fileUpload(
  file: Upload!
): FileUpload
```

Details

```graphql
type FileUpload {
  uploadedFile: File
  uploadErrors: [UploadError!]! @deprecated
  errors: [UploadError!]!
}
```

<a id="arguments"></a>

### Arguments

<a id="file"></a>

#### [`file`](#file) ● [`Upload!`](/api-reference/miscellaneous/scalars/upload.md)

Represents a file in a multipart request.

<a id="type"></a>

### Type

<a id="fileupload"></a>

#### [`FileUpload`](/api-reference/miscellaneous/objects/file-upload.md)

Upload a file. This mutation must be sent as a `multipart` request. More detailed specs of the upload format can be found here: [https://github.com/jaydenseric/graphql-multipart-request-spec](https://github.com/jaydenseric/graphql-multipart-request-spec)

Requires one of the following permissions: AUTHENTICATED\_APP AUTHENTICATED\_STAFF\_USER
