@uipath/oms-tool 1.1.0

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.
Files changed (4) hide show
  1. package/README.md +52 -0
  2. package/dist/index.js +35385 -0
  3. package/dist/tool.js +33285 -0
  4. package/package.json +37 -0
package/README.md ADDED
@@ -0,0 +1,52 @@
1
+ # OMS Tool
2
+
3
+ CLI plugin for the UiPath Organization Management Service (OMS).
4
+
5
+ Composed under `admin-tool`. The tool registers its commands directly under `uip admin` (no wrapper subject group), so users invoke them as `uip admin organizations …` and `uip admin tenants …`.
6
+
7
+ ## Command tree
8
+
9
+ ```
10
+ uip admin
11
+ ├── organizations
12
+ │ ├── get [--full] # --full → org + tenants + service catalog
13
+ │ ├── update [--file <path> | --name | --logical-name | --language]
14
+ │ ├── regions
15
+ │ │ └── list
16
+ │ ├── operation
17
+ │ │ └── get <operationId>
18
+ │ └── services # org-level services are auto-provisioned with the org
19
+ │ ├── list [--service <type>] [--status <status>] [--region <region>]
20
+ │ └── list-available
21
+ └── tenants
22
+ ├── list [--filter <fragment>] [--service <type>] [--status <status>] [--environment <env>] [--include-services]
23
+ ├── get <tenantId>
24
+ ├── create [--file <path> | --name --region --environment]
25
+ ├── update <tenantId> [--file <path> | --name | --region | --environment]
26
+ ├── delete <tenantId> # soft-delete only
27
+ ├── enable <tenantId>
28
+ ├── disable <tenantId> [--reason <text>]
29
+ └── services
30
+ ├── list <tenantId> [--service <type>] [--region <region>]
31
+ ├── list-available --region <Region>
32
+ ├── add <tenantId> [--file <path> | --service <type>]
33
+ ├── remove <tenantId> [--file <path> | --service <type>] # soft-remove only
34
+ ├── enable <tenantId> --service <type>
35
+ └── disable <tenantId> --service <type>
36
+ ```
37
+
38
+ ## Subjects
39
+
40
+ - `organizations` — caller's organization, async operations, and org-level services (with nested `regions list`, `operation get`, and `services` groups).
41
+ - `tenants` — tenant lifecycle and tenant-level services (with nested `services` group).
42
+
43
+ ## Conventions
44
+
45
+ - Authenticated via `uip login`.
46
+ - Most mutating commands accept inline flags for common cases and `--file <path>` for full-body control. The two paths are mutually exclusive — pick one. `tenants services create` / `delete` are file-only because the body is a single complex `services{}` map.
47
+ - **Organizations cannot be created or deleted from the CLI.** The CLI deliberately omits `organizations create` and `organizations delete` — those lifecycle actions go through Portal / the support flow.
48
+ - **Hard-delete is never exposed.** `tenants delete` and `tenants services remove` use soft semantics; the request body's `isHardDelete` (where present) is hard-coded to `false`. `tenants services add` / `remove` additionally validate that every entry in the file body's `services` map has the right boolean — `true` for `add`, `false` for `remove` — to prevent an add-style file from accidentally removing services (or vice versa).
49
+ - **Org-level services are not directly creatable from the CLI.** They are auto-provisioned alongside the organization and managed by the platform. The CLI exposes `organizations services list` and `organizations services list-available` only — there is no `create` or `update-status` for org services.
50
+ - **Canary tenant routing is never exposed.** Where the SDK request DTO accepts `isCanaryTenant`, the CLI hard-codes it to `false`.
51
+ - `tenants enable` / `tenants disable` use the v2 variant of `Tenant_ChangeTenantStatus` to support reason metadata; everything else uses v1.
52
+ - `services list-available` is per-region for tenant scope (you must pass `--region`); for org scope (`organizations services list-available`) the call uses `scope=Account` with no region.