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

# Unwrap ETH

Unwrap WETH (or WMATIC, WBNB, WAVAX) back to native ETH (or MATIC, BNB, AVAX). Burns wrapped tokens to receive equal amount of native tokens. Ideal for: post-Railgun unshield, gas conversion, native token recovery.

![Unwrap ETH logo](https://ai-icon.b3.fun/logo/ethereum)
Catalog action EVM Onchain wallet Gas swap

Unwrap WETH (or WMATIC, WBNB, WAVAX) back to native ETH (or MATIC, BNB, AVAX). Burns wrapped tokens to receive equal amount of native tokens. Ideal for: post-Railgun unshield, gas conversion, native token recovery.

**Review wallet and value movement**

This action can require a wallet connector, gas, token movement, or an external side effect. Test with simulation or a controlled amount before using it in a live workflow.

## At a Glance

| Field | Value |
| --- | --- |
| Action ID | `unwrap-eth` |
| Category | EVM Onchain |
| Connector | `wallet` |
| Requires gas | Yes |
| Funds movement | `swap` |
| Tags | `blockchain`, `evm`, `unwrap`, `weth`, `wmatic`, `defi`, `railgun` |

## Payload Schema

| Field | Type | Required | Description |
| --- | --- | --- | --- |
| `amount` | `string` | Yes | Amount of WETH to unwrap in wei as string \(e.g., "1000000000000000000" for 1 WETH\). Must be a positive integer. |
| `chainId` | `number` | Yes | Chain ID \(1=Ethereum, 42161=Arbitrum, 137=Polygon, 8453=Base, etc.\) |
| `gasLimit` | `string` | No | Optional gas limit override |

## Result Schema

| Field | Type | Required | Description |
| --- | --- | --- | --- |
| `status` | `string` | Yes | - |
| `transactionHash` | `string` | Yes | - |
| `blockNumber` | `number` | No | Block number where the transaction was confirmed |
| `wethAddress` | `string` | No | The WETH contract address used |
| `amountUnwrapped` | `string` | No | Amount of WETH unwrapped in wei |

## Examples

**Workflow node**

```json
{
  "type": "unwrap-eth",
  "payload": {
    "amount": "1000000",
    "chainId": 8453
  },
  "children": [],
  "connector": {
    "type": "wallet",
    "id": "conn_wallet"
  }
}
```
  **Test with API**

```bash
curl -X POST "https://api.b3os.org/v1/actions/unwrap-eth/test" \
  -H "Authorization: Bearer YOUR_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
  "inputs": {
    "amount": "1000000",
    "chainId": 8453
  }
}'
```

**Use expressions for dynamic values**

Payload fields can use workflow expressions such as `{{$trigger.body.amount}}`, `{{$nodes.fetch.result.price}}`, and `{{$props.asset}}` when the value should come from a trigger, prior node, or reusable workflow prop.