{
  "schema_version": 2,
  "id": "operate/rs/references/rest-api/objects/bootstrap",
  "title": "Bootstrap object",
  "url": "https://redis.io/docs/latest/operate/rs/8.0/references/rest-api/objects/bootstrap/",
  "summary": "An object for bootstrap configuration",
  "content": "\nA bootstrap configuration object.\n\n| Name | Type/Value | Description |\n|------|------------|-------------|\n| action | 'create_cluster'\u003cbr /\u003e'join_cluster'\u003cbr /\u003e'recover_cluster' | Action to perform |\n| cluster | [cluster_identity](https://redis.io/docs/latest/operate/rs/references/rest-api/objects/bootstrap/cluster_identity) object | Cluster to join or create |\n| cnm_https_port | integer | Port to join a cluster with non-default cnm_https port |\n| crdb_coordinator_port | integer, (range: 1024-65535) (default: 9081) | CRDB coordinator port |\n| credentials | [credentials](https://redis.io/docs/latest/operate/rs/references/rest-api/objects/bootstrap/credentials) object | Cluster admin credentials |\n| dns_suffixes | object | Explicit configuration of DNS suffixes\u003cbr /\u003e\n[{\n  \"name\": string,\n  \"cluster_default\": boolean,\n  \"use_aaaa_ns\": boolean,\n  \"use_internal_addr\": boolean,\n  \"slaves\": array\n}, ...]\n\u003cbr /\u003e**name**: DNS suffix name\u003cbr /\u003e**cluster_default**: Should this suffix be the default cluster suffix\u003cbr /\u003e**use_aaaa_ns**: Should AAAA records be published for NS records\u003cbr /\u003e**use_internal_addr**: Should internal cluster IPs be published for databases\u003cbr /\u003e**slaves**: List of replica servers that should be published as NS and notified |\n| envoy_admin_port | integer, (range: 1024-65535) | Envoy admin port. Changing this port during runtime might result in an empty response because envoy serves as the cluster gateway.|\n| envoy_mgmt_server_port | integer, (range: 1024-65535) | Envoy management server port|\n| \u003cspan class=\"break-all\"\u003egossip_envoy_admin_port\u003c/span\u003e | integer, (range: 1024-65535) | Gossip envoy admin port (deprecated; this port is no longer used because gossip functionality is handled by the main envoy process on `envoy_admin_port`) |\n| license | string | License string. If not provided, a trial license is set by default. |\n| max_retries | integer | Max number of retries in case of recoverable errors |\n| node | [node_identity](https://redis.io/docs/latest/operate/rs/references/rest-api/objects/bootstrap/node_identity) object | Node description |\n| policy | [policy](https://redis.io/docs/latest/operate/rs/references/rest-api/objects/bootstrap/policy) object | Policy object (deprecated; use [`PUT /v1/cluster/policy`](https://redis.io/docs/latest/operate/rs/references/rest-api/requests/cluster/policy#put-cluster-policy) after cluster creation instead) |\n| recovery_filename | string | Name of backup file to recover from |\n| required_version | string | This node can only join the cluster if all nodes in the cluster have a version greater than the required_version (deprecated as of Redis Software v7.8.6) |\n| retry_time | integer | Max waiting time between retries (in seconds) |\n| user_defined_modules | array of [user_defined_module](https://redis.io/docs/latest/operate/rs/references/rest-api/objects/bootstrap/user_defined_module) objects | List of custom modules to download and install during bootstrap. Each node downloads and installs the modules independently. |\n| witness_disk | object | An API object that represents the Witness Disk bootstrap configuration |\n\n\n",
  "tags": ["docs","operate","rs"],
  "last_updated": "2026-08-24T11:13:03-07:00",
  "children": [{"id":"operate/rs/references/rest-api/objects/bootstrap/cluster_identity","summary":"Documents the cluster_identity object used with Redis Software REST API calls.","title":"Cluster identity object","url":"https://redis.io/docs/latest/operate/rs/8.0/references/rest-api/objects/bootstrap/cluster_identity/"},{"id":"operate/rs/references/rest-api/objects/bootstrap/credentials","summary":"Documents the credentials object used with Redis Software REST API calls.","title":"Credentials object","url":"https://redis.io/docs/latest/operate/rs/8.0/references/rest-api/objects/bootstrap/credentials/"},{"id":"operate/rs/references/rest-api/objects/bootstrap/identity","summary":"Documents the identity object used with Redis Software REST API calls.","title":"Identity object","url":"https://redis.io/docs/latest/operate/rs/8.0/references/rest-api/objects/bootstrap/identity/"},{"id":"operate/rs/references/rest-api/objects/bootstrap/limits","summary":"Documents the limits object used with Redis Software REST API calls.","title":"Limits object","url":"https://redis.io/docs/latest/operate/rs/8.0/references/rest-api/objects/bootstrap/limits/"},{"id":"operate/rs/references/rest-api/objects/bootstrap/node_identity","summary":"Documents the node_identity object used with Redis Software REST API calls.","title":"Node identity object","url":"https://redis.io/docs/latest/operate/rs/8.0/references/rest-api/objects/bootstrap/node_identity/"},{"id":"operate/rs/references/rest-api/objects/bootstrap/paths","summary":"Documents the paths object used with Redis Software REST API calls.","title":"Paths object","url":"https://redis.io/docs/latest/operate/rs/8.0/references/rest-api/objects/bootstrap/paths/"},{"id":"operate/rs/references/rest-api/objects/bootstrap/policy","summary":"Documents the policy object used with Redis Software REST API calls.","title":"Policy object","url":"https://redis.io/docs/latest/operate/rs/8.0/references/rest-api/objects/bootstrap/policy/"},{"id":"operate/rs/references/rest-api/objects/bootstrap/user_defined_module","summary":"An object for user-defined module configuration during bootstrap","title":"user_defined_module object","url":"https://redis.io/docs/latest/operate/rs/8.0/references/rest-api/objects/bootstrap/user_defined_module/"}]
}
