# SendWebRequest()

> Begin communicating with the remote server.

## Definition

* **Type:** Method
* **Namespace:** [UnityEngine.Networking](/engine/6000.5/script-reference/unityengine/networking.md)
* **Assembly:** UnityEngine.UnityWebRequestModule

```csharp
public UnityWebRequestAsyncOperation SendWebRequest()
```

### Returns

| Type                                                                                                                     | Description |
| ------------------------------------------------------------------------------------------------------------------------ | ----------- |
| [UnityWebRequestAsyncOperation](/engine/6000.5/script-reference/unityengine/networking/unitywebrequestasyncoperation.md) |             |

### Remarks

After calling this method, the [UnityWebRequest](/engine/6000.5/script-reference/unityengine/networking/unitywebrequest.md) will perform DNS resolution (if necessary), transmit an HTTP request to the remote server at the target URL and process the server’s response.

This method can only be called once on any given [UnityWebRequest](/engine/6000.5/script-reference/unityengine/networking/unitywebrequest.md) object.

Once this method is called, you cannot change any of the UnityWebRequest’s properties. You cannot change [UnityWebRequest](/engine/6000.5/script-reference/unityengine/networking/unitywebrequest.md) properties after [UnityWebRequest.SendWebRequest](/engine/6000.5/script-reference/unityengine/networking/unitywebrequest/sendwebrequest.md) is called.

This method returns a WebRequestAsyncOperation object. Yielding the WebRequestAsyncOperation inside a coroutine will cause the coroutine to pause until the [UnityWebRequest](/engine/6000.5/script-reference/unityengine/networking/unitywebrequest.md) encounters a system error or finishes communicating.
