| Option | Description |
Affects existing deliveries? |
Delivery setting availability |
|---|---|---|---|
| **Configurable** | Users can choose whether to personalize each delivery | ||
| **Always** |
Forces personalization on for all email deliveries and automatically updates existing deliveries to use the recipient's user attributes. **This option can't be used if any connection in your Omni organization uses [per-user OAuth](/connect-data/oauth)**. If your organization has OAuth connections, you'll receive an error when you try to select this option. |
||
| **Never** | Forces personalization off for all email deliveries and automatically updates existing deliveries to use the delivery owner's user attributes. |
| Role | Permission | Required permissions |
|---|---|---|
| **Viewer** | **Run topic-based queries** | Cannot be disabled |
| **Download** | Run topic-based queries | |
| **Schedule / Alerts** | Run topic-based queries | |
| **Restricted Querier** | **Create topic-based queries** | Run topic-based queries (Viewer) |
| **Use Omni Agent** |
|
|
| **View IDE** |
|
|
| **View SQL** |
|
|
| **Use workbooks** |
|
|
| **Upload data** |
|
|
| **Create spreadsheets** |
|
|
| [**Create apps**](/visualize-present/apps) |
|
|
| **Querier** | **Create all views and fields queries and write SQL** |
|
| **Modeler** | **Edit shared data model** |
|
| **Connection Admin** | **Manage connections and model permissions** |
|
| Permission | No access | Viewer | Restricted Querier | Querier | Modeler | Connection Admin |
|---|---|---|---|---|---|---|
| [Create documents](/content/develop) | ❌ | ❌ | ✅ | ✅ | ✅ | ✅ |
| View document names on homepage | ❌ | ✅ | ✅ | ✅ | ✅ | ✅ |
| Permission | No access | Viewer | Restricted Querier | Querier | Modeler | Connection Admin |
|---|---|---|---|---|---|---|
| Access workbooks | ❌ | ❌ | ✅ | ✅ | ✅ | ✅ |
| [Upload CSV & XLSX files](/analyze-explore/data-input-csvs) | ❌ | ❌ | ✅ | ✅ | ✅ | ✅ |
| Run topic-based queries | ❌ | ❌ | ✅ | ✅ | ✅ | ✅ |
| Run all queries | ❌ | ❌ | ❌ | ✅ | ✅ | ✅ |
| Create & run [SQL queries](/analyze-explore/sql) | ❌ | ❌ | ❌ | ✅ | ✅ | ✅ |
| View SQL query results | ❌ | ❌ | ❌\* | ✅ | ✅ | ✅ |
| Use [functions & formulas](/analyze-explore/calculations) | ❌ | ❌ | ✅ | ✅ | ✅ | ✅ |
| Create & edit [visualizations](/visualize-present/visualizations/types) | ❌ | ❌ | ✅ | ✅ | ✅ | ✅ |
| Use [AI query](/ai/queries) or AI [spreadsheet calculations](/analyze-explore/calculations#ai-generated) | ❌ | ❌ | ✅ | ✅ | ✅ | ✅ |
| Permission | No access | Viewer | Restricted Querier | Querier | Modeler | Connection Admin |
|---|---|---|---|---|---|---|
| Access dashboards | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ |
| [Create & edit dashboards](/visualize-present/dashboards) | ❌ | ❌ | ✅ | ✅ | ✅ | ✅ |
| View topic-based charts | ❌ | ✅ | ✅ | ✅ | ✅ | ✅ |
| View non-topic based charts | ❌ | ❌ | ❌ | ✅ | ✅ | ✅ |
| [Download](/visualize-present/dashboards/download) | ❌ | ✅ | ✅ | ✅ | ✅ | ✅ |
| Create [schedules & alerts](/share/deliveries) | ❌ | ✅ | ✅ | ✅ | ✅ | ✅ |
| Use [filters & controls](/visualize-present/dashboards/filters) | ❌ | ✅ | ✅ | ✅ | ✅ | ✅ |
| Use drill functionality | ❌ | ✅ | ✅ | ✅ | ✅ | ✅ |
| Permission | No access | Viewer | Restricted Querier | Querier | Modeler | Connection Admin |
|---|---|---|---|---|---|---|
| Stage workbook model changes | ❌ | ❌ | ✅ | ✅ | ✅ | ✅ |
| Access the [Content Validator](/modeling/develop/content-validator) | ❌ | ❌ | ❌ | ✅ | ✅ | ✅ |
| Stage [shared data model](/modeling) changes using a branch | ❌ | ❌ | ❌ | ✅ | ✅ | ✅ |
| Directly edit the [shared data model](/modeling) | ❌ | ❌ | ❌ | ❌ | ✅ | ✅ |
| [Refresh schema](/modeling/develop/schema-refreshes) (single model connection) | ❌ | ❌ | ❌ | ❌ | ✅ | ✅ |
| [Refresh schema](/modeling/develop/schema-refreshes) (multi-model connection) | ❌ | ❌ | ❌ | ❌ | ❌ | ✅ |
| Rename a shared model or shared extension | ❌ | ❌ | ❌ | ❌ | ❌ | ✅ |
| Create a shared extension model | ❌ | ❌ | ❌ | ❌ | ❌ | ✅ |
| Edit connection settings | ❌ | ❌ | ❌ | ❌ | ❌ | ✅ |
| Permission | No access | Viewer | Restricted Querier | Querier | Modeler | Connection Admin |
|---|---|---|---|---|---|---|
| View branches | ❌ | ❌ | ❌ | ✅ | ✅ | ✅ |
| Create branches | ❌ | ❌ | ❌ | ✅ | ✅ | ✅ |
| Merge branches | ❌ | ❌ | ❌ | ❌ | ✅ | ✅ |
| Permission | No access | Viewer | Restricted Querier | Querier | Modeler | Connection Admin |
|---|---|---|---|---|---|---|
| Manage connection permissions | ❌ | ❌ | ❌ | ❌ | ❌ | ✅ |
| Manage connection settings | ❌ | ❌ | ❌ | ❌ | ❌ | ✅ |
| Description | What's shared? |
|---|---|
| Current query metadata | Information about the currently selected query in the workbook, such as field names, sorts, limits, pivots, and filters |
| User prompt | The natural language question or prompt provided by the user. For example, *"How many users signed up last month?"* or *"Filter by the last two years."* |
| Context (`ai_context`) | Free text that provides context. This is set at the [topic](/modeling/topics/parameters/ai-context) or [view](/modeling/views/parameters/ai-context) level using the `ai_context` parameter. |
| Fields within the selected topic | Metadata about the fields in the currently selected topic, such as field names, labels, descriptions, data types, and whether they're aggregates (`count`, `sum`, `average`) or dimensions. **Note**: Even if a user has access to multiple topics in a workbook, only metadata for the topic that's currently selected is accessed. |
| Name | User prompt | Current query metadata | Current query results |
|---|---|---|---|
| **Chat** ([Workbook Agent](/ai/queries), [Omni Agent](/ai/chat), [Chat with Content](/ai/dashboard-assistant)) | Yes |
Yes |
No |
| [**Data summarization**](/ai/queries#summarizing-query-results) | Yes |
Yes |
Yes |
| **AI summary visualization** | Yes |
Yes |
Yes |
| [**Blank workbook topic picking**](/ai/queries) | Yes |
Yes |
No |
| Endpoint | Description | Version + Status |
|---|---|---|
| [GET /v1/whoami](/api/who-am-i/get-current-identity-and-permissions) | Retrieve the authenticated caller's own identity, API key scope, organization role, and resolved per-model permissions. Supports filtering to specific models. |
| Endpoint | Description | Version + Status |
|---|---|---|
| [GET /v1/ai/branding](/api/ai/get-ai-agent-branding) | Return the organization's AI Agent's [branding configuration](/ai/settings/branding), including display name, custom logo URL, and copy for AI Agent landing surfaces. |
| Endpoint | Description | Version + Status |
|---|---|---|
| [GET /v1/ai/conversations](/api/ai/list-ai-conversations) | List a user's recent AI conversations, ordered by most-recent activity. | |
| [GET /v1/ai/conversations/:conversationId](/api/ai/get-conversation) | Retrieve a conversation with its full message history — alternating user and assistant turns. |
| Endpoint | Description | Version + Status |
|---|---|---|
| [PATCH /v1/ai/credit-controls/users](/api/ai-credit-controls/set-individual-users-ai-credit-limits) | Set individual users' AI credit limits in bulk. | |
| [PATCH /v1/ai/credit-controls](/api/ai-credit-controls/update-ai-credit-controls) | Update the organization's AI credit controls. | |
| [PATCH /v1/ai/credit-controls/entity-groups](/api/ai-credit-controls/set-individual-entity-groups-ai-credit-limits) | Set individual entity groups' AI credit limits in bulk. | |
| [GET /v1/ai/credit-controls](/api/ai-credit-controls/get-ai-credit-controls) | Get the organization's current AI credit control settings, usage for the current billing period, and the billing period bounds. | |
| [GET /v1/ai/credit-controls/users](/api/ai-credit-controls/list-individual-users-ai-credit-limits) | List the organization's active individual user AI credit limits, ordered by `userId` ascending. | |
| [GET /v1/ai/credit-controls/entity-groups](/api/ai-credit-controls/list-individual-entity-groups-ai-credit-limits) | List the organization's active individual entity-group AI credit limits, ordered by entity group ID ascending. |
| Endpoint | Description | Version + Status |
|---|---|---|
| [POST /v1/ai/credit-usage/users](/api/ai-credit-usage/read-individual-users-ai-credit-usage) | List individual users' AI credit usage for the current billing period. | |
| [POST /v1/ai/credit-usage/entity-groups](/api/ai-credit-usage/read-individual-entity-groups-ai-credit-usage) | List individual embed entity groups' AI credit usage for the current billing period. |
| Endpoint | Description | Version + Status |
|---|---|---|
| [POST /v1/ai/eval/prompt-sets](/api/ai-eval/create-an-eval-prompt-set) | Create a new eval prompt set bound to a shared model. | |
| [PATCH /v1/ai/eval/prompt-sets/:promptSetId](/api/ai-eval/update-an-eval-prompt-set) | Update a prompt set's name, description, and/or prompts. | |
| [GET /v1/ai/eval/prompt-sets](/api/ai-eval/list-eval-prompt-sets) | List eval prompt sets, sorted alphabetically by name. | |
| [GET /v1/ai/eval/prompt-sets/:promptSetId](/api/ai-eval/get-an-eval-prompt-set) | Get a single prompt set with all of its prompts. | |
| [DELETE /v1/ai/eval/prompt-sets/:promptSetId](/api/ai-eval/archive-an-eval-prompt-set) | Archive (soft-delete) a prompt set. | |
| [POST /v1/ai/eval/prompt-sets/:promptSetId/unarchive](/api/ai-eval/restore-an-archived-eval-prompt-set) | Restore an archived prompt set. | |
| [POST /v1/ai/eval/runs](/api/ai-eval/start-an-eval-run) | Create and start a new run against an existing prompt set. | |
| [GET /v1/ai/eval/runs](/api/ai-eval/list-eval-runs) | List runs for a prompt set, newest first, filtered to runs whose model the caller can access. | |
| [GET /v1/ai/eval/runs/:runId](/api/ai-eval/get-an-eval-run) | Get an eval run with every per-prompt result row, including the underlying agentic job state and any scoring data. | |
| [POST /v1/ai/eval/runs/:runId/cancel](/api/ai-eval/cancel-an-eval-run) | Cancel an in-progress eval run. | |
| [POST /v1/ai/eval/runs/:runId/unarchive](/api/ai-eval/restore-an-archived-eval-run) | Restore an archived eval run. | |
| [DELETE /v1/ai/eval/runs/:runId](/api/ai-eval/archive-an-eval-run) | Archive (soft-delete) an eval run. |
| Endpoint | Description | Version + Status |
|---|---|---|
| [POST /v1/models/:modelId/suggestions/generate](/api/ai-model-suggestions/generate-model-suggestions) | Trigger an AI suggestion generation run for the shared model and enqueue the async job. | |
| [GET /v1/models/:modelId/suggestions](/api/ai-model-suggestions/list-ai-generated-suggestions) | List AI-generated suggestions for a shared model. | |
| [POST /v1/models/:modelId/suggestions/:suggestionId/ignore](/api/ai-model-suggestions/dismiss-a-suggestion) | Dismiss a suggestion, removing it from the active list. | |
| [POST /v1/models/:modelId/suggestions/:suggestionId/restore](/api/ai-model-suggestions/restore-a-dismissed-suggestion) | Restore a previously dismissed suggestion back to the active list. | |
| [DELETE /v1/models/:modelId/suggestions/:suggestionId](/api/ai-model-suggestions/delete-a-suggestion) | Permanently delete a suggestion. | |
| [GET /v1/models/:modelId/suggestions/runs/latest](/api/ai-model-suggestions/get-the-latest-generation-run) | Retrieve the most recent generation run for the shared model. | |
| [GET /v1/models/:modelId/suggestions/runs/:runId](/api/ai-model-suggestions/get-status-for-a-generation-run) | Retrieve the status of a specific generation run. | |
| [PUT /v1/models/:modelId/suggestions/schedule](/api/ai-model-suggestions/enable-model-ai-suggestions-schedule) | Enable the daily generation schedule for AI model suggestions on a shared model. | |
| [DELETE /v1/models/:modelId/suggestions/schedule](/api/ai-model-suggestions/disable-model-ai-suggestions-schedule) | Disable the daily generation schedule for AI model suggestions on a shared model. |
| Endpoint | Description | Version + Status |
|---|---|---|
| [POST /v1/ai/generate-query](/api/ai/generate-a-query) | Generate a structured Omni query from natural language using AI. | |
| [POST /v1/ai/pick-topic](/api/ai/pick-topic) | Analyze a natural language prompt and determine which topic in the model is the best fit for answering the question. | |
| [POST /v1/ai/jobs](/api/ai/create-ai-job) | Submit a new AI job for asynchronous execution. | |
| [GET /v1/ai/jobs/:jobId](/api/ai/get-ai-job-status) | Retrieve the current status and details of an AI job, including its state, progress information, and result summary. | |
| [POST /v1/ai/jobs/:jobId/cancel](/api/ai/cancel-ai-job) | Request cancellation of an AI job. | |
| [GET /v1/ai/jobs/:jobId/result](/api/ai/stream-ai-job-results) | Retrieve the full result of a completed AI job, including all actions taken by the AI and the final summarized answer. |
| Endpoint | Description | Version + Status |
|---|---|---|
| [POST /v1/ai/routines](/api/ai-routines/create-an-ai-routine) | Create a new routine that will run on the specified schedule. | |
| [PUT /v1/ai/routines/:routineId](/api/ai-routines/update-an-ai-routine) | Update an existing routine. | |
| [GET /v1/ai/routines](/api/ai-routines/list-ai-routines) | List routines for the calling user, newest first. | |
| [GET /v1/ai/routines/:routineId](/api/ai-routines/get-an-ai-routine) | Retrieve details for a specific routine by ID, including the status of its most recent completed run. | |
| [POST /v1/ai/routines/:routineId/trigger](/api/ai-routines/trigger-ai-routine) | Run an existing routine immediately, in addition to its schedule. | |
| [DELETE /v1/ai/routines/:routineId](/api/ai-routines/delete-an-ai-routine) | Delete a routine. |
| Endpoint | Description | Version + Status |
|---|---|---|
| [POST /v1/ai/search-omni-docs](/api/ai/search-omni-docs) | Search the Omni docs using AI to answer questions about Omni features, configuration, modeling, dashboards, and more. |
| Endpoint | Description | Version + Status |
|---|---|---|
| [PUT /v1/api-keys/:id](/api/api-tokens/enable-or-disable-api-token) | Disable or re-enable an API token. | |
| [GET /v1/api-keys](/api/api-tokens/list-api-tokens) | List API token in the organization - including Organization API keys, Personal Access Tokens, and MCP OAuth grants - with optional filtering by type. | |
| [GET /v1/api-keys/:id](/api/api-tokens/retrieve-an-api-token) | Retrieve a single API token by ID. | |
| [DELETE /v1/api-keys/:id](/api/api-tokens/delete-api-token) | Permanently delete an API token. |
| Endpoint | Description | Version + Status |
|---|---|---|
| [PUT /v2/documents/:documentId/draft/app](/api/apps/createreuse-draft-and-replace-app-content) | Create (or reuse) the document's main draft and replace the app on it. | |
| [PUT /v2/documents/:documentId/draft/:draftIdentifier/app](/api/apps/replace-app-content-on-a-draft) | Replace the app HTML or settings on an existing draft. | |
| [GET /v2/documents/:documentId/app](/api/apps/read-app-content) | Read the published app content. | |
| [GET /v2/documents/:documentId/draft/app](/api/apps/read-app-content-on-main-draft) | Read the app content on the document's main draft. | |
| [GET /v2/documents/:documentId/draft/:draftIdentifier/app](/api/apps/read-app-content-on-a-draft) | Read the app content on a named draft. | |
| [DELETE /v2/documents/:documentId/draft/:draftIdentifier/app](/api/apps/remove-app-from-a-draft) | Remove an app from a draft. |
| Endpoint | Description | Version + Status |
|---|---|---|
| [POST /v1/connections](/api/connections/create-connection) | Create a new database connection. | |
| [PATCH /v1/connections/:connectionId](/api/connections/update-connection) | Update connection properties including credentials. | |
| [GET /v1/connections](/api/connections/list-connections) | Retrieve a list of database connections with optional filtering and sorting. | |
| [GET /v1/connections/:connectionId](/api/connections/get-connection) | Fetch a single connection by ID. | |
| [DELETE /v1/connections/:connectionId](/api/connections/delete-connection) | Archive a connection (moves it to trash). |
| Endpoint | Description | Version + Status |
|---|---|---|
| [POST /v1/connection-environments](/api/connection-environments/create-connection-environments) | Create a connection environment and associate it with a base connection. | |
| [PUT /v1/connection-environments/:connectionEnvironmentId](/api/connection-environments/update-connection-environment) | Associate user attribute values with a specific connection environment to determine when the environment is used. | |
| [DELETE /v1/connection-environments/:connectionEnvironmentId](/api/connection-environments/delete-connection-environment) | Delete a connection environment by ID. |
| Endpoint | Description | Version + Status |
|---|---|---|
| [PUT /v1/connections/:connectionId/dbt](/api/dbt/update-dbt-configuration) | Update the dbt configuration for the specified connection. | |
| [GET /v1/connections/:connectionId/dbt](/api/dbt/get-dbt-configuration) | Retrieve the dbt configuration for the specified connection. | |
| [DELETE /v1/connections/:connectionId/dbt](/api/dbt/delete-dbt-configuration) | Remove the dbt configuration for the specified connection. |
| Endpoint | Description | Version + Status |
|---|---|---|
| [POST /v1/connections/:connectionId/dbt/environments](/api/dbt/create-dbt-environment) | Create a new dbt environment on the specified connection, enabling programmatic environment management. | |
| [PUT /v1/connections/:connectionId/dbt/environments/:environmentId](/api/dbt/update-dbt-environment) | Update an existing dbt environment on the specified connection. | |
| [GET /v1/connections/:connectionId/dbt/environments](/api/dbt/list-dbt-environments) | Retrieve a list of all dbt environments configured for the specified connection. | |
| [DELETE /v1/connections/:connectionId/dbt/environments/:environmentId](/api/dbt/delete-dbt-environment) | Delete an existing dbt environment from the specified connection. |
| Endpoint | Description | Version + Status |
|---|---|---|
| [POST /v1/connections/:connectionId/schedules](/api/schema-refresh-schedules/create-schema-refresh-schedule) | Create a new schema refresh schedule for the specified connection. | |
| [PUT /v1/connections/:connectionId/schedules/:scheduleId](/api/schema-refresh-schedules/update-schema-refresh-schedule) | Update the schedule and/or timezone for an existing schema refresh schedule. | |
| [GET /v1/jobs/:jobId/status](/api/jobs/get-job-status) | Retrieve the current status of an asynchronous job. | |
| [GET /v1/connections/:connectionId/schedules](/api/schema-refresh-schedules/list-schema-refresh-schedules) | Retrieve all schema refresh schedules configured for the specified connection. | |
| [GET /v1/connections/:connectionId/schedules/:scheduleId](/api/schema-refresh-schedules/get-schema-refresh-schedule) | Retrieve the details of a connection's specific schema refresh schedule. | |
| [DELETE /v1/connections/:connectionId/schedules/:scheduleId](/api/schema-refresh-schedules/delete-schema-refresh-schedule) | Delete a schema refresh schedule. |
| Endpoint | Description | Version + Status |
|---|---|---|
| [GET /v1/content](/api/content/retrieve-content) | Retrieve a paginated list of documents and folders. | |
| [GET /v1/content/search](/api/content/search-dashboards) | Search dashboards by free-text keywords. | |
| [GET /unstable/documents/:dashboardId/export](/api/content-migration/export-dashboard) | Export a dashboard for migration between Omni instances. | |
| [POST /unstable/documents/import](/api/content-migration/import-dashboard) | Import a dashboard to an Omni instance. |
| Endpoint | Description | Version + Status |
|---|---|---|
| [POST /v1/dashboards/:dashboardId/download](/api/dashboard-downloads/initiate-download) | Start an asynchronous download job for a dashboard or single tile with support for multiple output formats. | |
| [GET /v1/dashboards/:dashboardId/download/:jobId/status](/api/dashboard-downloads/check-download-status) | Retrieve the current status of a dashboard or tile download job. Poll this endpoint to determine when the file is ready. | |
| [GET /v1/dashboards/:dashboardId/download/:jobId](/api/dashboard-downloads/download-file) | Retrieve the completed dashboard or tile download file. |
| Endpoint | Description | Version + Status |
|---|---|---|
| [PATCH /v1/dashboards/:dashboardId/filters](/api/dashboard-filters/update-dashboard-filterscontrols) | Set or reset values for filters and/or controls on a dashboard. | |
| [GET /v1/dashboards/:dashboardId/filters](/api/dashboard-filters/get-dashboard-filters-and-controls) | Retrieve the filter and control configuration for a dashboard. |
| Endpoint | Description | Version + Status |
|---|---|---|
| [POST /v2/documents](/api/documents-v2/create-document) | Create a brand-new document and publish it. | |
| [PATCH /v2/documents/:documentId/draft](/api/documents-v2/create-draft-and-patch-document) | Create a new draft on the published document and apply the patch. | |
| [PATCH /v2/documents/:documentId/draft/:draftId](/api/documents-v2/patch-draft) | Apply a patch to an existing draft addressed by `draftId`. | |
| [POST /v2/documents/:documentId/draft/publish](/api/documents-v2/publish-draft) | Publish the document's current main (non-branch) draft, promoting it to the published version. | |
| [POST /v1/documents/:documentId/upgrade](/api/documents/upgrade-dashboard-layout) | Upgrade a classic document to the new dashboard editor. | |
| [GET /v2/documents/:documentId](/api/documents-v2/get-document-state) | Read the document's published state. | |
| [GET /v1/documents/:documentId/drafts](/api/documents/list-document-drafts) | List all drafts attached to a published document. | |
| [GET /v2/documents/:documentId/draft/:draftId](/api/documents-v2/get-draft-state) | Read the named draft's state. | |
| [DELETE /v1/documents/:documentId/draft](/api/documents/archive-draft) | Archive the current draft of the specified document. | |
| [DELETE /v2/documents/:documentId/draft/:draftId/dashboard](/api/documents/remove-dashboard-from-document) | Remove the dashboard from an existing draft, leaving a workbook-only document. | |
| [DELETE /v1/documents/:documentId](/api/documents/delete-document) | Delete document (moves to Trash). |
| Endpoint | Description | Version + Status |
|---|---|---|
| [PUT /v1/documents/:documentId/favorite](/api/document-favorites/favorite-document) | Add a document to a user's favorites. | |
| [GET /v1/documents/:documentId/favorites](/api/document-favorites/list-document-favoriters) | List users who have favorited a published document, paginated and sorted by `favoritedAt`. | |
| [DELETE /v1/documents/:documentId/favorite](/api/document-favorites/unfavorite-document) | Remove a document from a user's favorites. |
| Endpoint | Description | Version + Status |
|---|---|---|
| [PATCH /v1/documents/:documentId/labels](/api/document-labels/bulk-update-document-labels) | Add and/or remove multiple labels from a document in a single atomic operation. | |
| [PUT /v1/documents/:documentId/labels/:labelName](/api/document-labels/apply-label-to-document) | Apply an existing label to a document. | |
| [DELETE /v1/documents/:documentId/labels/:labelName](/api/document-labels/remove-label-from-document) | Remove an existing label from a document. |
| Endpoint | Description | Version + Status |
|---|---|---|
| [GET /v1/documents](/api/documents/list-documents) | List documents with pagination and filtering. | |
| [GET /v1/documents/:documentId/queries](/api/documents/list-document-queries) | Retrieve queries associated with a document by its identifier. | |
| [PUT /v2/documents/:documentId/identifier](/api/documents-v2/rename-document-identifier) | Rename a published document's identifier. | |
| [PUT /v1/documents/:documentId/move](/api/documents/move-document) | Move document to new folder or change scope. | |
| [POST /v1/documents/:documentId/duplicate](/api/documents/duplicate-published-document) | Duplicate a published document. | |
| [PUT /v1/documents/:documentId/transfer-ownership](/api/documents/transfer-document-ownership) | Transfer ownership of a document to another user in the organization. |
| Endpoint | Description | Version + Status |
|---|---|---|
| [POST /v1/documents/:documentId/permissions](/api/document-permissions/grant-document-permissions) | Grant document permissions to users or groups. | |
| [PUT /v1/documents/:documentId/permissions](/api/document-permissions/update-document-permission-settings) | Update the permission and [interactivity settings](/share#controlling-document-interactivity) for a document. | |
| [PATCH /v1/documents/:documentId/permissions](/api/document-permissions/update-document-permissions) | Update existing document permissions for users or groups. | |
| [GET /v1/documents/:documentId/access-list](/api/document-permissions/list-all-users-and-groups-with-document-access) | List all users and groups with access to a document. | |
| [GET /v1/documents/:documentId/permissions](/api/document-permissions/get-document-permissions) | Retrieve the document-level ability values, plus the resolved permits for a specific user when `userId` is provided. | |
| [DELETE /v1/documents/:documentId/permissions](/api/document-permissions/revoke-document-permissions) | Revoke document permissions for users or user groups. |
| Endpoint | Description | Version + Status |
|---|---|---|
| [POST /v1/documents](/api/documents/create-document) | Create a new document. | |
| [POST /v1/documents/:documentId/draft](/api/documents/create-draft) | Create a [draft](/content/develop/drafts) of the specified document. | |
| PUT /v1/documents/:documentId | Update a document with the specified identifier. | |
| PATCH /v1/documents/:documentId | Update the name, description, and/or identifier of a document. | |
| [GET /v1/documents/:documentId](/api/documents/get-dashboard-document) | Retrieve dashboard document configuration in a format compatible with PUT for round-trip editing. |
| Endpoint | Description | Version + Status |
|---|---|---|
| [GET /v1/folders](/api/folders/list-folders) | Retrieve a paginated list of folders within an organization. | |
| [POST /v1/folders](/api/folders/create-folder) | Create a new folder. | |
| [PATCH /v1/folders/:folderId](/api/folders/update-folder) | Update a folder's name and/or path segment. | |
| [DELETE /v1/folders/:folderId](/api/folders/delete-folder) | Delete a folder. |
| Endpoint | Description | Version + Status |
|---|---|---|
| [PATCH /v1/folders/:folderId/labels](/api/folder-labels/bulk-update-folder-labels) | Bulk add and remove labels on a folder. |
| Endpoint | Description | Version + Status |
|---|---|---|
| [POST /v1/folders/:folderId/permissions](/api/folder-permissions/grant-folder-permissions) | Grant folder permissions to users or groups. | |
| [PUT /v1/folders/:folderId/permissions](/api/folder-permissions/update-organization-level-folder-permissions) | Set the organization-wide role and/or AccessBoost on a folder. | |
| [PATCH /v1/folders/:folderId/permissions](/api/folder-permissions/update-folder-permissions) | Update existing folder permissions for users or groups. | |
| [GET /v1/folders/:folderId/permissions](/api/folder-permissions/get-folder-permissions) | Retrieve folder permissions for a user. | |
| [DELETE /v1/folders/:folderId/permissions](/api/folder-permissions/revoke-folder-permissions) | Revoke folder permissions from users or groups. |
| Endpoint | Description | Version + Status |
|---|---|---|
| [POST /v1/labels](/api/labels/create-label) | Create a new label in the organization. | |
| [PUT /v1/labels/:labelName](/api/labels/update-label) | Update an existing label. | |
| [GET /v1/labels](/api/labels/list-labels) | Retrieve all labels in the organization. | |
| [GET /v1/labels/:labelName](/api/labels/get-label) | Retrieve a single label by name. | |
| [DELETE /v1/labels/:labelName](/api/labels/delete-label) | Delete a label from the organization. |
| Endpoint | Description | Version + Status |
|---|---|---|
| [POST /v1/models](/api/models/create-model) | Create a new model. | |
| [PATCH /v1/models/:modelId](/api/models/rename-model) | Rename a model. | |
| [DELETE /v1/models/:modelId](/api/models/archive-shared-or-extension-model) | Move a shared or shared extension model to the trash. | |
| [POST /v1/models/:modelId/refresh](/api/models/refresh-schema) | Refresh the schema of the specified model. | |
| [GET /v1/models](/api/models/list-models) | Retrieve a paginated list of models with their metadata. | |
| [GET /v1/models/:modelId/validate](/api/models/validate-model) | Retrieve validation issues for a model and its branches. |
| Endpoint | Description | Version + Status |
|---|---|---|
| [POST /v1/models/:modelId/branch/:branchName/merge](/api/model-branches/merge-a-branch) | Merge a model branch into the shared model. | |
| [POST /v1/models/:modelId/branch/:branchName/dbt](/api/dbt/set-dbt-environment-on-model-branch) | Set the active dbt environment on a model branch. | |
| [DELETE /v1/models/:modelId/branch/:branchName](/api/models/delete-branch) | Delete a branch associated with the specified shared model. |
| Endpoint | Description | Version + Status |
|---|---|---|
| [GET /v1/models/:modelId/content-validator](/api/content-validator/validate-content) | Validate all content against the model and return documents with queries and any validation issues. | |
| [POST /v1/models/:modelId/content-validator](/api/content-validator/find-and-replace-content) | Perform find/replace operations on content using the specified model. |
| Endpoint | Description | Version + Status |
|---|---|---|
| [GET /v1/models/:modelId/ai-agent-actions](/api/models/get-model-ai-agent-actions) | Return AI agent actions configured for a model. | |
| [POST /v1/models/:modelId/cache\_reset/:cachePolicyName](/api/models/reset-cache) | Reset the cache for the specified cache policy. | |
| [GET /v1/models/:modelId/schemas](/api/models/list-model-schemas) | Retrieve a sorted list of all available schema names for the specified model, including physical, virtual, and dynamic schemas. | |
| [GET /v1/models/:modelId/dbt-exposures](/api/dbt/get-dbt-exposures) | Retrieve dbt exposures for the specified model. |
| Endpoint | Description | Version + Status |
|---|---|---|
| [GET /v1/models/:modelId/git](/api/model-git-configuration/get-git-configuration) | Retrieve the Git configuration for a shared model. | |
| [POST /v1/models/:modelId/git](/api/model-git-configuration/create-git-configuration) | Create a new Git configuration for a shared model. | |
| [PATCH /v1/models/:modelId/git](/api/model-git-configuration/update-git-configuration) | Update the Git configuration for a shared model. | |
| [DELETE /v1/models/:modelId/git](/api/model-git-configuration/delete-git-configuration) | Remove the Git configuration from a shared model. | |
| [POST /v1/models/:modelId/git/sync](/api/model-git-configuration/sync-model-with-git-repository) | Trigger a sync operation between the model and its configured Git repository. | |
| [POST /v1/models/:modelId/git/commit](/api/model-git-configuration/create-or-update-a-pull-request-for-a-model-branch) | Push a branch's model contents to Git and create or update a pull request. | |
| [POST /v1/models/:modelId/migrate](/api/models/migrate-a-model) | Copy a model from one Omni connection to another by reading the source model's YAML at a specific Git ref and writing it to the target model. |
| Endpoint | Description | Version + Status |
|---|---|---|
| [GET /v1/models/:modelId/topic/:topicName](/api/topics/retrieve-a-topic) | Retrieve a topic in a model by name. |
| Endpoint | Description | Version + Status |
|---|---|---|
| [DELETE /v1/models/:modelId/view/:viewName](/api/models/delete-view) | Delete or ignore a view in a model. |
| Endpoint | Description | Version + Status |
|---|---|---|
| [POST /v1/models/:modelId/yaml](/api/models/create-or-update-yaml-files) | Create or overwrite a YAML file for a model. | |
| [GET /v1/models/:modelId/yaml](/api/models/get-model-yaml) | Retrieve the YAML representation of a model with optional filtering and mode selection. | |
| [DELETE /v1/models/:modelId/yaml](/api/models/delete-a-yaml-file) | Delete a topic or view YAML file from a model. |
| Endpoint | Description | Version + Status |
|---|---|---|
| [POST /v1/query/run](/api/queries/run-query) | Run the query specified in the request body. | |
| [GET /v1/query/wait](/api/queries/wait-for-query-results) | Poll for the results of one or more query jobs. |
| Endpoint | Description | Version + Status |
|---|---|---|
| [POST /v1/schedules](/api/schedules/create-schedule) | Create a scheduled task for the specified dashboard. | |
| [PUT /v1/schedules/:scheduleId](/api/schedules/update-schedule) | Update the specified task. Changes are applied to future runs; in-progress jobs are unaffected. | |
| [PUT /v1/schedules/:scheduleId/transfer-ownership](/api/schedules/transfer-schedule-ownership) | Immediately transfer ownership of a schedule from one user to another user in the same organization. | |
| [GET /v1/schedules](/api/schedules/list-schedules) | Retrieve a list of scheduled tasks. | |
| [GET /v1/schedules/:scheduleId](/api/schedules/get-schedule) | Return the details of a single schedule, including its delivery destinations, recurrence configuration, and current status. | |
| [DELETE /v1/schedules/:scheduleId](/api/schedules/delete-schedule) | Delete a schedule. |
| Endpoint | Description | Version + Status |
|---|---|---|
| [POST /v1/schedules/:scheduleId/trigger](/api/schedules/trigger-schedule) | Trigger the execution of a schedule on demand. | |
| [PUT /v1/schedules/:scheduleId/pause](/api/schedules/pause-schedule) | Pause a schedule. | |
| [PUT /v1/schedules/:scheduleId/resume](/api/schedules/resume-schedule) | Resume a schedule. |
| Endpoint | Description | Version + Status |
|---|---|---|
| [PUT /v1/schedules/:scheduleId/add-recipients](/api/schedule-recipients/add-schedule-recipients) | Add one or more recipients to an existing scheduled email task. | |
| [PUT /v1/schedules/:scheduleId/remove-recipients](/api/schedule-recipients/remove-schedule-recipients) | Remove one or more recipients from an existing scheduled email task. | |
| [POST /v1/users/email-only](/api/schedule-recipients/manage-email-only-user) | Create or update an [email-only user](/share/deliveries/email). | |
| [POST /v1/users/email-only/bulk](/api/schedule-recipients/bulk-manage-email-only-users) | Create or update up to 20 [email-only users](/share/deliveries/email). | |
| [GET /v1/schedules/:scheduleId/recipients](/api/schedule-recipients/list-schedule-recipients) | Retrieve the list of recipients for the specified schedule. |
| Endpoint | Description | Version + Status |
|---|---|---|
| [POST /v1/uploads](/api/uploads/upload-a-csv-file) | Upload a CSV file to create a new [data input table](/analyze-explore/data-input-csvs). | |
| [PUT /v1/uploads/:uploadId](/api/uploads/replace-upload-data) | Replace the data for an existing CSV upload. | |
| [GET /v1/uploads](/api/uploads/list-uploads) | List all uploads ([CSV files and spreadsheets](/analyze-explore/data-input-csvs)) in the organization. | |
| [DELETE /v1/uploads/:uploadId](/api/uploads/delete-an-upload) | Delete a CSV upload by its ID. |
| Endpoint | Description | Version + Status |
|---|---|---|
| [POST /scim/v2/users](/api/users/create-user) | Create a user. | |
| [PUT /scim/v2/users/:userId](/api/users/replace-user) | Replace the specified user. | |
| [PATCH /scim/v2/users/:userId](/api/users/update-user) | Update the specified user by applying a list of [SCIM 2.0 patch operations](https://datatracker.ietf.org/doc/html/rfc7644#section-3.5.2). | |
| [GET /scim/v2/users/:userId](/api/users/retrieve-user) | Retrieve a user using their unique ID. | |
| [GET /scim/v2/users](/api/users/list-users) | Return a list of users, sorted by creation time. | |
| [DELETE /scim/v2/users/:userId](/api/users/delete-user) | Delete the specified user. |
| Endpoint | Description | Version + Status |
|---|---|---|
| [GET /v1/users/email-only](/api/users/list-email-only-users) | Retrieve email-only users with their user attributes, with support for cursor-based pagination and filtering. |
| Endpoint | Description | Version + Status |
|---|---|---|
| [GET /scim/v2/embed/users](/api/users/list-embed-users) | Retrieve a list of embed users, sorted by creation time. | |
| [GET /scim/v2/embed/users/:userId](/api/users/retrieve-embed-user) | Retrieve an embed user using their unique ID. | |
| [DELETE /scim/v2/embed/users/:userId](/api/users/delete-embed-user) | Delete the specified embed user. |
| Endpoint | Description | Version + Status |
|---|---|---|
| [POST /v1/users/:userId/model-roles](/api/user-model-roles/assign-or-update-user-model-role) | Assign or update a model role for a user. | |
| [GET /v1/users/:userId/model-roles](/api/user-model-roles/retrieve-user-model-roles) | Retrieve the model role assignments for a user. |
| Endpoint | Description | Version + Status |
|---|---|---|
| [GET /v1/user-attributes](/api/user-attributes/list-user-attributes) | Retrieve all [user attribute](/administration/users/attributes) definitions in the organization, including custom-defined and system-defined attributes. |
| Endpoint | Description | Version + Status |
|---|---|---|
| [POST /scim/v2/groups](/api/user-groups/create-user-group) | Create a [user group](/administration/users/groups). | |
| [PUT /scim/v2/groups/:userGroupId](/api/user-groups/replace-user-group) | Replace the specified user group. | |
| [PATCH /scim/v2/groups/:userGroupId](/api/user-groups/update-user-group) | Update the specified user group by applying a list of [v2 patch operations](https://datatracker.ietf.org/doc/html/rfc7644#section-3.5.2). | |
| [GET /scim/v2/groups](/api/user-groups/list-user-groups) | Return a list of user groups, sorted by creation time. | |
| [GET /scim/v2/groups/:userGroupId](/api/user-groups/retrieve-user-group) | Retrieve a user group using its unique ID. | |
| [DELETE /scim/v2/groups/:userGroupId](/api/user-groups/delete-user-group) | Delete the specified user group. |
| Endpoint | Description | Version + Status |
|---|---|---|
| [POST /v1/user-groups/:userGroupId/model-roles](/api/user-group-model-roles/assign-or-update-user-group-model-role) | Assign or update a model role for a user group. | |
| [GET /v1/user-groups/:userGroupId/model-roles](/api/user-group-model-roles/retrieve-user-group-model-roles) | Retrieve the model role assignments for a user group. |