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

# createYieldWithdrawal

> Creates a yield withdrawal operation, or returns the existing operation for a replayed key.

Withdraw USDC from a supported Aave or Morpho market to an API-created, unclaimed EVM wallet. A withdrawal has no token approval step. See [Yield](https://docs.getpara.com/v3/rest/yield.md).

## Import

Call this method on a server-side ParaRestClient.

```ts theme={null}
import { ParaRestClient } from "@getpara/rest-sdk";
```

All REST methods can throw ParaRestError for non-success HTTP responses and ParaRestValidationError for invalid local arguments. Use ParaRestCallOptions for idempotency and cancellation.

async

Creates a yield withdrawal operation, or returns the existing operation for a replayed key.

Copy method signature

### Returns

[`Promise<RestYieldOperation>`](https://docs.getpara.com/v3/references/types/rest/transactions#yield-operations)

The yield operation. Read its status with getYieldOperation.

## Request rules

The SDK throws ParaRestValidationError before it sends the request when `walletId`, `amount`, or `options.idempotencyKey` is missing.

A `chainId` without a `marketId` selects the Aave V3 market on that chain. If you send both, they must match.

Save the complete request and the idempotency key before the first call. After a timeout, send both again unchanged to get the same operation. The same key with a different wallet, market, amount, or `autoRetry` returns `409`.

The API returns HTTP `200` when the operation is `confirmed`, `failed`, `requires_action`, or `cancelled`, and `202` for other statuses. The method resolves with the operation in both cases. For `autoRetry`, see [Authorize automatic phase recovery](https://docs.getpara.com/v3/rest/yield.md#authorize-automatic-phase-recovery).

## Errors

| Error | Cause |
| - | - |
| `400 INVALID_REQUEST` | A field other than `marketId`, `chainId`, `amount` or `autoRetry`, an unsupported market, an invalid amount, an invalid `autoRetry`, a wallet that is not EVM, or an `options.idempotencyKey` that is longer than 256 characters or has a space or another character outside printable ASCII. |
| `403` | The wallet is claimed or not API-created, or `autoRetry` is set and the secret key is not valid. |
| `404` | The wallet is not found. |
| `409 WALLET_TRANSACTION_UNRESOLVED` | Another operation on the same wallet and chain is unresolved. |
| `409 YIELD_DISABLED` | Para has paused new yield operations. |
| `409` | The key identifies a different yield request, or the wallet is not ready for signing. |


This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.