{
  "id": "proxies",
  "title": "Proxy requests",
  "url": "https://redis.io/docs/latest/operate/rs/7.8/references/rest-api/requests/proxies/",
  "summary": "Proxy requests",
  "content": "\n| Method | Path | Description |\n|--------|------|-------------|\n| [GET](#get-all-proxies) | `/v1/proxies` | Get all proxies |\n| [GET](#get-proxy) | `/v1/proxies/{uid}` | Get a proxy |\n| [PUT](#put-proxy) | `/v1/proxies/{uid}` | Update a proxy |\n| [PUT](#put-all-proxies) | `/v1/proxies` | Update all proxies |\n\n## Get all proxies {#get-all-proxies}\n\n```sh\nGET /v1/proxies\n```\n\nGet all the proxies in the cluster.\n\n### Permissions\n\n| Permission name | Roles |\n|-----------------|-------|\n| [view_all_proxies_info]() | admin\u003cbr /\u003ecluster_member\u003cbr /\u003ecluster_viewer\u003cbr /\u003edb_member\u003cbr /\u003edb_viewer\u003cbr /\u003euser_manager |\n\n### Request {#get-all-request}\n\n#### Example HTTP request\n\n```sh\nGET /v1/proxies\n```\n\n#### Headers\n\n| Key | Value | Description |\n|-----|-------|-------------|\n| Host | cnm.cluster.fqdn | Domain name |\n| Accept | application/json | Accepted media type |\n\n### Response {#get-all-response}\n\nReturns a JSON array of [proxy objects]().\n\n#### Example JSON body\n\n```json\n[\n    {\n         \"uid\": 1,\n         \"client_keepintvl\": 30,\n         \"max_worker_server_conns\": 16384,\n         \"client_keepcnt\": 6,\n         \"max_threads\": 64,\n         \"ignore_bdb_cconn_output_buff_limits\": false,\n         \"dynamic_threads_scaling\": false,\n         \"max_worker_client_conns\": 16384,\n         \"max_servers\": 4096,\n         \"client_keepidle\": 180,\n         \"duration_usage_threshold\": 30,\n         \"max_worker_txns\": 65536,\n         \"threads\": 3,\n         \"max_listeners\": 1024,\n         \"conns\": 500000,\n         \"ignore_bdb_cconn_limit\": false,\n         \"threads_usage_threshold\": 80,\n         \"backlog\": 1024\n    },\n    {\n        \"uid\": 2,\n        \"threads\": 3,\n        // additional fields...\n    }\n]\n```\n\n### Status codes {#get-all-status-codes}\n\n| Code | Description |\n|------|-------------|\n| [200 OK](http://www.w3.org/Protocols/rfc2616/rfc2616-sec10.html#sec10.2.1) | No error |\n\n## Get proxy {#get-proxy}\n\n```sh\nGET /v1/proxies/{int: uid}\n```\n\nGet a single proxy's info.\n\n### Permissions\n\n| Permission name | Roles |\n|-----------------|-------|\n| [view_proxy_info]() | admin\u003cbr /\u003ecluster_member\u003cbr /\u003ecluster_viewer\u003cbr /\u003edb_member\u003cbr /\u003edb_viewer\u003cbr /\u003euser_manager |\n\n### Request {#get-request}\n\n#### Example HTTP request\n\n```sh\nGET /v1/proxies/1\n```\n\n#### Headers\n\n| Key | Value | Description |\n|-----|-------|-------------|\n| Host | cnm.cluster.fqdn | Domain name |\n| Accept | application/json | Accepted media type |\n\n#### URL parameters\n\n| Field | Type | Description |\n|-------|------|-------------|\n| uid | integer | The proxy's unique node ID |\n\n### Response {#get-response}\n\nReturns a [proxy object]().\n\n#### Example JSON body\n\n```json\n{\n     \"uid\": 1,\n     \"client_keepintvl\": 30,\n     \"max_worker_server_conns\": 16384,\n     \"client_keepcnt\": 6,\n     \"max_threads\": 64,\n     \"ignore_bdb_cconn_output_buff_limits\": false,\n     \"dynamic_threads_scaling\": false,\n     \"max_worker_client_conns\": 16384,\n     \"max_servers\": 4096,\n     \"client_keepidle\": 180,\n     \"duration_usage_threshold\": 30,\n     \"max_worker_txns\": 65536,\n     \"threads\": 3,\n     \"max_listeners\": 1024,\n     \"conns\": 500000,\n     \"ignore_bdb_cconn_limit\": false,\n     \"threads_usage_threshold\": 80,\n     \"backlog\": 1024\n}\n```\n\n### Status codes {#get-status-codes}\n\n| Code | Description |\n|------|-------------|\n| [200 OK](http://www.w3.org/Protocols/rfc2616/rfc2616-sec10.html#sec10.2.1) | No error |\n| [404 Not Found](http://www.w3.org/Protocols/rfc2616/rfc2616-sec10.html#sec10.4.5) | Proxy UID does not exist |\n\n## Update proxy {#put-proxy}\n\n```sh\nPUT /v1/proxies/{int: uid}\n```\n\nUpdates a proxy object, notifies the proxy, and waits for acknowledgment (ACK) unless the node is dead.\n\nAutomatically restarts the proxy service if `allow_restart` is `true` and any updated parameters require a restart for the changes to take effect. For example, a restart is required if you change `threads` to a lower number.\n\nHowever, if `allow_restart` is `false`, such changes only take effect after the next proxy restart.\n\n### Permissions\n\n| Permission name | Roles |\n|-----------------|-------|\n| [update_proxy]() | admin\u003cbr /\u003euser_manager |\n\n### Request {#put-request}\n\n#### Example HTTP request\n\n```sh\nPUT /v1/proxies/1\n```\n\n#### Example JSON body\n\n```json\n{\n  \"allow_restart\": true,\n  \"proxy\": {\n    \"threads\": 8\n  }\n}\n```\n\n#### Headers\n\n| Key | Value | Description |\n|-----|-------|-------------|\n| Host | cnm.cluster.fqdn | Domain name |\n| Accept | application/json | Accepted media type |\n| Content-Type | application/json | Request body media type |\n\n#### URL parameters\n\n| Field | Type | Description |\n|-------|------|-------------|\n| uid | integer | The unique ID of the updated proxy. Corresponds to the node ID. |\n\n#### Request body\n\nInclude a JSON object in the request body. The JSON object can contain the boolean field `allow_restart` and a [proxy object]() with updated fields.\n\n### Response {#put-response}\n\nReturns a status code to indicate the success or failure of the proxy update.\n\n### Status codes {#put-status-codes}\n\n| Code | Description |\n|------|-------------|\n| [200 OK](http://www.w3.org/Protocols/rfc2616/rfc2616-sec10.html#sec10.2.1) | No error, the request has been processed |\n| [400 Bad Request](http://www.w3.org/Protocols/rfc2616/rfc2616-sec10.html#sec10.4.1) | Bad content provided |\n| [404 Not Found](http://www.w3.org/Protocols/rfc2616/rfc2616-sec10.html#sec10.4.5) | Proxy does not exist |\n| [500 Internal Server Error](https://www.w3.org/Protocols/rfc2616/rfc2616-sec10.html#sec10.5.1) | Error while waiting for confirmation from proxy |\n| [504 Gateway Timeout](https://www.w3.org/Protocols/rfc2616/rfc2616-sec10.html#sec10.5.5) | Timeout while waiting for confirmation from proxy |\n\n## Update all proxies {#put-all-proxies}\n\n```sh\nPUT /v1/proxies\n```\n\nUpdates all the proxy objects, notifies the proxies, and waits for acknowledgment (ACK) unless the node is dead.\n\nAutomatically restarts the relevant proxy services if `allow_restart` is `true` and any updated parameters require a restart for the changes to take effect.\n\nHowever, if `allow_restart` is `false`, such changes only take effect after the next proxy restart.\n\n### Permissions\n\n| Permission name | Roles |\n|-----------------|-------|\n| [update_proxy]() | admin\u003cbr /\u003euser_manager |\n\n### Request {#put-all-request}\n\n#### Example HTTP request\n\n```sh\nPUT /v1/proxies\n```\n\n#### Example JSON body\n\n```json\n{\n  \"allow_restart\": true,\n  \"proxy\": {\n    \"threads\": 8,\n    \"max_threads\": 12\n  }\n}\n```\n\n#### Headers\n\n| Key | Value | Description |\n|-----|-------|-------------|\n| Host | cnm.cluster.fqdn | Domain name |\n| Accept | application/json | Accepted media type |\n| Content-Type | application/json | Request body media type |\n\n#### Request body\n\nInclude a JSON object in the request body. The JSON object can contain the boolean field `allow_restart` and a [proxy object]() with updated fields.\n\n### Response {#put-all-response}\n\nReturns a status code to indicate the success or failure of the proxy updates.\n\n### Status codes {#put-all-status-codes}\n\n| Code | Description |\n|------|-------------|\n| [200 OK](http://www.w3.org/Protocols/rfc2616/rfc2616-sec10.html#sec10.2.1) | No error, the request has been processed |\n| [400 Bad Request](http://www.w3.org/Protocols/rfc2616/rfc2616-sec10.html#sec10.4.1) | Bad content provided |\n| [500 Internal Server Error](https://www.w3.org/Protocols/rfc2616/rfc2616-sec10.html#sec10.5.1) | Error while waiting for confirmation from proxy |\n| [504 Gateway Timeout](https://www.w3.org/Protocols/rfc2616/rfc2616-sec10.html#sec10.5.5) | Timeout while waiting for confirmation from proxy |\n",
  "tags": ["docs","operate","rs"],
  "last_updated": "2026-04-01T08:10:08-05:00",
  "children": []
}

