[Deprecated]: v1.0
put
/ec-rule-designer-svc/rest/v1.0/rule/studies/{studyId}/{mode}/bulkupdate
Deprecated: Use latest version instead. Updates multiple rules within a study in a single transaction. Each rule entry must specify operands, actions, and the desired enabled state. Requests are validated against the supplied study mode (design or test) before any persistence changes are committed. Version 1.0 relies on the legacy synchronous engine and does not provide the performance optimizations or job identifier tracking added in versions 6.0 and 7.0.
Request
Path Parameters
-
mode(required): string
Study mode determines the data segment being managed. Allowed values: design (draft configuration workspace), test (UAT sandbox), training (sandbox for practice data), production (live subject data).Example:
test -
studyId(required): string(uuid)
Unique study identifier supplied as a UUID. Accepts either a compact 32-character hexadecimal value or a hyphenated 36-character UUID.Example:
36753A48BBA048CB98A5F3278146118D
Supported Media Types
- application/json
Root Schema : schema
Type:
objectPayload containing the rules to be updated in a single bulk request.
Show Source
-
rules: array
rules
List of rule definitions to update in a single request.
Nested Schema : rules
Type:
arrayList of rule definitions to update in a single request.
Show Source
-
Array of:
object UpdateRuleDTO
Title:
UpdateRuleDTOInformation for Updating rule
Example:
[
{
"ruleId":"82A65F8F6AAF47FFB177662E3931E7C0",
"ruleRefName":"VISIT_DATE_WINDOW",
"ruleExpression":"return visitDate >= baselineDate;",
"ruleJSExpression":"return visitDate >= baselineDate;",
"studyVersion":"26.2.0.0",
"ruleEnabled":1,
"ruleDeleted":0,
"ruleVersionNumber":101,
"ruleDescription":"Blocks visits dated before the baseline date.",
"ruleName":"Visit Date Validation",
"ruleState":"draft",
"ruleValidationStatus":"true",
"ruleValidationMessage":"Validated on 2026-03-30.",
"ruleOriginType":"user rule",
"actions":[
{
"eventId":"9B4AA96F48344015A259D6436EB97B47",
"eventRefName":"SCREENING",
"formId":"39903D6C042D4D9E89773160488E6D3D",
"formRefName":"VISIT_START",
"itemId":"2F4F4E67E0CE4BE0BB9544D2CD38A569",
"itemRefName":"VISIT_DATE",
"ruleActionTypeName":"auto query",
"ruleActionOrder":1,
"ruleActionDescription":"Raise a query when visit date is invalid.",
"ruleActionParams":"queryMessage=Confirm visit date"
}
],
"operands":[
{
"eventId":"9B4AA96F48344015A259D6436EB97B47",
"eventRefName":"SCREENING",
"eventInstanceNumber":0,
"formId":"39903D6C042D4D9E89773160488E6D3D",
"formRefName":"VISIT_START",
"itemId":"2F4F4E67E0CE4BE0BB9544D2CD38A569",
"itemRefName":"VISIT_DATE",
"propertyType":"visit",
"propertyName":"visitStartDate",
"operandName":"visitDate",
"dataType":"Date"
}
]
}
]Nested Schema : UpdateRuleDTO
Type:
objectTitle:
UpdateRuleDTOInformation for Updating rule
Show Source
-
actions: array
actions
Ordered list of actions executed when the rule evaluates to true.
-
operands: array
operands
Operands referenced within the rule expression.
-
ruleDeleted: integer
(int32)
Minimum Value:
0Maximum Value:1Soft delete flag. Use 1 to mark the rule as deleted or 0 to keep it active. Negative values are not permitted.Example:0 -
ruleDescription: string
Minimum Length:
1Maximum Length:1024Detailed description of the rule purpose.Example:Blocks visits dated before the baseline date. -
ruleEnabled: integer
(int32)
Minimum Value:
0Maximum Value:1Rule enabled flag. Use 1 to enable the rule or 0 to keep it disabled. Negative values are not permitted.Example:1 -
ruleExpression: string
Minimum Length:
1Maximum Length:4000Readable expression that defines the rule logic.Example:return visitDate >= baselineDate; -
ruleId: string
(uuid)
Minimum Length:
32Maximum Length:32Pattern:^[0-9A-Fa-f]{32}$Unique identifier of the rule being updated. Provide a 32-character hexadecimal value without separators. -
ruleJSExpression: string
Minimum Length:
1Maximum Length:4000JavaScript representation of the rule. Retain existing value when editing.Example:return visitDate >= baselineDate; -
ruleName: string
Minimum Length:
3Maximum Length:256Display name for the rule shown in the user interface.Example:Visit Date Validation -
ruleOriginType: string
Minimum Length:
6Maximum Length:32Allowed Values:[ "user rule", "smart object age", "ui_notification" ]Channel that originally created the rule. Allowed values: `user rule`, `smart object age`, or `ui_notification`.Example:user rule -
ruleRefName: string
Minimum Length:
3Maximum Length:128Pattern:^[A-Za-z0-9_]+$Internal reference name for the rule. Use alphanumeric characters and underscores without spaces.Example:VISIT_DATE_WINDOW -
ruleState: string
Minimum Length:
4Maximum Length:8Allowed Values:[ "draft", "uat", "approved", "publish" ]Lifecycle state of the rule.Example:draft -
ruleValidationMessage: string
Minimum Length:
1Maximum Length:512Message produced by the last validation attempt.Example:Validated on 2026-03-30. -
ruleValidationStatus: string
Minimum Length:
4Maximum Length:5Allowed Values:[ "true", "false" ]Result of the last validation event. Provide `true` when validation succeeded or `false` otherwise.Example:true -
ruleVersionNumber: integer
(int32)
Minimum Value:
0Maximum Value:9999Sequential rule version number. Provide a non-negative integer.Example:100 -
studyVersion: string
Minimum Length:
1Maximum Length:32Study version associated with the rule.Example:26.2.0.0
Example:
{
"ruleId":"82A65F8F6AAF47FFB177662E3931E7C0",
"ruleRefName":"VISIT_DATE_WINDOW",
"ruleExpression":"return visitDate >= baselineDate;",
"studyVersion":"26.2.0.0",
"ruleEnabled":1,
"ruleDeleted":0,
"ruleVersionNumber":101,
"ruleName":"Visit Date Validation"
}Nested Schema : actions
Type:
arrayOrdered list of actions executed when the rule evaluates to true.
Show Source
-
Array of:
object RuleActionDTO
Title:
RuleActionDTOInformation about action for rule
Example:
[
{
"eventId":"9B4AA96F48344015A259D6436EB97B47",
"formId":"39903D6C042D4D9E89773160488E6D3D",
"itemId":"2F4F4E67E0CE4BE0BB9544D2CD38A569",
"ruleActionTypeName":"auto query",
"ruleActionOrder":1
}
]Nested Schema : operands
Type:
arrayOperands referenced within the rule expression.
Show Source
-
Array of:
object RuleOperandDTO
Title:
RuleOperandDTOInformation about operands for rule
Example:
[
{
"eventId":"9B4AA96F48344015A259D6436EB97B47",
"formId":"39903D6C042D4D9E89773160488E6D3D",
"itemId":"2F4F4E67E0CE4BE0BB9544D2CD38A569",
"operandName":"visitDate",
"dataType":"Date"
}
]Nested Schema : RuleActionDTO
Type:
objectTitle:
RuleActionDTOInformation about action for rule
Show Source
-
eventId(required): string
(uuid)
Minimum Length:
32Maximum Length:32Pattern:^[0-9A-Fa-f]{32}$Identifier of the visit/event that hosts the action. -
eventRefName: string
Minimum Length:
1Maximum Length:64Reference name for the visit/event.Example:SCREENING -
formId(required): string
(uuid)
Minimum Length:
32Maximum Length:32Pattern:^[0-9A-Fa-f]{32}$Identifier of the form impacted by the action. -
formRefName: string
Minimum Length:
1Maximum Length:64Reference name for the form.Example:VISIT_START -
itemId(required): string
(uuid)
Minimum Length:
32Maximum Length:32Pattern:^[0-9A-Fa-f]{32}$Identifier of the item updated or queried by the action. -
itemRefName: string
Minimum Length:
1Maximum Length:64Reference name for the item.Example:VISIT_DATE -
ruleActionDescription: string
Minimum Length:
1Maximum Length:512Optional description that explains the action to administrators.Example:Raise a query when visit date is invalid. -
ruleActionOrder: integer
(int32)
Minimum Value:
0Maximum Value:9999Sequence in which this action should execute after the rule triggers. Provide a non-negative integer.Example:1 -
ruleActionParams: string
Minimum Length:
1Maximum Length:1024Optional key/value parameters applied to the action.Example:queryMessage=Confirm visit date -
ruleActionTypeName: string
Minimum Length:
6Maximum Length:21Allowed Values:[ "calculated values", "auto query", "assigned query", "generic calculations", "notification" ]Type of action executed when the rule fires. Allowed values: `calculated values`, `auto query`, `assigned query`, `generic calculations`, or `notification`.Example:auto query
Example:
{
"eventId":"9B4AA96F48344015A259D6436EB97B47",
"eventRefName":"SCREENING",
"formId":"39903D6C042D4D9E89773160488E6D3D",
"formRefName":"VISIT_START",
"itemId":"2F4F4E67E0CE4BE0BB9544D2CD38A569",
"itemRefName":"VISIT_DATE",
"ruleActionTypeName":"auto query",
"ruleActionOrder":0,
"ruleActionDescription":"Raise a query when visit date is missing.",
"ruleActionParams":"queryMessage=Confirm visit date"
}Nested Schema : RuleOperandDTO
Type:
objectTitle:
RuleOperandDTOInformation about operands for rule
Show Source
-
(Optional)eventInstanceNumber: integer
(int32)
Minimum Value:
0Maximum Value:999Sequence number of the repeating event instance. Provide a non-negative integer; omit when not applicable.Example:0 -
dataType: string
Minimum Length:
4Maximum Length:7Allowed Values:[ "Date", "Number", "Boolean", "Text", "Choice" ]Data type of the operand value. Allowed values: `Date`, `Number`, `Boolean`, `Text`, or `Choice`.Example:Date -
eventId(required): string
(uuid)
Minimum Length:
32Maximum Length:32Pattern:^[0-9A-Fa-f]{32}$Identifier of the visit/event providing operand context. -
eventRefName: string
Minimum Length:
1Maximum Length:64Reference name for the visit/event supplying the operand.Example:SCREENING -
formId(required): string
(uuid)
Minimum Length:
32Maximum Length:32Pattern:^[0-9A-Fa-f]{32}$Identifier of the form that supplies the operand value. -
formRefName: string
Minimum Length:
1Maximum Length:64Reference name for the form that hosts the operand.Example:VISIT_START -
itemId(required): string
(uuid)
Minimum Length:
32Maximum Length:32Pattern:^[0-9A-Fa-f]{32}$Identifier of the item referenced by the operand. -
itemRefName: string
Minimum Length:
1Maximum Length:64Reference name for the item.Example:VISIT_DATE -
operandName(required): string
Minimum Length:
1Maximum Length:128Name of the operand as referenced in the rule expression.Example:visitDate -
propertyName: string
Minimum Length:
1Maximum Length:128Name of the study object property targeted by the operand.Example:visitStartDate -
propertyType: string
Minimum Length:
5Maximum Length:5Allowed Values:[ "visit" ]Type of study object property mapped to the operand. Allowed value: `visit`.Example:visit
Example:
{
"eventId":"9B4AA96F48344015A259D6436EB97B47",
"eventRefName":"SCREENING",
"eventInstanceNumber":0,
"formId":"39903D6C042D4D9E89773160488E6D3D",
"formRefName":"VISIT_START",
"itemId":"2F4F4E67E0CE4BE0BB9544D2CD38A569",
"itemRefName":"VISIT_DATE",
"propertyType":"visit",
"propertyName":"visitStartDate",
"operandName":"visitDate",
"dataType":"Date"
}Examples
Back to Top
Response
Supported Media Types
- application/json
200 Response
Bulk rule update was successful.
Root Schema : RDSRestUnifiedResponseDTO
Type:
objectUnified response entry returned when bulk operations process multiple rules.
Show Source
-
error: object
RDSRestErrorDataDTO
Standard error structure returned by Rule Designer APIs.
-
httpErrorCode: integer
(int32)
Minimum Value:
100Maximum Value:599HTTP status code representing the operation result for this rule.Example:200 -
httpErrorMessage: string
Minimum Length:
2Maximum Length:64Status text associated with the HTTP code.Example:Success -
jobId: string
Minimum Length:
32Maximum Length:32Pattern:^[0-9A-F]{32}$Identifier of the asynchronous job triggered by the bulk action. Represented as a 32 character uppercase hexadecimal string without separators.Example:123E4567E89B12D3A456426655440001 -
jobStatus: string
Minimum Length:
4Maximum Length:16Allowed Values:[ "Success", "Failed", "Error", "InProgress", "Queued" ]Execution state of the job for this rule. `Success` indicates completion, `Failed` signals a validation problem, `Error` represents an unexpected exception, `InProgress` denotes active processing, and `Queued` means the job awaits execution.Example:Success -
result: object
RDSRestResponseDTO
Response from Rule Designer APIs
-
ruleId: string
Minimum Length:
32Maximum Length:32Pattern:^[0-9A-F]{32}$Identifier of the rule that was processed. The value is provided as a 32 character uppercase hexadecimal string without separators.Example:8E2253D8E53A4A46BAE3E4952CBE9E5A -
ruleName: string
Minimum Length:
3Maximum Length:256Display name of the rule.Example:Out of Range Visit Date -
ruleValidationMessage: string
Minimum Length:
1Maximum Length:512Validation outcome message generated while processing the rule.Example:Rule updated successfully. -
ruleValidationStatus: boolean
Allowed Values:
[ true, false ]`true` indicates that validation succeeded for the rule, while `false` captures warnings or errors.Example:true
Nested Schema : RDSRestErrorDataDTO
Type:
objectStandard error structure returned by Rule Designer APIs.
Show Source
-
details: object
details
Read Only:
trueOptional diagnostic information when available. -
errorCode: string
Read Only:
trueMinimum Length:3Maximum Length:64Application specific error identifier.Example:RuleSvc-030 -
errorMessage: string
Read Only:
trueMinimum Length:10Maximum Length:512Human-readable summary explaining the error.Example:Error encountered during rule execution. Contact your system administrator. -
result: string
Read Only:
trueMinimum Length:4Maximum Length:4Successful payload content when available; remains null for error responses.Example:null -
status: string
Read Only:
trueMinimum Length:6Maximum Length:6Allowed Values:[ "failed" ]Overall outcome indicator. `failed` means the request could not be fulfilled.Example:failed
Example:
{
"status":"failed",
"result":null,
"errorCode":"RuleSvc-030",
"errorMessage":"Error encountered during rule execution.",
"details":null
}Nested Schema : RDSRestResponseDTO
Type:
objectResponse from Rule Designer APIs
Show Source
-
result: object
result
Read Only:
trueMaximum Number of Properties:2000Result payload when the request succeeds. Structure depends on the endpoint. -
status: string
Read Only:
trueMinimum Length:6Maximum Length:7Allowed Values:[ "success", "failed" ]Overall outcome for the call. Allowed values: success, failed.Example:success
Example:
{
"status":"success",
"result":{
"message":"Rule updated successfully."
}
}Nested Schema : details
Type:
objectRead Only:
trueOptional diagnostic information when available.
Example:
Validation failed for ruleId 8E2253D8E53A4A46BAE3E4952CBE9E5A.Nested Schema : result
Type:
objectRead Only:
trueMaximum Number of Properties:
2000Result payload when the request succeeds. Structure depends on the endpoint.
Example:
{
"rules":[
]
}Examples
400 Response
Returned when the request payload is missing required fields, supplies invalid identifiers, or otherwise fails validation.
Root Schema : RDSRestUnifiedResponseDTO
Type:
objectUnified response entry returned when bulk operations process multiple rules.
Show Source
-
error: object
RDSRestErrorDataDTO
Standard error structure returned by Rule Designer APIs.
-
httpErrorCode: integer
(int32)
Minimum Value:
100Maximum Value:599HTTP status code representing the operation result for this rule.Example:200 -
httpErrorMessage: string
Minimum Length:
2Maximum Length:64Status text associated with the HTTP code.Example:Success -
jobId: string
Minimum Length:
32Maximum Length:32Pattern:^[0-9A-F]{32}$Identifier of the asynchronous job triggered by the bulk action. Represented as a 32 character uppercase hexadecimal string without separators.Example:123E4567E89B12D3A456426655440001 -
jobStatus: string
Minimum Length:
4Maximum Length:16Allowed Values:[ "Success", "Failed", "Error", "InProgress", "Queued" ]Execution state of the job for this rule. `Success` indicates completion, `Failed` signals a validation problem, `Error` represents an unexpected exception, `InProgress` denotes active processing, and `Queued` means the job awaits execution.Example:Success -
result: object
RDSRestResponseDTO
Response from Rule Designer APIs
-
ruleId: string
Minimum Length:
32Maximum Length:32Pattern:^[0-9A-F]{32}$Identifier of the rule that was processed. The value is provided as a 32 character uppercase hexadecimal string without separators.Example:8E2253D8E53A4A46BAE3E4952CBE9E5A -
ruleName: string
Minimum Length:
3Maximum Length:256Display name of the rule.Example:Out of Range Visit Date -
ruleValidationMessage: string
Minimum Length:
1Maximum Length:512Validation outcome message generated while processing the rule.Example:Rule updated successfully. -
ruleValidationStatus: boolean
Allowed Values:
[ true, false ]`true` indicates that validation succeeded for the rule, while `false` captures warnings or errors.Example:true
Nested Schema : RDSRestErrorDataDTO
Type:
objectStandard error structure returned by Rule Designer APIs.
Show Source
-
details: object
details
Read Only:
trueOptional diagnostic information when available. -
errorCode: string
Read Only:
trueMinimum Length:3Maximum Length:64Application specific error identifier.Example:RuleSvc-030 -
errorMessage: string
Read Only:
trueMinimum Length:10Maximum Length:512Human-readable summary explaining the error.Example:Error encountered during rule execution. Contact your system administrator. -
result: string
Read Only:
trueMinimum Length:4Maximum Length:4Successful payload content when available; remains null for error responses.Example:null -
status: string
Read Only:
trueMinimum Length:6Maximum Length:6Allowed Values:[ "failed" ]Overall outcome indicator. `failed` means the request could not be fulfilled.Example:failed
Example:
{
"status":"failed",
"result":null,
"errorCode":"RuleSvc-030",
"errorMessage":"Error encountered during rule execution.",
"details":null
}Nested Schema : RDSRestResponseDTO
Type:
objectResponse from Rule Designer APIs
Show Source
-
result: object
result
Read Only:
trueMaximum Number of Properties:2000Result payload when the request succeeds. Structure depends on the endpoint. -
status: string
Read Only:
trueMinimum Length:6Maximum Length:7Allowed Values:[ "success", "failed" ]Overall outcome for the call. Allowed values: success, failed.Example:success
Example:
{
"status":"success",
"result":{
"message":"Rule updated successfully."
}
}Nested Schema : details
Type:
objectRead Only:
trueOptional diagnostic information when available.
Example:
Validation failed for ruleId 8E2253D8E53A4A46BAE3E4952CBE9E5A.Nested Schema : result
Type:
objectRead Only:
trueMaximum Number of Properties:
2000Result payload when the request succeeds. Structure depends on the endpoint.
Example:
{
"rules":[
]
}Examples
500 Response
Returned when the service encounters an unexpected server-side error while processing the request.
Root Schema : RDSRestUnifiedResponseDTO
Type:
objectUnified response entry returned when bulk operations process multiple rules.
Show Source
-
error: object
RDSRestErrorDataDTO
Standard error structure returned by Rule Designer APIs.
-
httpErrorCode: integer
(int32)
Minimum Value:
100Maximum Value:599HTTP status code representing the operation result for this rule.Example:200 -
httpErrorMessage: string
Minimum Length:
2Maximum Length:64Status text associated with the HTTP code.Example:Success -
jobId: string
Minimum Length:
32Maximum Length:32Pattern:^[0-9A-F]{32}$Identifier of the asynchronous job triggered by the bulk action. Represented as a 32 character uppercase hexadecimal string without separators.Example:123E4567E89B12D3A456426655440001 -
jobStatus: string
Minimum Length:
4Maximum Length:16Allowed Values:[ "Success", "Failed", "Error", "InProgress", "Queued" ]Execution state of the job for this rule. `Success` indicates completion, `Failed` signals a validation problem, `Error` represents an unexpected exception, `InProgress` denotes active processing, and `Queued` means the job awaits execution.Example:Success -
result: object
RDSRestResponseDTO
Response from Rule Designer APIs
-
ruleId: string
Minimum Length:
32Maximum Length:32Pattern:^[0-9A-F]{32}$Identifier of the rule that was processed. The value is provided as a 32 character uppercase hexadecimal string without separators.Example:8E2253D8E53A4A46BAE3E4952CBE9E5A -
ruleName: string
Minimum Length:
3Maximum Length:256Display name of the rule.Example:Out of Range Visit Date -
ruleValidationMessage: string
Minimum Length:
1Maximum Length:512Validation outcome message generated while processing the rule.Example:Rule updated successfully. -
ruleValidationStatus: boolean
Allowed Values:
[ true, false ]`true` indicates that validation succeeded for the rule, while `false` captures warnings or errors.Example:true
Nested Schema : RDSRestErrorDataDTO
Type:
objectStandard error structure returned by Rule Designer APIs.
Show Source
-
details: object
details
Read Only:
trueOptional diagnostic information when available. -
errorCode: string
Read Only:
trueMinimum Length:3Maximum Length:64Application specific error identifier.Example:RuleSvc-030 -
errorMessage: string
Read Only:
trueMinimum Length:10Maximum Length:512Human-readable summary explaining the error.Example:Error encountered during rule execution. Contact your system administrator. -
result: string
Read Only:
trueMinimum Length:4Maximum Length:4Successful payload content when available; remains null for error responses.Example:null -
status: string
Read Only:
trueMinimum Length:6Maximum Length:6Allowed Values:[ "failed" ]Overall outcome indicator. `failed` means the request could not be fulfilled.Example:failed
Example:
{
"status":"failed",
"result":null,
"errorCode":"RuleSvc-030",
"errorMessage":"Error encountered during rule execution.",
"details":null
}Nested Schema : RDSRestResponseDTO
Type:
objectResponse from Rule Designer APIs
Show Source
-
result: object
result
Read Only:
trueMaximum Number of Properties:2000Result payload when the request succeeds. Structure depends on the endpoint. -
status: string
Read Only:
trueMinimum Length:6Maximum Length:7Allowed Values:[ "success", "failed" ]Overall outcome for the call. Allowed values: success, failed.Example:success
Example:
{
"status":"success",
"result":{
"message":"Rule updated successfully."
}
}Nested Schema : details
Type:
objectRead Only:
trueOptional diagnostic information when available.
Example:
Validation failed for ruleId 8E2253D8E53A4A46BAE3E4952CBE9E5A.Nested Schema : result
Type:
objectRead Only:
trueMaximum Number of Properties:
2000Result payload when the request succeeds. Structure depends on the endpoint.
Example:
{
"rules":[
]
}Examples