---
title: PingOneProtectFeedbackFailureFilter
description: Provides a feedback mechanism for actions that failed following risk evaluation with PingOne Protect. This filter registers its completion status (failure) with PingOne Protect.
component: pinggateway
version: 2026
page_id: pinggateway:reference:PingOneProtectFeedbackFailureFilter
canonical_url: https://docs.pingidentity.com/pinggateway/2026/reference/PingOneProtectFeedbackFailureFilter.html
revdate: 2024-10-29T12:58:20Z
section_ids:
  usage: Usage
  configuration: Configuration
---

# PingOneProtectFeedbackFailureFilter

Provides a feedback mechanism for actions that failed following risk evaluation with PingOne Protect. This filter registers its completion status (`failure`) with PingOne Protect.

Put this filter at a point in the route where PingGateway knows the definitive result of post-evaluation actions is failure. For example, add it to a chain just before the handler that runs on failure as shown in [PingOne Protect integration with PingGateway](../pingone/risk.html).

## Usage

```json
{
  "name": string,
  "type": "PingOneProtectFeedbackFailureFilter",
    "config": {
      "pingOneService": PingOneService reference,
      "postEvaluationAssumedRiskLevel": configuration expression<string>
  }
}
```

## Configuration

* `"pingOneService"`: *Handler [reference](preface.html#definition-reference), required*

  The [PingOneService](PingOneService.html) to access the feedback endpoint in the PingOne environment.

  If an error occurs with the request to the feedback endpoint, PingGateway passes to the next handler. The optional `"postEvaluationAssumedRiskLevel"` setting applies as configured.

* `"postEvaluationAssumedRiskLevel"`: *configuration expression<[string](preface.html#definition-string)>, optional*

  A string to override the assumed risk level managed in the local session state.

  PingGateway uses this during the `"lowRiskEvaluationThrottlePeriod"` defined in the [PingOneProtectEvaluationFilter](PingOneProtectEvaluationFilter.html) for the route to decide whether to make a risk evaluation request to PingOne Protect for the next incoming request.

  One of:

  * `low`

  * `medium`

  * `high`

  Default: don't override the risk level in the session state.
