Update Circuit Breaker Settings
Overview
Updates circuit breaker settings for an API proxy. Circuit breaker prevents cascading failures by stopping requests to failing backends.
Endpoint
PATCH /apiops/projects/{projectName}/apiProxies/{apiProxyName}/settings/circuit-breaker/
Authentication
Requires a Personal API Access Token.
Header
Authorization: Bearer YOUR_TOKEN
Request
Headers
| Header | Value | Required |
|---|---|---|
| Authorization | Bearer {token} | Yes |
| Content-Type | application/json | Yes |
Path Parameters
| Parameter | Type | Required | Description |
|---|---|---|---|
| projectName | string | Yes | Project name |
| apiProxyName | string | Yes | API Proxy name |
Request Body
Full JSON Body Example
{
"circuitBreakerEnabled": true,
"errorWindow": 60,
"errorThresholdValue": 5,
"enumErrorThresholdType": "COUNT",
"sleepWindow": 30,
"halfOpenEnabled": true
}
Request Body Fields
| Field | Type | Required | Default | Description |
|---|---|---|---|---|
| circuitBreakerEnabled | boolean | No | - | Enable/disable circuit breaker |
| errorWindow | integer | No | - | Time window in seconds to count errors |
| errorThresholdValue | integer | No | - | Error threshold value (count or percentage) |
| enumErrorThresholdType | string | No | - | Error threshold type |
| sleepWindow | integer | No | - | Sleep window in seconds (circuit breaker stays open) |
| halfOpenEnabled | boolean | No | - | Enable half-open state (test requests) |
EnumErrorThresholdType
COUNT- Error threshold is a count (e.g., 5 errors)PERCENT- Error threshold is a percentage (e.g., 50% error rate)
Note: All fields are optional. Only provided fields are updated.
Response
Success Response (200 OK)
{
"success": true
}
Response Fields
| Field | Type | Description |
|---|---|---|
| success | boolean | Indicates if the request was successful |
Error Response (400 Bad Request)
{
"error": "bad_request",
"error_description": "Invalid circuit breaker settings"
}
Error Response (401 Unauthorized)
{
"error": "unauthorized_client",
"error_description": "Invalid token"
}
Error Response (404 Not Found)
{
"error": "not_found",
"error_description": "ApiProxy (name: MyAPI) was not found!"
}
cURL Example
Example 1: Enable Circuit Breaker with Count Threshold
curl -X PATCH \
"https://demo.apinizer.com/apiops/projects/MyProject/apiProxies/MyAPI/settings/circuit-breaker/" \
-H "Authorization: Bearer YOUR_TOKEN" \
-H "Content-Type: application/json" \
-d '{
"circuitBreakerEnabled": true,
"errorWindow": 60,
"errorThresholdValue": 5,
"enumErrorThresholdType": "COUNT",
"sleepWindow": 30,
"halfOpenEnabled": true
}'
Example 2: Enable Circuit Breaker with Percentage Threshold
curl -X PATCH \
"https://demo.apinizer.com/apiops/projects/MyProject/apiProxies/MyAPI/settings/circuit-breaker/" \
-H "Authorization: Bearer YOUR_TOKEN" \
-H "Content-Type: application/json" \
-d '{
"circuitBreakerEnabled": true,
"errorWindow": 120,
"errorThresholdValue": 50,
"enumErrorThresholdType": "PERCENT",
"sleepWindow": 60,
"halfOpenEnabled": false
}'
Notes and Warnings
- Error Window: Time window in seconds during which errors are counted
- Error Threshold: When threshold is reached, circuit breaker opens
- Sleep Window: Duration in seconds that circuit breaker stays open before attempting half-open
- Half-Open: When enabled, allows test requests to check if backend recovered
- Threshold Type:
COUNTuses absolute number,PERCENTuses percentage of requests - Permissions: Requires
ROLE_MANAGE_PROXIESpermission
Related Documentation
- Update Connection Settings - Update connection settings
- Get API Proxy - Get API proxy details