@uipath/skills 1.201.0-preview.621 → 1.202.0-preview.635
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/.claude-plugin/marketplace.json +1 -1
- package/.claude-plugin/plugin.json +1 -1
- package/.cursor-plugin/plugin.json +1 -1
- package/CODEOWNERS +41 -29
- package/README.md +1 -0
- package/assets/skill-status.json +13 -2
- package/assets/uip-catalog-snapshot.json +95 -46
- package/package.json +2 -1
- package/skills/uipath-admin/SKILL.md +107 -197
- package/skills/uipath-admin/references/audit-commands.md +69 -120
- package/skills/uipath-admin/references/audit-workflow-guide.md +101 -152
- package/skills/uipath-admin/references/authorization/authorization-commands.md +121 -210
- package/skills/uipath-admin/references/authorization/check-access.md +39 -63
- package/skills/uipath-admin/references/authorization/grant-permissions.md +38 -49
- package/skills/uipath-admin/references/authorization/permission-catalog.md +32 -34
- package/skills/uipath-admin/references/authorization/role-assignment-management.md +96 -99
- package/skills/uipath-admin/references/authorization/role-management.md +113 -142
- package/skills/uipath-admin/references/diagnose/CAPABILITY.md +13 -14
- package/skills/uipath-admin/references/diagnose/{references/failure-modes.md → failure-modes.md} +90 -46
- package/skills/uipath-admin/references/diagnose/{references/troubleshooting-guide.md → troubleshooting-guide.md} +21 -14
- package/skills/uipath-admin/references/external-app-management.md +42 -39
- package/skills/uipath-admin/references/identity-commands.md +72 -625
- package/skills/uipath-admin/references/identity-troubleshoot-guide.md +73 -95
- package/skills/uipath-admin/references/ip-restriction/bypass-rule-management.md +25 -54
- package/skills/uipath-admin/references/ip-restriction/enforcement-management.md +19 -31
- package/skills/uipath-admin/references/ip-restriction/ip-range-management.md +48 -45
- package/skills/uipath-admin/references/ip-restriction/ip-restriction-commands.md +89 -146
- package/skills/uipath-admin/references/key-concepts.md +24 -0
- package/skills/uipath-admin/references/organization-management.md +49 -70
- package/skills/uipath-admin/references/organizations-commands.md +39 -74
- package/skills/uipath-admin/references/pat-management.md +25 -38
- package/skills/uipath-admin/references/robot-account-management.md +16 -14
- package/skills/uipath-admin/references/smtp-management.md +19 -14
- package/skills/uipath-admin/references/tenant-management.md +1 -1
- package/skills/uipath-admin/references/tenants-commands.md +82 -148
- package/skills/uipath-admin/references/user-management.md +70 -56
- package/skills/uipath-agents/SKILL.md +4 -3
- package/skills/uipath-agents/references/authentication.md +4 -3
- package/skills/uipath-agents/references/coded/capabilities/datafabric.md +465 -0
- package/skills/uipath-agents/references/coded/capabilities/guardrails/guardrails-recommend.md +5 -0
- package/skills/uipath-agents/references/coded/capabilities/guardrails/guardrails.md +2 -0
- package/skills/uipath-agents/references/coded/capabilities/human-in-the-loop.md +12 -6
- package/skills/uipath-agents/references/coded/flow-integration.md +2 -2
- package/skills/uipath-agents/references/coded/frameworks/langgraph-integration.md +48 -16
- package/skills/uipath-agents/references/coded/frameworks/openai-agents-integration.md +1 -1
- package/skills/uipath-agents/references/coded/lifecycle/deployment.md +11 -1
- package/skills/uipath-agents/references/coded/quickstart.md +11 -8
- package/skills/uipath-agents/references/lowcode/capabilities/inline-in-flow/inline-in-flow.md +3 -3
- package/skills/uipath-agents/references/lowcode/capabilities/memory/memory.md +19 -2
- package/skills/uipath-agents/references/lowcode/evaluations/evaluate.md +2 -2
- package/skills/uipath-agents/references/lowcode/evaluations/orchestrator-eval-run.md +409 -155
- package/skills/uipath-agents/references/lowcode/evaluations/running-evaluations.md +2 -2
- package/skills/uipath-agents/references/lowcode/prompting/autonomous-agent-prompting-guide.md +1 -1
- package/skills/uipath-aops/SKILL.md +313 -0
- package/skills/uipath-aops/assets/templates/pipeline-dto-template.json +15 -0
- package/skills/uipath-aops/references/discovery-flow.md +312 -0
- package/skills/uipath-aops/references/migration-guide.md +146 -0
- package/skills/uipath-aops/references/pipeline-dto-guide.md +276 -0
- package/skills/uipath-aops/references/save-and-run-guide.md +156 -0
- package/skills/uipath-api-workflow/SKILL.md +48 -6
- package/skills/uipath-api-workflow/assets/templates/file-base64-roundtrip-example.json +154 -0
- package/skills/uipath-api-workflow/assets/templates/nested-control-flow-example.json +0 -1
- package/skills/uipath-api-workflow/references/cli-reference.md +20 -1
- package/skills/uipath-api-workflow/references/expressions-and-context.md +19 -0
- package/skills/uipath-api-workflow/references/files-and-base64.md +153 -0
- package/skills/uipath-api-workflow/references/operating-published-workflows.md +3 -2
- package/skills/uipath-api-workflow/references/task-types.md +89 -3
- package/skills/uipath-api-workflow/references/testing-and-evals.md +224 -0
- package/skills/uipath-api-workflow/references/troubleshooting.md +124 -4
- package/skills/uipath-coded-apps/SKILL.md +4 -2
- package/skills/uipath-coded-apps/assets/scripts/dashboards/build-dashboard.mjs +1 -1
- package/skills/uipath-coded-apps/references/dashboards/CAPABILITY.md +11 -1
- package/skills/uipath-coded-apps/references/dashboards/plugins/build/impl.md +5 -3
- package/skills/uipath-coded-apps/references/dashboards/plugins/deploy/impl.md +1 -0
- package/skills/uipath-coded-apps/references/oauth-client-setup.md +2 -0
- package/skills/uipath-coded-apps/references/pack-publish-deploy.md +18 -0
- package/skills/uipath-coded-apps/references/sdk/orchestrator.md +4 -0
- package/skills/uipath-connector-builder/SKILL.md +7 -5
- package/skills/uipath-connector-builder/references/debugging.md +5 -1
- package/skills/uipath-connector-builder/references/element-json.md +3 -1
- package/skills/uipath-connector-builder/references/standard-resources.md +37 -6
- package/skills/uipath-functions/SKILL.md +134 -222
- package/skills/uipath-functions/references/js/authoring-guide.md +141 -0
- package/skills/uipath-functions/references/js/bindings-guide.md +120 -0
- package/skills/uipath-functions/references/js/calling-uipath-apis-guide.md +112 -0
- package/skills/uipath-functions/references/js/coded-app-wiring-guide.md +103 -0
- package/skills/uipath-functions/references/js/deployment-guide.md +109 -0
- package/skills/uipath-functions/references/js/http-semantics-guide.md +80 -0
- package/skills/uipath-functions/references/js/job-mode-guide.md +114 -0
- package/skills/uipath-functions/references/js/local-dev-guide.md +107 -0
- package/skills/uipath-functions/references/python/workflow-guide.md +224 -0
- package/skills/uipath-governance/SKILL.md +9 -8
- package/skills/uipath-governance/references/compliance-pack/catalog/impl.md +36 -8
- package/skills/uipath-governance/references/compliance-pack/coverage/impl.md +14 -12
- package/skills/uipath-governance/references/compliance-pack/disable/impl.md +5 -3
- package/skills/uipath-governance/references/compliance-pack/full-apply/impl.md +7 -5
- package/skills/uipath-governance/references/compliance-pack/partial-apply/impl.md +14 -7
- package/skills/uipath-governance/references/compliance-pack/partial-apply/planning.md +3 -1
- package/skills/uipath-governance/references/compliance-pack/preview-gate.md +1 -1
- package/skills/uipath-governance/references/compliance-pack/query/impl.md +4 -2
- package/skills/uipath-governance/references/diagnose/CAPABILITY.md +12 -12
- package/skills/uipath-governance/references/diagnose/{references/failure-modes.md → failure-modes.md} +5 -5
- package/skills/uipath-governance/references/diagnose/{references/troubleshooting-guide.md → troubleshooting-guide.md} +2 -2
- package/skills/uipath-governance/references/disambiguation-guide.md +15 -7
- package/skills/uipath-human-in-the-loop/SKILL.md +107 -9
- package/skills/uipath-human-in-the-loop/references/hitl-casetask-action.md +413 -0
- package/skills/uipath-insights/SKILL.md +21 -14
- package/skills/uipath-insights/references/alerts-reads-guide.md +242 -0
- package/skills/uipath-insights/references/filter-discovery-guide.md +1 -1
- package/skills/uipath-insights/references/jobs-commands-guide.md +2 -2
- package/skills/uipath-ixp/references/cli-reference.md +1 -1
- package/skills/uipath-ixp/references/improve-prompts-guide.md +5 -6
- package/skills/uipath-maestro-bpmn/SKILL.md +87 -15
- package/skills/uipath-maestro-bpmn/references/diagnose/CAPABILITY.md +10 -10
- package/skills/uipath-maestro-bpmn/references/diagnose/{references/troubleshooting-guide.md → troubleshooting-guide.md} +1 -1
- package/skills/uipath-maestro-bpmn/references/expression-authoring.md +12 -2
- package/skills/uipath-maestro-bpmn/references/operate/CAPABILITY.md +12 -12
- package/skills/uipath-maestro-bpmn/references/operate/{references/run.md → run.md} +2 -2
- package/skills/uipath-maestro-bpmn/references/operate/{references/ship.md → ship.md} +3 -3
- package/skills/uipath-maestro-bpmn/references/patterns/ai-decision-review-guide.md +138 -0
- package/skills/uipath-maestro-bpmn/references/patterns/approval-chain-guide.md +136 -0
- package/skills/uipath-maestro-bpmn/references/patterns/composing-guide.md +113 -0
- package/skills/uipath-maestro-bpmn/references/patterns/external-wait-guide.md +145 -0
- package/skills/uipath-maestro-bpmn/references/patterns/failure-escalation-guide.md +103 -0
- package/skills/uipath-maestro-bpmn/references/patterns/high-volume-batch-guide.md +107 -0
- package/skills/uipath-maestro-bpmn/references/patterns/queue-distribution-guide.md +129 -0
- package/skills/uipath-maestro-bpmn/references/patterns/smart-triage-guide.md +129 -0
- package/skills/uipath-maestro-bpmn/references/registry-workflow.md +15 -0
- package/skills/uipath-maestro-bpmn/references/shared/local-metadata-regeneration-guide.md +67 -36
- package/skills/uipath-maestro-bpmn/references/shared/project-layout.md +6 -5
- package/skills/uipath-maestro-bpmn/references/structural-bpmn.md +23 -5
- package/skills/uipath-maestro-bpmn/validator/bpmn-spec.json +101 -53
- package/skills/uipath-maestro-case/SKILL.md +23 -24
- package/skills/uipath-maestro-case/references/bindings-and-expressions.md +30 -17
- package/skills/uipath-maestro-case/references/bindings-v2-sync.md +5 -5
- package/skills/uipath-maestro-case/references/brownfield.md +3 -3
- package/skills/uipath-maestro-case/references/case-commands.md +8 -4
- package/skills/uipath-maestro-case/references/case-editing-operations.md +19 -19
- package/skills/uipath-maestro-case/references/case-schema.md +17 -3
- package/skills/uipath-maestro-case/references/connector-integration.md +25 -16
- package/skills/uipath-maestro-case/references/connector-trigger-impl.md +15 -15
- package/skills/uipath-maestro-case/references/connector-trigger-planning.md +32 -29
- package/skills/uipath-maestro-case/references/entry-points-sync.md +2 -1
- package/skills/uipath-maestro-case/references/evals/evals.json +11 -11
- package/skills/uipath-maestro-case/references/implementation.md +74 -44
- package/skills/uipath-maestro-case/references/phased-execution.md +23 -21
- package/skills/uipath-maestro-case/references/placeholder-tasks.md +28 -23
- package/skills/uipath-maestro-case/references/planning.md +37 -252
- package/skills/uipath-maestro-case/references/plugins/case/impl-json.md +3 -3
- package/skills/uipath-maestro-case/references/plugins/case/planning.md +8 -6
- package/skills/uipath-maestro-case/references/plugins/conditions/case-exit-conditions/impl-json.md +3 -3
- package/skills/uipath-maestro-case/references/plugins/conditions/case-exit-conditions/planning.md +11 -10
- package/skills/uipath-maestro-case/references/plugins/conditions/stage-entry-conditions/impl-json.md +6 -6
- package/skills/uipath-maestro-case/references/plugins/conditions/stage-entry-conditions/planning.md +12 -12
- package/skills/uipath-maestro-case/references/plugins/conditions/stage-exit-conditions/impl-json.md +4 -4
- package/skills/uipath-maestro-case/references/plugins/conditions/stage-exit-conditions/planning.md +10 -9
- package/skills/uipath-maestro-case/references/plugins/conditions/task-entry-conditions/impl-json.md +5 -5
- package/skills/uipath-maestro-case/references/plugins/conditions/task-entry-conditions/planning.md +16 -14
- package/skills/uipath-maestro-case/references/plugins/logging/impl-json.md +3 -3
- package/skills/uipath-maestro-case/references/plugins/sla/impl-json.md +15 -15
- package/skills/uipath-maestro-case/references/plugins/sla/planning.md +20 -21
- package/skills/uipath-maestro-case/references/plugins/stages/impl-json.md +6 -6
- package/skills/uipath-maestro-case/references/plugins/stages/planning.md +9 -9
- package/skills/uipath-maestro-case/references/plugins/tasks/action/impl-json.md +9 -9
- package/skills/uipath-maestro-case/references/plugins/tasks/action/planning.md +38 -38
- package/skills/uipath-maestro-case/references/plugins/tasks/agent/impl-json.md +3 -3
- package/skills/uipath-maestro-case/references/plugins/tasks/agent/planning.md +24 -20
- package/skills/uipath-maestro-case/references/plugins/tasks/api-workflow/impl-json.md +3 -3
- package/skills/uipath-maestro-case/references/plugins/tasks/api-workflow/planning.md +24 -20
- package/skills/uipath-maestro-case/references/plugins/tasks/case-management/impl-json.md +4 -4
- package/skills/uipath-maestro-case/references/plugins/tasks/case-management/planning.md +25 -21
- package/skills/uipath-maestro-case/references/plugins/tasks/connector-activity/impl-json.md +30 -22
- package/skills/uipath-maestro-case/references/plugins/tasks/connector-activity/planning.md +44 -28
- package/skills/uipath-maestro-case/references/plugins/tasks/connector-trigger/impl-json.md +10 -10
- package/skills/uipath-maestro-case/references/plugins/tasks/connector-trigger/planning.md +27 -23
- package/skills/uipath-maestro-case/references/plugins/tasks/create-inline-common.md +3 -3
- package/skills/uipath-maestro-case/references/plugins/tasks/process/impl-json.md +3 -3
- package/skills/uipath-maestro-case/references/plugins/tasks/process/planning.md +25 -22
- package/skills/uipath-maestro-case/references/plugins/tasks/rpa/impl-json.md +3 -3
- package/skills/uipath-maestro-case/references/plugins/tasks/rpa/planning.md +25 -21
- package/skills/uipath-maestro-case/references/plugins/tasks/wait-for-timer/impl-json.md +4 -4
- package/skills/uipath-maestro-case/references/plugins/tasks/wait-for-timer/planning.md +5 -4
- package/skills/uipath-maestro-case/references/plugins/triggers/event/impl-json.md +9 -9
- package/skills/uipath-maestro-case/references/plugins/triggers/event/planning.md +30 -19
- package/skills/uipath-maestro-case/references/plugins/triggers/manual/impl-json.md +4 -4
- package/skills/uipath-maestro-case/references/plugins/triggers/manual/planning.md +8 -7
- package/skills/uipath-maestro-case/references/plugins/triggers/timer/impl-json.md +3 -3
- package/skills/uipath-maestro-case/references/plugins/triggers/timer/planning.md +5 -4
- package/skills/uipath-maestro-case/references/plugins/variables/bindings/impl-json.md +5 -5
- package/skills/uipath-maestro-case/references/plugins/variables/global-vars/impl-json.md +7 -7
- package/skills/uipath-maestro-case/references/plugins/variables/global-vars/planning.md +21 -17
- package/skills/uipath-maestro-case/references/plugins/variables/io-binding/impl-json.md +29 -21
- package/skills/uipath-maestro-case/references/plugins/variables/io-binding/planning.md +23 -21
- package/skills/uipath-maestro-case/references/registry-discovery.md +5 -5
- package/skills/uipath-maestro-flow/.maintenance/README.md +35 -28
- package/skills/uipath-maestro-flow/.maintenance/check-anchors.sh +19 -1
- package/skills/uipath-maestro-flow/.maintenance/check-links.sh +3 -0
- package/skills/uipath-maestro-flow/.maintenance/check-plugin-pairs.sh +2 -2
- package/skills/uipath-maestro-flow/SKILL.md +66 -76
- package/skills/uipath-maestro-flow/references/author/CAPABILITY.md +75 -72
- package/skills/uipath-maestro-flow/references/author/brownfield.md +90 -0
- package/skills/uipath-maestro-flow/references/author/{references/editing-operations-cli.md → editing-operations-cli.md} +9 -4
- package/skills/uipath-maestro-flow/references/author/editing-operations-json.md +373 -0
- package/skills/uipath-maestro-flow/references/author/editing-operations.md +103 -0
- package/skills/uipath-maestro-flow/references/author/{references/greenfield.md → greenfield.md} +32 -20
- package/skills/uipath-maestro-flow/references/author/planning-arch.md +342 -0
- package/skills/uipath-maestro-flow/references/author/planning-impl.md +283 -0
- package/skills/uipath-maestro-flow/references/author/plugins/agent/impl.md +227 -0
- package/skills/uipath-maestro-flow/references/author/{references/plugins → plugins}/agent/planning.md +2 -2
- package/skills/uipath-maestro-flow/references/author/{references/plugins → plugins}/agentic-process/impl.md +2 -2
- package/skills/uipath-maestro-flow/references/author/{references/plugins → plugins}/agentic-process/planning.md +1 -1
- package/skills/uipath-maestro-flow/references/author/{references/plugins → plugins}/api-workflow/impl.md +2 -2
- package/skills/uipath-maestro-flow/references/author/{references/plugins → plugins}/api-workflow/planning.md +1 -1
- package/skills/uipath-maestro-flow/references/author/plugins/batch-transform/impl.md +171 -0
- package/skills/uipath-maestro-flow/references/author/{references/plugins → plugins}/batch-transform/planning.md +1 -1
- package/skills/uipath-maestro-flow/references/author/plugins/connector/impl.md +449 -0
- package/skills/uipath-maestro-flow/references/author/{references/plugins → plugins}/connector/planning.md +3 -3
- package/skills/uipath-maestro-flow/references/author/{references/plugins → plugins}/connector-trigger/impl.md +20 -18
- package/skills/uipath-maestro-flow/references/author/{references/plugins → plugins}/connector-trigger/planning.md +2 -2
- package/skills/uipath-maestro-flow/references/author/plugins/data-fabric/impl.md +427 -0
- package/skills/uipath-maestro-flow/references/author/plugins/data-fabric/planning.md +185 -0
- package/skills/uipath-maestro-flow/references/author/{references/plugins → plugins}/decision/impl.md +5 -0
- package/skills/uipath-maestro-flow/references/author/plugins/delay/impl.md +38 -0
- package/skills/uipath-maestro-flow/references/author/plugins/end/impl.md +56 -0
- package/skills/uipath-maestro-flow/references/author/{references/plugins → plugins}/flow/impl.md +2 -2
- package/skills/uipath-maestro-flow/references/author/plugins/hitl/impl.md +178 -0
- package/skills/uipath-maestro-flow/references/author/{references/plugins → plugins}/hitl/planning.md +14 -1
- package/skills/uipath-maestro-flow/references/author/{references/plugins → plugins}/http/impl-connector.md +4 -4
- package/skills/uipath-maestro-flow/references/author/plugins/http/impl-manual.md +68 -0
- package/skills/uipath-maestro-flow/references/author/plugins/http/impl.md +173 -0
- package/skills/uipath-maestro-flow/references/author/{references/plugins → plugins}/http/planning.md +3 -3
- package/skills/uipath-maestro-flow/references/author/{references/plugins → plugins}/inline-agent/impl.md +6 -6
- package/skills/uipath-maestro-flow/references/author/{references/plugins → plugins}/inline-agent/planning.md +1 -1
- package/skills/uipath-maestro-flow/references/author/{references/plugins → plugins}/inline-voice-agent/impl.md +4 -4
- package/skills/uipath-maestro-flow/references/author/{references/plugins → plugins}/inline-voice-agent/planning.md +1 -1
- package/skills/uipath-maestro-flow/references/author/{references/plugins → plugins}/ixp/impl.md +8 -8
- package/skills/uipath-maestro-flow/references/author/{references/plugins → plugins}/loop/impl.md +1 -1
- package/skills/uipath-maestro-flow/references/author/{references/plugins → plugins}/loop/planning.md +1 -1
- package/skills/uipath-maestro-flow/references/author/plugins/merge/impl.md +43 -0
- package/skills/uipath-maestro-flow/references/author/plugins/merge/planning.md +24 -0
- package/skills/uipath-maestro-flow/references/author/plugins/rpa/impl.md +117 -0
- package/skills/uipath-maestro-flow/references/author/{references/plugins → plugins}/rpa/planning.md +1 -1
- package/skills/uipath-maestro-flow/references/author/{references/plugins → plugins}/scheduled-trigger/impl.md +6 -8
- package/skills/uipath-maestro-flow/references/author/{references/plugins → plugins}/script/impl.md +5 -5
- package/skills/uipath-maestro-flow/references/author/{references/plugins → plugins}/script/planning.md +1 -1
- package/skills/uipath-maestro-flow/references/author/plugins/subflow/impl.md +164 -0
- package/skills/uipath-maestro-flow/references/author/{references/plugins → plugins}/subflow/planning.md +1 -1
- package/skills/uipath-maestro-flow/references/author/plugins/summarize/impl.md +189 -0
- package/skills/uipath-maestro-flow/references/author/plugins/summarize/planning.md +66 -0
- package/skills/uipath-maestro-flow/references/author/plugins/switch/planning.md +34 -0
- package/skills/uipath-maestro-flow/references/author/plugins/terminate/impl.md +48 -0
- package/skills/uipath-maestro-flow/references/author/plugins/transform/impl.md +241 -0
- package/skills/uipath-maestro-flow/references/author/{references/plugins → plugins}/transform/planning.md +1 -1
- package/skills/uipath-maestro-flow/references/diagnose/CAPABILITY.md +39 -37
- package/skills/uipath-maestro-flow/references/diagnose/{references/failure-modes.md → failure-modes.md} +22 -22
- package/skills/uipath-maestro-flow/references/diagnose/{references/troubleshooting-guide.md → troubleshooting-guide.md} +60 -1
- package/skills/uipath-maestro-flow/references/evaluate/CAPABILITY.md +27 -25
- package/skills/uipath-maestro-flow/references/evaluate/{references/commands-reference.md → commands-reference.md} +58 -7
- package/skills/uipath-maestro-flow/references/evaluate/eval-sets-guide.md +227 -0
- package/skills/uipath-maestro-flow/references/evaluate/upload-safety.md +94 -0
- package/skills/uipath-maestro-flow/references/operate/CAPABILITY.md +21 -21
- package/skills/uipath-maestro-flow/references/operate/{references/manage.md → manage.md} +4 -4
- package/skills/uipath-maestro-flow/references/operate/run.md +121 -0
- package/skills/uipath-maestro-flow/references/operate/{references/ship.md → ship.md} +5 -5
- package/skills/uipath-maestro-flow/references/shared/action-nodes.md +30 -22
- package/skills/uipath-maestro-flow/references/shared/cli-commands.md +76 -184
- package/skills/uipath-maestro-flow/references/shared/cli-conventions.md +49 -60
- package/skills/uipath-maestro-flow/references/shared/file-format.md +32 -11
- package/skills/uipath-maestro-flow/references/shared/node-output-wiring.md +49 -104
- package/skills/uipath-maestro-flow/references/shared/ux-narration-and-todos.md +66 -103
- package/skills/uipath-maestro-flow/references/shared/variables-and-expressions.md +4 -4
- package/skills/uipath-planner/SKILL.md +1 -1
- package/skills/uipath-planner/assets/templates/case/case-sdd-template.md +5 -3
- package/skills/uipath-planner/references/case/case-design-lane-guide.md +1 -1
- package/skills/uipath-planner/references/case/case-design-layers-guide.md +2 -2
- package/skills/uipath-planner/references/non-pdd-lane-guide.md +2 -1
- package/skills/uipath-planner/references/pdd-driven-lane-guide.md +3 -2
- package/skills/uipath-planner/references/sdd-generation-guide.md +1 -0
- package/skills/uipath-planner/scripts/case/audit_sdd.py +77 -1
- package/skills/uipath-platform/SKILL.md +6 -4
- package/skills/uipath-platform/references/integration-service/activities.md +7 -4
- package/skills/uipath-platform/references/integration-service/reference-resolution.md +28 -0
- package/skills/uipath-platform/references/integration-service/resources.md +11 -0
- package/skills/uipath-platform/references/integration-service/triggers.md +2 -2
- package/skills/uipath-platform/references/licensing/diagnose/CAPABILITY.md +80 -0
- package/skills/uipath-platform/references/licensing/diagnose/references/failure-modes.md +147 -0
- package/skills/uipath-platform/references/licensing/diagnose/references/troubleshooting-guide.md +125 -0
- package/skills/uipath-platform/references/licensing/licensing.md +3 -0
- package/skills/uipath-platform/references/licensing/user-licenses-allocations.md +5 -0
- package/skills/uipath-platform/references/orchestrator/run-jobs.md +11 -2
- package/skills/uipath-platform/references/traces/feedback.md +4 -4
- package/skills/uipath-platform/references/traces/traces.md +1 -1
- package/skills/uipath-process-mining/SKILL.md +6 -6
- package/skills/uipath-process-mining/references/lifecycle-and-rbac.md +10 -8
- package/skills/uipath-process-mining/references/model-editing.md +1 -1
- package/skills/uipath-process-mining/references/querying.md +4 -3
- package/skills/uipath-review/SKILL.md +171 -541
- package/skills/uipath-review/references/agents/agents-lowcode-rules.md +73 -92
- package/skills/uipath-review/references/agents/guardrails/coded-guardrails-review.md +4 -0
- package/skills/uipath-review/references/agents/guardrails/guardrails-review.md +73 -180
- package/skills/uipath-review/references/architecture-assessment-guide.md +93 -105
- package/skills/uipath-review/references/review-workflow-guide.md +1 -1
- package/skills/uipath-review/references/rpa/modern-studio-issues.md +44 -44
- package/skills/uipath-review/references/rpa/rpa-common-issues.md +251 -321
- package/skills/uipath-review/references/rpa/rpa-review-checklist.md +1 -1
- package/skills/uipath-review/references/rule-catalog-workflow.md +25 -45
- package/skills/uipath-review/references/rule-format.md +21 -21
- package/skills/uipath-rpa/.maintenance/pattern-card-maintenance.md +1 -1
- package/skills/uipath-rpa/CLAUDE.md +4 -5
- package/skills/uipath-rpa/SKILL.md +40 -246
- package/skills/uipath-rpa/references/activity-docs/UiPath.Terminal.Activities/2.10/activities/FindText.md +2 -10
- package/skills/uipath-rpa/references/activity-docs/UiPath.Terminal.Activities/2.10/activities/GetColorAtPosition.md +2 -10
- package/skills/uipath-rpa/references/activity-docs/UiPath.Terminal.Activities/2.10/activities/GetCursorPosition.md +2 -10
- package/skills/uipath-rpa/references/activity-docs/UiPath.Terminal.Activities/2.10/activities/GetField.md +13 -13
- package/skills/uipath-rpa/references/activity-docs/UiPath.Terminal.Activities/2.10/activities/GetFieldAtPosition.md +2 -10
- package/skills/uipath-rpa/references/activity-docs/UiPath.Terminal.Activities/2.10/activities/GetScreenArea.md +27 -8
- package/skills/uipath-rpa/references/activity-docs/UiPath.Terminal.Activities/2.10/activities/GetText.md +2 -14
- package/skills/uipath-rpa/references/activity-docs/UiPath.Terminal.Activities/2.10/activities/GetTextAtPosition.md +2 -10
- package/skills/uipath-rpa/references/activity-docs/UiPath.Terminal.Activities/2.10/activities/MoveCursor.md +3 -11
- package/skills/uipath-rpa/references/activity-docs/UiPath.Terminal.Activities/2.10/activities/MoveCursorToText.md +2 -10
- package/skills/uipath-rpa/references/activity-docs/UiPath.Terminal.Activities/2.10/activities/SendControlKey.md +2 -8
- package/skills/uipath-rpa/references/activity-docs/UiPath.Terminal.Activities/2.10/activities/SendKeys.md +2 -10
- package/skills/uipath-rpa/references/activity-docs/UiPath.Terminal.Activities/2.10/activities/SendKeysSecure.md +2 -10
- package/skills/uipath-rpa/references/activity-docs/UiPath.Terminal.Activities/2.10/activities/SetField.md +14 -13
- package/skills/uipath-rpa/references/activity-docs/UiPath.Terminal.Activities/2.10/activities/SetFieldAtPosition.md +4 -7
- package/skills/uipath-rpa/references/activity-docs/UiPath.Terminal.Activities/2.10/activities/TerminalSession/_common-options.md +29 -0
- package/skills/uipath-rpa/references/activity-docs/UiPath.Terminal.Activities/2.10/activities/TerminalSession/authoring-paths.md +58 -0
- package/skills/uipath-rpa/references/activity-docs/UiPath.Terminal.Activities/2.10/activities/TerminalSession.md +197 -11
- package/skills/uipath-rpa/references/activity-docs/UiPath.Terminal.Activities/2.10/activities/WaitFieldText.md +2 -10
- package/skills/uipath-rpa/references/activity-docs/UiPath.Terminal.Activities/2.10/activities/WaitScreenReady.md +9 -10
- package/skills/uipath-rpa/references/activity-docs/UiPath.Terminal.Activities/2.10/activities/WaitScreenText.md +2 -14
- package/skills/uipath-rpa/references/activity-docs/UiPath.Terminal.Activities/2.10/activities/WaitTextAtPosition.md +2 -10
- package/skills/uipath-rpa/references/activity-docs/UiPath.Terminal.Activities/2.10/activities.json +271 -0
- package/skills/uipath-rpa/references/activity-docs/UiPath.Terminal.Activities/2.10/coded/coded-api.md +61 -3
- package/skills/uipath-rpa/references/activity-docs/UiPath.Terminal.Activities/2.10/overview.md +76 -0
- package/skills/uipath-rpa/references/cli-reference.md +63 -29
- package/skills/uipath-rpa/references/coded/codedworkflow-reference.md +59 -1
- package/skills/uipath-rpa/references/coded/operations-guide.md +2 -1
- package/skills/uipath-rpa/references/debugging.md +29 -12
- package/skills/uipath-rpa/references/environment-setup.md +54 -1
- package/skills/uipath-rpa/references/execution-maps-guide.md +10 -9
- package/skills/uipath-rpa/references/legacy/activity-docs/_INVOKE-CODE.md +1 -1
- package/skills/uipath-rpa/references/uia-starter-guide.md +46 -8
- package/skills/uipath-rpa/references/xaml/common-pitfalls.md +3 -4
- package/skills/uipath-rpa/references/xaml/csharp-activity-binding-guide.md +7 -8
- package/skills/uipath-rpa/references/xaml/xaml-basics-and-rules.md +132 -42
- package/skills/uipath-solution/SKILL.md +9 -6
- package/skills/uipath-solution/references/activate-and-manage.md +11 -6
- package/skills/uipath-solution/references/develop-solution.md +39 -28
- package/skills/uipath-solution/references/pack-and-deploy.md +49 -1
- package/skills/uipath-solution/references/scenarios/failure-modes.md +1 -1
- package/skills/uipath-solution/references/scenarios/intra-solution-references.md +3 -3
- package/skills/uipath-solution/references/scenarios/manual-edits.md +1 -1
- package/skills/uipath-solution/references/scenarios.md +2 -2
- package/skills/uipath-solution/references/solution-overview.md +15 -6
- package/skills/uipath-tasks/SKILL.md +11 -6
- package/skills/uipath-tasks/references/task-assignment.md +5 -0
- package/skills/uipath-tasks/references/task-catalogs.md +7 -4
- package/skills/uipath-tasks/references/task-completion.md +3 -1
- package/skills/uipath-tasks/references/task-data.md +3 -3
- package/skills/uipath-tasks/references/task-lifecycle.md +11 -0
- package/skills/uipath-tasks/references/task-metadata.md +4 -3
- package/skills/uipath-test/SKILL.md +13 -28
- package/skills/uipath-test/references/failure-triage-guide.md +90 -0
- package/skills/uipath-test/references/playwright-first-mile-guide.md +2 -2
- package/skills/uipath-test/references/publish-and-link-guide.md +0 -1
- package/skills/uipath-test/references/test-result-report-guide.md +1 -2
- package/skills/uipath-troubleshoot/references/activity-packages/ui-automation/interpretations/healing-agent-data.md +1 -1
- package/skills/uipath-troubleshoot/references/presenting.md +1 -1
- package/skills/uipath-troubleshoot/references/products/maestro/playbooks/folder-not-accessible.md +1 -1
- package/skills/uipath-troubleshoot/references/products/maestro/playbooks/generic-error-400.md +4 -4
- package/skills/uipath-troubleshoot/references/products/maestro/playbooks/integration-service-400.md +2 -2
- package/skills/uipath-troubleshoot/references/products/maestro/playbooks/job-operation-timeout.md +1 -1
- package/skills/uipath-troubleshoot/references/products/maestro/playbooks/no-suitable-runtime-machine.md +1 -1
- package/version-manifest.json +2 -2
- package/skills/uipath-maestro-case/scripts/audit_plan.py +0 -231
- package/skills/uipath-maestro-flow/references/author/references/brownfield.md +0 -93
- package/skills/uipath-maestro-flow/references/author/references/editing-operations-json.md +0 -545
- package/skills/uipath-maestro-flow/references/author/references/editing-operations.md +0 -131
- package/skills/uipath-maestro-flow/references/author/references/planning-arch.md +0 -638
- package/skills/uipath-maestro-flow/references/author/references/planning-impl.md +0 -306
- package/skills/uipath-maestro-flow/references/author/references/plugins/agent/impl.md +0 -229
- package/skills/uipath-maestro-flow/references/author/references/plugins/batch-transform/impl.md +0 -174
- package/skills/uipath-maestro-flow/references/author/references/plugins/connector/impl.md +0 -741
- package/skills/uipath-maestro-flow/references/author/references/plugins/delay/impl.md +0 -75
- package/skills/uipath-maestro-flow/references/author/references/plugins/end/impl.md +0 -65
- package/skills/uipath-maestro-flow/references/author/references/plugins/hitl/impl.md +0 -204
- package/skills/uipath-maestro-flow/references/author/references/plugins/http/impl-manual.md +0 -65
- package/skills/uipath-maestro-flow/references/author/references/plugins/http/impl.md +0 -201
- package/skills/uipath-maestro-flow/references/author/references/plugins/merge/impl.md +0 -43
- package/skills/uipath-maestro-flow/references/author/references/plugins/merge/planning.md +0 -29
- package/skills/uipath-maestro-flow/references/author/references/plugins/rpa/impl.md +0 -121
- package/skills/uipath-maestro-flow/references/author/references/plugins/subflow/impl.md +0 -230
- package/skills/uipath-maestro-flow/references/author/references/plugins/summarize/impl.md +0 -198
- package/skills/uipath-maestro-flow/references/author/references/plugins/summarize/planning.md +0 -71
- package/skills/uipath-maestro-flow/references/author/references/plugins/switch/planning.md +0 -38
- package/skills/uipath-maestro-flow/references/author/references/plugins/terminate/impl.md +0 -48
- package/skills/uipath-maestro-flow/references/author/references/plugins/transform/impl.md +0 -287
- package/skills/uipath-maestro-flow/references/evaluate/references/eval-sets-guide.md +0 -226
- package/skills/uipath-maestro-flow/references/evaluate/references/upload-safety.md +0 -82
- package/skills/uipath-maestro-flow/references/operate/references/run.md +0 -99
- /package/skills/uipath-maestro-bpmn/references/diagnose/{references/failure-modes.md → failure-modes.md} +0 -0
- /package/skills/uipath-maestro-bpmn/references/operate/{references/manage.md → manage.md} +0 -0
- /package/skills/uipath-maestro-flow/references/author/{references/plugins → plugins}/decision/planning.md +0 -0
- /package/skills/uipath-maestro-flow/references/author/{references/plugins → plugins}/delay/planning.md +0 -0
- /package/skills/uipath-maestro-flow/references/author/{references/plugins → plugins}/end/planning.md +0 -0
- /package/skills/uipath-maestro-flow/references/author/{references/plugins → plugins}/flow/planning.md +0 -0
- /package/skills/uipath-maestro-flow/references/author/{references/plugins → plugins}/ixp/planning.md +0 -0
- /package/skills/uipath-maestro-flow/references/author/{references/plugins → plugins}/queue/impl.md +0 -0
- /package/skills/uipath-maestro-flow/references/author/{references/plugins → plugins}/queue/planning.md +0 -0
- /package/skills/uipath-maestro-flow/references/author/{references/plugins → plugins}/scheduled-trigger/planning.md +0 -0
- /package/skills/uipath-maestro-flow/references/author/{references/plugins → plugins}/switch/impl.md +0 -0
- /package/skills/uipath-maestro-flow/references/author/{references/plugins → plugins}/terminate/planning.md +0 -0
- /package/skills/uipath-maestro-flow/references/evaluate/{references/evaluators-guide.md → evaluators-guide.md} +0 -0
- /package/skills/uipath-maestro-flow/references/evaluate/{references/running-guide.md → running-guide.md} +0 -0
|
@@ -1,100 +1,112 @@
|
|
|
1
1
|
# Identity & Authorization Troubleshooting Guide
|
|
2
2
|
|
|
3
|
-
|
|
3
|
+
Investigation playbooks for identity, access, and security issues using `uip admin` commands.
|
|
4
4
|
|
|
5
5
|
> Every command assumes the user has run `uip login`. Every command uses `--output json`.
|
|
6
6
|
|
|
7
7
|
---
|
|
8
8
|
|
|
9
|
-
## Playbook 1 — "
|
|
9
|
+
## Playbook 1 — "Access denied (HTTP 403)"
|
|
10
10
|
|
|
11
|
-
**
|
|
11
|
+
**Symptoms:** A user cannot publish, receives a 403, has no access, or was assigned a role that appears to do nothing. These are one scenario, not several.
|
|
12
12
|
|
|
13
|
-
**Root causes (most → least common):**
|
|
14
|
-
1. Missing role assignment at the correct scope
|
|
15
|
-
2. Role exists but lacks the specific permission
|
|
16
|
-
3. User not in the expected group
|
|
17
|
-
4. User account disabled or not yet activated
|
|
13
|
+
**Root causes (most → least common):** the principal holds no role carrying the required permission; the permission is granted but at the wrong scope path (wrong or missing service segment, wrong scope level, wrong tenant); the user is not in the expected group; the user is disabled or not activated.
|
|
18
14
|
|
|
19
|
-
|
|
15
|
+
The canonical branch — missing permission versus mis-scoped grant — is [diagnose/failure-modes.md → Access denied](diagnose/failure-modes.md#access-denied-http-403). Steps 1 and 3 below are the identity-side checks that come first.
|
|
16
|
+
|
|
17
|
+
### Step 1 — Resolve the principal and confirm it is active
|
|
18
|
+
|
|
19
|
+
Run:
|
|
20
20
|
|
|
21
21
|
```bash
|
|
22
22
|
uip admin users list --search "<EMAIL_OR_NAME>" --output json
|
|
23
23
|
```
|
|
24
24
|
|
|
25
|
-
Extract
|
|
25
|
+
Extract `id` (GUID) and `isActive`. If `isActive` is `false`, the user is deactivated; that is the root cause — stop.
|
|
26
26
|
|
|
27
27
|
### Step 2 — Check effective access
|
|
28
28
|
|
|
29
|
+
Run:
|
|
30
|
+
|
|
29
31
|
```bash
|
|
30
32
|
uip admin authorization check-access <USER_GUID> --scope Tenant --output json
|
|
31
33
|
```
|
|
32
34
|
|
|
33
|
-
|
|
35
|
+
For folder-level access, run:
|
|
34
36
|
|
|
35
37
|
```bash
|
|
36
38
|
uip admin authorization check-access <USER_GUID> --scope Folder --folder-id <FOLDER_UUID> --output json
|
|
37
39
|
```
|
|
38
40
|
|
|
39
|
-
Inspect `Data.roleAssignments[]
|
|
40
|
-
|
|
41
|
-
### Step 3 — List current role assignments
|
|
42
|
-
|
|
43
|
-
```bash
|
|
44
|
-
uip admin authorization roles assignments list --identity-id <USER_GUID> --output json
|
|
45
|
-
```
|
|
41
|
+
Inspect `Data.roleAssignments[]`. Label every nested entry by `securityPrincipalType`: `User` with the queried id is a **direct** grant; `Group` is **inherited** through group membership. Record `roleName`, `ownerServiceName`, `scopeType`, and the grant's scope path for each granted role.
|
|
46
42
|
|
|
47
|
-
|
|
43
|
+
### Step 3 — Check group membership
|
|
48
44
|
|
|
49
|
-
|
|
45
|
+
When access is expected to arrive through a group, run:
|
|
50
46
|
|
|
51
47
|
```bash
|
|
52
48
|
uip admin groups list --output json
|
|
53
49
|
```
|
|
54
50
|
|
|
55
|
-
For each relevant group,
|
|
51
|
+
For each relevant group, run:
|
|
56
52
|
|
|
57
53
|
```bash
|
|
58
54
|
uip admin groups members list <GROUP_ID> --output json
|
|
59
55
|
```
|
|
60
56
|
|
|
57
|
+
If the user is absent from the group that carries the role, the gap is membership — not the role or its scope.
|
|
58
|
+
|
|
59
|
+
### Step 4 — Branch: missing permission, or right permission at the wrong scope
|
|
60
|
+
|
|
61
|
+
Look up the permission the denied action requires ([permission-catalog.md](authorization/permission-catalog.md#workflow-find-the-permission-governing-an-action)), then take the branch:
|
|
62
|
+
|
|
63
|
+
- **No effective role carries it** → [Cause A](diagnose/failure-modes.md#cause-a--the-permission-is-not-granted). Find a role that does with `roles list --service <SERVICE>` and `roles get <ROLE_ID>` (compare `ActionDetails[].Name`). To extend a custom role instead, re-fetch first and send the full action set — `roles update` is a PUT-style upsert (Rule 12).
|
|
64
|
+
- **A role carries it but the grant sits elsewhere** → [Cause B](diagnose/failure-modes.md#cause-b--the-permission-is-granted-at-the-wrong-scope). Verify `ownerServiceName` against the scope-path service segment (Rule 17). A `Tenant` role cannot provide folder-level access: use a `Project`-scoped role, or Orchestrator's own folder roles (`uip or roles`, `uipath-platform`).
|
|
65
|
+
|
|
61
66
|
### Step 5 — Diagnose and recommend
|
|
62
67
|
|
|
63
|
-
|
|
68
|
+
Report:
|
|
64
69
|
- **Principal:** `<displayName> (<email>) — <id>`
|
|
65
|
-
- **Current access:**
|
|
66
|
-
- **Missing:**
|
|
67
|
-
- **Fix:** "Assign role X at scope Y"
|
|
70
|
+
- **Current access:** roles, scopes, and whether each is direct or inherited
|
|
71
|
+
- **Missing:** the required permission, or the scope path the existing grant should sit at
|
|
72
|
+
- **Fix:** "Assign role X at scope Y", "Add user to group Z", or "Re-create the assignment at `<path>`" — present it; do not execute it
|
|
68
73
|
|
|
69
74
|
---
|
|
70
75
|
|
|
71
76
|
## Playbook 2 — "Suspicious login activity"
|
|
72
77
|
|
|
73
|
-
**
|
|
78
|
+
**Symptoms:** Failed logins, possible compromise, or unknown locations.
|
|
74
79
|
|
|
75
|
-
**Scope: `org`.**
|
|
80
|
+
**Scope: `org`.** User Login, Robot Login, and External App Login events are org-level audit events under Identity → Authentication.
|
|
76
81
|
|
|
77
82
|
### Step 1 — Resolve the user
|
|
78
83
|
|
|
84
|
+
Run:
|
|
85
|
+
|
|
79
86
|
```bash
|
|
80
87
|
uip admin users list --search "<EMAIL>" --output json
|
|
81
88
|
```
|
|
82
89
|
|
|
83
|
-
Extract
|
|
90
|
+
Extract `id` for `--user-id`.
|
|
84
91
|
|
|
85
92
|
### Step 2 — Discover login event types
|
|
86
93
|
|
|
94
|
+
Run:
|
|
95
|
+
|
|
87
96
|
```bash
|
|
88
97
|
uip admin audit org sources --output json > /tmp/sources.json
|
|
89
98
|
```
|
|
90
99
|
|
|
91
|
-
Extract the User Login type GUID:
|
|
100
|
+
Extract the User Login type GUID by running:
|
|
101
|
+
|
|
92
102
|
```bash
|
|
93
103
|
jq -r '.Data[] | select(.name == "Identity") | .eventTargets[] | select(.name == "Authentication") | .eventTypes[] | select(.name == "User Login") | .id' /tmp/sources.json
|
|
94
104
|
```
|
|
95
105
|
|
|
96
106
|
### Step 3 — Query login events
|
|
97
107
|
|
|
108
|
+
Run:
|
|
109
|
+
|
|
98
110
|
```bash
|
|
99
111
|
uip admin audit org events \
|
|
100
112
|
--user-id <USER_GUID> \
|
|
@@ -107,131 +119,97 @@ uip admin audit org events \
|
|
|
107
119
|
|
|
108
120
|
### Step 4 — Analyze
|
|
109
121
|
|
|
110
|
-
For each
|
|
111
|
-
- `status` — `0` = Success, `1` = Failure
|
|
112
|
-
- `clientInfo` — parse JSON string for `ipAddress` and `ipCountry`
|
|
113
|
-
- `createdOn` — timestamp (UTC)
|
|
114
|
-
|
|
115
|
-
Flag: multiple failures from different IPs, logins from unexpected countries, or logins outside business hours.
|
|
122
|
+
For each `Data.auditEvents[]`, check `status` (`0` = Success, `1` = Failure), parse the `clientInfo` JSON string for `ipAddress` and `ipCountry`, and use `createdOn` as the UTC timestamp. Flag multiple failures from different IPs, unexpected countries, or logins outside business hours.
|
|
116
123
|
|
|
117
124
|
---
|
|
118
125
|
|
|
119
|
-
## Playbook 3 — "
|
|
120
|
-
|
|
121
|
-
**Symptom:** "Custom role doesn't grant what it should" / "User has a role but still can't do X"
|
|
126
|
+
## Playbook 3 — "IP restriction lockout"
|
|
122
127
|
|
|
123
|
-
|
|
124
|
-
|
|
125
|
-
```bash
|
|
126
|
-
uip admin authorization roles list --output json
|
|
127
|
-
```
|
|
128
|
-
|
|
129
|
-
Find the role by name, then:
|
|
130
|
-
|
|
131
|
-
```bash
|
|
132
|
-
uip admin authorization roles get <ROLE_ID> --output json
|
|
133
|
-
```
|
|
134
|
-
|
|
135
|
-
Check `actions[]` — these are the permission strings (e.g., `OR.Folders.Create`). Compare against the Permission Catalog:
|
|
136
|
-
|
|
137
|
-
```bash
|
|
138
|
-
uip admin authorization permissions list --service <SERVICE> --output json
|
|
139
|
-
```
|
|
140
|
-
|
|
141
|
-
### Step 2 — Verify scope alignment
|
|
142
|
-
|
|
143
|
-
The role's `scopeType` (Organization / TenantGlobal / Tenant / Project) must match the assignment scope. A role scoped to `Organization` cannot be assigned at `Folder` scope. Check the assignment:
|
|
144
|
-
|
|
145
|
-
```bash
|
|
146
|
-
uip admin authorization roles assignments list --identity-id <USER_GUID> --output json
|
|
147
|
-
```
|
|
148
|
-
|
|
149
|
-
Verify `ownerServiceName` matches the scope-path service segment (Rule 17 from SKILL.md).
|
|
150
|
-
|
|
151
|
-
### Step 3 — Diagnose
|
|
152
|
-
|
|
153
|
-
Common misconfigurations:
|
|
154
|
-
- **Scope mismatch:** role is `Tenant` but user needs folder-level access → create a `Project`-scoped role or use Orchestrator folder roles instead (`uip or roles`)
|
|
155
|
-
- **Missing actions:** role omits required permissions → `roles update` with the full action set (re-fetch first — Rule 12)
|
|
156
|
-
- **Wrong service:** role's `ownerServiceName` doesn't match the target service
|
|
157
|
-
|
|
158
|
-
---
|
|
159
|
-
|
|
160
|
-
## Playbook 4 — "IP restriction lockout"
|
|
161
|
-
|
|
162
|
-
**Symptom:** "Can't access the platform from new office" / "All users blocked" / "IP restriction locked us out"
|
|
128
|
+
**Symptoms:** Access fails from a new office or all users are blocked.
|
|
163
129
|
|
|
164
130
|
### Step 1 — Check enforcement status
|
|
165
131
|
|
|
132
|
+
Run:
|
|
133
|
+
|
|
166
134
|
```bash
|
|
167
135
|
uip admin ip-restriction enforcement get --output json
|
|
168
136
|
```
|
|
169
137
|
|
|
170
|
-
If `isEnabled` is `false`,
|
|
138
|
+
If `isEnabled` is `false`, investigate another cause.
|
|
171
139
|
|
|
172
140
|
### Step 2 — Check caller's IP
|
|
173
141
|
|
|
142
|
+
Run:
|
|
143
|
+
|
|
174
144
|
```bash
|
|
175
145
|
uip admin ip-restriction my-ip --output json
|
|
176
146
|
```
|
|
177
147
|
|
|
178
|
-
|
|
148
|
+
Use `Data.ipAddress` as the public IP seen by the platform.
|
|
179
149
|
|
|
180
150
|
### Step 3 — List allowed ranges
|
|
181
151
|
|
|
152
|
+
Run:
|
|
153
|
+
|
|
182
154
|
```bash
|
|
183
155
|
uip admin ip-restriction ip-ranges list --output json
|
|
184
156
|
```
|
|
185
157
|
|
|
186
|
-
Compare the caller's IP
|
|
158
|
+
Compare the caller's IP with every entry's CIDR range. If none covers it, identify that as the lockout cause.
|
|
187
159
|
|
|
188
160
|
### Step 4 — Check bypass rules
|
|
189
161
|
|
|
162
|
+
Run:
|
|
163
|
+
|
|
190
164
|
```bash
|
|
191
165
|
uip admin ip-restriction bypass-rules list --output json
|
|
192
166
|
```
|
|
193
167
|
|
|
194
|
-
Bypass rules exempt
|
|
168
|
+
Bypass rules exempt matching URL patterns. If the affected API endpoint matches one, investigate another cause.
|
|
195
169
|
|
|
196
170
|
### Step 5 — Resolution options
|
|
197
171
|
|
|
198
|
-
-
|
|
199
|
-
-
|
|
200
|
-
-
|
|
172
|
+
- Add the IP/CIDR by running: `ip-ranges create --name "<LOCATION>" --cidr <CIDR> --output json`
|
|
173
|
+
- Temporarily disable enforcement by running: `ip-restriction enforcement disable --output json` (if accessible from an allowed IP)
|
|
174
|
+
- If fully locked out, use the Portal recovery flow; no CLI bypass exists (Rule 32).
|
|
201
175
|
|
|
202
176
|
---
|
|
203
177
|
|
|
204
|
-
## Playbook
|
|
178
|
+
## Playbook 4 — "PAT or external app not working"
|
|
205
179
|
|
|
206
|
-
**
|
|
180
|
+
**Symptoms:** API calls return 401, a PAT stopped working, or an external app cannot authenticate.
|
|
207
181
|
|
|
208
182
|
### Step 1 — List PATs or external apps
|
|
209
183
|
|
|
210
|
-
For PATs:
|
|
184
|
+
For PATs, run:
|
|
185
|
+
|
|
211
186
|
```bash
|
|
212
187
|
uip admin pat list --output json
|
|
213
188
|
```
|
|
214
189
|
|
|
215
|
-
Check `expiration
|
|
190
|
+
Check `expiration`; expired PATs return 401 silently. If a token is absent, it was revoked; revocation is a hard delete and has no `isRevoked` flag.
|
|
191
|
+
|
|
192
|
+
For external apps, run:
|
|
216
193
|
|
|
217
|
-
For external apps:
|
|
218
194
|
```bash
|
|
219
195
|
uip admin external-apps list --output json
|
|
220
196
|
```
|
|
221
197
|
|
|
222
198
|
### Step 2 — Verify scopes
|
|
223
199
|
|
|
224
|
-
|
|
225
|
-
|
|
226
|
-
For external apps, check the declared scopes against the API endpoint's requirement. For PATs, re-create with the correct `--scope`.
|
|
200
|
+
Compare token or app scopes with the endpoint requirement. For example, an endpoint requiring `OR.Execution` fails when the token has only `OR.Folders.Read`. Re-create a PAT with the correct `--scope`.
|
|
227
201
|
|
|
228
202
|
### Step 3 — Check audit for revocation
|
|
229
203
|
|
|
230
|
-
|
|
204
|
+
Discover sources by running:
|
|
231
205
|
|
|
232
206
|
```bash
|
|
233
207
|
uip admin audit org sources --output json
|
|
234
|
-
|
|
208
|
+
```
|
|
209
|
+
|
|
210
|
+
Find the Identity source → PersonalAccessTokens or ExternalApps target, then query recent events by running:
|
|
211
|
+
|
|
212
|
+
```bash
|
|
235
213
|
uip admin audit org events \
|
|
236
214
|
--source <IDENTITY_SOURCE_GUID> \
|
|
237
215
|
--from-date <RECENT_WINDOW> \
|
|
@@ -1,80 +1,51 @@
|
|
|
1
1
|
# Bypass Rule Management
|
|
2
2
|
|
|
3
|
-
|
|
3
|
+
Manage URL-pattern bypass rules with `uip admin ip-restriction bypass-rules`. See [ip-restriction-commands.md](ip-restriction-commands.md) for per-command flag tables, output codes, and single-command examples.
|
|
4
4
|
|
|
5
5
|
## Concept
|
|
6
6
|
|
|
7
|
-
Bypass rules
|
|
7
|
+
Bypass rules create **URL-pattern exceptions** to IP allowlisting for specific App, folder, or tenant URL patterns. The server compiles each `regexEntry`; optional metadata may include `appName` and tenant association. Rules have no effect when [enforcement](enforcement-management.md) is `Disabled`.
|
|
8
8
|
|
|
9
|
-
|
|
9
|
+
## Inspect
|
|
10
10
|
|
|
11
|
-
|
|
11
|
+
Before creating, updating, or deleting a rule, run:
|
|
12
12
|
|
|
13
|
-
|
|
13
|
+
- `uip admin ip-restriction bypass-rules list --output json` to list all rules.
|
|
14
|
+
- `uip admin ip-restriction bypass-rules list --filter "<FRAGMENT>" --output json` for a case-insensitive substring search across `regexEntry` and `appName`.
|
|
15
|
+
- `uip admin ip-restriction bypass-rules get <RULE_ID> --output json` to inspect one rule, including `regexEntry`, `appName`, tenant association, and timestamps.
|
|
14
16
|
|
|
15
|
-
Use
|
|
17
|
+
Use inspection to confirm the target before update or delete.
|
|
16
18
|
|
|
17
|
-
|
|
19
|
+
## Create
|
|
18
20
|
|
|
19
|
-
|
|
20
|
-
uip admin ip-restriction bypass-rules list --output json
|
|
21
|
-
```
|
|
21
|
+
Create is file-only; there is no inline shortcut for the create body.
|
|
22
22
|
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
`--filter` runs a case-insensitive substring match on each rule's `regexEntry` *and* `appName`. Useful when you remember a domain fragment but not the rule id.
|
|
26
|
-
|
|
27
|
-
```bash
|
|
28
|
-
uip admin ip-restriction bypass-rules list --filter "<FRAGMENT>" --output json
|
|
29
|
-
```
|
|
30
|
-
|
|
31
|
-
### Inspect one rule by id
|
|
32
|
-
|
|
33
|
-
```bash
|
|
34
|
-
uip admin ip-restriction bypass-rules get <RULE_ID> --output json
|
|
35
|
-
```
|
|
36
|
-
|
|
37
|
-
Returns `regexEntry`, `appName`, tenant association, and timestamps. Use this before update/delete to confirm you're targeting the right rule.
|
|
38
|
-
|
|
39
|
-
## Workflow: Create a Bypass Rule
|
|
40
|
-
|
|
41
|
-
Create is file-only (no inline shortcut for the create body).
|
|
42
|
-
|
|
43
|
-
1. Author the rule body (`bypass-rule.json`):
|
|
23
|
+
1. Write `bypass-rule.json`, for example:
|
|
44
24
|
```json
|
|
45
25
|
{
|
|
46
26
|
"regexEntry": "^.*\\.contoso\\.com$",
|
|
47
27
|
"appName": "<OPTIONAL_APP_NAME>"
|
|
48
28
|
}
|
|
49
29
|
```
|
|
50
|
-
Refer to UiPath docs for the full `AddRegexBypassRequest` schema
|
|
51
|
-
2.
|
|
52
|
-
|
|
53
|
-
uip admin ip-restriction bypass-rules create --file ./bypass-rule.json --output json
|
|
54
|
-
```
|
|
55
|
-
3. Verify:
|
|
56
|
-
```bash
|
|
57
|
-
uip admin ip-restriction bypass-rules get <NEW_RULE_ID> --output json
|
|
58
|
-
```
|
|
30
|
+
Refer to UiPath docs for the full `AddRegexBypassRequest` schema, including tenant fields.
|
|
31
|
+
2. Run `uip admin ip-restriction bypass-rules create --file ./bypass-rule.json --output json`.
|
|
32
|
+
3. Run `uip admin ip-restriction bypass-rules get <NEW_RULE_ID> --output json` to verify the result.
|
|
59
33
|
|
|
60
|
-
## Authoring
|
|
34
|
+
## Authoring Rules
|
|
61
35
|
|
|
62
|
-
-
|
|
63
|
-
-
|
|
64
|
-
-
|
|
36
|
+
- Escape dots: `.contoso.com` also matches `Xcontoso.com`; use `\\.contoso\\.com`.
|
|
37
|
+
- Anchor patterns with `^` and `$` to avoid matching URLs containing the fragment.
|
|
38
|
+
- Test the rule through UiPath app access before deploying it broadly.
|
|
65
39
|
|
|
66
|
-
##
|
|
40
|
+
## Update
|
|
67
41
|
|
|
68
|
-
-
|
|
69
|
-
-
|
|
42
|
+
- For a regex-only change, pass `--regex-entry "<NEW_PATTERN>"` inline.
|
|
43
|
+
- For tenant or app metadata, pass `--file ./bypass-rule-update.json` containing the full `UpdateRegexBypassRequest` body.
|
|
70
44
|
|
|
71
|
-
##
|
|
45
|
+
## Delete
|
|
72
46
|
|
|
73
|
-
1.
|
|
74
|
-
|
|
75
|
-
uip admin ip-restriction bypass-rules get <RULE_ID> --output json
|
|
76
|
-
```
|
|
77
|
-
2. Confirm with the user.
|
|
47
|
+
1. Run `uip admin ip-restriction bypass-rules get <RULE_ID> --output json` and confirm the target.
|
|
48
|
+
2. Confirm the deletion with the user.
|
|
78
49
|
3. Run `bypass-rules delete <RULE_ID>`.
|
|
79
50
|
|
|
80
|
-
|
|
51
|
+
Do not use a `--confirm` flag: unlike `ip-ranges delete`, bypass-rule deletion only narrows access and never widens it.
|
|
@@ -1,43 +1,36 @@
|
|
|
1
1
|
# Enforcement Management
|
|
2
2
|
|
|
3
|
-
|
|
3
|
+
Manage the organization-wide IP-restriction enforcement switch (`uip admin ip-restriction enforcement`) and `my-ip` lookup. See [ip-restriction-commands.md](ip-restriction-commands.md) for per-command flags, output codes, and single-command examples.
|
|
4
4
|
|
|
5
5
|
## Concept
|
|
6
6
|
|
|
7
|
-
`enforcement` is a singleton switch
|
|
7
|
+
`enforcement` is a per-organization singleton switch:
|
|
8
8
|
|
|
9
|
-
- **Disabled** (default)
|
|
10
|
-
- **Enabled
|
|
9
|
+
- **Disabled** (default): platform-default access rules apply; `ip-ranges list` is data only.
|
|
10
|
+
- **Enabled**: only networks in `ip-ranges list` can reach the organization.
|
|
11
11
|
|
|
12
|
-
Toggling
|
|
13
|
-
|
|
14
|
-
**Lockout risk is real.** Enabling enforcement with the caller's IP outside the allowlist locks the caller out (and possibly the whole org). The CLI has two safety rails:
|
|
15
|
-
|
|
16
|
-
1. `enforcement enable` runs a `my-ip` pre-flight and **rejects** the call if the caller's IP is not covered by any entry in `ip-ranges list`.
|
|
17
|
-
2. `--confirm` is required to acknowledge the lockout risk.
|
|
12
|
+
Toggling is idempotent. Enabling can lock out callers whose IP is not allowlisted, so the CLI requires `--confirm` and performs a `my-ip` pre-flight.
|
|
18
13
|
|
|
19
14
|
## Workflow: Pre-Flight Before Enabling Enforcement
|
|
20
15
|
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
1. Check current state:
|
|
16
|
+
1. Run:
|
|
24
17
|
```bash
|
|
25
18
|
uip admin ip-restriction enforcement get --output json
|
|
26
19
|
```
|
|
27
|
-
2.
|
|
20
|
+
2. Run:
|
|
28
21
|
```bash
|
|
29
22
|
uip admin ip-restriction my-ip --output json
|
|
30
23
|
```
|
|
31
|
-
3.
|
|
24
|
+
3. Run:
|
|
32
25
|
```bash
|
|
33
26
|
uip admin ip-restriction ip-ranges list --output json
|
|
34
27
|
```
|
|
35
|
-
Compare `my-ip`'s `ipAddress`
|
|
28
|
+
Compare `my-ip`'s `ipAddress` with every entry's `ipNetwork` CIDR. If none covers the caller's IP, add one before enabling; see [ip-range-management.md — Workflow: Add an Entry](ip-range-management.md#add-an-entry-idempotent-on-cidr).
|
|
36
29
|
|
|
37
30
|
## Workflow: Enable Enforcement
|
|
38
31
|
|
|
39
|
-
1.
|
|
40
|
-
2.
|
|
32
|
+
1. Complete the pre-flight.
|
|
33
|
+
2. State the impact and obtain explicit confirmation in this turn. Render verbatim:
|
|
41
34
|
|
|
42
35
|
```
|
|
43
36
|
⚠️ About to enable IP Restriction for this organization.
|
|
@@ -57,30 +50,25 @@ Before flipping `enforcement enable`, confirm the caller's IP is in the allowlis
|
|
|
57
50
|
Proceed? (yes / no)
|
|
58
51
|
```
|
|
59
52
|
|
|
60
|
-
On
|
|
61
|
-
|
|
62
|
-
3. Enable:
|
|
53
|
+
On `no`, stop. On `yes`, continue. Never replace this prompt with a one-line confirmation.
|
|
54
|
+
3. Run:
|
|
63
55
|
```bash
|
|
64
56
|
uip admin ip-restriction enforcement enable --confirm --output json
|
|
65
57
|
```
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
4. **Post-state check.** Re-run `enforcement get` and `my-ip` immediately after. If the caller's IP is still covered, report success. If something looks off, instruct the user to use the recovery flow before they lose access.
|
|
58
|
+
The CLI runs its own `my-ip` pre-flight and rejects enablement when the caller is not covered. If rejected, do not retry until the allowlist is fixed.
|
|
59
|
+
4. Immediately run `enforcement get` and `my-ip` again. Report success only if the caller's IP remains covered. If anything looks wrong, instruct the user to use the recovery flow before access is lost.
|
|
70
60
|
|
|
71
61
|
## Workflow: Disable Enforcement
|
|
72
62
|
|
|
73
|
-
|
|
63
|
+
Run:
|
|
74
64
|
|
|
75
65
|
```bash
|
|
76
66
|
uip admin ip-restriction enforcement disable --output json
|
|
77
67
|
```
|
|
78
68
|
|
|
79
|
-
|
|
69
|
+
Disabling is safe and idempotent, restores platform-default access, requires no `--confirm`, and can recover a near-lockout or bypass the `ip-ranges delete` safety pre-flight.
|
|
80
70
|
|
|
81
71
|
## Recovery from Lockout
|
|
82
72
|
|
|
83
|
-
|
|
84
|
-
|
|
85
|
-
1. Access UiPath from an IP already in the allowlist (e.g., a different VPN or office network), then run `enforcement disable`.
|
|
86
|
-
2. If no such IP is available, the org owner must use the UiPath Portal lockout-recovery flow or contact support — there is no CLI bypass.
|
|
73
|
+
1. Access UiPath from an IP already in the allowlist, such as another VPN or office network, then run `enforcement disable`.
|
|
74
|
+
2. If no such IP is available, have the organization owner use the UiPath Portal lockout-recovery flow or contact support. There is no CLI bypass.
|