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

# WithRawResponsePolicyEngineClient

> WithRawResponsePolicyEngineClient API reference.

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

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

## Method Details

### `listPolicies`

**Overload 1**

```java theme={null}
public CdpClientHttpResponse<ListPoliciesResponse> listPolicies()
```

Lists the policies belonging to the developer's CDP Project. Use the `scope` parameter to filter the policies by scope. The response is paginated, and by default, returns 20 policies per page.

**Returns:**

[CdpClientHttpResponse](/sdks/cdp-sdks-v2/java/com/coinbase/cdp/core/CdpClientHttpResponse)\<[ListPoliciesResponse](/sdks/cdp-sdks-v2/java/com/coinbase/cdp/resources/policyengine/types/ListPoliciesResponse)>

**Overload 2**

```java theme={null}
public CdpClientHttpResponse<ListPoliciesResponse> listPolicies(ListPoliciesRequest request)
```

Lists the policies belonging to the developer's CDP Project. Use the `scope` parameter to filter the policies by scope. The response is paginated, and by default, returns 20 policies per page.

**Parameters:**

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

**Returns:**

[CdpClientHttpResponse](/sdks/cdp-sdks-v2/java/com/coinbase/cdp/core/CdpClientHttpResponse)\<[ListPoliciesResponse](/sdks/cdp-sdks-v2/java/com/coinbase/cdp/resources/policyengine/types/ListPoliciesResponse)>

**Overload 3**

```java theme={null}
public CdpClientHttpResponse<ListPoliciesResponse> listPolicies(RequestOptions requestOptions)
```

Lists the policies belonging to the developer's CDP Project. Use the `scope` parameter to filter the policies by scope. The response is paginated, and by default, returns 20 policies per page.

**Parameters:**

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

**Returns:**

[CdpClientHttpResponse](/sdks/cdp-sdks-v2/java/com/coinbase/cdp/core/CdpClientHttpResponse)\<[ListPoliciesResponse](/sdks/cdp-sdks-v2/java/com/coinbase/cdp/resources/policyengine/types/ListPoliciesResponse)>

**Overload 4**

```java theme={null}
public CdpClientHttpResponse<ListPoliciesResponse> listPolicies(ListPoliciesRequest request, RequestOptions requestOptions)
```

Lists the policies belonging to the developer's CDP Project. Use the `scope` parameter to filter the policies by scope. The response is paginated, and by default, returns 20 policies per page.

**Parameters:**

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

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

**Returns:**

[CdpClientHttpResponse](/sdks/cdp-sdks-v2/java/com/coinbase/cdp/core/CdpClientHttpResponse)\<[ListPoliciesResponse](/sdks/cdp-sdks-v2/java/com/coinbase/cdp/resources/policyengine/types/ListPoliciesResponse)>

### `createPolicy`

**Overload 1**

```java theme={null}
public CdpClientHttpResponse<Policy> createPolicy(CreatePolicyRequest request)
```

Create a policy that can be used to govern the behavior of accounts.

**Parameters:**

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

**Returns:**

[CdpClientHttpResponse](/sdks/cdp-sdks-v2/java/com/coinbase/cdp/core/CdpClientHttpResponse)\<[Policy](/sdks/cdp-sdks-v2/java/com/coinbase/cdp/types/Policy)>

**Overload 2**

```java theme={null}
public CdpClientHttpResponse<Policy> createPolicy(CreatePolicyRequest request, RequestOptions requestOptions)
```

Create a policy that can be used to govern the behavior of accounts.

**Parameters:**

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

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

**Returns:**

[CdpClientHttpResponse](/sdks/cdp-sdks-v2/java/com/coinbase/cdp/core/CdpClientHttpResponse)\<[Policy](/sdks/cdp-sdks-v2/java/com/coinbase/cdp/types/Policy)>

### `getPolicyById`

**Overload 1**

```java theme={null}
public CdpClientHttpResponse<Policy> getPolicyById(String policyId)
```

Get a policy by its ID.

**Parameters:**

`policyId` - `String`

**Returns:**

[CdpClientHttpResponse](/sdks/cdp-sdks-v2/java/com/coinbase/cdp/core/CdpClientHttpResponse)\<[Policy](/sdks/cdp-sdks-v2/java/com/coinbase/cdp/types/Policy)>

**Overload 2**

```java theme={null}
public CdpClientHttpResponse<Policy> getPolicyById(String policyId, GetPolicyByIdRequest request)
```

Get a policy by its ID.

**Parameters:**

`policyId` - `String`

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

**Returns:**

[CdpClientHttpResponse](/sdks/cdp-sdks-v2/java/com/coinbase/cdp/core/CdpClientHttpResponse)\<[Policy](/sdks/cdp-sdks-v2/java/com/coinbase/cdp/types/Policy)>

**Overload 3**

```java theme={null}
public CdpClientHttpResponse<Policy> getPolicyById(String policyId, RequestOptions requestOptions)
```

Get a policy by its ID.

**Parameters:**

`policyId` - `String`

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

**Returns:**

[CdpClientHttpResponse](/sdks/cdp-sdks-v2/java/com/coinbase/cdp/core/CdpClientHttpResponse)\<[Policy](/sdks/cdp-sdks-v2/java/com/coinbase/cdp/types/Policy)>

**Overload 4**

```java theme={null}
public CdpClientHttpResponse<Policy> getPolicyById(String policyId, GetPolicyByIdRequest request, RequestOptions requestOptions)
```

Get a policy by its ID.

**Parameters:**

`policyId` - `String`

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

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

**Returns:**

[CdpClientHttpResponse](/sdks/cdp-sdks-v2/java/com/coinbase/cdp/core/CdpClientHttpResponse)\<[Policy](/sdks/cdp-sdks-v2/java/com/coinbase/cdp/types/Policy)>

### `updatePolicy`

**Overload 1**

```java theme={null}
public CdpClientHttpResponse<Policy> updatePolicy(String policyId, UpdatePolicyRequest request)
```

Updates a policy by its ID. This will have the effect of applying the updated policy to all accounts that are currently using it.

**Parameters:**

`policyId` - `String`

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

**Returns:**

[CdpClientHttpResponse](/sdks/cdp-sdks-v2/java/com/coinbase/cdp/core/CdpClientHttpResponse)\<[Policy](/sdks/cdp-sdks-v2/java/com/coinbase/cdp/types/Policy)>

**Overload 2**

```java theme={null}
public CdpClientHttpResponse<Policy> updatePolicy(String policyId, UpdatePolicyRequest request, RequestOptions requestOptions)
```

Updates a policy by its ID. This will have the effect of applying the updated policy to all accounts that are currently using it.

**Parameters:**

`policyId` - `String`

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

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

**Returns:**

[CdpClientHttpResponse](/sdks/cdp-sdks-v2/java/com/coinbase/cdp/core/CdpClientHttpResponse)\<[Policy](/sdks/cdp-sdks-v2/java/com/coinbase/cdp/types/Policy)>

### `deletePolicy`

**Overload 1**

```java theme={null}
public CdpClientHttpResponse<Void> deletePolicy(String policyId)
```

Delete a policy by its ID. This will have the effect of removing the policy from all accounts that are currently using it.

**Parameters:**

`policyId` - `String`

**Returns:**

[CdpClientHttpResponse](/sdks/cdp-sdks-v2/java/com/coinbase/cdp/core/CdpClientHttpResponse)\<`Void`>

**Overload 2**

```java theme={null}
public CdpClientHttpResponse<Void> deletePolicy(String policyId, DeletePolicyRequest request)
```

Delete a policy by its ID. This will have the effect of removing the policy from all accounts that are currently using it.

**Parameters:**

`policyId` - `String`

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

**Returns:**

[CdpClientHttpResponse](/sdks/cdp-sdks-v2/java/com/coinbase/cdp/core/CdpClientHttpResponse)\<`Void`>

**Overload 3**

```java theme={null}
public CdpClientHttpResponse<Void> deletePolicy(String policyId, RequestOptions requestOptions)
```

Delete a policy by its ID. This will have the effect of removing the policy from all accounts that are currently using it.

**Parameters:**

`policyId` - `String`

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

**Returns:**

[CdpClientHttpResponse](/sdks/cdp-sdks-v2/java/com/coinbase/cdp/core/CdpClientHttpResponse)\<`Void`>

**Overload 4**

```java theme={null}
public CdpClientHttpResponse<Void> deletePolicy(String policyId, DeletePolicyRequest request, RequestOptions requestOptions)
```

Delete a policy by its ID. This will have the effect of removing the policy from all accounts that are currently using it.

**Parameters:**

`policyId` - `String`

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

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

**Returns:**

[CdpClientHttpResponse](/sdks/cdp-sdks-v2/java/com/coinbase/cdp/core/CdpClientHttpResponse)\<`Void`>
