v6.0

put

/ec-rule-designer-svc/rest/v6.0/rule/studies/{studyId}/{mode}/bulkupdate

Version 6.0 updates multiple rules in a single transaction. Compared to version 5.0 it enables the performance-optimized execution path controlled by ENABLE_PERF_IMPROVEMENT while maintaining compatibility with existing payload validation.

Request

Path Parameters
  • 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
  • Unique study identifier supplied as a UUID. Accepts either a compact 32-character hexadecimal value or a hyphenated 36-character UUID.
    Example:
    123E4567E89B12D3A456426655440000
Supported Media Types
Request Body - application/json ()
Root Schema : schema
Type: object
BulkUpdateRulesDTO with list of rules to be updated for the given rule action and operands.
Show Source
  • rules
    Collection of rules to update. Each entry must include identifiers, operands, actions, and the target state.
Nested Schema : rules
Type: array
Collection of rules to update. Each entry must include identifiers, operands, actions, and the target state.
Show Source
Example:
[
    {
        "ruleId":"82A65F8F6AAF47FFB177662E3931E7C0",
        "ruleRefName":"VISIT_WINDOW_RULE",
        "ruleExpression":"return visitDate >= baselineDate;",
        "ruleJSExpression":"return visitDate >= baselineDate;",
        "studyVersion":"26.2.0.0",
        "ruleEnabled":1,
        "ruleDeleted":0,
        "ruleVersionNumber":101,
        "ruleDescription":"Blocks visits dated before baseline",
        "ruleName":"Visit Date Validation",
        "ruleState":"draft",
        "ruleValidationStatus":"true",
        "ruleValidationMessage":"Successfully validated on 2026-03-30",
        "async":0,
        "ruleOriginalType":"user rule",
        "isLibrary":false,
        "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",
                "propertyType":"visit",
                "propertyName":"visitStartDate"
            }
        ],
        "operands":[
            {
                "eventId":"9B4AA96F48344015A259D6436EB97B47",
                "eventRefName":"SCREENING",
                "eventInstanceNumber":0,
                "formId":"39903D6C042D4D9E89773160488E6D3D",
                "formRefName":"VISIT_START",
                "itemId":"2F4F4E67E0CE4BE0BB9544D2CD38A569",
                "itemRefName":"VISIT_DATE",
                "operandName":"visitDate",
                "dataType":"Date",
                "propertyType":"visit",
                "propertyName":"visitStartDate"
            }
        ]
    }
]
Nested Schema : UpdateRuleDTOV6
Type: object
UpdateRuleDTO with list of rules and its operands.
Show Source
  • actions
    Actions associated with the rule that include property metadata (introduced in v5.0).
  • Minimum Value: 0
    Maximum Value: 1
    Execution mode. `0` runs synchronously; `1` queues asynchronous execution.
    Example: 0
  • Determines if rules belongs to library
    Example: true
  • operands
    Extended operand definitions that allow referencing additional study objects introduced in v6.0.
  • Minimum Value: 0
    Maximum Value: 1
    Deletion flag. `1` indicates the rule is marked as deleted.
    Example: 0
  • Maximum Length: 512
    Business description that helps authors understand the rule.
    Example: Validates visit date is not before baseline.
  • Minimum Value: 0
    Maximum Value: 1
    Rule enabled flag. `1` marks the rule as enabled; `0` keeps it disabled.
    Example: 1
  • Minimum Length: 1
    Maximum Length: 4000
    Human-readable expression that defines the rule logic.
    Example: AgeInYears(SMARTITEM_DOB, visitDate)
  • Minimum Length: 32
    Maximum Length: 32
    Pattern: ^[0-9A-Fa-f]{32}$
    Unique identifier of the rule in 32-character hexadecimal format.
  • Maximum Length: 8000
    Internal JavaScript representation of the rule.
    Example: function evaluate(){ return visitDate >= baselineDate; }
  • Minimum Length: 3
    Maximum Length: 128
    Display name presented in the Rule Designer UI.
    Example: Visit Date Validation
  • Minimum Length: 3
    Maximum Length: 64
    Allowed Values: [ "user rule", "smart object age", "ui_notification" ]
    Indicates where the rule was authored. `user rule` originates in the Rule Designer UI, `smart object age` refers to the legacy Smart Object rule, and `ui_notification` is produced by the notification builder.
    Example: user rule
  • Minimum Length: 3
    Maximum Length: 128
    Technical reference name of the rule.
    Example: RULE_SMART_AGE
  • Minimum Length: 4
    Maximum Length: 8
    Allowed Values: [ "draft", "uat", "approved", "publish" ]
    Lifecycle state of the rule.
    Example: draft
  • Maximum Length: 512
    Details about the most recent validation attempt.
    Example: Rule validated successfully on 2026-03-30.
  • Minimum Length: 4
    Maximum Length: 5
    Allowed Values: [ "true", "false" ]
    Indicates whether the last validation run succeeded (`true`) or failed (`false`).
    Example: true
  • Minimum Value: 0
    Maximum Value: 9999
    Monotonic version assigned to the rule definition.
    Example: 101
  • Minimum Length: 1
    Maximum Length: 32
    Pattern: ^[0-9]+(\.[0-9]+){1,3}$
    Semantic version of the study configuration that owns this rule.
    Example: 26.2.0.0
Nested Schema : actions
Type: array
Actions associated with the rule that include property metadata (introduced in v5.0).
Show Source
Example:
[
    {
        "eventId":"9B4AA96F48344015A259D6436EB97B47",
        "formId":"39903D6C042D4D9E89773160488E6D3D",
        "itemId":"2F4F4E67E0CE4BE0BB9544D2CD38A569",
        "ruleActionTypeName":"notification",
        "ruleActionOrder":1,
        "ruleActionDescription":"Notify site users when data is missing",
        "ruleActionParams":"subject=Missing data;message=Please review",
        "propertyType":"item",
        "propertyName":"VISIT_COMMENT"
    }
]
Nested Schema : operands
Type: array
Extended operand definitions that allow referencing additional study objects introduced in v6.0.
Show Source
Example:
[
    {
        "eventId":"9B4AA96F48344015A259D6436EB97B47",
        "eventRefName":"SCREENING",
        "formId":"39903D6C042D4D9E89773160488E6D3D",
        "formRefName":"VISIT_START",
        "itemId":"2F4F4E67E0CE4BE0BB9544D2CD38A569",
        "itemRefName":"VISIT_DATE",
        "operandName":"visitDate",
        "dataType":"Date",
        "propertyType":"visit",
        "propertyName":"visitStartDate"
    }
]
Nested Schema : RuleActionDTOV5
Type: object
Title: RuleActionDTOV5
Information about action for rule V5
Show Source
  • Minimum Length: 32
    Maximum Length: 32
    Pattern: ^[0-9A-Fa-f]{32}$
    Identifier of the visit/event that hosts the action.
  • Minimum Length: 1
    Maximum Length: 64
    Reference name for the visit/event.
    Example: SCREENING
  • Minimum Length: 32
    Maximum Length: 32
    Pattern: ^[0-9A-Fa-f]{32}$
    Identifier of the form impacted by the action.
  • Minimum Length: 1
    Maximum Length: 64
    Reference name for the form.
    Example: VISIT_START
  • Minimum Length: 32
    Maximum Length: 32
    Pattern: ^[0-9A-Fa-f]{32}$
    Identifier of the item updated or queried by the action.
  • Minimum Length: 1
    Maximum Length: 64
    Reference name for the item.
    Example: VISIT_DATE
  • Minimum Length: 1
    Maximum Length: 512
    Optional description that explains the action to administrators.
    Example: Raise a query when visit date is invalid.
  • Minimum Value: 0
    Maximum Value: 9999
    Sequence in which this action should execute after the rule triggers. Provide a non-negative integer.
    Example: 1
  • Minimum Length: 1
    Maximum Length: 1024
    Optional key/value parameters applied to the action.
    Example: queryMessage=Confirm visit date
  • Minimum Length: 6
    Maximum Length: 21
    Allowed 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",
    "formId":"39903D6C042D4D9E89773160488E6D3D",
    "itemId":"2F4F4E67E0CE4BE0BB9544D2CD38A569",
    "propertyType":"item",
    "propertyName":"VISIT_DATE"
}
Nested Schema : RuleOperandDTOV2
Type: object
Show Source
  • Minimum Value: 0
    Maximum Value: 999
    Sequence number of the repeating event instance. Provide a non-negative integer; omit when not applicable.
    Example: 0
  • Minimum Length: 4
    Maximum Length: 7
    Allowed Values: [ "Date", "Number", "Boolean", "Text", "Choice" ]
    Data type of the operand value. Allowed values: `Date`, `Number`, `Boolean`, `Text`, or `Choice`.
    Example: Date
  • Minimum Length: 32
    Maximum Length: 32
    Pattern: ^[0-9A-Fa-f]{32}$
    Identifier of the visit/event providing operand context.
  • Minimum Length: 1
    Maximum Length: 64
    Reference name for the visit/event supplying the operand.
    Example: SCREENING
  • Minimum Length: 32
    Maximum Length: 32
    Pattern: ^[0-9A-Fa-f]{32}$
    Identifier of the form that supplies the operand value.
  • Minimum Length: 1
    Maximum Length: 64
    Reference name for the form that hosts the operand.
    Example: VISIT_START
  • Minimum Length: 32
    Maximum Length: 32
    Pattern: ^[0-9A-Fa-f]{32}$
    Identifier of the item referenced by the operand.
  • Minimum Length: 1
    Maximum Length: 64
    Reference name for the item.
    Example: VISIT_DATE
  • Operand which defines map relation or not
    Example: N/Y
  • Minimum Length: 1
    Maximum Length: 128
    Name of the operand as referenced in the rule expression.
    Example: visitDate
  • Minimum Length: 1
    Maximum Length: 128
    Name of the study object property targeted by the operand.
    Example: visitStartDate
  • Minimum Length: 5
    Maximum Length: 5
    Allowed Values: [ "visit" ]
    Type of study object property mapped to the operand. Allowed value: `visit`.
    Example: visit
Examples

Back to Top

Response

Supported Media Types

200 Response

Bulk rule update was successful.
Body ()
Root Schema : RDSRestUnifiedResponseDTO
Type: object
Unified response entry returned when bulk operations process multiple rules.
Show Source
  • RDSRestErrorDataDTO
    Standard error structure returned by Rule Designer APIs.
  • Minimum Value: 100
    Maximum Value: 599
    HTTP status code representing the operation result for this rule.
    Example: 200
  • Minimum Length: 2
    Maximum Length: 64
    Status text associated with the HTTP code.
    Example: Success
  • Minimum Length: 32
    Maximum Length: 32
    Pattern: ^[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
  • Minimum Length: 4
    Maximum Length: 16
    Allowed 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
  • RDSRestResponseDTO
    Response from Rule Designer APIs
  • Minimum Length: 32
    Maximum Length: 32
    Pattern: ^[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
  • Minimum Length: 3
    Maximum Length: 256
    Display name of the rule.
    Example: Out of Range Visit Date
  • Minimum Length: 1
    Maximum Length: 512
    Validation outcome message generated while processing the rule.
    Example: Rule updated successfully.
  • Allowed Values: [ true, false ]
    `true` indicates that validation succeeded for the rule, while `false` captures warnings or errors.
    Example: true
Nested Schema : RDSRestErrorDataDTO
Type: object
Standard error structure returned by Rule Designer APIs.
Show Source
  • details
    Read Only: true
    Optional diagnostic information when available.
  • Read Only: true
    Minimum Length: 3
    Maximum Length: 64
    Application specific error identifier.
    Example: RuleSvc-030
  • Read Only: true
    Minimum Length: 10
    Maximum Length: 512
    Human-readable summary explaining the error.
    Example: Error encountered during rule execution. Contact your system administrator.
  • Read Only: true
    Minimum Length: 4
    Maximum Length: 4
    Successful payload content when available; remains null for error responses.
    Example: null
  • Read Only: true
    Minimum Length: 6
    Maximum Length: 6
    Allowed 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: object
Response from Rule Designer APIs
Show Source
  • result
    Read Only: true
    Maximum Number of Properties: 2000
    Result payload when the request succeeds. Structure depends on the endpoint.
  • Read Only: true
    Minimum Length: 6
    Maximum Length: 7
    Allowed 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: object
Read Only: true
Optional diagnostic information when available.
Example:
Validation failed for ruleId 8E2253D8E53A4A46BAE3E4952CBE9E5A.
Nested Schema : result
Type: object
Read Only: true
Maximum Number of Properties: 2000
Result 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.
Body ()
Root Schema : RDSRestUnifiedResponseDTO
Type: object
Unified response entry returned when bulk operations process multiple rules.
Show Source
  • RDSRestErrorDataDTO
    Standard error structure returned by Rule Designer APIs.
  • Minimum Value: 100
    Maximum Value: 599
    HTTP status code representing the operation result for this rule.
    Example: 200
  • Minimum Length: 2
    Maximum Length: 64
    Status text associated with the HTTP code.
    Example: Success
  • Minimum Length: 32
    Maximum Length: 32
    Pattern: ^[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
  • Minimum Length: 4
    Maximum Length: 16
    Allowed 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
  • RDSRestResponseDTO
    Response from Rule Designer APIs
  • Minimum Length: 32
    Maximum Length: 32
    Pattern: ^[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
  • Minimum Length: 3
    Maximum Length: 256
    Display name of the rule.
    Example: Out of Range Visit Date
  • Minimum Length: 1
    Maximum Length: 512
    Validation outcome message generated while processing the rule.
    Example: Rule updated successfully.
  • Allowed Values: [ true, false ]
    `true` indicates that validation succeeded for the rule, while `false` captures warnings or errors.
    Example: true
Nested Schema : RDSRestErrorDataDTO
Type: object
Standard error structure returned by Rule Designer APIs.
Show Source
  • details
    Read Only: true
    Optional diagnostic information when available.
  • Read Only: true
    Minimum Length: 3
    Maximum Length: 64
    Application specific error identifier.
    Example: RuleSvc-030
  • Read Only: true
    Minimum Length: 10
    Maximum Length: 512
    Human-readable summary explaining the error.
    Example: Error encountered during rule execution. Contact your system administrator.
  • Read Only: true
    Minimum Length: 4
    Maximum Length: 4
    Successful payload content when available; remains null for error responses.
    Example: null
  • Read Only: true
    Minimum Length: 6
    Maximum Length: 6
    Allowed 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: object
Response from Rule Designer APIs
Show Source
  • result
    Read Only: true
    Maximum Number of Properties: 2000
    Result payload when the request succeeds. Structure depends on the endpoint.
  • Read Only: true
    Minimum Length: 6
    Maximum Length: 7
    Allowed 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: object
Read Only: true
Optional diagnostic information when available.
Example:
Validation failed for ruleId 8E2253D8E53A4A46BAE3E4952CBE9E5A.
Nested Schema : result
Type: object
Read Only: true
Maximum Number of Properties: 2000
Result 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.
Body ()
Root Schema : RDSRestUnifiedResponseDTO
Type: object
Unified response entry returned when bulk operations process multiple rules.
Show Source
  • RDSRestErrorDataDTO
    Standard error structure returned by Rule Designer APIs.
  • Minimum Value: 100
    Maximum Value: 599
    HTTP status code representing the operation result for this rule.
    Example: 200
  • Minimum Length: 2
    Maximum Length: 64
    Status text associated with the HTTP code.
    Example: Success
  • Minimum Length: 32
    Maximum Length: 32
    Pattern: ^[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
  • Minimum Length: 4
    Maximum Length: 16
    Allowed 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
  • RDSRestResponseDTO
    Response from Rule Designer APIs
  • Minimum Length: 32
    Maximum Length: 32
    Pattern: ^[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
  • Minimum Length: 3
    Maximum Length: 256
    Display name of the rule.
    Example: Out of Range Visit Date
  • Minimum Length: 1
    Maximum Length: 512
    Validation outcome message generated while processing the rule.
    Example: Rule updated successfully.
  • Allowed Values: [ true, false ]
    `true` indicates that validation succeeded for the rule, while `false` captures warnings or errors.
    Example: true
Nested Schema : RDSRestErrorDataDTO
Type: object
Standard error structure returned by Rule Designer APIs.
Show Source
  • details
    Read Only: true
    Optional diagnostic information when available.
  • Read Only: true
    Minimum Length: 3
    Maximum Length: 64
    Application specific error identifier.
    Example: RuleSvc-030
  • Read Only: true
    Minimum Length: 10
    Maximum Length: 512
    Human-readable summary explaining the error.
    Example: Error encountered during rule execution. Contact your system administrator.
  • Read Only: true
    Minimum Length: 4
    Maximum Length: 4
    Successful payload content when available; remains null for error responses.
    Example: null
  • Read Only: true
    Minimum Length: 6
    Maximum Length: 6
    Allowed 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: object
Response from Rule Designer APIs
Show Source
  • result
    Read Only: true
    Maximum Number of Properties: 2000
    Result payload when the request succeeds. Structure depends on the endpoint.
  • Read Only: true
    Minimum Length: 6
    Maximum Length: 7
    Allowed 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: object
Read Only: true
Optional diagnostic information when available.
Example:
Validation failed for ruleId 8E2253D8E53A4A46BAE3E4952CBE9E5A.
Nested Schema : result
Type: object
Read Only: true
Maximum Number of Properties: 2000
Result payload when the request succeeds. Structure depends on the endpoint.
Example:
{
    "rules":[
    ]
}
Examples

Back to Top