News KrakenD 3.0 Is Here: AI Router, Semantic Cache, and On-the-Fly Stream Manipulation News KrakenD Partners with CGK Solutions to Secure API Integration in Italy Case Study Every Change Reviewed, Every Peak Absorbed: Paribu's API Gateway News KrakenD CE v3.0 Released

Document updated on May 15, 2026

Fallback Proxy

The Fallback Proxy enables performing an alternative backend request when the previous one has failed. Although calling a fallback will increase the latency, there are some cases where it is preferable to call a different service so the request isn’t lost instead of returning a failure that the client would need to handle.

Fallback proxy configuration

To enable the fallback proxy, you need to add in the endpoint definition the following configuration:

{
    "endpoint": "/hotels/{id}",
    "extra_config": {
          "proxy": {
              "strategy": "fallback"
          }
      }
}
Fields of endpoint's proxy property
* required fields

strategy
Chooses the strategy to use when there is more than 1 backend. Notice that fallback value is for Enterprise only.
Possible values are: "parallel" , "sequential" , "fallback"
Defaults to "parallel"

After doing this, the backend list is treated as a prioritized list, executed one by one, where the next backend will only be executed if the current one fails.

For example imagine you have a backend that handles your register flow, but instead of failing when that backend fails for whatever reason, you want to send the otherwise failed requests to a queue to be processed in the background by using AMQP Producer component.

{
  "endpoint": "/register",
  "extra_config": {
    "proxy": {
        "strategy": "fallback"
    }
  },
  "backend": [
    {
        "url_pattern": "/__echo/register",
        "method": "POST",
        "host": [ "http://unknown" ]
    },
    {
      "host": ["amqp://guest:[email protected]:5672"],
      "disable_host_sanitize": true,
      "extra_config": {
          "backend/amqp/producer": {
              "exchange": "some-exchange",
              "durable": true,
              "delete": false,
              "no_wait": true,
              "no_local": false,
              "routing_key": "register.error",
              "mandatory": false,
              "immediate": false,
              "backoff_strategy": "exponential-jitter"
          }
      }
    }
  ]
}

Unresolved issues?

The documentation is only a piece of the help you can get! Whether you are looking for Open Source or Enterprise support, see more support channels that can help you.

See all support channels