# Get a resiliency policy

`GET /apis/dapr.diagrid.io/v1beta1/projects/{ProjectId}/resiliencies/{ProjectSubresourceId}`

Get the details of a resiliency policy.

## Request

### Path parameters

| Name | Type | Required | Description |
| --- | --- | --- | --- |
| `ProjectId` | string | Yes | Unique identifier of the project. |
| `ProjectSubresourceId` | string | Yes | Unique identifier of the project subresource. |

### Query parameters

| Name | Type | Required | Description |
| --- | --- | --- | --- |
| `noextramapping` | boolean | No | Skip loading extra related data and return only the resource metadata and spec. |

## Responses

### 200 — The requested resiliency policy.

`application/json`

- `apiVersion` (string)
- `kind` (string)
- `metadata` (object)
  - `name` (string)
  - `uid` (string)
  - `resourceVersion` (integer)
  - `createdAt` (string)
  - `updatedAt` (string)
  - `deletedAt` (string)
  - `labels` (object<string, string>)
  - `annotations` (object)
- `spec` (object)
  - `policies` (object)
    - `timeouts` (object<string, string>)
    - `retries` (object<string, object>)
      - `policy` (string)
      - `duration` (string)
      - `maxInterval` (string)
      - `maxRetries` (integer)
      - `matching` (object) — RetryMatching represents the rules to trigger retry in specific scenarios.
        - `httpStatusCodes` (string) — HTTPStatusCodes represents HTTP status codes to be retried.
        - `gRPCStatusCodes` (string) — GRPCStatusCodes represents gRPC status codes to be retried.
    - `circuitBreakers` (object<string, object>)
      - `maxRequests` (integer)
      - `interval` (string)
      - `timeout` (string)
      - `trip` (string)
  - `targets` (object)
    - `apps` (object<string, object>)
      - `timeout` (string)
      - `retry` (string)
      - `circuitBreaker` (string)
      - `circuitBreakerCacheSize` (integer)
    - `actors` (object<string, object>)
      - `timeout` (string)
      - `retry` (string)
      - `circuitBreaker` (string)
      - `circuitBreakerScope` (string)
      - `circuitBreakerCacheSize` (integer)
    - `components` (object<string, object>)
      - `inbound` (object)
        - `timeout` (string)
        - `retry` (string)
        - `circuitBreaker` (string)
      - `outbound` (object)
        - `timeout` (string)
        - `retry` (string)
        - `circuitBreaker` (string)
- `scopes` (string[])
- `status` (object)
  - `status` (string) — Status is the current processing status of the resource.
  - `updatedAt` (string) — UpdatedAt is the time of the last status update.
  - `messages` (object[]) — Messages contains any status messages, such as error details.
    - `message` (string)
  - `instances` (object[]) — Instances includes the status for each instance of the resource.
    - `cluster` (string) — Cluster is the name of the cluster hosting this instance.
    - `region` (string) — Region is the region where the instance is located (e.g. "us-east-1").
    - `placementId` (string) — PlacementID is the project placement this instance belongs to (e.g. "1").
    - `status` (string) — Status is the current processing status of the resource.
    - `updatedAt` (string) — UpdatedAt is the time of the last status update.
    - `messages` (object[]) — Messages contains any status messages, such as error details.
      - `message` (string)

Example:

```json
{
  "apiVersion": "dapr.io/v1alpha1",
  "kind": "Resiliency",
  "metadata": {
    "name": "default-resiliency"
  },
  "spec": {
    "policies": {
      "retries": {
        "defaultRetry": {
          "policy": "constant",
          "duration": "5s",
          "maxRetries": 3
        }
      }
    },
    "targets": {
      "apps": {
        "order-api": {
          "retry": "defaultRetry"
        }
      }
    }
  }
}
```

`application/vnd.api+json`

JSONAPI.org specification resiliency response wrapper for UI.

- `data` (object) — Required.
  - `type` (string) — Type of the resource object.
  - `id` (string) — Unique identifier of the resource object.
  - `attributes` (object)
    - `apiVersion` (string)
    - `kind` (string)
    - `metadata` (object)
      - `name` (string)
      - `uid` (string)
      - `resourceVersion` (integer)
      - `createdAt` (string)
      - `updatedAt` (string)
      - `deletedAt` (string)
      - `labels` (object<string, string>)
      - `annotations` (object)
    - `spec` (object)
      - `policies` (object)
        - `timeouts` (object<string, string>)
        - `retries` (object<string, object>)
          - `policy` (string)
          - `duration` (string)
          - `maxInterval` (string)
          - `maxRetries` (integer)
          - `matching` (object) — RetryMatching represents the rules to trigger retry in specific scenarios.
            - `httpStatusCodes` (string) — HTTPStatusCodes represents HTTP status codes to be retried.
            - `gRPCStatusCodes` (string) — GRPCStatusCodes represents gRPC status codes to be retried.
        - `circuitBreakers` (object<string, object>)
          - `maxRequests` (integer)
          - `interval` (string)
          - `timeout` (string)
          - `trip` (string)
      - `targets` (object)
        - `apps` (object<string, object>)
          - `timeout` (string)
          - `retry` (string)
          - `circuitBreaker` (string)
          - `circuitBreakerCacheSize` (integer)
        - `actors` (object<string, object>)
          - `timeout` (string)
          - `retry` (string)
          - `circuitBreaker` (string)
          - `circuitBreakerScope` (string)
          - `circuitBreakerCacheSize` (integer)
        - `components` (object<string, object>)
          - `inbound` (object)
            - `timeout` (string)
            - `retry` (string)
            - `circuitBreaker` (string)
          - `outbound` (object)
            - `timeout` (string)
            - `retry` (string)
            - `circuitBreaker` (string)
    - `scopes` (string[])
    - `status` (object)
      - `status` (string) — Status is the current processing status of the resource.
      - `updatedAt` (string) — UpdatedAt is the time of the last status update.
      - `messages` (object[]) — Messages contains any status messages, such as error details.
        - `message` (string)
      - `instances` (object[]) — Instances includes the status for each instance of the resource.
        - `cluster` (string) — Cluster is the name of the cluster hosting this instance.
        - `region` (string) — Region is the region where the instance is located (e.g. "us-east-1").
        - `placementId` (string) — PlacementID is the project placement this instance belongs to (e.g. "1").
        - `status` (string) — Status is the current processing status of the resource.
        - `updatedAt` (string) — UpdatedAt is the time of the last status update.
        - `messages` (object[]) — Messages contains any status messages, such as error details.
          - `message` (string)
  - `relationships` (object<string, object>) — Members of the relationships object represent references from the resource object in which it's defined to other resource objects.
    - Any of:
      - **option 1**
      - **option 2**
      - **option 3**
  - `links` (object<string, object>) — Link members related to the primary data.
    - One of:
      - **string (uri-reference)** — A string containing the link's URL.
      - **object**
        - `href` (string (uri-reference)) — Required. A string containing the link's URL.
        - `meta` (object) — Non-standard meta-information that can not be represented as an attribute or relationship.
  - `meta` (object) — Non-standard meta-information that can not be represented as an attribute or relationship.
- `links` (object<string, object>) — Link members related to the primary data.
  - One of:
    - **string (uri-reference)** — A string containing the link's URL.
    - **object**
      - `href` (string (uri-reference)) — Required. A string containing the link's URL.
      - `meta` (object) — Non-standard meta-information that can not be represented as an attribute or relationship.

### 404 — The resiliency policy was not found.

`application/json`

In the case of an error, a standard format error response body will be returned and the HTTP status code will be set to an error status. The response contains an object with a single error object.

- `code` (string) — Required. This is the same as the HTTP status of the response.
- `message` (string) — Required. A short description of the error.
- `status` (object) — Required. A status code that indicates the error type.
- `details` (object) — Additional details about the errors.
  - `@type` (string) — The type of error.
  - `reason` (string) — A reason for the error.
  - `domain` (string) — The domain in which the error occurred.
  - `metadata` (object) — Additional metadata about the error.

`application/vnd.api+json`

JSONAPI.org specification error response wrapper for UI.

- `error` (object) — In the case of an error, a standard format error response body will be returned and the HTTP status code will be set to an error status. The response contains an object with a single error object.
  - `code` (string) — Required. This is the same as the HTTP status of the response.
  - `message` (string) — Required. A short description of the error.
  - `status` (object) — Required. A status code that indicates the error type.
  - `details` (object) — Additional details about the errors.
    - `@type` (string) — The type of error.
    - `reason` (string) — A reason for the error.
    - `domain` (string) — The domain in which the error occurred.
    - `metadata` (object) — Additional metadata about the error.
- `meta` (object<string, object>) — Link members related to the primary data.
  - One of:
    - **string (uri-reference)** — A string containing the link's URL.
    - **object**
      - `href` (string (uri-reference)) — Required. A string containing the link's URL.
      - `meta` (object) — Non-standard meta-information that can not be represented as an attribute or relationship.
- `links` (object) — Non-standard meta-information that can not be represented as an attribute or relationship.

### default — Unexpected error.

`application/json`

In the case of an error, a standard format error response body will be returned and the HTTP status code will be set to an error status. The response contains an object with a single error object.

- `code` (string) — Required. This is the same as the HTTP status of the response.
- `message` (string) — Required. A short description of the error.
- `status` (object) — Required. A status code that indicates the error type.
- `details` (object) — Additional details about the errors.
  - `@type` (string) — The type of error.
  - `reason` (string) — A reason for the error.
  - `domain` (string) — The domain in which the error occurred.
  - `metadata` (object) — Additional metadata about the error.

`application/vnd.api+json`

JSONAPI.org specification error response wrapper for UI.

- `error` (object) — In the case of an error, a standard format error response body will be returned and the HTTP status code will be set to an error status. The response contains an object with a single error object.
  - `code` (string) — Required. This is the same as the HTTP status of the response.
  - `message` (string) — Required. A short description of the error.
  - `status` (object) — Required. A status code that indicates the error type.
  - `details` (object) — Additional details about the errors.
    - `@type` (string) — The type of error.
    - `reason` (string) — A reason for the error.
    - `domain` (string) — The domain in which the error occurred.
    - `metadata` (object) — Additional metadata about the error.
- `meta` (object<string, object>) — Link members related to the primary data.
  - One of:
    - **string (uri-reference)** — A string containing the link's URL.
    - **object**
      - `href` (string (uri-reference)) — Required. A string containing the link's URL.
      - `meta` (object) — Non-standard meta-information that can not be represented as an attribute or relationship.
- `links` (object) — Non-standard meta-information that can not be represented as an attribute or relationship.
