Skip to main content
PUT
Choose the model a decision runs on

Authorizations

Authorization
string
header
required

An API key, sent as Authorization: Bearer <key>. Each operation lists the scope its key needs: decisions:evaluate (evaluate and read evaluations), decisions:feedback (your app's feedback) or decisions:develop (everything else, including owner feedback and the review queue). An operation listing no scope takes any scoped key. A key with no scope, or without the operation's, gets 403 INSUFFICIENT_SCOPE.

Headers

idempotency-key
string

Makes a retry safe. For 24 hours, the same key with the same request returns the first stored result (with Idempotent-Replayed: true); the same key with a different request is a 422 IDEMPOTENCY_KEY_REUSED. Keys are scoped to the organization and environment across every operation, so use a fresh key per request. A request that failed before its result was stored runs again when retried with its key.

Required string length: 1 - 255
Pattern: ^[\x20-\x7e]+$

Path Parameters

decision_id
string
required

A name you choose for this decision, such as refund-exception: a lowercase letter, then up to 127 of a-z 0-9 _ . -. Unique in your organization and shared by its test and production keys. The first registration or evaluation under a new one creates the decision.

Pattern: ^[a-z][a-z0-9_.-]{0,127}$

Body

application/json
model
string
required

A model id from GET /v1/models, such as jev-1.14.0. *-latest and *-preview aliases are refused; whether an id fixes the model's behavior is its pinned flag. Open: new models are added without a contract change.

Required string length: 1 - 128
Example:

"jev-1.14.0"

Response

The setting, changed or not

decision_id
string
required

A name you choose for this decision, such as refund-exception: a lowercase letter, then up to 127 of a-z 0-9 _ . -. Unique in your organization and shared by its test and production keys. The first registration or evaluation under a new one creates the decision.

Pattern: ^[a-z][a-z0-9_.-]{0,127}$
environment
enum<string>
required

The environment of the key that made the call: production or test. Evaluations, feedback, reviews and suggestions are separate per environment; decisions and their versions belong to the whole organization.

Available options:
production,
test
model
string
required

A model id from GET /v1/models, such as jev-1.14.0. *-latest and *-preview aliases are refused; whether an id fixes the model's behavior is its pinned flag. Open: new models are added without a contract change.

Required string length: 1 - 128
Example:

"jev-1.14.0"

pinned
boolean
required

Whether the model is pinned (see GET /v1/models). False when this deployment doesn't offer it.

revision
integer | null
required

Which edit of the setting this is: 1 for the first stored here, then 2, 3... Evaluations report the one they ran on as model.revision. Null when nothing is stored in this environment and the deployment default applies.

Required range: x >= 1
source
enum<string>
required

setting: a stored revision. default: none is stored here, so the deployment default applies.

Available options:
setting,
default
created_at
string<date-time> | null
required

When the revision was stored.

changed
boolean
required

False when the body matched the current revision, so nothing was written.