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

# EvmUserOperation

> EvmUserOperation API reference.

Package: [`com.coinbase.cdp.types`](/sdks/cdp-sdks-v2/java/com/coinbase/cdp/types/index)

```java theme={null}
public final class EvmUserOperation extends Object
```

## Method Details

### `getNetwork`

```java theme={null}
public EvmUserOperationNetwork getNetwork()
```

**Returns:**

[EvmUserOperationNetwork](/sdks/cdp-sdks-v2/java/com/coinbase/cdp/types/EvmUserOperationNetwork)

### `getUserOpHash`

```java theme={null}
public String getUserOpHash()
```

**Returns:**

`String` - The hash of the user operation. This is not the transaction hash, as a transaction consists of multiple user operations. The user operation hash is the hash of this particular user operation which gets signed by the owner of the Smart Account.

### `getCalls`

```java theme={null}
public List<EvmCall> getCalls()
```

**Returns:**

`List`\<[EvmCall](/sdks/cdp-sdks-v2/java/com/coinbase/cdp/types/EvmCall)> - The list of calls in the user operation.

### `getStatus`

```java theme={null}
public EvmUserOperationStatus getStatus()
```

**Returns:**

[EvmUserOperationStatus](/sdks/cdp-sdks-v2/java/com/coinbase/cdp/types/EvmUserOperationStatus) - The status of the user operation.

### `getTransactionHash`

```java theme={null}
public Optional<String> getTransactionHash()
```

**Returns:**

`Optional<String>` - The hash of the transaction that included this particular user operation. This gets set after the user operation is broadcasted and the transaction is included in a block.

### `getReceipts`

```java theme={null}
public Optional<List<UserOperationReceipt>> getReceipts()
```

**Returns:**

`Optional`\<`List`\<[UserOperationReceipt](/sdks/cdp-sdks-v2/java/com/coinbase/cdp/types/UserOperationReceipt)>> - The list of receipts associated with the user operation.

### `getExpiresAt`

```java theme={null}
public Optional<OffsetDateTime> getExpiresAt()
```

**Returns:**

`Optional<OffsetDateTime>` - The timestamp at which the prepared user operation expires.

### `equals`

```java theme={null}
public boolean equals(Object other)
```

**Overrides:**

`[equals](https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/Object.html#equals\(java.lang.Object\) "class or interface in java.lang")` in class `[Object](https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/Object.html "class or interface in java.lang")`

**Parameters:**

`other` - `Object`

**Returns:**

`boolean`

### `getAdditionalProperties`

```java theme={null}
public Map<String,Object> getAdditionalProperties()
```

**Returns:**

`Map<String,Object>`

### `hashCode`

```java theme={null}
public int hashCode()
```

**Overrides:**

`[hashCode](https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/Object.html#hashCode\(\) "class or interface in java.lang")` in class `[Object](https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/Object.html "class or interface in java.lang")`

**Returns:**

`int`

### `toString`

```java theme={null}
public String toString()
```

**Overrides:**

`[toString](https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/Object.html#toString\(\) "class or interface in java.lang")` in class `[Object](https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/Object.html "class or interface in java.lang")`

**Returns:**

`String`

### `builder`

```java theme={null}
public static EvmUserOperation.NetworkStage builder()
```

**Returns:**

[EvmUserOperation](/sdks/cdp-sdks-v2/java/com/coinbase/cdp/types/EvmUserOperation).`NetworkStage`
