omni-admin
작성자: exploreomni
Omni Analytics 인스턴스를 관리합니다 — REST API를 통해 연결, 사용자, 그룹, 사용자 속성, 권한, 일정 및 스키마 새로고침을 관리합니다. 사용…
npx skills add https://github.com/exploreomni/omni-cursor-plugin --skill omni-adminOmni 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).
Prerequisites
export OMNI_BASE_URL="https://yourorg.omniapp.co"
export OMNI_API_KEY="your-api-key"
API Discovery
When unsure whether an endpoint or parameter exists, fetch the OpenAPI spec:
curl -L "$OMNI_BASE_URL/openapi.json" \
-H "Authorization: Bearer $OMNI_API_KEY"
Use this to verify endpoints, available parameters, and request/response schemas before making calls.
Connections
# List connections
curl -L "$OMNI_BASE_URL/api/v1/connections" \
-H "Authorization: Bearer $OMNI_API_KEY"
# Schema refresh schedules
curl -L "$OMNI_BASE_URL/api/v1/connections/{connectionId}/schedules" \
-H "Authorization: Bearer $OMNI_API_KEY"
# Connection environments
curl -L "$OMNI_BASE_URL/api/v1/connection-environments" \
-H "Authorization: Bearer $OMNI_API_KEY"
User Management (SCIM 2.0)
Endpoint prefix: /api/scim/v2/
# List users
curl -L "$OMNI_BASE_URL/api/scim/v2/users" \
-H "Authorization: Bearer $OMNI_API_KEY"
# Find by email (URL-encode the filter)
curl -L "$OMNI_BASE_URL/api/scim/v2/users?filter=userName%20eq%20%[email protected]%22" \
-H "Authorization: Bearer $OMNI_API_KEY"
# Create user
curl -L -X POST "$OMNI_BASE_URL/api/scim/v2/users" \
-H "Authorization: Bearer $OMNI_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"schemas": ["urn:ietf:params:scim:schemas:core:2.0:User"],
"userName": "[email protected]",
"displayName": "New User",
"active": true,
"emails": [{ "primary": true, "value": "[email protected]" }]
}'
# Deactivate user
curl -L -X PATCH "$OMNI_BASE_URL/api/scim/v2/users/{userId}" \
-H "Authorization: Bearer $OMNI_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"schemas": ["urn:ietf:params:scim:schemas:core:2.0:User"],
"Operations": [{ "op": "replace", "path": "active", "value": false }]
}'
# Delete user
curl -L -X DELETE "$OMNI_BASE_URL/api/scim/v2/users/{userId}" \
-H "Authorization: Bearer $OMNI_API_KEY"
Group Management (SCIM 2.0)
# List groups
curl -L "$OMNI_BASE_URL/api/scim/v2/groups" \
-H "Authorization: Bearer $OMNI_API_KEY"
# Create group
curl -L -X POST "$OMNI_BASE_URL/api/scim/v2/groups" \
-H "Authorization: Bearer $OMNI_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"schemas": ["urn:ietf:params:scim:schemas:core:2.0:Group"],
"displayName": "Analytics Team",
"members": [{ "value": "user-uuid-1" }]
}'
# Add members
curl -L -X PATCH "$OMNI_BASE_URL/api/scim/v2/groups/{groupId}" \
-H "Authorization: Bearer $OMNI_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"schemas": ["urn:ietf:params:scim:schemas:core:2.0:Group"],
"Operations": [{ "op": "add", "path": "members", "value": [{ "value": "new-user-uuid" }] }]
}'
User Attributes
# List attributes
curl -L "$OMNI_BASE_URL/api/v1/user-attributes" \
-H "Authorization: Bearer $OMNI_API_KEY"
# Set attribute on user (via SCIM)
curl -L -X PATCH "$OMNI_BASE_URL/api/scim/v2/users/{userId}" \
-H "Authorization: Bearer $OMNI_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"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.
Model Roles
# User roles on a model
curl -L "$OMNI_BASE_URL/api/v1/models/{modelId}/user-roles" \
-H "Authorization: Bearer $OMNI_API_KEY"
# Group roles on a model
curl -L "$OMNI_BASE_URL/api/v1/models/{modelId}/group-roles" \
-H "Authorization: Bearer $OMNI_API_KEY"
Document Permissions
# Get permissions
curl -L "$OMNI_BASE_URL/api/v1/documents/{documentId}/permissions" \
-H "Authorization: Bearer $OMNI_API_KEY"
# Set permissions
curl -L -X PUT "$OMNI_BASE_URL/api/v1/documents/{documentId}/permissions" \
-H "Authorization: Bearer $OMNI_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"permissions": [
{ "type": "group", "id": "group-uuid", "access": "view" },
{ "type": "user", "id": "user-uuid", "access": "edit" }
]
}'
Folder Permissions
# Get
curl -L "$OMNI_BASE_URL/api/v1/folders/{folderId}/permissions" \
-H "Authorization: Bearer $OMNI_API_KEY"
# Set
curl -L -X PUT "$OMNI_BASE_URL/api/v1/folders/{folderId}/permissions" \
-H "Authorization: Bearer $OMNI_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"permissions": [{ "type": "group", "id": "group-uuid", "access": "view" }]
}'
Schedules
# List schedules
curl -L "$OMNI_BASE_URL/api/v1/schedules" \
-H "Authorization: Bearer $OMNI_API_KEY"
# Create schedule
curl -L -X POST "$OMNI_BASE_URL/api/v1/schedules" \
-H "Authorization: Bearer $OMNI_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"documentId": "dashboard-identifier",
"frequency": "weekly",
"dayOfWeek": "monday",
"hour": 9,
"timezone": "America/Los_Angeles",
"format": "pdf"
}'
# Manage recipients
curl -L "$OMNI_BASE_URL/api/v1/schedules/{scheduleId}/recipients" \
-H "Authorization: Bearer $OMNI_API_KEY"
curl -L -X POST "$OMNI_BASE_URL/api/v1/schedules/{scheduleId}/recipients" \
-H "Authorization: Bearer $OMNI_API_KEY" \
-H "Content-Type: application/json" \
-d '{ "recipients": [{ "type": "email", "value": "[email protected]" }] }'
Cache and Validation
# Reset cache policy
curl -L -X POST "$OMNI_BASE_URL/api/v1/models/{modelId}/cache_reset/{policyName}" \
-H "Authorization: Bearer $OMNI_API_KEY" \
-H "Content-Type: application/json" \
-d '{ "resetAt": "2025-01-30T22:30:52.872Z" }'
# 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
# validator against that branch to see what content would break.
# See the Field Impact Analysis section in omni-model-explorer for the full workflow.
curl -L "$OMNI_BASE_URL/api/v1/models/{modelId}/content-validator" \
-H "Authorization: Bearer $OMNI_API_KEY"
# Run against a specific branch (e.g., after removing a field)
curl -L "$OMNI_BASE_URL/api/v1/models/{modelId}/content-validator?branchId={branchId}" \
-H "Authorization: Bearer $OMNI_API_KEY"
# Git configuration
curl -L "$OMNI_BASE_URL/api/v1/models/{modelId}/git" \
-H "Authorization: Bearer $OMNI_API_KEY"
Docs Reference
- Connections · Users (SCIM) · Groups (SCIM) · User Attributes · Document Permissions · Folder Permissions · Schedules · Schedule Recipients · Content Validator · API Authentication
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
exploreomni의 다른 스킬
omni-admin
exploreomni
Omni Analytics 인스턴스를 관리합니다 — Omni CLI를 통해 연결, 사용자, 그룹, 사용자 속성, 권한, 일정 및 스키마 새로고침을 관리합니다. 사용…
official
omni-ai-eval
exploreomni
Omni AI 쿼리 생성 정확도를 평가하려면 Omni CLI를 통해 테스트 프롬프트를 실행하고, 생성된 쿼리 JSON을 예상 결과와 비교한 후 점수를 매깁니다…
official
omni-ai-optimizer
exploreomni
Omni Analytics 모델을 Blobby, Omni Agent에 맞게 최적화하세요 — ai_context, ai_fields, sample_queries를 구성하고 AI 전용 주제 확장을 생성하세요. 사용…
official
omni-content-builder
exploreomni
Omni Analytics 문서와 대시보드를 프로그래밍 방식으로 생성, 업데이트 및 관리합니다 — 문서 수명 주기, 타일, 시각화, 필터, 레이아웃 — 다음을 사용하여…
official
omni-content-explorer
exploreomni
Omni Analytics에서 대시보드, 워크북, 폴더, 레이블 등 콘텐츠를 찾고, 탐색하고, 정리할 수 있습니다. Omni CLI를 사용하세요. 누군가 원할 때마다 이 스킬을 사용하세요…
official
omni-embed
exploreomni
Omni Analytics 대시보드를 외부 애플리케이션에 임베드 — URL 서명, 사용자 정의 테마, iframe 이벤트, 엔터티 워크스페이스 및 권한 인식 콘텐츠 — 사용…
official
omni-model-builder
exploreomni
Omni Analytics 시맨틱 모델 정의(뷰, 토픽, 차원, 측정값, 관계 및 쿼리 뷰)를 YAML을 통해 생성 및 편집합니다.
official
omni-model-explorer
exploreomni
Omni CLI를 사용하여 Omni Analytics 모델, 토픽, 뷰, 필드, 차원, 측정값 및 관계를 검색하고 검사합니다. 누군가가...할 때마다 이 스킬을 사용하세요.
official