- Overview
- Get started
- Concepts
- Using UiPath CLI
- How-to guides
- CI/CD recipes
- Command reference
- Overview
- Exit codes
- Global options
- uip codedagent
- uip coder
- uip context-grounding
- uip docsai
- uip function
- uip guardrails
- uip llm-configuration
- uip llm-gateway
- uip maestro authoring
- uip maestro registry
- uip model-hub
- activities find
- activities get-default-xaml
- analyze
- analyzer-rules list
- build
- cleanup
- data-fabric-entities install
- data-fabric-entities list
- files diff
- get-library-object-repository
- get-object-repository
- init
- instances list
- pack
- packages inspect
- packages install
- packages versions
- publish
- remote
- restore
- run, debug & execution
- settings
- studio start
- templates search
- test-data add-entity
- test-data add-queue
- test-data add-variation
- tm
- uia
- validate
- workflow-examples get
- workflow-examples list
- uip tasks
- uip traces
- uip traces feedback
- Migration
- Reference & support
uip rules debug
Syntax and options for `uip rules debug`, which uploads a Business Rules project's solution to Studio Web and evaluates it once through the rules engine.
uip rules debug uploads the solution that holds a Business Rules project to Studio Web and evaluates the project once through the rules engine. It returns the decision outputs and any evaluation errors. With --explain, it also returns the ID of a trace that shows which rules fired.
The project must sit directly inside its solution folder, as uip rules init creates it. The first run writes the SolutionId that Studio Web assigns to the solution's .uipx file, so later runs overwrite the same Studio Web solution.
The command requires an authenticated session. Refer to Authentication.
Synopsis
uip rules debug <project-path> [-i <json|@file.json>] [--explain]
[--folder-path <path> | --folder-key <key>]
[--timeout <seconds>] [--login-validity <minutes>]
uip rules debug <project-path> [-i <json|@file.json>] [--explain]
[--folder-path <path> | --folder-key <key>]
[--timeout <seconds>] [--login-validity <minutes>]
Arguments
| Name | Required | Purpose |
|---|---|---|
<project-path> | yes | Path to the Business Rules project directory. The directory must contain project.uiproj. |
Options
| Short | Long | Value | Default | Description |
|---|---|---|---|---|
-i | --inputs | JSON object or @file.json | {} | Input values for the rule, as one JSON object or a path to a file that holds one, prefixed with @. |
--explain | flag | off | Publish a trace of the run and return its ID in traceId. Read the trace with uip traces spans get. | |
--folder-path | string | your personal workspace | Folder to evaluate in and to publish the --explain trace into. | |
--folder-key | GUID | your personal workspace | Key of the folder to evaluate in and to publish the --explain trace into. Cannot be combined with --folder-path. | |
--timeout | integer (1–3600) | 120 | Maximum seconds to wait for the rules engine to evaluate. | |
--login-validity | integer | 10 | Minimum minutes before token expiration that trigger a session refresh before the run. |
Examples
# Evaluate with one set of inputs and return the trace ID
uip rules debug ./LoanSolution/LoanEligibility --inputs '{"creditScore": 720}' --explain
# Read the inputs from a file and evaluate in a specific folder
uip rules debug ./LoanSolution/LoanEligibility --inputs @inputs.json --folder-path Shared
# Evaluate with one set of inputs and return the trace ID
uip rules debug ./LoanSolution/LoanEligibility --inputs '{"creditScore": 720}' --explain
# Read the inputs from a file and evaluate in a specific folder
uip rules debug ./LoanSolution/LoanEligibility --inputs @inputs.json --folder-path Shared
Data shape (--output json)
Data keys are camelCase.
{
"Code": "RulesDebug",
"Data": {
"solutionId": "30823424-33e3-405e-f21c-08df1c789a14",
"projectId": "ee8a16e8-385c-42c1-81ee-1628ab7d7cb7",
"studioWebUrl": "https://cloud.uipath.com/acme/studio_/designer/ee8a16e8-385c-42c1-81ee-1628ab7d7cb7?solutionId=30823424-33e3-405e-f21c-08df1c789a14",
"fileName": "LoanEligibility.dmn",
"stats": { "submitted": 1, "succeeded": 1, "failed": 0, "notEvaluated": 0 },
"results": [
{
"id": "1",
"decisions": [
{ "decisionName": "Eligibility", "outputs": { "eligible": true } }
]
}
],
"traceId": "499d9124f5da47462bd6535055483918"
}
}
{
"Code": "RulesDebug",
"Data": {
"solutionId": "30823424-33e3-405e-f21c-08df1c789a14",
"projectId": "ee8a16e8-385c-42c1-81ee-1628ab7d7cb7",
"studioWebUrl": "https://cloud.uipath.com/acme/studio_/designer/ee8a16e8-385c-42c1-81ee-1628ab7d7cb7?solutionId=30823424-33e3-405e-f21c-08df1c789a14",
"fileName": "LoanEligibility.dmn",
"stats": { "submitted": 1, "succeeded": 1, "failed": 0, "notEvaluated": 0 },
"results": [
{
"id": "1",
"decisions": [
{ "decisionName": "Eligibility", "outputs": { "eligible": true } }
]
}
],
"traceId": "499d9124f5da47462bd6535055483918"
}
}
traceId is present only when --explain is passed and the rules engine recorded a trace. With --explain, Instructions holds the uip traces spans get command for the trace.
Exit codes
Refer to Exit codes for the shared contract. The command exits 1 in these cases:
| Condition | ErrorCode |
|---|---|
The rules engine fails to evaluate the input. Data holds the same shape as a successful run, with the engine's errors in Data.results. | invalid_argument |
--inputs is not a JSON object, or the @file.json file cannot be read. | invalid_argument |
The project directory's parent folder holds no .uipx file. | invalid_argument |
Both --folder-path and --folder-key are passed. | invalid_argument |
The rules engine does not answer within --timeout seconds. | timeout |
| Business Rules is not enabled on the tenant. | configuration_error |
| Studio Web does not let the rules engine read the uploaded project. | permission_denied |
Related commands
uip rules validatechecks the project before the run.uip traces spans getreads the trace that--explainpublishes.uip solution uploaduploads a solution to Studio Web without evaluating it.
See also
uip rulesfor the tool overview and project layout.