Skip to main content

signals

Creates, updates, deletes, gets or lists a signals resource.

Overview​

Namesignals
TypeResource
Idrailway.platform.signals

Fields​

The following fields are returned by SELECT queries:

One Signal row.

NameDatatypeDescription
idstring
namestring
created_atstring (date-time)
created_bystring
default_object
ownerstring
rulesobject
typestring (bool, json, number, string)
updated_atstring (date-time)
versionstring
writable_byarray

Methods​

The following methods are available for this resource:

NameAccessible byRequired ParamsOptional ParamsDescription
getselectnameownerFetch a single signal by owner scope and name. Backed by the Railway GraphQL query signal.
listselectownerList signals registered for an owner scope. Backed by the Railway GraphQL query signals.
createinsertdefault_, name, owner, typeRegister a new signal for an owner scope. Backed by the Railway GraphQL mutation signalCreate.
deletedeletename, ownerDelete a signal and its audit log. Backed by the Railway GraphQL mutation signalDelete.
replaceexecdefault_, name, owner, typeReplace a signal's type and default, clearing all rules. Destructive — intended for CLI --force re-type. Backed by the Railway GraphQL mutation signalReplace.
rollbackexecname, owner, seqRestore a signal to the snapshot captured before a change (reads prevState from the target change row). Backed by the Railway GraphQL mutation signalRollback.
set_defaultexecdefault_, name, ownerChange a signal's canonical default (production floor). Backed by the Railway GraphQL mutation signalDefaultSet.
set_ruleexecexpression, name, owner, rule_id, valueAttach or replace a rule on a signal. Matching rules must agree at resolution time or the default is returned. Backed by the Railway GraphQL mutation signalRuleSet.
unset_ruleexecname, owner, rule_idRemove a rule from a signal. Backed by the Railway GraphQL mutation signalRuleUnset.

Parameters​

Parameters can be passed in the WHERE clause of a query. Check the Methods section to see which parameters are required or optional for each operation.

NameDatatypeDescription
namestring
ownerstring
default_object
expressionobject
rule_idstring
seqstring
typestring(bool, json, number, string)
valueobject

SELECT examples​

Fetch a single signal by owner scope and name. Backed by the Railway GraphQL query signal.

SELECT
id,
name,
created_at,
created_by,
default_,
owner,
rules,
type,
updated_at,
version,
writable_by
FROM railway.platform.signals
WHERE name = '{{ name }}' -- required
AND owner = '{{ owner }}'
;

INSERT examples​

Register a new signal for an owner scope. Backed by the Railway GraphQL mutation signalCreate.

INSERT INTO railway.platform.signals (
default_,
name,
owner,
type,
writable_by
)
SELECT
'{{ default_ }}' /* required */,
'{{ name }}' /* required */,
'{{ owner }}' /* required */,
'{{ type }}' /* required */,
'{{ writable_by }}'
RETURNING
id,
name,
created_at,
created_by,
default_,
owner,
rules,
type,
updated_at,
version,
writable_by
;

DELETE examples​

Delete a signal and its audit log. Backed by the Railway GraphQL mutation signalDelete.

DELETE FROM railway.platform.signals
WHERE
name = '{{ name }}' --required
AND owner = '{{ owner }}' --required
;

Lifecycle Methods​

Replace a signal's type and default, clearing all rules. Destructive — intended for CLI --force re-type. Backed by the Railway GraphQL mutation signalReplace.

EXEC railway.platform.signals.replace
@default_='{{ default_ }}', --required
@name='{{ name }}', --required
@owner='{{ owner }}', --required
@type='{{ type }}' --required
;