universe docs source
browse docs
docs /api-reference /configurations

Configurations API

CRUD for instance configuration definitions. Configurations live in the Master Hazelcast configurations map (loaded from ./configuration/*.json) and describe how an instance is built and run. These endpoints list, read, create or update, and delete them.

A configuration is the blueprint an instance is deployed from: which runtime to use, the start command, the template tree to install, the port range to allocate from, and how many instances to keep running. Configurations are keyed by their unique name and stored in the Master’s distributed configurations map.

!
warning

All configuration endpoints require a token with ALL permission.

The Configuration object

FieldTypeDescription
namestringUnique configuration name (path key).
runtimestringRuntime provider key. Default screen.
commandstringCommand that starts the instance process.
staticbooleanWhether the working directory persists between restarts. Default false.
ramMBintegerRAM allocated in MB. Default 2048.
cpuintegerCPU units (100 = 1 core). Default 100.
instanceGroupsstring[]Groups this configuration belongs to.
nodesstring[]Node IDs allowed to host this configuration.
hostAddressstringHost address clients connect to.
availablePortsPortRangeThe min and max ports Universe scans when allocating.
minimumServiceCountintegerMinimum instances the enforcer maintains. Default 1.
environmentVariablesobjectEnvironment variables, supporting %VARIABLE% substitution.
templateInstallationConfigobjectWhich templates to install (allOf, allInGroups, oneOf, oneInGroups) and the override flag.
fileModificationsstring[]Files scanned for %VARIABLE% replacement after install.
propertiesobjectAdditional key→value pairs exposed as template variables.

List configurations

GET /api/configurations

Returns every stored configuration as a JSON array.

curl http://<master>:7000/api/configurations \
  -H "Authorization: Bearer YOUR_TOKEN"

Get a configuration

GET /api/configurations/{name}

Returns a single configuration by name.

ParameterInDescription
namepathThe configuration name. Required.
curl http://<master>:7000/api/configurations/lobby \
  -H "Authorization: Bearer YOUR_TOKEN"
i
note

A name that does not exist returns 404 Not Found.

Create or update a configuration

PUT /api/configurations/{name}

Creates the configuration if the name is new, or replaces it if it already exists. The request body is a full Configuration object. On success the endpoint returns 204 No Content with no body.

curl -X PUT http://<master>:7000/api/configurations/lobby \
  -H "Authorization: Bearer YOUR_TOKEN" \
  -H "Content-Type: application/json" \
  -d @lobby.json
tip

The name in the path is the authoritative key. Keep the name field in the body in sync with the path segment to avoid confusion when listing.

Delete a configuration

DELETE /api/configurations/{name}

Removes the configuration from the cluster. Returns 204 No Content. Existing instances already deployed from the configuration are not affected by deletion.

curl -X DELETE http://<master>:7000/api/configurations/lobby \
  -H "Authorization: Bearer YOUR_TOKEN"