Skip to content

Create a global cluster variable

POST
/v2/cluster-variables/global
curl --request POST \
--url http://localhost:8080/v2/cluster-variables/global \
--header 'Authorization: Bearer <token>' \
--header 'Content-Type: application/json' \
--data '{ "name": "PAYMENT_ENDPOINT", "value": "https://payments.example.com" }'
Available inEmbeddedBundledCluster
AuthAuthenticated Bearer token or console session with X-CSRF-Token · requires cluster-variable:create

Creates a cluster variable that every tenant’s process instances can read. value may be any JSON value except null; the answer carries it as compact JSON text. A name that already exists at global scope is refused with 409. The name must be 1 to 256 characters of ASCII letters, digits and _ ~ @ . + -; metadata, kind and any other property are refused with 400. The change applies before the answer is sent: every expression evaluated afterwards reads it. A global write changes what every tenant reads, so grant cluster-variable:create only to trusted callers. Writes one CLUSTER_VARIABLE CREATED record, or a COMMAND_REJECTION when the name exists.

x-tenant-id
string
>= 1 characters

Tenant selection. A principal bound to one tenant may omit it; if sent, it must equal that tenant (403 otherwise). A principal that may act in several tenants must send it on every request: without it the request is refused with 400, and a tenant it may not act in is refused with 403.

Idempotency-Key
string
>= 1 characters <= 200 characters

Makes a retried command safe. A repeat with the same key and the same body replays the first answer. A repeat with the same key and a different body is refused with 409.

Media typeapplication/json
object
name
required

Unique within its scope. A leading digit is allowed.

string
>= 1 characters <= 256 characters /^[a-zA-Z0-9_~@.+-]+$/
value
required

Any JSON value except null; strings (also the empty string), numbers, booleans, arrays and objects.

Example
{
"name": "PAYMENT_ENDPOINT",
"value": "https://payments.example.com"
}

The variable was created.

Media typeapplication/json
object
name
required

Unique within its scope. A leading digit is allowed.

string
>= 1 characters <= 256 characters /^[a-zA-Z0-9_~@.+-]+$/
scope
required
string
Allowed values: GLOBAL TENANT
tenantId
required

The owning tenant; null for global scope.

string | null
value
required

The whole value as compact JSON text (a string value x is "x" with its quotes).

string
Example
{
"scope": "GLOBAL"
}

The request is malformed, or it uses a property or filter this release does not support.

Media typeapplication/problem+json

An RFC 9457 problem document. type is a stable TinyConductor URN.

object
type
required
string
/^urn:bpm:error:/
title
required
string
status
required
integer
>= 400 <= 599
detail
required
string
instance
required

The request path.

string
mode

Present only on mode-not-supported. It names the engine’s mode.

string
Example
{
"type": "urn:bpm:error:invalid-argument",
"title": "Bad Request",
"status": 400,
"detail": "entity key must be a positive int64 string",
"instance": "/v2/process-instances/0"
}

No valid credential was presented.

Media typeapplication/problem+json

An RFC 9457 problem document. type is a stable TinyConductor URN.

object
type
required
string
/^urn:bpm:error:/
title
required
string
status
required
integer
>= 400 <= 599
detail
required
string
instance
required

The request path.

string
mode

Present only on mode-not-supported. It names the engine’s mode.

string
Example
{
"type": "urn:bpm:error:unauthorized",
"title": "Unauthorized",
"status": 401,
"detail": "A valid bearer credential is required",
"instance": "/v2/cluster-variables/global"
}
WWW-Authenticate
string
Allowed value: Bearer

The caller lacks the required permission, a tenant named in the request is not the caller’s tenant, or a cookie write has no valid CSRF token.

Media typeapplication/problem+json

An RFC 9457 problem document. type is a stable TinyConductor URN.

object
type
required
string
/^urn:bpm:error:/
title
required
string
status
required
integer
>= 400 <= 599
detail
required
string
instance
required

The request path.

string
mode

Present only on mode-not-supported. It names the engine’s mode.

string
Example
{
"type": "urn:bpm:error:forbidden",
"title": "Forbidden",
"status": 403,
"detail": "The principal lacks the action this route requires",
"instance": "/v2/cluster-variables/global"
}

A cluster variable of this name already exists in this scope (global, or the tenant).

Media typeapplication/problem+json

An RFC 9457 problem document. type is a stable TinyConductor URN.

object
type
required
string
/^urn:bpm:error:/
title
required
string
status
required
integer
>= 400 <= 599
detail
required
string
instance
required

The request path.

string
mode

Present only on mode-not-supported. It names the engine’s mode.

string
Example
{
"type": "urn:bpm:error:conflict",
"title": "Conflict",
"status": 409,
"detail": "The idempotency key is already associated with another request",
"instance": "/v2/cluster-variables/global"
}

The body exceeds the configured request-size bound.

Media typeapplication/problem+json

An RFC 9457 problem document. type is a stable TinyConductor URN.

object
type
required
string
/^urn:bpm:error:/
title
required
string
status
required
integer
>= 400 <= 599
detail
required
string
instance
required

The request path.

string
mode

Present only on mode-not-supported. It names the engine’s mode.

string
Example
{
"type": "urn:bpm:error:payload-too-large",
"title": "Payload Too Large",
"status": 413,
"detail": "The request exceeds the configured size limit",
"instance": "/v2/cluster-variables/global"
}

An internal failure. The details are never exposed.

Media typeapplication/problem+json

An RFC 9457 problem document. type is a stable TinyConductor URN.

object
type
required
string
/^urn:bpm:error:/
title
required
string
status
required
integer
>= 400 <= 599
detail
required
string
instance
required

The request path.

string
mode

Present only on mode-not-supported. It names the engine’s mode.

string
Example
{
"type": "urn:bpm:error:internal",
"title": "Internal Server Error",
"status": 500,
"detail": "The request could not be completed",
"instance": "/v2/cluster-variables/global"
}

Backpressure, or a dependency is not ready. Retry with the same idempotency key.

Media typeapplication/problem+json

An RFC 9457 problem document. type is a stable TinyConductor URN.

object
type
required
string
/^urn:bpm:error:/
title
required
string
status
required
integer
>= 400 <= 599
detail
required
string
instance
required

The request path.

string
mode

Present only on mode-not-supported. It names the engine’s mode.

string
Example
{
"type": "urn:bpm:error:unavailable",
"title": "Service Unavailable",
"status": 503,
"detail": "The required engine service is not ready",
"instance": "/v2/cluster-variables/global"
}