Skip to main content
POST
Create a rule set
Creates a named, ordered container for rules. The key is immutable and unique within the program. Omit position to append. For semantic placement, use first, last, before, or after. Relative placement requires reference_id. Every set with an applicable ACTIVE rule participates in evaluation. Set position controls execution priority only. The response includes the resulting rule_configuration_version.

Authorizations

X-API-Key
string
header
required

API key passed in the X-API-Key header.

Path Parameters

programId
string<uuid>
required

Program ID

Body

application/json

Rule-set fields

key
string
required

Immutable program-scoped key. Must start with a lowercase letter and contain only lowercase letters, numbers, hyphens, or underscores.

Minimum string length: 1
Example:

"holiday-promo"

name
string
required

Operator-facing display name.

Minimum string length: 1
Example:

"Holiday Promotion"

position
object

Semantic insertion. Omit both order and position to append.

Response

Rule set created

created_at
string<date-time>

When this rule set was created.

Example:

"2026-07-16T10:30:00Z"

id
string<uuid>

Stable rule-set identifier.

Example:

"550e8400-e29b-41d4-a716-446655440000"

key
string

Immutable program-scoped key.

Example:

"holiday-promo"

name
string

Operator-facing display name.

Example:

"Holiday Promotion"

order
integer

Execution position among participating sets; lower executes first. This does not control participation, stacking, replacement, or suppression.

Example:

1

program_id
string<uuid>

Program that owns this rule set.

Example:

"550e8400-e29b-41d4-a716-446655440001"

rule_configuration_version
integer

Resulting program rule-configuration revision. Present on mutation responses.

Example:

4

updated_at
string<date-time>

When this rule set was last modified.

Example:

"2026-07-16T10:30:00Z"