# AddRequest

> Represents an asynchronous request to add a package to the project.

## Definition

* **Type:** Class
* **Namespace:** [UnityEditor.PackageManager.Requests](/engine/6000.0/script-reference/unityeditor/packagemanager/requests.md)
* **Assembly:** UnityEditor
* **Inherits from:** [Request\<PackageInfo>](/engine/6000.0/script-reference/unityeditor/packagemanager/requests/request1.md)
* **Implements:** [ISerializationCallbackReceiver](/engine/6000.0/script-reference/unityengine/iserializationcallbackreceiver.md)

```csharp
public sealed class AddRequest : Request<PackageInfo>, ISerializationCallbackReceiver
```

## Remarks

The PackageManager [Client](/engine/6000.0/script-reference/unityeditor/packagemanager/client.md) class returns an AddRequest instance when you call the [Client.Add](/engine/6000.0/script-reference/unityeditor/packagemanager/client/add.md) method to add a package to your project.  Use this object to determine when the request is complete and to access the result.

Once the request is complete, you can retrieve the [PackageInfo](/engine/6000.0/script-reference/unityeditor/packagemanager/packageinfo.md) instance from the Result property.

## Inheritance

**Inherited Members:**

* [Request\<PackageInfo>.Result()](/engine/6000.0/script-reference/unityeditor/packagemanager/requests/request1/result.md)
* [Request.Status()](/engine/6000.0/script-reference/unityeditor/packagemanager/requests/request/status.md)
* [Request.IsCompleted()](/engine/6000.0/script-reference/unityeditor/packagemanager/requests/request/iscompleted.md)
* [Request.Error()](/engine/6000.0/script-reference/unityeditor/packagemanager/requests/request/error.md)
