# UploadHandler

> Helper object for UnityWebRequest s. Manages the buffering and transmission of body data during HTTP requests.

## Definition

* **Type:** Class
* **Namespace:** [UnityEngine.Networking](/engine/6000.6/script-reference/unityengine/networking.md)
* **Assembly:** UnityEngine.UnityWebRequestModule
* **Implements:** [IDisposable](https://learn.microsoft.com/dotnet/api/system.idisposable)

```csharp
public class UploadHandler : IDisposable
```

## Remarks

When attached to a [UnityWebRequest](/engine/6000.6/script-reference/unityengine/networking/unitywebrequest.md), an UploadHandler object handles all information regarding the buffering and transmission of body data during an HTTP request. By placing data in an UploadHandler and attaching it to a [UnityWebRequest](/engine/6000.6/script-reference/unityengine/networking/unitywebrequest.md), the [UnityWebRequest](/engine/6000.6/script-reference/unityengine/networking/unitywebrequest.md) is implicitly instructed to transmit the UploadHandler's data to the remote server. The data will always be delivered as HTTP request body data.

UploadHandler is a base class and cannot be directly instantiated. Currently, two types of UploadHandlers are available: [UploadHandlerRaw](/engine/6000.6/script-reference/unityengine/networking/uploadhandlerraw.md) and [UploadHandlerFile](/engine/6000.6/script-reference/unityengine/networking/uploadhandlerfile.md).

Additional Resources: [UnityWebRequest](/engine/6000.6/script-reference/unityengine/networking/unitywebrequest.md), [UploadHandlerRaw](/engine/6000.6/script-reference/unityengine/networking/uploadhandlerraw.md), [UploadHandlerFile](/engine/6000.6/script-reference/unityengine/networking/uploadhandlerfile.md).

## Properties

| Property                                                                                           | Description                                                                                                              |
| -------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------ |
| [contentType](/engine/6000.6/script-reference/unityengine/networking/uploadhandler/contenttype.md) | Determines the default `Content-Type` header which will be transmitted with the outbound HTTP request.                   |
| [data](/engine/6000.6/script-reference/unityengine/networking/uploadhandler/data.md)               | The raw data which will be transmitted to the remote server as body data. (Read Only)                                    |
| [progress](/engine/6000.6/script-reference/unityengine/networking/uploadhandler/progress.md)       | Returns the proportion of data uploaded to the remote server compared to the total amount of data to upload. (Read Only) |

## Methods

| Method                                                                                     | Description                                                                                                                                                                        |
| ------------------------------------------------------------------------------------------ | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| [Dispose](/engine/6000.6/script-reference/unityengine/networking/uploadhandler/dispose.md) | Signals that this [UploadHandler](/engine/6000.6/script-reference/unityengine/networking/uploadhandler.md) is no longer being used, and should clean up any resources it is using. |
