Create or replace a trigger

Full replacement, not a merge: fields left out are reset. version advances on every write and is recorded on the alerts the rule raises, so an alert can be traced to the exact rule that fired it.

logic is validated as json-logic. A multi-key object is treated as DATA, not as an operator invocation — that distinction matters, because ECH rules carry configuration objects inside their logic.

Recent Requests
Log in to see full request history
TimeStatusUser Agent
Retrieving recent requests…
LoadingLoading…
Path Params
string
required
string
required
Body Params
string
length ≤ 200
string
length ≤ 200
string
length between 1 and 64
constants
object
logic
object

Required unless the trigger is algorithm-bound, where it is optional: a
binding without a rule records the score and never alerts on it.

algorithm
object
inputs
object

Algorithm input name to the observation code that supplies it. Required
when algorithm is set; the names are checked against that version's
declared inputs.

number
≥ 1

How old a stored reading may be and still count toward the score. Defaults
to the algorithm's own window; may be tightened but not widened past its
ceiling.

metadata
object

Free-form routing labels. Signals does not interpret them; bulk-update
matches with jsonb containment, so any keys work.

Replaced wholesale on this route — send the whole object, or labels you omit
are dropped and the trigger stops matching the writes that relied on them.

Responses

400

The logic used a disallowed operator, or the payload failed validation.

401

Missing, malformed or unrecognised Basic credentials.

403

Authenticated, but the client's role does not permit this, or it is not attached to the patient.

404

No such patient in this tenant.

Language
Credentials
Basic
base64
:
LoadingLoading…
Response
Click Try It! to start a request and see the response here! Or choose an example:
application/json