omni-admin

Compare original and translation side by side

🇺🇸

Original

English
🇨🇳

Translation

Chinese

Omni Admin

Omni Admin

Manage your Omni instance — connections, users, groups, user attributes, permissions, schedules, and schema refreshes.
Tip: Most admin endpoints require an Organization API Key (not a Personal Access Token).
管理你的Omni实例——包括连接、用户、组、用户属性、权限、计划和模式刷新。
提示:大多数管理端点需要Organization API Key(而非个人访问令牌Personal Access Token)。

Prerequisites

前提条件

bash
undefined
bash
undefined

Verify the Omni CLI is installed — if not, ask the user to install it

Verify the Omni CLI is installed — if not, ask the user to install it

command -v omni >/dev/null || echo "ERROR: Omni CLI is not installed."

```bash
command -v omni >/dev/null || echo "ERROR: Omni CLI is not installed."

```bash

Show available profiles and select the appropriate one

Show available profiles and select the appropriate one

omni config show
omni config show

If multiple profiles exist, ask the user which to use, then switch:

If multiple profiles exist, ask the user which to use, then switch:

omni config use <profile-name>
undefined
omni config use <profile-name>
undefined

Discovering Commands

查看可用命令

bash
omni scim --help             # User and group management
omni schedules --help        # Schedule operations
omni connections --help      # Connection management
omni documents --help        # Document permissions
omni folders --help          # Folder permissions
Tip: Use
-o json
to force structured output for programmatic parsing, or
-o human
for readable tables. The default is
auto
(human in a TTY, JSON when piped).
bash
omni scim --help             # 用户和组管理
omni schedules --help        # 计划操作
omni connections --help      # 连接管理
omni documents --help        # 文档权限
omni folders --help          # 文件夹权限
提示:使用
-o json
强制输出结构化内容以便程序解析,或使用
-o human
输出易读的表格。默认模式为
auto
(终端环境下输出human格式,管道传输时输出JSON格式)。

Connections

连接管理

bash
undefined
bash
undefined

List connections

List connections

omni connections list
omni connections list

Schema refresh schedules

Schema refresh schedules

omni connections schedules-list <connectionId>
omni connections schedules-list <connectionId>

Connection environments

Connection environments

omni connections connection-environments-list
undefined
omni connections connection-environments-list
undefined

User Management (SCIM 2.0)

用户管理(SCIM 2.0)

bash
undefined
bash
undefined

List users

List users

omni scim users-list
omni scim users-list

Find by email

Find by email

omni scim users-list --filter 'userName eq "user@company.com"'
omni scim users-list --filter 'userName eq "user@company.com"'

Create user

Create user

omni scim users-create --body '{ "schemas": ["urn:ietf:params:scim:schemas:core:2.0:User"], "userName": "newuser@company.com", "displayName": "New User", "active": true, "emails": [{ "primary": true, "value": "newuser@company.com" }] }'
omni scim users-create --body '{ "schemas": ["urn:ietf:params:scim:schemas:core:2.0:User"], "userName": "newuser@company.com", "displayName": "New User", "active": true, "emails": [{ "primary": true, "value": "newuser@company.com" }] }'

Deactivate user

Deactivate user

omni scim users-update <userId> --body '{ "schemas": ["urn:ietf:params:scim:schemas:core:2.0:User"], "Operations": [{ "op": "replace", "path": "active", "value": false }] }'
omni scim users-update <userId> --body '{ "schemas": ["urn:ietf:params:scim:schemas:core:2.0:User"], "Operations": [{ "op": "replace", "path": "active", "value": false }] }'

Delete user

Delete user

omni scim users-delete <userId>
undefined
omni scim users-delete <userId>
undefined

Group Management (SCIM 2.0)

组管理(SCIM 2.0)

bash
undefined
bash
undefined

List groups

List groups

omni scim groups-list
omni scim groups-list

Create group

Create group

omni scim groups-create --body '{ "schemas": ["urn:ietf:params:scim:schemas:core:2.0:Group"], "displayName": "Analytics Team", "members": [{ "value": "user-uuid-1" }] }'
omni scim groups-create --body '{ "schemas": ["urn:ietf:params:scim:schemas:core:2.0:Group"], "displayName": "Analytics Team", "members": [{ "value": "user-uuid-1" }] }'

Add members

Add members

omni scim groups-update <groupId> --body '{ "schemas": ["urn:ietf:params:scim:schemas:core:2.0:Group"], "Operations": [{ "op": "add", "path": "members", "value": [{ "value": "new-user-uuid" }] }] }'
undefined
omni scim groups-update <groupId> --body '{ "schemas": ["urn:ietf:params:scim:schemas:core:2.0:Group"], "Operations": [{ "op": "add", "path": "members", "value": [{ "value": "new-user-uuid" }] }] }'
undefined

User Attributes

用户属性

bash
undefined
bash
undefined

List attributes

List attributes

omni user-attributes list
omni user-attributes list

Set attribute on user (via SCIM)

Set attribute on user (via SCIM)

omni scim users-update <userId> --body '{ "schemas": ["urn:ietf:params:scim:schemas:core:2.0:User"], "Operations": [{ "op": "replace", "path": "urn:omni:params:1.0:UserAttribute:region", "value": "West Coast" }] }'

User attributes work with `access_filters` in topics for row-level security.
omni scim users-update <userId> --body '{ "schemas": ["urn:ietf:params:scim:schemas:core:2.0:User"], "Operations": [{ "op": "replace", "path": "urn:omni:params:1.0:UserAttribute:region", "value": "West Coast" }] }'

用户属性可配合主题中的`access_filters`实现行级安全控制。

Model Roles

模型角色

bash
undefined
bash
undefined

Get/set model roles for a user

Get/set model roles for a user

omni users get-model-roles <userId>
omni users assign-model-role <userId> --body '{ "modelId": "{modelId}", "role": "VIEWER" }'
omni users get-model-roles <userId>
omni users assign-model-role <userId> --body '{ "modelId": "{modelId}", "role": "VIEWER" }'

Get/set model roles for a group

Get/set model roles for a group

omni users user-groups-get-model-roles <groupId>
omni users user-groups-assign-model-role <groupId> --body '{ "modelId": "{modelId}", "role": "VIEWER" }'
undefined
omni users user-groups-get-model-roles <groupId>
omni users user-groups-assign-model-role <groupId> --body '{ "modelId": "{modelId}", "role": "VIEWER" }'
undefined

Document Permissions

文档权限

bash
undefined
bash
undefined

Get permissions for a user (userId required)

Get permissions for a user (userId required)

omni documents get-permissions <documentId> --userid <userId>
omni documents get-permissions <documentId> --userid <userId>

Set permissions

Set permissions

omni documents update-permission-settings <documentId> --body '{ "permissions": [ { "type": "group", "id": "group-uuid", "access": "view" }, { "type": "user", "id": "user-uuid", "access": "edit" } ] }'
undefined
omni documents update-permission-settings <documentId> --body '{ "permissions": [ { "type": "group", "id": "group-uuid", "access": "view" }, { "type": "user", "id": "user-uuid", "access": "edit" } ] }'
undefined

Folder Permissions

文件夹权限

bash
undefined
bash
undefined

Get

Get

omni folders get-permissions <folderId>
omni folders get-permissions <folderId>

Set

Set

omni folders add-permissions <folderId> --body '{ "permissions": [{ "type": "group", "id": "group-uuid", "access": "view" }] }'
undefined
omni folders add-permissions <folderId> --body '{ "permissions": [{ "type": "group", "id": "group-uuid", "access": "view" }] }'
undefined

Schedules

计划管理

bash
undefined
bash
undefined

List schedules

List schedules

omni schedules list
omni schedules list

Create schedule

Create schedule

omni schedules create --body '{ "documentId": "dashboard-identifier", "frequency": "weekly", "dayOfWeek": "monday", "hour": 9, "timezone": "America/Los_Angeles", "format": "pdf" }'
omni schedules create --body '{ "documentId": "dashboard-identifier", "frequency": "weekly", "dayOfWeek": "monday", "hour": 9, "timezone": "America/Los_Angeles", "format": "pdf" }'

Manage recipients

Manage recipients

omni schedules recipients-get <scheduleId>
omni schedules add-recipients <scheduleId> --body '{ "recipients": [{ "type": "email", "value": "team@company.com" }] }'
undefined
omni schedules recipients-get <scheduleId>
omni schedules add-recipients <scheduleId> --body '{ "recipients": [{ "type": "email", "value": "team@company.com" }] }'
undefined

Verification After Changes

变更后的验证

Admin operations can silently fail or partially apply. Always read back the state after any write to confirm the change took effect.
管理操作可能会静默失败或仅部分生效。执行任何写入操作后,务必查看状态以确认变更已生效。

After User Operations

用户操作后验证

bash
undefined
bash
undefined

After creating or updating a user, verify they exist with correct state

After creating or updating a user, verify they exist with correct state

omni scim users-list --filter 'userName eq "newuser@company.com"'

Check that: `active` matches what you set, `displayName` is correct, and the user ID was returned (not an error).
omni scim users-list --filter 'userName eq "newuser@company.com"'

检查:`active`状态是否与设置一致,`displayName`是否正确,且返回了用户ID(而非错误信息)。

After Group Operations

组操作后验证

bash
undefined
bash
undefined

After creating a group or modifying members, verify membership

After creating a group or modifying members, verify membership

omni scim groups-list

Check that: the group exists with the expected `displayName`, and `members` array contains the expected user UUIDs.
omni scim groups-list

检查:组是否存在且`displayName`符合预期,`members`数组包含预期的用户UUID。

After Permission Changes

权限变更后验证

bash
undefined
bash
undefined

After setting document permissions, verify for the target user

After setting document permissions, verify for the target user

omni documents get-permissions <documentId> --userid <userId>
omni documents get-permissions <documentId> --userid <userId>

After setting folder permissions, verify

After setting folder permissions, verify

omni folders get-permissions <folderId>

Check that: the permission `access` level matches what you set (`view`, `edit`), and the target user/group ID is listed.
omni folders get-permissions <folderId>

检查:权限`access`级别是否与设置一致(`view`、`edit`),且列出了目标用户/组ID。

After User Attribute Changes

用户属性变更后验证

bash
undefined
bash
undefined

Verify the attribute value was set

Verify the attribute value was set

omni user-attributes list

If the attribute is used for row-level security (`access_filters`), test it by running a query as the target user:

```bash
omni query run --body '{ "query": { ... }, "userId": "<target-user-uuid>" }'
Verify the results are correctly filtered — the user should only see rows matching their attribute value.
omni user-attributes list

如果属性用于行级安全控制(`access_filters`),请以目标用户身份运行查询进行测试:

```bash
omni query run --body '{ "query": { ... }, "userId": "<target-user-uuid>" }'
验证结果是否已正确过滤——用户应仅能看到与其属性值匹配的行。

After Schedule Operations

计划操作后验证

bash
undefined
bash
undefined

Verify schedule was created with correct settings

Verify schedule was created with correct settings

omni schedules list
omni schedules list

Verify recipients were added

Verify recipients were added

omni schedules recipients-get <scheduleId>

Check that: `frequency`, `dayOfWeek`, `hour`, `timezone`, and `format` match what you set, and all intended recipients are listed.
omni schedules recipients-get <scheduleId>

检查:`frequency`、`dayOfWeek`、`hour`、`timezone`和`format`是否与设置一致,且列出了所有预期收件人。

Verification Checklist

验证清单

OperationVerify WithWhat to Check
Create/update user
omni scim users-list --filter ...
User exists,
active
status correct
Create/update group
omni scim groups-list
Group exists, members list correct
Set document permissions
omni documents get-permissions
Access level and target correct
Set folder permissions
omni folders get-permissions
Access level and target correct
Set user attribute
omni user-attributes list
Attribute value set
User attribute + access filter
omni query run
with
userId
Row-level filtering works
Create schedule
omni schedules list
Schedule settings correct
Add recipients
omni schedules recipients-get
All recipients listed
操作验证命令检查内容
创建/更新用户
omni scim users-list --filter ...
用户存在,
active
状态正确
创建/更新组
omni scim groups-list
组存在,成员列表正确
设置文档权限
omni documents get-permissions
访问级别和目标对象正确
设置文件夹权限
omni folders get-permissions
访问级别和目标对象正确
设置用户属性
omni user-attributes list
属性值已设置
用户属性+访问过滤器指定
userId
运行
omni query run
行级过滤生效
创建计划
omni schedules list
计划设置正确
添加收件人
omni schedules recipients-get
所有收件人已列出

Cache and Validation

缓存与验证

bash
undefined
bash
undefined

Reset cache policy

Reset cache policy

omni models cache-reset <modelId> <policyName> --body '{ "resetAt": "2025-01-30T22:30:52.872Z" }'
omni models cache-reset <modelId> <policyName> --body '{ "resetAt": "2025-01-30T22:30:52.872Z" }'

Content validator (find broken field references across all dashboards and tiles)

Content validator (find broken field references across all dashboards and tiles)

Useful for blast-radius analysis: remove a field on a branch, then run the

Useful for blast-radius analysis: remove a field on a branch, then run the

validator against that branch to see what content would break.

validator against that branch to see what content would break.

See the Field Impact Analysis section in omni-model-explorer for the full workflow.

See the Field Impact Analysis section in omni-model-explorer for the full workflow.

omni models content-validator-get <modelId>
omni models content-validator-get <modelId>

Run against a specific branch (e.g., after removing a field)

Run against a specific branch (e.g., after removing a field)

omni models content-validator-get <modelId> --branch-id <branchId>
omni models content-validator-get <modelId> --branch-id <branchId>

Git configuration

Git configuration

omni models git-get <modelId>
undefined
omni models git-get <modelId>
undefined

Docs Reference

文档参考

Related Skills

相关技能

  • omni-model-builder — edit the model that access controls apply to
  • omni-content-explorer — find documents before setting permissions
  • omni-content-builder — create dashboards before scheduling delivery
  • omni-embed — manage embed users and user attributes for embedded dashboards
  • omni-model-builder — 编辑访问控制所适用的模型
  • omni-content-explorer — 设置权限前查找文档
  • omni-content-builder — 创建仪表板后安排交付
  • omni-embed — 管理嵌入式仪表板的嵌入用户和用户属性