> ## Documentation Index
> Fetch the complete documentation index at: https://formcarry.com/docs/llms.txt
> Use this file to discover all available pages before exploring further.

# Accept and Manage File Uploads

> Enable file uploads in your formcarry forms. Supports multiple files up to 10 MB each.

formcarry supports file uploads from standard HTML forms and JavaScript requests. Each uploaded file can be up to **10 MB** in size. Once received, uploaded files are attached to the submission and visible in your dashboard alongside the rest of the form data.

<Note>
  File uploads are available on **paid plans** only.
</Note>

To enable file uploads, add `enctype="multipart/form-data"` to your `<form>` element and include one or more `<input type="file">` fields:

```html theme={null}
<form
  action="https://formcarry.com/s/{YOUR_ENDPOINT}"
  method="POST"
  enctype="multipart/form-data"
>
  <input type="file" name="picture" />
  <input type="submit" value="Send" />
</form>
```

***

## Multiple File Inputs

You can include as many separate file inputs as you need. Give each one a distinct `name` so formcarry can attach each file individually to the submission:

```html theme={null}
<form
  action="https://formcarry.com/s/{YOUR_ENDPOINT}"
  method="POST"
  enctype="multipart/form-data"
>
  <input type="file" name="picture" />
  <input type="file" name="picture2" />
  <input type="file" name="picture3" />
  <input type="submit" value="Send" />
</form>
```

***

## Multiple Files with One Input

If you want users to select several files at once from a single file picker, add the `multiple` attribute to a single input:

```html theme={null}
<form
  action="https://formcarry.com/s/{YOUR_ENDPOINT}"
  method="POST"
  enctype="multipart/form-data"
>
  <input type="file" name="picture" multiple />
  <input type="submit" value="Send" />
</form>
```

***

## File Uploads with JavaScript

When submitting a form with files via JavaScript, use the browser's built-in `FormData` API to construct the request body. See the [React example](/docs/frameworks/react) for a complete implementation using `FormData`.

<Warning>
  Do **not** set the `Content-Type` header manually when sending file uploads with JavaScript. The browser automatically sets `Content-Type: multipart/form-data` along with the correct multipart boundary. Overriding it will break the upload.
</Warning>


## Related topics

- [Upload an image](/docs/api-reference/forms/upload-an-image.md)
- [Manage Team Accounts, Members, and Roles](/docs/features/team-accounts.md)
- [Svelte](/docs/frameworks/svelte.md)
- [Vue](/docs/frameworks/vue.md)
- [Next.js](/docs/frameworks/nextjs.md)
