> ## 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.

# AccountsClient

> AccountsClient API reference.

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

```java theme={null}
public class AccountsClient extends Object
```

## Constructor Details

### `AccountsClient`

```java theme={null}
public AccountsClient(ClientOptions clientOptions)
```

**Parameters:**

`clientOptions` - [ClientOptions](/sdks/cdp-sdks-v2/java/com/coinbase/cdp/core/ClientOptions)

## Method Details

### `withRawResponse`

```java theme={null}
public RawAccountsClient withRawResponse()
```

Get responses with HTTP metadata like headers

**Returns:**

[RawAccountsClient](/sdks/cdp-sdks-v2/java/com/coinbase/cdp/resources/accounts/RawAccountsClient)

### `listAccounts`

**Overload 1**

```java theme={null}
public ListAccountsResponse listAccounts()
```

List all accounts. The API will return all accounts that the API Key has Permissions to access. You can filter the results by using query parameters, which will be treated as a single conjunction (i.e. AND). Results are sorted by creation date in descending order (newest first).

**Returns:**

[ListAccountsResponse](/sdks/cdp-sdks-v2/java/com/coinbase/cdp/resources/accounts/types/ListAccountsResponse)

**Overload 2**

```java theme={null}
public ListAccountsResponse listAccounts(ListAccountsRequest request)
```

List all accounts. The API will return all accounts that the API Key has Permissions to access. You can filter the results by using query parameters, which will be treated as a single conjunction (i.e. AND). Results are sorted by creation date in descending order (newest first).

**Parameters:**

`request` - [ListAccountsRequest](/sdks/cdp-sdks-v2/java/com/coinbase/cdp/resources/accounts/requests/ListAccountsRequest)

**Returns:**

[ListAccountsResponse](/sdks/cdp-sdks-v2/java/com/coinbase/cdp/resources/accounts/types/ListAccountsResponse)

**Overload 3**

```java theme={null}
public ListAccountsResponse listAccounts(RequestOptions requestOptions)
```

List all accounts. The API will return all accounts that the API Key has Permissions to access. You can filter the results by using query parameters, which will be treated as a single conjunction (i.e. AND). Results are sorted by creation date in descending order (newest first).

**Parameters:**

`requestOptions` - [RequestOptions](/sdks/cdp-sdks-v2/java/com/coinbase/cdp/core/RequestOptions)

**Returns:**

[ListAccountsResponse](/sdks/cdp-sdks-v2/java/com/coinbase/cdp/resources/accounts/types/ListAccountsResponse)

**Overload 4**

```java theme={null}
public ListAccountsResponse listAccounts(ListAccountsRequest request, RequestOptions requestOptions)
```

List all accounts. The API will return all accounts that the API Key has Permissions to access. You can filter the results by using query parameters, which will be treated as a single conjunction (i.e. AND). Results are sorted by creation date in descending order (newest first).

**Parameters:**

`request` - [ListAccountsRequest](/sdks/cdp-sdks-v2/java/com/coinbase/cdp/resources/accounts/requests/ListAccountsRequest)

`requestOptions` - [RequestOptions](/sdks/cdp-sdks-v2/java/com/coinbase/cdp/core/RequestOptions)

**Returns:**

[ListAccountsResponse](/sdks/cdp-sdks-v2/java/com/coinbase/cdp/resources/accounts/types/ListAccountsResponse)

### `createAccount`

**Overload 1**

```java theme={null}
public Account createAccount()
```

Create an account. Two ownership modes are supported:

**Entity-owned**: when `owner` is omitted, the account is owned by the Entity making the request. Returns an account with `owner: entity_<uuid>`.

**Customer-owned**: pass a Customer ID as `owner` (e.g. `customer_af2937b0-9846-4fe7-bfe9-ccc22d935114`). The Customer must have the `custodyCrypto`, `custodyFiat`, and `custodyStablecoin` capabilities enabled, otherwise the request is rejected with `customer_not_authorized` (HTTP 403).

**Returns:**

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

**Overload 2**

```java theme={null}
public Account createAccount(CreateAccountRequest request)
```

Create an account. Two ownership modes are supported:

**Entity-owned**: when `owner` is omitted, the account is owned by the Entity making the request. Returns an account with `owner: entity_<uuid>`.

**Customer-owned**: pass a Customer ID as `owner` (e.g. `customer_af2937b0-9846-4fe7-bfe9-ccc22d935114`). The Customer must have the `custodyCrypto`, `custodyFiat`, and `custodyStablecoin` capabilities enabled, otherwise the request is rejected with `customer_not_authorized` (HTTP 403).

**Parameters:**

`request` - [CreateAccountRequest](/sdks/cdp-sdks-v2/java/com/coinbase/cdp/resources/accounts/requests/CreateAccountRequest)

**Returns:**

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

**Overload 3**

```java theme={null}
public Account createAccount(RequestOptions requestOptions)
```

Create an account. Two ownership modes are supported:

**Entity-owned**: when `owner` is omitted, the account is owned by the Entity making the request. Returns an account with `owner: entity_<uuid>`.

**Customer-owned**: pass a Customer ID as `owner` (e.g. `customer_af2937b0-9846-4fe7-bfe9-ccc22d935114`). The Customer must have the `custodyCrypto`, `custodyFiat`, and `custodyStablecoin` capabilities enabled, otherwise the request is rejected with `customer_not_authorized` (HTTP 403).

**Parameters:**

`requestOptions` - [RequestOptions](/sdks/cdp-sdks-v2/java/com/coinbase/cdp/core/RequestOptions)

**Returns:**

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

**Overload 4**

```java theme={null}
public Account createAccount(CreateAccountRequest request, RequestOptions requestOptions)
```

Create an account. Two ownership modes are supported:

**Entity-owned**: when `owner` is omitted, the account is owned by the Entity making the request. Returns an account with `owner: entity_<uuid>`.

**Customer-owned**: pass a Customer ID as `owner` (e.g. `customer_af2937b0-9846-4fe7-bfe9-ccc22d935114`). The Customer must have the `custodyCrypto`, `custodyFiat`, and `custodyStablecoin` capabilities enabled, otherwise the request is rejected with `customer_not_authorized` (HTTP 403).

**Parameters:**

`request` - [CreateAccountRequest](/sdks/cdp-sdks-v2/java/com/coinbase/cdp/resources/accounts/requests/CreateAccountRequest)

`requestOptions` - [RequestOptions](/sdks/cdp-sdks-v2/java/com/coinbase/cdp/core/RequestOptions)

**Returns:**

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

### `getAccountById`

**Overload 1**

```java theme={null}
public Account getAccountById(AccountId accountId)
```

Get an account by its ID.

**Parameters:**

`accountId` - [AccountId](/sdks/cdp-sdks-v2/java/com/coinbase/cdp/types/AccountId)

**Returns:**

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

**Overload 2**

```java theme={null}
public Account getAccountById(AccountId accountId, GetAccountByIdRequest request)
```

Get an account by its ID.

**Parameters:**

`accountId` - [AccountId](/sdks/cdp-sdks-v2/java/com/coinbase/cdp/types/AccountId)

`request` - [GetAccountByIdRequest](/sdks/cdp-sdks-v2/java/com/coinbase/cdp/resources/accounts/requests/GetAccountByIdRequest)

**Returns:**

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

**Overload 3**

```java theme={null}
public Account getAccountById(AccountId accountId, RequestOptions requestOptions)
```

Get an account by its ID.

**Parameters:**

`accountId` - [AccountId](/sdks/cdp-sdks-v2/java/com/coinbase/cdp/types/AccountId)

`requestOptions` - [RequestOptions](/sdks/cdp-sdks-v2/java/com/coinbase/cdp/core/RequestOptions)

**Returns:**

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

**Overload 4**

```java theme={null}
public Account getAccountById(AccountId accountId, GetAccountByIdRequest request, RequestOptions requestOptions)
```

Get an account by its ID.

**Parameters:**

`accountId` - [AccountId](/sdks/cdp-sdks-v2/java/com/coinbase/cdp/types/AccountId)

`request` - [GetAccountByIdRequest](/sdks/cdp-sdks-v2/java/com/coinbase/cdp/resources/accounts/requests/GetAccountByIdRequest)

`requestOptions` - [RequestOptions](/sdks/cdp-sdks-v2/java/com/coinbase/cdp/core/RequestOptions)

**Returns:**

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

### `listBalances`

**Overload 1**

```java theme={null}
public ListBalancesResponse listBalances(AccountId accountId)
```

List the balances for an account. Results are sorted by native-fiat equivalent balance in descending order.

**Parameters:**

`accountId` - [AccountId](/sdks/cdp-sdks-v2/java/com/coinbase/cdp/types/AccountId)

**Returns:**

[ListBalancesResponse](/sdks/cdp-sdks-v2/java/com/coinbase/cdp/resources/accounts/types/ListBalancesResponse)

**Overload 2**

```java theme={null}
public ListBalancesResponse listBalances(AccountId accountId, ListBalancesRequest request)
```

List the balances for an account. Results are sorted by native-fiat equivalent balance in descending order.

**Parameters:**

`accountId` - [AccountId](/sdks/cdp-sdks-v2/java/com/coinbase/cdp/types/AccountId)

`request` - [ListBalancesRequest](/sdks/cdp-sdks-v2/java/com/coinbase/cdp/resources/accounts/requests/ListBalancesRequest)

**Returns:**

[ListBalancesResponse](/sdks/cdp-sdks-v2/java/com/coinbase/cdp/resources/accounts/types/ListBalancesResponse)

**Overload 3**

```java theme={null}
public ListBalancesResponse listBalances(AccountId accountId, RequestOptions requestOptions)
```

List the balances for an account. Results are sorted by native-fiat equivalent balance in descending order.

**Parameters:**

`accountId` - [AccountId](/sdks/cdp-sdks-v2/java/com/coinbase/cdp/types/AccountId)

`requestOptions` - [RequestOptions](/sdks/cdp-sdks-v2/java/com/coinbase/cdp/core/RequestOptions)

**Returns:**

[ListBalancesResponse](/sdks/cdp-sdks-v2/java/com/coinbase/cdp/resources/accounts/types/ListBalancesResponse)

**Overload 4**

```java theme={null}
public ListBalancesResponse listBalances(AccountId accountId, ListBalancesRequest request, RequestOptions requestOptions)
```

List the balances for an account. Results are sorted by native-fiat equivalent balance in descending order.

**Parameters:**

`accountId` - [AccountId](/sdks/cdp-sdks-v2/java/com/coinbase/cdp/types/AccountId)

`request` - [ListBalancesRequest](/sdks/cdp-sdks-v2/java/com/coinbase/cdp/resources/accounts/requests/ListBalancesRequest)

`requestOptions` - [RequestOptions](/sdks/cdp-sdks-v2/java/com/coinbase/cdp/core/RequestOptions)

**Returns:**

[ListBalancesResponse](/sdks/cdp-sdks-v2/java/com/coinbase/cdp/resources/accounts/types/ListBalancesResponse)

### `getBalanceByAsset`

**Overload 1**

```java theme={null}
public Balance getBalanceByAsset(AccountId accountId, Asset asset)
```

Get the balance for an account by asset.

**Parameters:**

`accountId` - [AccountId](/sdks/cdp-sdks-v2/java/com/coinbase/cdp/types/AccountId)

`asset` - [Asset](/sdks/cdp-sdks-v2/java/com/coinbase/cdp/types/Asset)

**Returns:**

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

**Overload 2**

```java theme={null}
public Balance getBalanceByAsset(AccountId accountId, Asset asset, GetBalanceByAssetRequest request)
```

Get the balance for an account by asset.

**Parameters:**

`accountId` - [AccountId](/sdks/cdp-sdks-v2/java/com/coinbase/cdp/types/AccountId)

`asset` - [Asset](/sdks/cdp-sdks-v2/java/com/coinbase/cdp/types/Asset)

`request` - [GetBalanceByAssetRequest](/sdks/cdp-sdks-v2/java/com/coinbase/cdp/resources/accounts/requests/GetBalanceByAssetRequest)

**Returns:**

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

**Overload 3**

```java theme={null}
public Balance getBalanceByAsset(AccountId accountId, Asset asset, RequestOptions requestOptions)
```

Get the balance for an account by asset.

**Parameters:**

`accountId` - [AccountId](/sdks/cdp-sdks-v2/java/com/coinbase/cdp/types/AccountId)

`asset` - [Asset](/sdks/cdp-sdks-v2/java/com/coinbase/cdp/types/Asset)

`requestOptions` - [RequestOptions](/sdks/cdp-sdks-v2/java/com/coinbase/cdp/core/RequestOptions)

**Returns:**

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

**Overload 4**

```java theme={null}
public Balance getBalanceByAsset(AccountId accountId, Asset asset, GetBalanceByAssetRequest request, RequestOptions requestOptions)
```

Get the balance for an account by asset.

**Parameters:**

`accountId` - [AccountId](/sdks/cdp-sdks-v2/java/com/coinbase/cdp/types/AccountId)

`asset` - [Asset](/sdks/cdp-sdks-v2/java/com/coinbase/cdp/types/Asset)

`request` - [GetBalanceByAssetRequest](/sdks/cdp-sdks-v2/java/com/coinbase/cdp/resources/accounts/requests/GetBalanceByAssetRequest)

`requestOptions` - [RequestOptions](/sdks/cdp-sdks-v2/java/com/coinbase/cdp/core/RequestOptions)

**Returns:**

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